SceneKit Espace de noms
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau.
Classes
_SCNShaderModifiers |
Dictionnaire d’extraits de code de nuanceur. |
SCNAccelerationConstraint |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNAction |
Effectue des actions sur un SCNNode, y compris les modifications apportées à l’apparence, à la géométrie, aux animations ou aux fonctions arbitraires. |
SCNActionable |
Autorise l’application d’actions. |
SCNActionable_Extensions |
Méthodes d’extension à l’interface ISCNActionable pour prendre en charge toutes les méthodes du SCNActionable protocole. |
SCNAnimatable |
Permet d’appliquer des animations. |
SCNAnimatable_Extensions |
Méthodes d’extension à l’interface ISCNAnimatable pour prendre en charge toutes les méthodes du SCNAnimatable protocole. |
SCNAnimatableExtensions |
Méthodes d’extension pour ISCNAnimatable. |
SCNAnimation |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNAnimationEvent |
Exécute une fonction à un moment spécifique au cours d’une animation. |
SCNAnimationPlayer |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNAudioPlayer |
Contient un SCNAudioSource ou AVAudioNode pour une utilisation avec l’audio positionnel. |
SCNAudioSource |
Source audio réutilisable pour l’audio positionnel dans les scènes SceneKit. |
SCNAvoidOccluderConstraint |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNAvoidOccluderConstraintDelegate |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNAvoidOccluderConstraintDelegate_Extensions |
Méthodes d’extension à l’interface ISCNAvoidOccluderConstraintDelegate pour prendre en charge toutes les méthodes du SCNAvoidOccluderConstraintDelegate protocole. |
SCNBillboardConstraint |
Contraint automatiquement un SCNNode afin qu’il pointe toujours vers le nœud de rendu actuel. |
SCNBoundingVolume |
Fonctions qui définissent un volume dans un espace 3D. |
SCNBox |
dont SCNGeometry les visages sont tous des rectangles. |
SCNCamera |
Spécifie une caméra, avec des attributs tels que champ d’affichage et profondeur de vue. |
SCNCameraController |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNCameraControllerDelegate |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNCameraControllerDelegate_Extensions |
Méthodes d’extension à l’interface ISCNCameraControllerDelegate pour prendre en charge toutes les méthodes du SCNCameraControllerDelegate protocole. |
SCNCapsule |
SCNGeometry qui est un cylindre avec des extrémités plafonnées. |
SCNCone |
SCNGeometry qui est un frustum circulaire. Ou, un chapeau de fête. |
SCNConstraint |
Ajuste automatiquement la transformation d’un nœud. |
SCNCylinder |
SCNGeometry qui est un cylindre circulaire droit. |
SCNDistanceConstraint |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNErrorCodeExtensions |
Méthodes d’extension pour l’énumération SceneKit.SCNErrorCode. |
SCNFloor |
SCNGeometry qui est un plan infini. |
SCNGeometry |
Classe de base pour les objets geometry SceneKit |
SCNGeometryElement |
Combine des informations sur les sommets et une primitive de dessin. Mappe à une seule commande de dessin envoyée au GPU. |
SCNGeometrySource |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
SCNGeometrySourceSemantic |
Énumère les attributs du mode vertex. |
SCNGeometryTessellator |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNHitTest |
Constantes à utiliser avec l’argument |
SCNHitTestOptions |
Options de configuration pour les tests d’accès dans SCNNode et SCNSceneRenderer |
SCNHitTestResult |
Informations sur le SCNNode (le cas échéant) situé à un point spécifique ou le long d’un rayon. |
SCNIKConstraint |
SCNConstraint qui applique la cinématique inverse. |
SCNJavaScript |
Classe statique qui contient une méthode pour exporter des modules JavaScript. |
SCNLayer |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNLevelOfDetail |
Contrôle d’autres géométries rendues aux seuils dans l’espace du monde ou dans l’espace d’écran. |
SCNLight |
Source de lumière utilisée pour tous les SCNLightTypes. |
SCNLightAttribute |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNLightingModel |
Constantes à utiliser avec la propriété P:SceneKit.SCNMaterial.LightingModel , qui définit la façon dont les lumières et les matériaux se combinent pour produire une couleur rendue particulière. |
SCNLightType |
Énumère les types de SCNLight. |
SCNLookAtConstraint |
SCNConstraint qui oriente un nœud pour pointer vers un autre nœud. |
SCNMaterial |
Spécifie les caractéristiques d’éclairage et d’ombrage de la surface d’un SCNGeometry. |
SCNMaterialProperty |
Configure les différentes propriétés (telles que la couleur et la texture) d’un SCNMaterial. |
SCNMorpher |
Transformation animée d’un SCNGeometry en un ou plusieurs objets SCNGeometry cibles. |
SCNNode |
Nœud dans le graphique de scène. |
SCNNodeRendererDelegate |
Interface définissant des fonctions d’objet délégué pour l’ajout de code de dessin OpenGL personnalisé. |
SCNNodeRendererDelegate_Extensions |
Méthodes d’extension à l’interface ISCNNodeRendererDelegate pour prendre en charge toutes les méthodes du SCNNodeRendererDelegate protocole. |
SCNParticleProperty |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNParticlePropertyController |
Anime une propriété des particules émises par un SCNParticleSystem. |
SCNParticleSystem |
Émet de petits sprites dont les comportements sont spécifiés par le développeur. |
SCNPhysicsBallSocketJoint |
SCNPhysicsBehavior qui permet à deux objets SCNPhysicsBody de pivoter l’un autour de l’autre. |
SCNPhysicsBehavior |
Contrôle le comportement d’un ou plusieurs objets SCNPhysicsBody. |
SCNPhysicsBody |
Ajoute la simulation physique à un SCNNode. |
SCNPhysicsConeTwistJoint |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNPhysicsContact |
Comment deux objets SCNPhysicsBody sont en contact l’un avec l’autre. |
SCNPhysicsContactDelegate |
Déléguer des fonctions d’objet répondant aux touches entre SCNPhysicsBody les objets.. |
SCNPhysicsContactDelegate_Extensions |
Méthodes d’extension à l’interface ISCNPhysicsContactDelegate pour prendre en charge toutes les méthodes du SCNPhysicsContactDelegate protocole. |
SCNPhysicsContactEventArgs |
Fournit des données pour les DidUpdateContactévénements E:SceneKit.SCNPhysicsContactEventArgs.DidEndContact et E:SceneKit.SCNPhysicsContactEventArgs.DidUpdateContact . |
SCNPhysicsField |
Applique des forces à tous les objets SCNPhysicsBody dans un volume donné. |
SCNPhysicsHingeJoint |
SCNPhysicsBehavior qui attache deux objets SCNPhysicsBody le long d’un axe unique. |
SCNPhysicsShape |
Volume solide pour un SCNPhysicsBody. Utilisé dans la détection de collision. |
SCNPhysicsShapeOptions |
Clés valides pour le |
SCNPhysicsShapeOptionsKeys |
Définit des clés valides à utiliser avec le |
SCNPhysicsShapeOptionsTypes |
Type géométrique associé SCNPhysicsShapeà s. |
SCNPhysicsSliderJoint |
SCNPhysicsBehavior qui connecte deux objets SCNPhysicsBody, leur permettant de glisser et de pivoter autour de leurs points de connexion. |
SCNPhysicsTest |
Options valides à utiliser avec M:SceneKit.SCNPhysicsWorld.ContactTest*. |
SCNPhysicsTestKeys |
Contient des valeurs qui contrôlent la recherche, l’élimination de la face arrière-plan et les tests de collision. |
SCNPhysicsTestSearchModeKeys |
Énumère les valeurs qui contrôlent les résultats de la recherche de collision qui sont retournés. |
SCNPhysicsVehicle |
SCNPhysicsBehavior qui simule la physique d’un véhicule à roues. |
SCNPhysicsVehicleWheel |
Apparence et caractéristiques physiques d’une roue sur un SCNPhysicsVehicle. |
SCNPhysicsWorld |
Simulation physique qui modélise les collisions et d’autres propriétés liées à la physique dans un SCNScene. |
SCNPlane |
SCNGeometry qui est un plan fini rectangulaire uni-latéral. |
SCNProgram |
Effectue un rendu personnalisé à l’aide de nuanceurs écrits en langage de shading OpenGL. |
SCNProgramDelegate |
Objet Délégué pour les objets SCNProgram. |
SCNProgramDelegate_Extensions |
Méthodes d’extension à l’interface ISCNProgramDelegate pour prendre en charge toutes les méthodes du SCNProgramDelegate protocole. |
SCNProgramSemanticOptions |
Définit le MappingChannel à utiliser avec SetSemantic(NSString, String, SCNProgramSemanticOptions). |
SCNPropertyControllers |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNPyramid |
qui SCNGeometry est une pyramide rectangulaire droite. |
SCNReferenceNode |
SCNNode qui charge son contenu à partir d’un fichier de scène. |
SCNRenderer |
Restitue un SCNScene dans un contexte OpenGL. |
SCNRenderingArguments |
Définit des clés à utiliser avec Render(SCNNode, SCNRenderer, NSDictionary) et SetSemantic(NSString, String, SCNProgramSemanticOptions). |
SCNRenderingOptions |
DictionaryContainer qui définit |
SCNReplicatorConstraint |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNScene |
Description la plus élevée d’une scène 3D. |
SCNSceneExportDelegate |
Protocole qui définit des méthodes pour gérer l’exportation d’une scène vers un fichier. |
SCNSceneExportDelegate_Extensions |
Méthodes d’extension à l’interface ISCNSceneExportDelegate pour prendre en charge toutes les méthodes du SCNSceneExportDelegate protocole. |
SCNSceneLoadingOptions |
Options pour le chargement des scènes. |
SCNSceneRenderer |
Classe d’implémentation de l’interface ISCNSceneRenderer . |
SCNSceneRenderer_Extensions |
Méthodes d’extension à l’interface ISCNSceneRenderer pour prendre en charge toutes les méthodes du SCNSceneRenderer protocole. |
SCNSceneRendererDelegate |
L’objet Délégué pour la classe SCNRenderer, définit les méthodes reflète les événements de rendu. |
SCNSceneRendererDelegate_Extensions |
Méthodes d’extension à l’interface ISCNSceneRendererDelegate pour prendre en charge toutes les méthodes du SCNSceneRendererDelegate protocole. |
SCNSceneSource |
Lit les données de définition de scène à partir d’un fichier ou d’un objet NSData. |
SCNSceneSourceLoadErrors |
Énumère les types d’erreurs qui peuvent se produire lors du chargement SCNSceneSourcede s. |
SCNSceneSourceLoading |
Options de création et de chargement d’objets SCNScene. |
SCNSceneSourceProperties |
Clés de métadonnées associées à un fichier de scène. Utilisé avec GetProperty(NSString). |
SCNShadable |
Implémentation de ISCNShadable. |
SCNShadable_Extensions |
Méthodes d’extension à l’interface ISCNShadable pour prendre en charge toutes les méthodes du SCNShadable protocole. |
SCNShaderModifiers |
contenant DictionaryContainer des options pour les nuanceurs. |
SCNShape |
créé SCNGeometry à partir d’un chemin 2D, éventuellement extrudé en trois dimensions. |
SCNSkinner |
Accède au graphique de scène pour prendre en charge l’animation du squelette. |
SCNSliderConstraint |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNSphere |
qui SCNGeometry est une sphère. |
SCNTechnique |
Fournit des passes de dessin supplémentaires, chacune d’elles appliquant un nuanceur. |
SCNTechniqueSupport |
Implémentation de ISCNTechniqueSupport qui contient simplement une référence à .SCNTechnique |
SCNText |
SCNGeometry basé sur une chaîne, éventuellement extrudé en trois dimensions. |
SCNTimingFunction |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNTorus |
qui SCNGeometry est un solide en forme d’anneau. |
SCNTransaction |
Permet d’appliquer un ensemble de modifications de manière atomique. |
SCNTransformConstraint |
SCNConstraint qui exécute une fonction spécifiant une modification de la transformation (position, rotation et mise à l’échelle) en un ou plusieurs nœuds. |
SCNTube |
SCNGeometry qui est un cylindre avec un trou le long de son axe central. |
SCNView | |
SCNView.SCNViewAppearance |
Classe d’apparence pour les objets de type SCNView. |
Structures
SCNMatrix4 |
Matrice 4x4. |
SCNQuaternion |
Représente un quaternion et contient des méthodes qui fonctionnent sur eux. |
SCNVector3 |
Vecteur à 3 composants. |
SCNVector4 |
Vecteur à 4 composants. |
Interfaces
ISCNActionable |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNActionable. |
ISCNAnimatable |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNAnimatable. |
ISCNAnimationProtocol |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
ISCNAvoidOccluderConstraintDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNAvoidOccluderConstraintDelegate. |
ISCNBoundingVolume |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNBoundingVolume. |
ISCNBufferStream |
Interface permettant de gérer la mémoire tampon Metal d’un nuanceur personnalisé. |
ISCNCameraControlConfiguration |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
ISCNCameraControllerDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNCameraControllerDelegate. |
ISCNNodeRendererDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNNodeRendererDelegate. |
ISCNPhysicsContactDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNPhysicsContactDelegate. |
ISCNProgramDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNProgramDelegate. |
ISCNSceneExportDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNSceneExportDelegate. |
ISCNSceneRenderer |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNSceneRenderer. |
ISCNSceneRendererDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNSceneRendererDelegate. |
ISCNShadable |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNShadable. |
ISCNTechniqueSupport |
Interface représentant les méthodes requises (le cas échéant) du protocole SCNTechniqueSupport. |
Énumérations
SCNActionTimingMode |
Énumère les courbes de débit à utiliser avec SCNAction des objets. |
SCNAnimationImportPolicy |
Énumère les stratégies d’importation d’animation. |
SCNAntialiasingMode |
Énumère les valeurs qui contrôlent le comportement anti-attirail. |
SCNBillboardAxis |
Énumération des verrous d’axes disponibles pour les nœuds limités par SCNBillboardConstraint. |
SCNBlendMode |
Énumération des façons dont SceneKit peut mélanger les couleurs d’un matériau avec les couleurs qui existent déjà dans la cible de rendu. |
SCNBufferFrequency |
Énumère les valeurs qui contrôlent si les gestionnaires sont appelés par image, par nœud par image ou par nœud par image et par trame en nuance. |
SCNCameraProjectionDirection |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNChamferMode |
Énumère les façons dont un SCNShape peut être chanfreiné; à l’avant, à l’arrière ou des deux côtés. |
SCNColorMask |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNCullMode |
Énumération déterminant les visages d’une surface SCNMaterial qui sont rendus. |
SCNDebugOptions |
Énumère les options de superposition de débogage. |
SCNErrorCode |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNFillMode |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNFilterMode |
Énumération des modes de filtrage de texture. |
SCNGeometryPrimitiveType |
Énumération des primitives géométriques 2D. |
SCNGeometrySourceSemantics |
Énumère la sémantique des données geometry. |
SCNHitTestSearchMode |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNInteractionMode |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNMorpherCalculationMode |
Énumération de formules d’interpolation valides pour CalculationMode. |
SCNMovabilityHint |
Énumère les valeurs qui indiquent à SceneKit si les nœuds sont censés se déplacer au fil du temps. |
SCNNodeFocusBehavior |
Énumère les états pouvant être concentrés d’un SCNNode. |
SCNParticleBirthDirection |
Énumère la direction initiale des particules émises par un SCNParticleSystem. |
SCNParticleBirthLocation |
Énumération de l’emplacement initial des particules émises par un SCNParticleSystem. |
SCNParticleBlendMode |
Énumération des façons dont les particules qui se chevauchent émises par un SCNParticleSystem seront rendues. |
SCNParticleEvent |
Énumération des événements de cycle de vie des particules émises par un SCNParticleSystem. Utilisé avec HandleEvent(SCNParticleEvent, NSString[], SCNParticleEventHandler). |
SCNParticleImageSequenceAnimationMode |
Énumération des modes de lecture pour SCNParticleSystemles s dont les particules sont rendues sous la forme d’une séquence d’images. |
SCNParticleInputMode |
Énumère la façon dont une propriété de particule est animée (au cours de la durée de vie de la particule, au fur et à mesure que la particule se déplace sur une distance, ou en fonction d’une autre propriété). Utilisé avec InputMode. |
SCNParticleModifierStage |
Énumère les moments où le modificateur spécifié dans AddModifier(NSString[], SCNParticleModifierStage, SCNParticleModifierHandler) doit être appliqué. |
SCNParticleOrientationMode |
Énumère l’alignement des particules émises par un SCNParticleSystem. Utilisé avec OrientationMode. |
SCNParticleSortingMode |
Énumération spécifiant l’ordre dans lequel les particules émises par un T:SceneKit.SCNParticleScene sont rendues. |
SCNPhysicsBodyType |
Énumération spécifiant si le SCNPhysicsBody est dynamique, cinématique ou statique. Utilisé avec CreateBody(SCNPhysicsBodyType, SCNPhysicsShape). |
SCNPhysicsCollisionCategory |
Valeurs par défaut pour les propriétés de collision d’un SCNPhysicsBody. |
SCNPhysicsFieldScope |
Énumère les valeurs spécifiant si un SCNPhysicsField affecte des objets à l’intérieur ou à l’extérieur de sa bordure. |
SCNPhysicsSearchMode |
Énumère les valeurs qui contrôlent les résultats de la recherche physique retournés. |
SCNPhysicsShapeType |
Énumération des catégories pour SCNPhysicsShapes. |
SCNReferenceLoadingPolicy |
Énumère les stratégies de chargement possibles pour les SCNReferenceNode objets. |
SCNRenderingApi |
Énumère les valeurs qui signifient les API Metal ou OpenGLES2. |
SCNSceneSourceStatus |
Énumère les états d’un SCNSceneSource. |
SCNShadowMode |
Contrôle de l’énumération lors du calcul des ombres. |
SCNTessellationSmoothingMode |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNTransparencyMode |
Énumère les techniques de calcul de la transparence. |
SCNWrapMode |
Énumère les techniques d’habillage de texture. |
Délégués
SCNActionNodeWithElapsedTimeHandler |
Gestionnaire d’achèvement utilisé avec CustomAction(Double, SCNActionNodeWithElapsedTimeHandler). |
SCNAnimationDidStartHandler |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNAnimationDidStopHandler |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNAnimationEventHandler |
Gestionnaire de saisie semi-automatique à utiliser avec Create(nfloat, SCNAnimationEventHandler). |
SCNBindingHandler |
Gestionnaire d’achèvement utilisé avec HandleBinding(String, SCNBindingHandler). |
SCNBufferBindingHandler |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNFieldForceEvaluator |
Délégué pour la CustomField(SCNFieldForceEvaluator) méthode. |
SCNNodeHandler |
L’espace de noms SceneKit fournit des graphiques 3D basés sur des graphiques de scène de haut niveau. |
SCNNodePredicate |
Délégué à utiliser avec EnumerateChildNodes(SCNNodePredicate). |
SCNParticleEventHandler |
Gestionnaire de saisie semi-automatique à utiliser avec HandleEvent(SCNParticleEvent, NSString[], SCNParticleEventHandler). |
SCNParticleModifierHandler |
Délégué utilisé comme |
SCNSceneExportProgressHandler |
Gestionnaire de continuation que SceneKit appelle à plusieurs reprises lors de l’exportation d’une scène. |
SCNSceneSourceFilter |
Délégué qui teste les objets de la scène à des fins d’inclusion. |
SCNSceneSourceStatusHandler |
Rappel utilisé pour refléter la progression pendant l’exécution de SceneFromOptions(SCNSceneLoadingOptions, SCNSceneSourceStatusHandler). |
SCNTransformConstraintHandler |
Délégué utilisé dans les appels à Create(Boolean, SCNTransformConstraintHandler). |
Remarques
Scene Kit est un framework pour les graphiques 3D, basé sur des graphiques de scène hiérarchiques.
Les classes de base dans Scene Kit sont SCNScene, qui contient tout le contenu, et T:CoreGraphics.SceneKit.SCNView, un UIView qui affiche un SCNScene.
A SCNScene une RootNode propriété de type SCNNode. SCNNodeont P:SceneKit.SCNNode.ChildNodes et implémentent System.Collections.Generic.IEnumerable`1<class MonoTouch.SceneKit.SCNNode>
. Propriétés de SCNNode include Camera, de type SCNCamera, Geometry, de type SCNGeometryet Light, de type SCNLight.
En outre, chaque SCNNode a une Position propriété qui définit un emplacement dans l’espace SCNNodeParentNode par rapport aux et P:SceneKit.SCNNode.FirstMaterial et P:SceneKit.SCNNode.Materials qui créent l’apparence SCNNodede .
L’exemple suivant montre une vue minimale du Kit de scènes :
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);
}
Géométrie
Toutes les géométries dans SceneKit sont décrites par les sous-classes de SCNGeometry:
SCNCapsule | Capsule en forme de pilule avec embouts réglables | |
SCNCone | Cône dont le sommet peut être tronqué | |
SCNBox | Une boîte rectangulaire. | |
SCNCylinder | Cylindre. | |
SCNFloor | Plan infini avec la possibilité de refléter la géométrie au-dessus de celui-ci. | |
SCNPlane | Rectangle unilatétré. | |
SCNPyramid | Un tétraèdre. | |
SCNShape | Forme 2D qui a été extrudée dans la 3e dimension. | |
SCNSphere | Une balle. | |
SCNText | Texte extrudé. | |
SCNTorus | Forme de beignet. | |
SCNTube | Cylindre débordé. |
En outre, SceneKit peut charger des scènes entières à partir de . Fichiers DAE avec la FromFile méthode .
Enfin, les développeurs peuvent créer une géométrie personnalisée à l’aide de la méthode M:SceneKit.SCNGeometry.Create(SceneKit.SCNGeometrySource[], SceneKit.SCNGeometryElement[]* avec des tableaux d’objets et SCNGeometryElement appropriésSCNGeometrySource. Voici la création d’une pyramide personnalisée :
//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 });