stringtranslate.com

Kit de escena

SceneKit , a veces representado como Scene Kit , es una interfaz de programación de aplicaciones (API) de gráficos 3D para plataformas de Apple Inc. escrita en Objective-C . Es un marco de alto nivel diseñado para proporcionar una capa fácil de usar sobre las API de nivel inferior como OpenGL y Metal . [1] SceneKit mantiene un gráfico de escena basado en objetos , junto con un motor de física , un sistema de partículas y enlaces a Core Animation y otros marcos para animar fácilmente esa pantalla. Las vistas de SceneKit se pueden mezclar con otras vistas, por ejemplo, permitiendo que una pantalla 2D de SpriteKit se mapee sobre la superficie de un objeto en SceneKit, o un UIBezierPath de Core Graphics para definir la geometría de un objeto SceneKit. SceneKit también admite la importación y exportación de escenas 3D utilizando el formato COLLADA . SceneKit se lanzó por primera vez para macOS en 2012 y para iOS en 2014.

Conceptos básicos

SceneKit mantiene un gráfico de escena basado en un objeto raíz, una instancia de la clase SCNScene. El objeto SCNScene es aproximadamente equivalente a los objetos de visualización que se encuentran en la mayoría de las bibliotecas 2D y está pensado para ser integrado en un contenedor de visualización como una ventana u otro objeto de visualización. El único contenido principal de SCNScene es un enlace al nodo raíz, que apunta a un objeto SCNNode.

Los nodos SCN son el contenido principal de la jerarquía de SceneKit. Cada nodo tiene un nombre y punteros a objetos opcionales de cámara, luz y geometría, así como una matriz de nodos secundarios y un puntero a su propio padre. Una escena típica contendrá un único objeto de escena que apunta a un nodo con un nombre conveniente (a menudo "raíz") cuyo propósito principal es contener una colección de nodos secundarios. Los nodos secundarios se pueden usar para representar cámaras, luces o los diversos objetos de geometría en la escena.

Se puede crear una escena sencilla creando un único objeto SCNGeometry, normalmente con una de las clases constructoras como SCNBox, una única SCNCamera, una o más SCNLights y, a continuación, asignando todos estos objetos a nodos separados. A continuación, se crea un único nodo genérico adicional y se asigna al nodo raíz del objeto SCNScene, y luego se agregan todos los objetos como elementos secundarios de ese nodo raíz. Sin embargo, la cantidad de luces está limitada a 8.

Las escenas SCNS también contienen una serie de controles de interfaz de usuario integrados y bibliotecas de entrada/salida para facilitar enormemente la implementación de visualizadores simples y tareas similares. Por ejemplo, si se configuran los parámetros autoenablesDefaultLighting y allowsCameraControl de la escena como verdaderos y luego se agrega un árbol de objetos leído desde un archivo COLLADA, se producirá contenido visible de complejidad arbitraria con unas pocas líneas de código. La integración con Xcode permite colocar la escena en una ventana en Interface Builder , sin ningún código.

Existe un formato de archivo de almacenamiento Scenekit que utiliza la extensión de nombre de archivo .scn.

Referencias

  1. ^ "SceneKit | Documentación para desarrolladores de Apple".