SceneKit Przestrzeń nazw

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

Klasy

Nazwisko Opis
_SCNShaderModifiers

Słownik fragmentów fragmentów cieniowania.

SCNAccelerationConstraint

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNAction

Wykonuje akcje na obiekcie SCNNode, w tym zmiany wyglądu, geometrii, animacji lub dowolnych funkcji.

SCNActionable

Umożliwia stosowanie akcji.

SCNAnimatable

Umożliwia zastosowanie animacji.

SCNAnimation

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNAnimationEvent

Wykonuje funkcję w określonym czasie podczas animacji.

SCNAnimationPlayer

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNAudioPlayer

Przechowuje element SCNAudioSource lub AVAudioNode do użycia z dźwiękem pozycyjnym.

SCNAudioSource

Źródło dźwięku wielokrotnego użytku dla dźwięku pozycyjnego w scenach SceneKit.

SCNAvoidOccluderConstraint

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNAvoidOccluderConstraintDelegate

Jest to klasa, która implementuje interfejs ISCNAvoidOccluderConstraintDelegate (dla protokołu SCNAvoidOccluderConstraintDelegate).

Podklasa tej klasy, aby łatwo utworzyć typ, który implementuje protokół.

Alternatywą jest utworzenie podklasy , NSObject a następnie zaimplementowanie interfejsu ISCNAvoidOccluderConstraintDelegate.

SCNAvoidOccluderConstraintDelegate_Extensions

Metody rozszerzenia interfejsu ISCNAvoidOccluderConstraintDelegate do obsługi wszystkich metod z protokołu SCNAvoidOccluderConstraintDelegate.

SCNBillboardConstraint

Automatycznie ogranicza SCNNode wartość , aby zawsze wskazywać bieżący węzeł renderowania.

SCNBoundingVolume

Funkcje definiujące wolumin w przestrzeni 3D.

SCNBox

Twarze SCNGeometry , których wszystkie prostokąty są prostokątami.

SCNCamera

Określa aparat z atrybutami, takimi jak pole widoku i głębokość widoku.

SCNCameraController

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNCameraControllerDelegate

Jest to klasa, która implementuje interfejs ISCNCameraControllerDelegate (dla protokołu SCNCameraControllerDelegate).

Podklasa tej klasy, aby łatwo utworzyć typ, który implementuje protokół.

Alternatywą jest utworzenie podklasy , NSObject a następnie zaimplementowanie interfejsu ISCNCameraControllerDelegate.

SCNCameraControllerDelegate_Extensions

Metody rozszerzenia interfejsu ISCNCameraControllerDelegate do obsługi wszystkich metod z protokołu SCNCameraControllerDelegate.

SCNCapsule

To SCNGeometry jest cylindra z zakręconymi końcami.

SCNCone

To SCNGeometry jest okrągły frustum. Lub, kapelusz imprezowy.

SCNConstraint

Automatycznie dostosowuje transformację węzła.

SCNCylinder

To jest prawy SCNGeometry okrągły cylinder.

SCNDistanceConstraint

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNErrorCodeExtensions

Metody rozszerzenia dla SCNErrorCode wyliczenia.

SCNFloor

Jest SCNGeometry to nieskończona płaszczyzna.

SCNGeometry

Klasa bazowa obiektów geometrycznych SceneKit

SCNGeometryElement

Łączy informacje o wierzchołkach i wierzchołku rysunku. Mapuje na jedno polecenie rysunku wysyłane do procesora GPU.

SCNGeometrySource

Udostępnia dane wierzchołków, które w połączeniu z elementami SCNGeometryElements definiują obiekt 3D.

SCNGeometrySourceSemantic

Wylicza atrybuty trybu wierzchołka.

SCNGeometryTessellator

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNHitTest

Stałe do użycia z argumentem w pliku optionsHitTest(SCNVector3, SCNVector3, SCNHitTestOptions).

SCNHitTestOptions

Opcje konfiguracji testowania trafień w węzłach SCNNode i SCNSceneRenderer

SCNHitTestResult

Informacje o węźle SCNNode (jeśli istnieją) znajdujące się w określonym punkcie lub wzdłuż promienia.

SCNIKConstraint

Element SCNConstraint , który stosuje odwrotne kinematyka.

SCNJavaScript

Klasa statyczna zawierająca metodę eksportowania modułów języka JavaScript.

SCNLayer

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNLevelOfDetail

Steruje alternatywnymi geometriami renderowanych przy progach w przestrzeni światowej lub przestrzeni ekranu.

SCNLight

Źródło światła używane dla wszystkich parametrów SCNLightTypes.

SCNLightAttribute

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNLightingModel

Stałe do użycia z właściwością LightingModelName , która definiuje sposób łączenia światła i materiałów w celu utworzenia określonego renderowanego koloru.

SCNLightType

Wylicza typy .SCNLight

SCNLookAtConstraint

Element SCNConstraint , który wyorientuje węzeł w kierunku innego węzła.

SCNMaterial

Określa charakterystykę oświetlenia i cieniowania powierzchni SCNGeometry.

SCNMaterialProperty

Konfiguruje różne właściwości (takie jak kolor i tekstura) obiektu SCNMaterial.

SCNMorpher

Animowana transformacja scNGeometry w co najmniej jeden docelowy obiekt SCNGeometry.

SCNNode

Węzeł na wykresie sceny.

SCNNodeRendererDelegate

Interfejs definiujący funkcje obiektów delegowanych do dodawania niestandardowego kodu rysunkowego OpenGL.

SCNNodeRendererDelegate_Extensions

Metody rozszerzenia interfejsu ISCNNodeRendererDelegate do obsługi wszystkich metod z protokołu SCNNodeRendererDelegate.

SCNParticleProperty

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNParticlePropertyController

Animuje właściwość cząstek emitowanych przez scNParticleSystem.

SCNParticleSystem

Emituje małe spryty, których zachowania są określone przez dewelopera.

SCNPhysicsBallSocketJoint

ScNPhysicsBehavior, który umożliwia przestawienie wokół siebie dwóch obiektów SCNPhysicsBody.

SCNPhysicsBehavior

Steruje zachowaniem co najmniej jednego obiektu SCNPhysicsBody.

SCNPhysicsBody

Dodaje symulację fizyki do węzła SCNNode.

SCNPhysicsConeTwistJoint

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNPhysicsContact

Jak dwa obiekty SCNPhysicsBody są ze sobą w kontakcie.

SCNPhysicsContactDelegate

Deleguj funkcje obiektów reagujące na dotyk między SCNPhysicsBody obiektami.

SCNPhysicsContactDelegate_Extensions

Metody rozszerzenia interfejsu ISCNPhysicsContactDelegate do obsługi wszystkich metod z protokołu SCNPhysicsContactDelegate.

SCNPhysicsContactEventArgs

Dostarcza dane dla zdarzenia na podstawie metody protokołu Objective-C.

SCNPhysicsField

Stosuje siły do wszystkich obiektów SCNPhysicsBody w danym woluminie.

SCNPhysicsHingeJoint

ScNPhysicsBehavior, który dołącza dwa obiekty SCNPhysicsBody wzdłuż jednej osi.

SCNPhysicsShape

Stała objętość dla scNPhysicsBody. Używane w wykrywaniu kolizji.

SCNPhysicsShapeOptions

Prawidłowe klucze do options tworzenia nowych SCNPhysicsShape wystąpień.

SCNPhysicsShapeOptionsKeys

Definiuje prawidłowe klucze do użycia ze słownikiem przekazanym options do i Create(SCNNode, SCNPhysicsShapeOptions)Create(SCNGeometry, SCNPhysicsShapeOptions) .

SCNPhysicsShapeOptionsTypes

Typ geometryczny skojarzony z SCNPhysicsShapes.

SCNPhysicsSliderJoint

ScNPhysicsBehavior, który łączy dwa obiekty SCNPhysicsBody, umożliwiając im przesuwanie i obracanie się wokół punktów łączących.

SCNPhysicsTest

Prawidłowe opcje do użycia z ContactTest(SCNPhysicsBody, SCNPhysicsBody, NSDictionary)programem .

SCNPhysicsTestKeys

Zawiera wartości, które kontrolują wyszukiwanie, wycofywanie i testowanie kolizji.

SCNPhysicsTestSearchModeKeys

Wylicza wartości, które kontrolują, które wyniki wyszukiwania kolizji są zwracane.

SCNPhysicsVehicle

SCNPhysicsBehavior, który symuluje fizykę pojazdu kołowego.

SCNPhysicsVehicleWheel

Wygląd i cechy fizyczne koła na SCNPhysicsVehicle.

SCNPhysicsWorld

Symulacja fizyki, która modeluje kolizje i inne właściwości związane z fizyką w SCNScene.

SCNPlane

Jest SCNGeometry to prostokątna jednostronna płaszczyzna skończona.

SCNProgram

Wykonuje renderowanie niestandardowe przy użyciu cieniowania napisanych w języku OpenGL Shading Language.

SCNProgramDelegate

Deleguj obiekt dla obiektów SCNProgram.

SCNProgramDelegate_Extensions

Metody rozszerzenia interfejsu ISCNProgramDelegate do obsługi wszystkich metod z protokołu SCNProgramDelegate.

SCNProgramSemanticOptions

Definiuje element MappingChannel do użycia z elementem SetSemantic(NSString, String, SCNProgramSemanticOptions).

SCNPropertyControllers

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNPyramid

Ostrosłup SCNGeometry prostokątny z prawej strony.

SCNReferenceNode

Element SCNNode , który ładuje jego zawartość z pliku sceny.

SCNRenderer

Renderuje scNScene w kontekście OpenGL.

SCNRenderingArguments

Definiuje klucze do użycia z elementami Render(SCNNode, SCNRenderer, NSDictionary) i SetSemantic(NSString, String, SCNProgramSemanticOptions).

SCNRenderingOptions

Element DictionaryContainer definiujący options wystąpienie obiektu SCNView.

SCNReplicatorConstraint

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNScene

Najwyższy poziom opisu sceny 3D.

SCNSceneExportDelegate

Protokół definiujący metody eksportowania sceny do pliku.

SCNSceneExportDelegate_Extensions

Metody rozszerzenia interfejsu ISCNSceneExportDelegate do obsługi wszystkich metod z protokołu SCNSceneExportDelegate.

SCNSceneLoadingOptions

Opcje ładowania sceny.

SCNSceneRenderer

Klasa implementacji interfejsu ISCNSceneRenderer .

SCNSceneRenderer_Extensions

Metody rozszerzenia interfejsu ISCNSceneRenderer do obsługi wszystkich metod z protokołu SCNSceneRenderer.

SCNSceneRendererDelegate

Deleguj obiekt dla klasy SCNRenderer, definiuje metody odzwierciedlają zdarzenia renderowania.

SCNSceneRendererDelegate_Extensions

Metody rozszerzenia interfejsu ISCNSceneRendererDelegate do obsługi wszystkich metod z protokołu SCNSceneRendererDelegate.

SCNSceneSource

Odczytuje dane definiujące scenę z pliku lub obiektu NSData.

SCNSceneSourceLoadErrors

Wylicza typy błędów, które mogą wystąpić podczas ładowania SCNSceneSources.

SCNSceneSourceLoading

Opcje tworzenia i ładowania obiektów SCNScene.

SCNSceneSourceProperties

Klucze metadanych skojarzone z plikiem sceny. Używany z GetProperty(NSString).

SCNShadable

Implementacja .ISCNShadable

SCNShadable_Extensions

Metody rozszerzenia interfejsu ISCNShadable do obsługi wszystkich metod z protokołu SCNShadable.

SCNShaderModifiers

Zawiera DictionaryContainer opcje cieniowania.

SCNShape

Obiekt SCNGeometry utworzony na podstawie ścieżki 2D, opcjonalnie wytłaczany do trzech wymiarów.

SCNSkinner

Uzyskuje dostęp do grafu sceny w obsłudze animacji szkieletowej.

SCNSliderConstraint

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNSphere

To SCNGeometry jest sfera.

SCNTechnique

Udostępnia dodatkowe przebiegi rysunku, z których każdy stosuje cieniowanie.

SCNTechniqueSupport

Implementacja tej funkcji ISCNTechniqueSupport po prostu zawiera odwołanie do obiektu SCNTechnique.

SCNText

Element SCNGeometry oparty na ciągu, opcjonalnie wytłaczany na trzy wymiary.

SCNTimingFunction

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNTorus

Element SCNGeometry , który jest solidny w kształcie pierścienia.

SCNTransaction

Umożliwia zastosowanie niepodzielnego zestawu modyfikacji.

SCNTransformConstraint

Element SCNConstraint , który wykonuje funkcję określającą zmianę transformacji (położenie, rotacja i skalowanie) na węzeł lub węzły.

SCNTube

To SCNGeometry jest cylindra z okrągłym otworem wzdłuż osi środkowej.

SCNView

Element UIView renderujący SCNScenes.

SCNView.SCNViewAppearance

Klasa wyglądu dla obiektów typu SCNView.

Struktury

Nazwisko Opis
SCNMatrix4

Reprezentuje macierz 4x4 przy użyciu układu pamięci głównej kolumny.

SCNQuaternion

Reprezentuje quaternion.

SCNVector3

Reprezentuje wektor 3D przy użyciu trzech liczb zmiennoprzecinkowych o pojedynczej precyzji.

SCNVector4

Reprezentuje wektor 4D przy użyciu czterech liczb zmiennoprzecinkowych o pojedynczej precyzji.

Interfejsy

Nazwisko Opis
ISCNActionable

Umożliwia stosowanie akcji.

ISCNAnimatable

Umożliwia zastosowanie animacji.

ISCNAnimationProtocol

Ten interfejs reprezentuje protokół SCNAnimationObjective-C .

ISCNAvoidOccluderConstraintDelegate

Ten interfejs reprezentuje protokół SCNAvoidOccluderConstraintDelegateObjective-C .

ISCNBoundingVolume

Funkcje definiujące wolumin w przestrzeni 3D.

ISCNBufferStream

Interfejs do zarządzania niestandardowym buforem metalowym cieniowania.

ISCNCameraControlConfiguration

Ten interfejs reprezentuje protokół SCNCameraControlConfigurationObjective-C .

ISCNCameraControllerDelegate

Ten interfejs reprezentuje protokół SCNCameraControllerDelegateObjective-C .

ISCNNodeRendererDelegate

Interfejs definiujący funkcje obiektów delegowanych do dodawania niestandardowego kodu rysunkowego OpenGL.

ISCNPhysicsContactDelegate

Deleguj funkcje obiektów reagujące na dotyk między SCNPhysicsBody obiektami.

ISCNProgramDelegate

Deleguj obiekt dla obiektów SCNProgram.

ISCNSceneExportDelegate

Protokół definiujący metody eksportowania sceny do pliku.

ISCNSceneRenderer

Klasa implementacji interfejsu ISCNSceneRenderer .

ISCNSceneRendererDelegate

Deleguj obiekt dla klasy SCNRenderer, definiuje metody odzwierciedlają zdarzenia renderowania.

ISCNShadable

Implementacja .ISCNShadable

ISCNTechniqueSupport

Implementacja tej funkcji ISCNTechniqueSupport po prostu zawiera odwołanie do obiektu SCNTechnique.

Wyliczenia

Nazwisko Opis
SCNActionTimingMode

Wylicza krzywe szybkości do użycia z obiektami SCNAction .

SCNAnimationImportPolicy

Wylicza zasady importowania animacji.

SCNAntialiasingMode

Wylicza wartości, które kontrolują zachowanie antyaliasingowe.

SCNBillboardAxis

Wyliczenie blokad osi dostępnych dla węzłów ograniczonych przez SCNBillboardConstraintelement .

SCNBlendMode

Wyliczenie sposobów, w jaki zestaw SceneKit może mieszać kolory z materiału z kolorami, które już istnieją w obiekcie docelowym renderowania.

SCNBufferFrequency

Wylicza wartości, które kontrolują, czy programy obsługi są wywoływane na ramkę, na węzeł na ramkę, czy na węzeł na ramkę na zacieniony renderowanie.

SCNCameraProjectionDirection

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNChamferMode

Wylicza sposób SCNShape , w jaki można zawężyć, na przedniej, tylnej lub obu stronach.

SCNColorMask

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNCullMode

Wyliczenie określające, które twarze powierzchni SCNMaterial są renderowane.

SCNDebugOptions

Wylicza opcje nakładki debugowania.

SCNErrorCode

Identyfikuje błędy zgłaszane przez zestaw SceneKit.

SCNFillMode

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNFilterMode

Wyliczanie trybów filtrowania tekstur.

SCNGeometryPrimitiveType

Wyliczenie elementów pierwotnych geometrii 2D.

SCNGeometrySourceSemantics

Wylicza semantyka danych geometrycznych.

SCNHitTestSearchMode

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNInteractionMode

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNLightAreaType

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNLightProbeType

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNLightProbeUpdateType

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNMorpherCalculationMode

Wyliczenie prawidłowej formuły interpolacji dla elementu CalculationMode.

SCNMovabilityHint

Wylicza wartości, które informują zestaw SceneKit, czy węzły mają być przenoszone w czasie.

SCNNodeFocusBehavior

Wylicza stany fokusowe obiektu SCNNode.

SCNParticleBirthDirection

Wylicza początkowy kierunek cząstek emitowanych przez .SCNParticleSystem

SCNParticleBirthLocation

Wyliczenie początkowej lokalizacji cząstek emitowanych przez .SCNParticleSystem

SCNParticleBlendMode

Wyliczenie sposobów, w jaki nakładające się cząstki emitowane przez element SCNParticleSystem będą renderowane.

SCNParticleEvent

Wyliczenie zdarzeń cyklu życia dla cząstek emitowanych przez element SCNParticleSystem. Używany z HandleEvent(SCNParticleEvent, NSString[], SCNParticleEventHandler).

SCNParticleImageSequenceAnimationMode

Wyliczenie trybów odtwarzania dla SCNParticleSystemelementów, których cząstki są renderowane jako sekwencja obrazów.

SCNParticleInputMode

Wylicza, jak właściwość cząstki jest animowana (w okresie istnienia cząstki, ponieważ cząstka przemieszcza się w odległości lub na podstawie innej właściwości). Używany z InputMode.

SCNParticleModifierStage

Wylicza momenty, kiedy modyfikator określony w elem AddModifier(NSString[], SCNParticleModifierStage, SCNParticleModifierHandler) .

SCNParticleOrientationMode

Wylicza wyrównanie cząstek emitowanych przez .SCNParticleSystem Używany z OrientationMode.

SCNParticleSortingMode

Wyliczenie określające kolejność renderowania cząstek emitowanych przez element .SCNParticleSystem

SCNPhysicsBodyType

Wyliczenie określające, czy SCNPhysicsBody element jest dynamiczny, kinematyczny, czy statyczny. Używany z CreateBody(SCNPhysicsBodyType, SCNPhysicsShape).

SCNPhysicsCollisionCategory

Wartości domyślne właściwości kolizji obiektu SCNPhysicsBody.

SCNPhysicsFieldScope

Wylicza wartości określające, czy SCNPhysicsField obiekt ma wpływ na obiekty wewnątrz lub na zewnątrz jego obramowania.

SCNPhysicsSearchMode

Wylicza wartości, które kontrolują, które wyniki wyszukiwania fizyki są zwracane.

SCNPhysicsShapeType

Wyliczenie kategorii dla SCNPhysicsShapes.

SCNReferenceLoadingPolicy

Wylicza możliwe zasady ładowania obiektów SCNReferenceNode .

SCNRenderingApi

Wylicza wartości, które oznaczają interfejsy API Metal lub OpenGLES2.

SCNSceneSourceStatus

Wylicza stany SCNSceneSource.

SCNShadowMode

Wyliczenie kontroluje, kiedy są obliczane cienie.

SCNTessellationSmoothingMode

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNTransparencyMode

Wylicza techniki obliczania przejrzystości.

SCNWrapMode

Wylicza techniki opakowujące tekstury.

Delegaci

Nazwisko Opis
SCNActionNodeWithElapsedTimeHandler

Procedura obsługi ukończenia używana z CustomAction(Double, SCNActionNodeWithElapsedTimeHandler)programem .

SCNAnimationDidStartHandler

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNAnimationDidStopHandler

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNAnimationEventHandler

Procedura obsługi ukończenia do użycia z Create(NFloat, SCNAnimationEventHandler)programem .

SCNBindingHandler

Procedura obsługi ukończenia używana z HandleBinding(String, SCNBindingHandler)programem .

SCNBufferBindingHandler

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNFieldForceEvaluator

Deleguj CustomField(SCNFieldForceEvaluator) dla metody .

SCNNodeHandler

Przestrzeń nazw SceneKit zapewnia grafikę 3D opartą na grafach wysokiego poziomu.

SCNNodePredicate

Delegowanie do użycia z FindNodes(SCNNodePredicate).

SCNParticleEventHandler

Procedura obsługi ukończenia do użycia z HandleEvent(SCNParticleEvent, NSString[], SCNParticleEventHandler)programem .

SCNParticleModifierHandler

Delegat używany jako element handler w pliku AddModifier(NSString[], SCNParticleModifierStage, SCNParticleModifierHandler).

SCNSceneExportProgressHandler

Procedura obsługi kontynuacji, którą zestaw SceneKit wielokrotnie wywołuje podczas eksportowania sceny.

SCNSceneSourceFilter

Deleguj, który testuje obiekty w scenie w celu włączenia.

SCNSceneSourceStatusHandler

Wywołanie zwrotne używane do odzwierciedlenia postępu podczas wykonywania elementu SceneFromOptions(SCNSceneLoadingOptions, SCNSceneSourceStatusHandler).

SCNTransformConstraintHandler

Delegat używany w wywołaniach do .Create(Boolean, SCNTransformConstraintHandler)

Uwagi

Zestaw Sceny to struktura grafiki 3D oparta na hierarchicznych grafach scen.

Podstawowe klasy w zestawie sceny to SCNScene, która przechowuje całą zawartość, i SCNView, UIView która renderuje element SCNScene.

Obiekt SCNScene ma RootNode właściwość typu SCNNode. SCNNode's have ChildNodes and implement System.Collections.Generic.IEnumerable`1<class SceneKit.SCNNode>. SCNNode Właściwości include Camera, typu SCNCamera, typu , Geometrytypu SCNGeometryi Light, typu SCNLight.

Ponadto każdy SCNNode obiekt ma właściwość definiującą Position lokalizację w przestrzeni względem SCNNodewartości ParentNode. Aby zdefiniować wygląd węzła, dołącz element SCNGeometry do węzła (przy użyciu Geometry właściwości), a następnie dodaj SCNMaterial obiekty do geometrii.

W poniższym przykładzie przedstawiono minimalny widok zestawu sceny:

public MySceneView (CGRect 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

Cała geometria w zestawie SceneKit jest opisana przez podklasy :SCNGeometry

SCNCapsule Kapsułka w kształcie pigułki z regulowanymi czapkami końcowymi
SCNCone Stożek, którego górny może być obcięty.
SCNBox Prostokątne pole.
SCNCylinder Cylindra.
SCNFloor Nieskończona płaszczyzna z możliwością odzwierciedlenia geometrii nad nią.
SCNPlane Prostokąt jednostronny.
SCNPyramid Czworokąt.
SCNShape Kształt 2D, który został wytłaczany do drugiego wymiaru.
SCNSphere Piłka.
SCNText Wytłaczany tekst.
SCNTorus Kształt pierścienia.
SCNTube Rozpakowany cylinder.

Ponadto zestaw SceneKit może ładować całe sceny z programu . Pliki DAE z FromFile metodą .

Na koniec deweloperzy mogą tworzyć niestandardową geometrię przy użyciu Create metody z tablicami odpowiednich SCNGeometrySource obiektów i SCNGeometryElement . Poniżej przedstawiono tworzenie niestandardowej piramidy:

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