SceneKit 네임스페이스
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다.
클래스
_SCNShaderModifiers |
셰이더 코드 조각의 사전입니다. |
SCNAccelerationConstraint |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNAction |
모양, 기하 도형, 애니메이션 또는 임의 함수 변경 내용을 포함하여 에 대한 SCNNode작업을 수행합니다. |
SCNActionable |
작업을 적용할 수 있습니다. |
SCNActionable_Extensions |
프로토콜의 모든 메서드를 ISCNActionable 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNActionable . |
SCNAnimatable |
애니메이션을 적용할 수 있습니다. |
SCNAnimatable_Extensions |
프로토콜의 모든 메서드를 ISCNAnimatable 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNAnimatable . |
SCNAnimatableExtensions |
ISCNAnimatable에 대한 확장 메서드입니다. |
SCNAnimation |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNAnimationEvent |
애니메이션 중에 특정 시간에 함수를 수행합니다. |
SCNAnimationPlayer |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNAudioPlayer |
SCNAudioSource 위치 오디오에 사용할 또는 AVAudioNode 를 보유합니다. |
SCNAudioSource |
SceneKit 장면의 위치 오디오에 재사용 가능한 오디오 소스입니다. |
SCNAvoidOccluderConstraint |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNAvoidOccluderConstraintDelegate |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNAvoidOccluderConstraintDelegate_Extensions |
프로토콜의 모든 메서드를 ISCNAvoidOccluderConstraintDelegate 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNAvoidOccluderConstraintDelegate . |
SCNBillboardConstraint |
항상 현재 렌더링 노드를 SCNNode 가리키도록 을 자동으로 제한합니다. |
SCNBoundingVolume |
3D 공간에서 볼륨을 정의하는 함수입니다. |
SCNBox |
SCNGeometry 얼굴이 모두 사각형인 입니다. |
SCNCamera |
시야 및 보기 깊이와 같은 특성을 사용하여 카메라를 지정합니다. |
SCNCameraController |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNCameraControllerDelegate |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNCameraControllerDelegate_Extensions |
프로토콜의 모든 메서드를 ISCNCameraControllerDelegate 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNCameraControllerDelegate . |
SCNCapsule |
SCNGeometry 끝이 덮인 실린더인 입니다. |
SCNCone |
SCNGeometry 원형 frustum인 입니다. 또는 파티 모자. |
SCNConstraint |
노드의 변환을 자동으로 조정합니다. |
SCNCylinder |
SCNGeometry 오른쪽 원형 실린더인 입니다. |
SCNDistanceConstraint |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNErrorCodeExtensions |
SceneKit.SCNErrorCode 열거형에 대한 확장 메서드입니다. |
SCNFloor |
SCNGeometry 무한 평면인 입니다. |
SCNGeometry |
SceneKit geometry 개체의 기본 클래스 |
SCNGeometryElement |
꼭짓점 및 그리기 기본 형식에 대한 정보를 결합합니다. GPU로 전송된 단일 그리기 명령에 매핑됩니다. |
SCNGeometrySource |
SCNGeometryElements와 함께 3D 개체를 정의하는 꼭짓점 데이터를 제공합니다. |
SCNGeometrySourceSemantic |
꼭짓점 모드 특성을 열거합니다. |
SCNGeometryTessellator |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNHitTest |
의 인수HitTest(SCNVector3, SCNVector3, SCNHitTestOptions)와 함께 |
SCNHitTestOptions |
SCNNode 및 SCNSceneRenderer에서 적중 테스트를 위한 구성 옵션 |
SCNHitTestResult |
특정 지점 또는 광선에 있는 SCNNode(있는 경우)에 대한 정보입니다. |
SCNIKConstraint |
SCNConstraint 역 운동학을 적용하는 입니다. |
SCNJavaScript |
JavaScript 모듈을 내보내는 메서드를 포함하는 정적 클래스입니다. |
SCNLayer |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNLevelOfDetail |
세계 공간 또는 화면 공간의 임계값에서 렌더링되는 대체 기하 도형을 제어합니다. |
SCNLight |
모든 SCNLightType에 사용되는 광원입니다. |
SCNLightAttribute |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNLightingModel |
SceneKit.SCNMaterial.LightingModel 속성과 함께 사용할 상수로, 조명과 재질이 결합되어 렌더링된 특정 색을 생성하는 방법을 정의합니다. |
SCNLightType |
형식 SCNLight을 열거합니다. |
SCNLookAtConstraint |
SCNConstraint 노드가 다른 노드를 가리키도록 방향을 지정하는 입니다. |
SCNMaterial |
SCNGeometry 표면의 조명 및 음영 특성을 지정합니다. |
SCNMaterialProperty |
의 다양한 속성(예: 색 및 질감)을 구성합니다 SCNMaterial. |
SCNMorpher |
SCNGeometry를 하나 이상의 대상 SCNGeometry 개체로 애니메이션 변환합니다. |
SCNNode |
장면 그래프의 노드입니다. |
SCNNodeRendererDelegate |
사용자 지정 OpenGL 그리기 코드를 추가하기 위한 대리자 개체 함수를 정의하는 인터페이스입니다. |
SCNNodeRendererDelegate_Extensions |
프로토콜의 모든 메서드를 ISCNNodeRendererDelegate 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNNodeRendererDelegate . |
SCNParticleProperty |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNParticlePropertyController |
SCNParticleSystem에서 내보낸 입자의 속성에 애니메이션 효과를 줍니다. |
SCNParticleSystem |
동작이 개발자 지정인 작은 스프라이트를 내보낸다. |
SCNPhysicsBallSocketJoint |
SCNPhysicsBody 개체 두 개를 서로 피벗할 수 있는 SCNPhysicsBehavior입니다. |
SCNPhysicsBehavior |
하나 이상의 SCNPhysicsBody 개체의 동작을 제어합니다. |
SCNPhysicsBody |
SCNNode에 물리학 시뮬레이션을 추가합니다. |
SCNPhysicsConeTwistJoint |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNPhysicsContact |
두 SCNPhysicsBody 개체가 서로 접촉하는 방법 |
SCNPhysicsContactDelegate |
개체 간의 SCNPhysicsBody 터치에 응답하는 개체 함수를 위임합니다. |
SCNPhysicsContactDelegate_Extensions |
프로토콜의 모든 메서드를 ISCNPhysicsContactDelegate 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNPhysicsContactDelegate . |
SCNPhysicsContactEventArgs |
E:SceneKit.SCNPhysicsContactEventArgs.DidEndContact 및 E:SceneKit.SCNPhysicsContactEventArgs.DidUpdateContact 이벤트에 대한DidUpdateContact데이터를 제공합니다. |
SCNPhysicsField |
지정된 볼륨의 모든 SCNPhysicsBody 개체에 힘을 적용합니다. |
SCNPhysicsHingeJoint |
단일 축을 따라 두 개의 SCNPhysicsBody 개체를 연결하는 SCNPhysicsBehavior입니다. |
SCNPhysicsShape |
SCNPhysicsBody의 단색 볼륨입니다. 충돌 감지에 사용됩니다. |
SCNPhysicsShapeOptions | |
SCNPhysicsShapeOptionsKeys | |
SCNPhysicsShapeOptionsTypes |
에 연결된 SCNPhysicsShape기하학적 형식입니다. |
SCNPhysicsSliderJoint |
두 개의 SCNPhysicsBody 개체를 연결하여 연결 지점을 밀고 회전할 수 있는 SCNPhysicsBehavior입니다. |
SCNPhysicsTest |
M:SceneKit.SCNPhysicsWorld.ContactTest*와 함께 사용할 수 있는 유효한 옵션입니다. |
SCNPhysicsTestKeys |
검색, 백페이스 컬링 및 충돌 테스트를 제어하는 값을 포함합니다. |
SCNPhysicsTestSearchModeKeys |
반환되는 충돌 검색 결과를 제어하는 값을 열거합니다. |
SCNPhysicsVehicle |
바퀴가 달린 차량의 물리학을 시뮬레이션하는 SCNPhysicsBehavior입니다. |
SCNPhysicsVehicleWheel |
SCNPhysicsVehicle에 있는 휠의 모양 및 물리적 특성입니다. |
SCNPhysicsWorld |
SCNScene에서 충돌 및 기타 물리학 관련 속성을 모델링하는 물리학 시뮬레이션입니다. |
SCNPlane |
SCNGeometry 직사각형 단면 유한 평면인 입니다. |
SCNProgram |
OpenGL 음영 언어로 작성된 셰이더를 사용하여 사용자 지정 렌더링을 수행합니다. |
SCNProgramDelegate |
SCNProgram 개체에 대한 대리자 개체입니다. |
SCNProgramDelegate_Extensions |
프로토콜의 모든 메서드를 ISCNProgramDelegate 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNProgramDelegate . |
SCNProgramSemanticOptions |
에 사용할 을 MappingChannel 정의합니다 SetSemantic(NSString, String, SCNProgramSemanticOptions). |
SCNPropertyControllers |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNPyramid |
SCNGeometry 오른쪽 직사각형 피라미드인 입니다. |
SCNReferenceNode |
SCNNode 장면 파일에서 콘텐츠를 로드하는 입니다. |
SCNRenderer |
SCNScene을 OpenGL 컨텍스트로 렌더링합니다. |
SCNRenderingArguments |
및 SetSemantic(NSString, String, SCNProgramSemanticOptions)에 사용할 Render(SCNNode, SCNRenderer, NSDictionary) 키를 정의합니다. |
SCNRenderingOptions |
DictionaryContainer 를 인스턴스화할 |
SCNReplicatorConstraint |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNScene |
3D 장면에 대한 가장 높은 수준의 설명입니다. |
SCNSceneExportDelegate |
장면 내보내기를 파일로 처리하는 메서드를 정의하는 프로토콜입니다. |
SCNSceneExportDelegate_Extensions |
프로토콜의 모든 메서드를 ISCNSceneExportDelegate 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNSceneExportDelegate . |
SCNSceneLoadingOptions |
장면 로드 옵션입니다. |
SCNSceneRenderer |
인터페이스의 구현 클래스입니다 ISCNSceneRenderer . |
SCNSceneRenderer_Extensions |
프로토콜의 모든 메서드를 ISCNSceneRenderer 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNSceneRenderer . |
SCNSceneRendererDelegate |
SCNRenderer 클래스에 대한 대리자 개체는 렌더링 이벤트를 반영하는 메서드를 정의합니다. |
SCNSceneRendererDelegate_Extensions |
프로토콜의 모든 메서드를 ISCNSceneRendererDelegate 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNSceneRendererDelegate . |
SCNSceneSource |
파일 또는 NSData 개체에서 장면 정의 데이터를 읽습니다. |
SCNSceneSourceLoadErrors |
을 로드하는 동안 발생할 수 있는 오류 유형을 열거합니다 SCNSceneSource. |
SCNSceneSourceLoading |
SCNScene 개체를 만들고 로드하는 옵션입니다. |
SCNSceneSourceProperties |
장면 파일과 연결된 메타데이터 키입니다. GetProperty(NSString)를 사용합니다. |
SCNShadable |
ISCNShadable의 구현입니다. |
SCNShadable_Extensions |
프로토콜의 모든 메서드를 ISCNShadable 지원하기 위해 인터페이스에 대한 확장 메서드입니다 SCNShadable . |
SCNShaderModifiers |
DictionaryContainer 셰이더에 대한 옵션이 포함된 입니다. |
SCNShape |
SCNGeometry 필요에 따라 3차원으로 돌출된 2D 경로에서 만든 입니다. |
SCNSkinner |
골격 애니메이션을 지원하는 장면 그래프에 액세스합니다. |
SCNSliderConstraint |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNSphere |
SCNGeometry 구인 입니다. |
SCNTechnique |
각각 셰이더를 적용하는 추가 그리기 패스를 제공합니다. |
SCNTechniqueSupport |
ISCNTechniqueSupport 의 구현은 단순히 에 대한 참조를 보유합니다SCNTechnique. |
SCNText |
SCNGeometry 필요에 따라 3차원으로 돌출된 문자열을 기반으로 하는 입니다. |
SCNTimingFunction |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNTorus |
SCNGeometry 고리 모양의 단색인 입니다. |
SCNTransaction |
수정 집합을 원자성으로 적용할 수 있습니다. |
SCNTransformConstraint |
SCNConstraint 노드 또는 노드로의 변환(위치, 회전 및 배율) 변경을 지정하는 함수를 실행하는 입니다. |
SCNTube |
SCNGeometry 중앙 축을 따라 구멍이 있는 실린더인 입니다. |
SCNView | |
SCNView.SCNViewAppearance |
형식 SCNView의 개체에 대한 모양 클래스입니다. |
구조체
SCNMatrix4 |
4x4 행렬입니다. |
SCNQuaternion |
쿼터니언을 나타내며 해당 쿼터니언에서 작동하는 메서드를 포함합니다. |
SCNVector3 |
3개 구성 요소 벡터입니다. |
SCNVector4 |
4개 구성 요소 벡터입니다. |
인터페이스
ISCNActionable |
프로토콜 SCNActionable의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNAnimatable |
프로토콜 SCNAnimatable의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNAnimationProtocol |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
ISCNAvoidOccluderConstraintDelegate |
프로토콜 SCNAvoidOccluderConstraintDelegate의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNBoundingVolume |
프로토콜 SCNBoundingVolume의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNBufferStream |
사용자 지정 셰이더의 Metal 버퍼를 관리하기 위한 인터페이스입니다. |
ISCNCameraControlConfiguration |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
ISCNCameraControllerDelegate |
프로토콜 SCNCameraControllerDelegate의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNNodeRendererDelegate |
프로토콜 SCNNodeRendererDelegate의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNPhysicsContactDelegate |
프로토콜 SCNPhysicsContactDelegate의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNProgramDelegate |
프로토콜 SCNProgramDelegate의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNSceneExportDelegate |
프로토콜 SCNSceneExportDelegate의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNSceneRenderer |
프로토콜 SCNSceneRenderer의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNSceneRendererDelegate |
프로토콜 SCNSceneRendererDelegate의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNShadable |
프로토콜 SCNShadable의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
ISCNTechniqueSupport |
프로토콜 SCNTechniqueSupport의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
열거형
SCNActionTimingMode |
개체에 사용할 SCNAction 속도 곡선을 열거합니다. |
SCNAnimationImportPolicy |
애니메이션 가져오기 정책을 열거합니다. |
SCNAntialiasingMode |
앤티앨리어싱 동작을 제어하는 값을 열거합니다. |
SCNBillboardAxis |
에 의해 SCNBillboardConstraint제한된 노드에서 사용할 수 있는 축 잠금의 열거형입니다. |
SCNBlendMode |
SceneKit에서 재질의 색을 렌더링 대상에 이미 있는 색과 혼합할 수 있는 방법의 열거형입니다. |
SCNBufferFrequency |
처리기가 프레임당, 프레임당 노드당 또는 음영 처리 가능한 프레임당 노드당 호출되는지 여부를 제어하는 값을 열거합니다. |
SCNCameraProjectionDirection |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNChamferMode |
앞면, 뒤 또는 양쪽에서 을 SCNShape 모따는 방법을 열거합니다. |
SCNColorMask |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNCullMode |
렌더링되는 표면 SCNMaterial 의 얼굴을 결정하는 열거형입니다. |
SCNDebugOptions |
디버그 오버레이 옵션을 열거합니다. |
SCNErrorCode |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNFillMode |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNFilterMode |
텍스처 필터링 모드의 열거형입니다. |
SCNGeometryPrimitiveType |
2D 기하 도형 기본 형식의 열거형입니다. |
SCNGeometrySourceSemantics |
기하 도형 데이터에 대한 의미 체계를 열거합니다. |
SCNHitTestSearchMode |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNInteractionMode |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNMorpherCalculationMode |
에 대한 CalculationMode유효한 보간 수식의 열거형입니다. |
SCNMovabilityHint |
시간에 따라 노드가 이동해야 하는지 여부를 SceneKit에 알리는 값을 열거합니다. |
SCNNodeFocusBehavior |
의 포커스 가능 상태를 열거합니다 SCNNode. |
SCNParticleBirthDirection |
에서 내 SCNParticleSystem보낸 입자의 초기 방향을 열거합니다. |
SCNParticleBirthLocation |
에서 내 SCNParticleSystem보낸 파티클의 초기 위치 열거 |
SCNParticleBlendMode |
에서 내 SCNParticleSystem 보낸 겹치는 파티클이 렌더링되는 방법의 열거형입니다. |
SCNParticleEvent |
에서 내보낸 입자에 대한 수명 주기 이벤트의 열거형입니다 SCNParticleSystem. HandleEvent(SCNParticleEvent, NSString[], SCNParticleEventHandler)를 사용합니다. |
SCNParticleImageSequenceAnimationMode |
파티클이 이미지 시퀀스 SCNParticleSystem로 렌더링되는 의 재생 모드 열거형입니다. |
SCNParticleInputMode |
파티클 속성이 애니메이션되는 방식을 열거합니다(파티클의 수명 동안, 파티클이 거리를 이동하거나 다른 속성을 기반으로 이동함에 따라). InputMode를 사용합니다. |
SCNParticleModifierStage |
에 지정된 AddModifier(NSString[], SCNParticleModifierStage, SCNParticleModifierHandler) 한정자를 적용해야 하는 순간을 열거합니다. |
SCNParticleOrientationMode |
에서 내보낸 파티클의 맞춤을 열거합니다 SCNParticleSystem. OrientationMode를 사용합니다. |
SCNParticleSortingMode | |
SCNPhysicsBodyType |
가 동적인지, 운동인지, 정적인지 SCNPhysicsBody 를 지정하는 열거형입니다. CreateBody(SCNPhysicsBodyType, SCNPhysicsShape)를 사용합니다. |
SCNPhysicsCollisionCategory |
의 충돌 속성에 대한 기본값입니다 SCNPhysicsBody. |
SCNPhysicsFieldScope |
가 테두리 내부 또는 외부의 개체에 영향을 주는지 여부를 SCNPhysicsField 지정하는 값을 열거합니다. |
SCNPhysicsSearchMode |
반환되는 물리학 검색 결과를 제어하는 값을 열거합니다. |
SCNPhysicsShapeType |
의 범주 SCNPhysicsShape열거형입니다. |
SCNReferenceLoadingPolicy |
개체에 대한 SCNReferenceNode 가능한 로드 정책을 열거합니다. |
SCNRenderingApi |
Metal 또는 OpenGLES2 API를 나타내는 값을 열거합니다. |
SCNSceneSourceStatus |
SCNSceneSource의 상태를 열거합니다. |
SCNShadowMode |
그림자가 계산되는 시기를 제어하는 열거형입니다. |
SCNTessellationSmoothingMode |
SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다. |
SCNTransparencyMode |
투명도를 계산하기 위한 기술을 열거합니다. |
SCNWrapMode |
텍스처 래핑 기술을 열거합니다. |
대리자
설명
장면 키트는 계층적 장면 그래프를 기반으로 하는 3D 그래픽을 위한 프레임워크입니다.
장면 키트의 기본 클래스는 SCNScene모든 콘텐츠를 보유하는 와 를 렌더링SCNScene하는 T:CoreGraphics.SceneKit.SCNViewUIView입니다.
SCNScene 에는 형식의 속성이 RootNode 있습니다SCNNode. SCNNode's에는 P:SceneKit.SCNNode.ChildNode가 있고 를 구현합니다 System.Collections.Generic.IEnumerable`1<class MonoTouch.SceneKit.SCNNode>
. 의 SCNNode 속성은 형식의 , 형식SCNCamera의 , Geometry및 Light형식SCNGeometrySCNLight의 를 포함합니다Camera.
또한 모든 SCNNode 에는 Position 의 모양을 만드는 SCNNode's ParentNode 및 및 를 기준으로 SCNNode공간의 위치를 정의하는 속성이 있습니다.
다음 예제에서는 최소 장면 키트 보기를 보여 줍니다.
public MySceneView (RectangleF frame) : base(frame)
{
BackgroundColor = UIColor.Blue;
this.Scene = new SCNScene ();
var material = new SCNMaterial ();
material.Diffuse.Contents = UIImage.FromFile("textureX.png");
material.Specular.Contents = UIColor.Gray;
material.LocksAmbientWithDiffuse = true;
Scene.RootNode.Geometry = new SCNBox {
Width = 1,
Height = 1,
Length = 1,
ChamferRadius = 0.2f,
FirstMaterial = material
};
Scene.RootNode.Light = new SCNLight {
LightType = SCNLightType.Ambient,
Color = UIColor.Gray,
};
var camera = new SCNCamera ();
var cameraNode = new SCNNode () {
Camera = camera,
Position = new SCNVector3 (3, 3, 3),
Constraints = new SCNConstraint[] { SCNLookAtConstraint.Create(Scene.RootNode) }
};
Scene.RootNode.AddChildNode (cameraNode);
}
geometry
SceneKit의 모든 기하 도형은 의 SCNGeometry하위 클래스에 의해 설명됩니다.
SCNCapsule | 조절 가능한 끝 캡이 있는 알약 모양의 캡슐 | |
SCNCone | 상단을 잘라낼 수 있는 원뿔형 | |
SCNBox | 사각형 상자입니다. | |
SCNCylinder | 실린더. | |
SCNFloor | 위의 기하 도형을 반사할 수 있는 무한 평면입니다. | |
SCNPlane | 단면 사각형입니다. | |
SCNPyramid | 테트라에드론. | |
SCNShape | 3차원으로 돌출된 2D 셰이프입니다. | |
SCNSphere | 공. | |
SCNText | 돌출된 텍스트입니다. | |
SCNTorus | 도넛형입니다. | |
SCNTube | 적용되지 않은 실린더입니다. |
또한 SceneKit은 에서 전체 장면을 로드할 수 있습니다. 메서드를 사용하는 DAE 파일입니다 FromFile .
마지막으로 개발자는 (SceneKit.SCNGeometrySource[], SceneKit.SCNGeometryElement[]* 메서드를 사용하여 적절한 SCNGeometrySource 및 SCNGeometryElement 개체의 배열을 사용하여 사용자 지정 기하 도형을 만들 수 있습니다. 다음은 사용자 지정 피라미드 만들기를 보여줍니다.
//Lower-left
var a = new SCNVector3(-1, -1, 0);
//Upper-right
var b = new SCNVector3(1, 1, 0);
var halfX = (c.X + a.X) / 2;
var halfY = (c.Y + a.Y) / 2;
var halfZ = (c.Z + a.Z) / 2;
var b = new SCNVector3(a.X, c.Y, halfZ);
var d = new SCNVector3(c.X, a.Y, halfZ);
//Elevate the midpoint so that it's clearly a pyramid
var midPoint = new SCNVector3(halfX, halfY, halfZ + 1.0);
//The vertices of the geometry
var locs = new [] {
a, b, c, d, midPoint
};
var locSource = SCNGeometrySource.FromVertices(locs);
//Note that this relies on the ordering of locs above
//and it defines triangles (could be triangle strips, etc.)
var indices = new [] {
//Triangles are defined counter-clockwise!
4, 1, 0,
1, 4, 2,
2, 4, 3,
3, 4, 0
};
var idxArray = new byte[indices.Length][];
for(int i = 0; i < idxArray.Length; i++)
{
idxArray[i] = BitConverter.GetBytes(indices[i]);
}
var idxData = NSData.FromArray(idxArray.SelectMany(id => id).ToArray());
//Note that this relies on indices defining triangles
var element = SCNGeometryElement.FromData(idxData, SCNGeometryPrimitiveType.Triangles, indices.Length / 3, sizeof(int));
//Normals are relative to geometry
var normals = new [] {
new SCNVector3(0, 0, 1),
new SCNVector3(0, 0, 1),
new SCNVector3(0, 0, 1),
new SCNVector3(0, 0, 1),
new SCNVector3(0, 0, 1),
};;
var normSource = SCNGeometrySource.FromNormals(normals);
//These texture coords will cause the texture to wrap
var txCoords = new [] {
new CGPoint(-1, -1),
new CGPoint(-1, 1),
new CGPoint(1, 1),
new CGPoint(1, -1)
};
var txCoordsSource = SCNGeometrySource.FromTextureCoordinates(txCoords);
var geometry = SCNGeometry.Create(new [] { locSource, normSource, txCoordsSource }, new [] { element });