NSCoder - Metal Collada

17
NSCoders México Metal Framework Collabra Import Por Juan C. Ricalde Poveda A.K.A. “jucaripo” CTO FricMartinez.com y FricAnimation.com NSCoder Nights

Transcript of NSCoder - Metal Collada

Page 1: NSCoder - Metal Collada

NSCodersMéxico

Metal Framework Collabra Import

Por Juan C. Ricalde Poveda A.K.A. “jucaripo”

CTO FricMartinez.com y FricAnimation.com

NSCoder Nights

Page 2: NSCoder - Metal Collada

NSCodersMéxico

Desarrollo de un Visor de Modelos 3D para IOS usando el formato Collada y OpenGL ES

Page 3: NSCoder - Metal Collada

NSCodersMéxico

¿Quien usa colgada? ? - Desarrolladores 3D - Artistas 3D - Desarrolladores de Video Juegos - Cualquiera que desea crear 3D

Page 4: NSCoder - Metal Collada

NSCodersMéxico

Tecnologia involucrada.

- Xcode 6 - IOS 8 Scene Kit, Metal

Page 5: NSCoder - Metal Collada

NSCodersMéxico

Hola , Collada Viewer

Si deseas bajar el codigo en GitHub https://github.com/jucaripo/ColladaModelViewer

Page 6: NSCoder - Metal Collada

NSCodersMéxico

¿Que es COLLADA? COLLADA (COLLAborative Design Activity), formato del archivo de intercambio para modelos 3D.

COLLADA es un Schema XML standard para modelos 3D.actualmente es manejado por el Grupo Khronos, quien se encarga de los estándares OpenGL, OpenGL ES.

El formato fue creado por Sony Computer Entertainment por Rémi Artaud y Mark C. Barnes.este fue liberado al Grupo Kronos y usa la licencia SCEA Shared Source License.

en Marzo del 2011 el Grupo Khronos lanza un Test suite para poder importar y exportar al formato Collada archivo.dae

el sitio oficial de Collada es http://collada.org

Page 7: NSCoder - Metal Collada

NSCodersMéxico

¿Que programas pueden soportan collada ? • 3ds Max (ColladaMax) • Adobe Photoshop • Allplan • ArtiosCAD • Blender • Bryce • Carrara • Cheddar Cheese Press (model processor) • Chief Architect Software • Cinema 4D (MAXON) • CityEngine • CityScape • Clara.io • Cura • DAZ Studio • E-on Vue 9 xStream • Esko Studio • FreeCAD • FormZ • GPure • Houdini (Side Effects Software)

• iBooks Author • LightWave 3D (v 9.5) • MakeHuman • Maya (ColladaMaya) • MeshLab • Mobile Model Viewer (Android) • Modo • Okino PolyTrans for bidirectional Collada conversions • OpenRAVE • Poser Pro (v 7.0) • Presagis Creator • Robot Operating System • SAP Visual Enterprise Author • Shade 3D (E Frontier, Mirye) • SketchUp (v 8.0) – KMZ file is a zip file containing a KML file • Softimage|XSI • Strata 3D • Ürban PAD • Vectorworks • Visual3D Game Development Tool for Collada scene • Wings 3D • Xcode (v 4.4)

Page 9: NSCoder - Metal Collada

NSCodersMéxico

¿Como lo puedo usar en IOS ?

Scene Kit (Objective-C) - An Objective-C framework introduced in OS X 10.8 Mountain Lion that allows reading, high-level manipulation and display of COLLADA scenes.

Scene Kit is a 3D-rendering Objective-C framework that combines a high-performance rendering engine with a high-level, descriptive API. Scene Kit supports the import, manipulation, and rendering of 3D assets without requiring the exact steps to render a scene the way OpenGL does.

At a GlanceWith Scene Kit you can:

• Import COLLADA 3D objects and build scenes composed by cameras, lights, and meshes. • Manipulate the bounding volumes, geometry, and materials used in a scene. • Load 3D content using an interexchange format supported by all major content creations apps (using DAE (digital

asset exchange) files.• Add live interaction with loaded 3D content. • Integrate your app with other OS X technologies such as Core Animation and GLKit to add overlays and textures for

the 3D objects in your scenes.• Use Xcode to preview, inspect, and adjust DAE files for Scene Kit to help integrate them into your app.

Page 10: NSCoder - Metal Collada

NSCodersMéxico

Scene Kit que puede hacer

Page 11: NSCoder - Metal Collada

NSCodersMéxico

Scene Kit que puede hacer https://developer.apple.com/library/ios/documentation/SceneKit/Reference/SceneKit_Framework/

Class / Protocol Description

SCNView & SCNSceneRenderer A view that displays (or renders) SceneKit content and a protocol that defines important methods for use with SceneKit views.

SCNScene The container for all SceneKit content. You load a scene from a file created in a 3D authoring tool or create one programmatically, then display it in a view.

SCNNode The basic building block of a scene. A hierarchy of nodes defines the logical structure of a scene, and you provide visible content by attaching geometries, lights, and cameras to nodes.

SCNGeometry A three-dimensional object that can be attached to a node. A geometry (sometimes called a model or mesh) defines only the form or shape for a visible object. To define the surface appearance of the object you attach materials to it.

SCNMaterial A reusable definition of surface appearance properties for an object. Materials specify how a surface is colored or textured and how it responds to lights in the scene.

SCNLight A light source that can be attached to a node, providing shading in the rendered scene.

SCNCamera A virtual camera that can be attached to a node, providing a point of view for rendering a scene.

Page 12: NSCoder - Metal Collada

NSCodersMéxico

Que compone un archivo collada.

Page 13: NSCoder - Metal Collada

NSCodersMéxico

Ejemplo de archivos

En la carpeta art.scnassets

Se encuentran los archivos .dae de colada y los .png de las texturas de los modelos.

Page 14: NSCoder - Metal Collada

NSCodersMéxico

Ver como muestra el archivo Xcode

Page 15: NSCoder - Metal Collada

NSCodersMéxico

Ver como muestra el archivo Xcode preview

Page 16: NSCoder - Metal Collada

NSCodersMéxico

Ver como muestra el archivo Xcode Source Code

Page 17: NSCoder - Metal Collada

NSCodersMéxico

¿Preguntas…?