Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

NSCoder - Metal

418 vues

Publié le

Presentación de Juan Carlos Ricalde Poveda (@jucaripo) dando una introducción a la programación gráfica con Metal

Publié dans : Technologie
  • Soyez le premier à commenter

NSCoder - Metal

  1. 1. NSCoders
 México Metal 
 Framework Por Juan C. Ricalde Poveda
 A.K.A. “jucaripo”
 CTO FricMartinez.com NSCoder Nights
  2. 2. ¿Que es el Metal Framework? Metal 
 Framework NSCoders
 México
  3. 3. ¿Que es el Metal Framework? Metal 
 Framework NSCoders
 México Metal es un Api que te da  acceso al GPU, lo que te permite maximizar los gráficos y  potenciar tus aplicaciones de iOS 8. # Metal es una API simplificada, para  shaders precompilados, y  da apoyo para un uso eficiente  de la Multitarea "multi-threading”,#  Metal puede llevar tus gráficos  al siguiente nivel de rendimiento y capacidad.
  4. 4. Metal 
 Framework NSCoders
 México El Framework de metal esta diseñado para optimizar las aplicaciones 3D, es un API liviana y esta realizada para los procesadores A7 y posteriores.
  5. 5. Metal 
 Framework NSCoders
 México IOS y los Graficos por Computadora
  6. 6. Metal 
 Framework NSCoders
 México
  7. 7. Metal 
 Framework NSCoders
 México OpenGL (Open Graphics Library) es una especificación estándar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan gráficos 2D y 3D. La interfaz consiste en más de 250 funciones diferentes que pueden usarse para dibujar escenas tridimensionales complejas a partir de primitivas geométricas simples, tales como puntos, líneas y triángulos. Fue desarrollada originalmente por Silicon Graphics Inc. (SGI) en 19922
  8. 8. Metal 
 Framework NSCoders
 México OpenGL ES (OpenGL for Embedded Systems) es una variante simplificada de la API gráfica OpenGL diseñada para dispositivos integrados tales como teléfonos móviles, PDAs y consolas de videojuegos. La define y promueve el Grupo Khronos, un consorcio de empresas dedicadas a hardware y software gráfico interesadas en APIs gráficas y multimedia.# # En IOS se usa # # https://developer.apple.com/library/ios/documentation/3DDrawing/Conceptual/ OpenGLES_ProgrammingGuide/Introduction/Introduction.html
  9. 9. Metal 
 Framework NSCoders
 México WebGL1 es una especificación estándar que está siendo desarrollada actualmente para mostrar gráficos en 3D en navegadores web. El WebGL permite mostrar gráficos en 3D acelerados por hardware (GPU) en páginas web, sin la necesidad de plug-ins en cualquier plataforma que soporte OpenGL 2.0 u OpenGL ES 2.0. Técnicamente es un API para javascript que permite usar la implementación nativa de OpenGL ES 2.0 que será incorporada en los navegadores. WebGL es gestionado por el consorcio de tecnología sin ánimo de lucro Khronos Group .
  10. 10. Metal 
 Framework NSCoders
 México Metal se puede programar en Swift
  11. 11. Metal 
 Framework NSCoders
 México EL HOLA MUNDO DE METAL CON SWIFT EL objetivo de esta platica es comenzar a usar las bases del framework 3D con Metal. // Se requiere de la libreria SceneKit para poder trabajar con 3D import SceneKit
  12. 12. Metal 
 Framework NSCoders
 México // Crear objeto vista let sceneView = SCNView( frame: view.frame) Empezamos por crear la vista de la escena y la escena // Crear escena let scene = SCNScene() // asignar escena a la vista sceneView.scene = scene
  13. 13. Metal 
 Framework NSCoders
 México Empezamos por crear la vista de la escena y la escena Esto le dice a IOS como generar una vista 3D que trabajara con el GPU #
  14. 14. Metal 
 Framework NSCoders
 México Configuramos la app para que ponga la camara y las luces // configurar Luces , camara y estadisticas sceneView.autoenablesDefaultLighting = true sceneView.allowsCameraControl = true sceneView.showsStatistics = true
  15. 15. Metal 
 Framework NSCoders
 México Creamos un modelo, en este caso una caja // crear cajita let box = SCNBox(width: 10, height: 10, length: 10, chamferRadius: 0)
  16. 16. Metal 
 Framework NSCoders
 México Que es un modelo 3D
  17. 17. Metal 
 Framework NSCoders
 México Como se definan los vertices
  18. 18. Metal 
 Framework NSCoders
 México Transformaciones en vertices
  19. 19. Metal 
 Framework NSCoders
 México Asignar un Nodo al modelo y posicionarlo // asignar nodo a escena let boxNode = SCNNode(geometry: box) boxNode.position = SCNVector3(x: 250, y: 150, z: 460) scene.rootNode.addChildNode(boxNode)
  20. 20. Metal 
 Framework NSCoders
 México Asignar una lampara y la coloreamos // luces let light = SCNLight() light.color = UIColor.redColor() let lightNode = SCNNode() lightNode.light = light // posicion de la lampara lightNode.position = SCNVector3(x: -30, y: 30, z: 60) // agregamos el nodo de luz a la escena scene.rootNode.addChildNode(lightNode)
  21. 21. Metal 
 Framework NSCoders
 México Mostramos la ventana 3d en nuestra vista. // mostrar la vista en el dispositivo view.addSubview(sceneView)
  22. 22. Metal 
 Framework NSCoders
 México Es este codigo realmente Metal. # # No pero si……..????
  23. 23. Metal 
 Framework NSCoders
 México Este codigo si es Metal. # # Mostar demo
  24. 24. Metal 
 Framework NSCoders
 México continuara…

×