SceneKit 네임스페이스

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)와 함께 options 사용할 상수입니다.

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.DidEndContactE:SceneKit.SCNPhysicsContactEventArgs.DidUpdateContact 이벤트에 대한DidUpdateContact데이터를 제공합니다.

SCNPhysicsField

지정된 볼륨의 모든 SCNPhysicsBody 개체에 힘을 적용합니다.

SCNPhysicsHingeJoint

단일 축을 따라 두 개의 SCNPhysicsBody 개체를 연결하는 SCNPhysicsBehavior입니다.

SCNPhysicsShape

SCNPhysicsBody의 단색 볼륨입니다. 충돌 감지에 사용됩니다.

SCNPhysicsShapeOptions

와 함께 사용되는 사전의 유효한 키 options 입니다.

SCNPhysicsShapeOptionsKeys

에 전달된 사전과 함께 options 사용할 유효한 키를 정의합니다.

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 를 인스턴스화할 options 때 를 정의하는 입니다SCNView.

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

UIView 를 렌더링하는 입니다SCNScene.

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

텍스처 래핑 기술을 열거합니다.

대리자

SCNActionNodeWithElapsedTimeHandler

와 함께 사용되는 완료 처리기입니다 CustomAction(Double, SCNActionNodeWithElapsedTimeHandler).

SCNAnimationDidStartHandler

SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다.

SCNAnimationDidStopHandler

SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다.

SCNAnimationEventHandler

와 함께 사용하기 위한 완료 처리기입니다 Create(nfloat, SCNAnimationEventHandler).

SCNBindingHandler

와 함께 사용되는 완료 처리기입니다 HandleBinding(String, SCNBindingHandler).

SCNBufferBindingHandler

SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다.

SCNFieldForceEvaluator

메서드에 대한 대리자 CustomField(SCNFieldForceEvaluator) 입니다.

SCNNodeHandler

SceneKit 네임스페이스는 높은 수준의 장면 그래프 기반 3D 그래픽을 제공합니다.

SCNNodePredicate

에 사용할 대리자입니다 EnumerateChildNodes(SCNNodePredicate).

SCNParticleEventHandler

와 함께 사용하기 위한 완료 처리기입니다 HandleEvent(SCNParticleEvent, NSString[], SCNParticleEventHandler).

SCNParticleModifierHandler

에서 AddModifier(NSString[], SCNParticleModifierStage, SCNParticleModifierHandler)로 사용되는 대리자 handler 입니다.

SCNSceneExportProgressHandler

장면을 내보낼 때 SceneKit에서 반복적으로 호출하는 연속 처리기입니다.

SCNSceneSourceFilter

포함을 위해 장면의 개체를 테스트하는 대리자입니다.

SCNSceneSourceStatusHandler

를 실행하는 동안 진행률을 반영하는 데 사용되는 콜백입니다 SceneFromOptions(SCNSceneLoadingOptions, SCNSceneSourceStatusHandler).

SCNTransformConstraintHandler

에 대한 호출에 사용되는 대리자 Create(Boolean, SCNTransformConstraintHandler)입니다.

설명

장면 키트는 계층적 장면 그래프를 기반으로 하는 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의 , GeometryLight형식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[]* 메서드를 사용하여 적절한 SCNGeometrySourceSCNGeometryElement 개체의 배열을 사용하여 사용자 지정 기하 도형을 만들 수 있습니다. 다음은 사용자 지정 피라미드 만들기를 보여줍니다.

//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 });