Your SlideShare is downloading. ×
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
ECImag 2010 - Clase 2/5
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

ECImag 2010 - Clase 2/5

254

Published on

ECImag 2010 - Estrategias y tendencias en el Desarrollo de Motores de Juegos. Julio 2010. Clase 2.

ECImag 2010 - Estrategias y tendencias en el Desarrollo de Motores de Juegos. Julio 2010. Clase 2.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
254
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Permite a los programadores y a los artistas tomar decisiones y no pisarse los cayitos…
  • Transcript

    • 1. Estrategias y Tendencias en el desarrollo de motores para juegos
      Lic. Federico A. Lois
    • 2. Nos enfocaremos en
      Tendencias en el desarrollo de Motores AAA
      Entorno de desarrollo que integra o abstrae de forma coherente los componentes críticos necesarios para el desarrollo de un videojuego AAA, con assets 3D, sonido de alta definición para Consolas Next-Gen y PCs de alta gama.
    • 3. Los motores 3D suelen proveer
      soluciones genéricas para:
      Editores
      de mundo
      Inteligencia
      Artificial
      Networking
      Audio
      Física de
      cuerpo rígido
      Scripting
      Servicios de
      Rendering
      Desarrollo
      Multiplataforma
    • 4. Ecuación del Rendering
      𝐿𝑜𝑥,𝜔,𝜆,𝑡=𝐿𝑒𝒙,𝜔,𝜆,𝑡+ Ω𝑓𝑟𝒙,𝜔′,𝜔,𝜆,𝑡𝐿𝑖(𝒙,𝜔′,𝜆,𝑡)(−𝜔′∙𝒏)ⅆ𝜔′
       
      Source: Immel et al, Kajiya (1986)
      Y eso que no considera:
      - Fosforecencia
      - Fluorescencia
      - Interferencias
      - Subsurface Scattering
    • 5. Source: GPU Gems 3 (Capítulo 14)
    • 6. Renderers
      Forward Renderers
      - Single Pass Rendering
      - Multi Pass Rendering
      Deffered Renderers
      Simulation Based Renderers
    • 7. Simulation Based Renderers
      Source: Maxwell Render
    • 8.
    • 9. La década en Renderers
      560 polygons
      4x 256 textures
      2,500 polygons
      2x 1024 textures
      12,000 base
      2x 2048 textures
    • 10. Forward Renderers
      Single Pass Rendering
      For each Object
      Render [aplicando todas las luces]
      Explosión Combinatoria de Shaders
      Shadow Maps en memoria
      Ciclos de GPU perdidos
      - Overdraw y Objetos Invisibles.
      - Triangulos fuera de la influencia de la luz.
    • 11. Forward Renderers
      Shaders para cada material y tipo de luz
      Ciclos de GPU perdidos
      - Overdraw y Objetos Invisibles.
      - Triangulos fuera de la influencia de la luz.
      - Trabajo repetido
      Multi Pass Rendering
      For each Light
      For each Object[afectado por esa luz]
      framebuffer += Ilum(Object) [contribución de luz]
    • 12. Deffered Renderers
      For each Object
      Render de la superficie en el G-Buffer
      For each Light y Pixel Iluminado
      Usar G-Buffer para computar iluminación.
      Agregar resultado al frame buffer.
      Shaders más sencillos.
      Escala con el número de pixels iluminados.
      No soporta objetos transparentes.
    • 13. Killzone 2: Deferred Renderer
      - RGBA8 para color.
      - Standard Depth y Stencil Buffer
      - Normal Buffer
      - XY Motion Vectors
      - Specular Exponent
      - Specular Intensity
      - Diffuse Color
      Source: Killzone 2 Renderer
    • 14. Source: Killzone 2 Renderer
    • 15. Source: Killzone 2 Renderer
    • 16. Source: Killzone 2 Renderer
    • 17. Source: Killzone 2 Renderer
    • 18. Source: Killzone 2 Renderer
    • 19. Source: Killzone 2 Renderer
    • 20. Source: Killzone 2 Renderer
    • 21. Source: Killzone 2 Renderer
    • 22. Killzone 2: Deferred Renderer
      Luces renderizadas como geometría.
      Por cada luz…
      - Encontrar y marcar los pixels visibles.
      - Si la luz contribuye a la escena.
      - Renderizar Shadow Map.
      - Sumar contribución al framebuffer.
      Single Pass Forward Renderer para transparencias
      - Shaders para 4 uberlights.
      - Sin sombras
      - Para partículas, vertex lighting.
    • 23. Killzone 2: Deferred Renderer
      Postprocesamiento para efectos
      - Corrección de colores
      - Sombras
      - Mid-tones
      - Highlights, etc
      - Motion Blur, Depth of Field
      - Lens reflections
      - Film grain filter
    • 24. Killzone 2: Deferred Renderer
      Pros:
      - Estructura de datos comprimida
      - Muchos atributos extras
      - Permite MSAA con soporte de hardware
      - Soporte para muchas luces dinámicas.
      Contras:
      - Precisión limitada para rango dinámico
      - Acumulación de iluminación en gamma space
      - Se podría usar otro espacio de color (LogLuv)
      - Descompresión y compresión de atributos.
      - Todo es renderizado con el mismo modelo de iluminación(phong).
    • 25. Halo Wars Terrain Renderer
      Engine para Xbox360.
      Foco en la experiencia visual.
      Foco en sacar ventaja del hardware.
      Foco en los avances del género.
      Bonfire, nuevo estudio, nuevo engine.
      Source: GDC 2009 The Terrain of Next Gen
    • 26. Source: GDC 2009 The Terrain of Next Gen
    • 27. El terreno ocupa 70% al 98% de la pantalla
      Eliminar el sistema de acantilados de AOE3.
      Incrementar 8x la resolución.
      Permitir full displacement
      Source: GDC 2009 The Terrain of Next Gen
    • 28. Height Fields
      Source: GDC 2009 The Terrain of Next Gen
    • 29. Vector Field
      Source: GDC 2009 The Terrain of Next Gen
    • 30.
    • 31.
    • 32. Problemas
      400 MB
      Mayor uso de memoria.
      4k x 4k vertices
      ¿Performance?
      ¿¿¿En serio???
      Creación del Contenido
      Source: GDC 2009 The Terrain of Next Gen
    • 33. Compresión al rescate
      Wavelets y DXT
      Descompresión en GPU
      Remover alta frecuencia
      Incrementar el tile spacing y reducir cantidad
      Densidad máxima 2k x 2k
      14 MB
      Reducir el espacio del mundo
      Tamaño máximo 1280x1280
      Source: GDC 2009 The Terrain of Next Gen
    • 34. Al servicio de Ud!!!
      Cambio Repentino: Soportar Cámara FPS
      …Más problemas… Demasiada Densidad
      Level of Detail
      Source: GDC 2009 The Terrain of Next Gen
    • 35.
    • 36.
    • 37. ¿Más problemas?
      NO, al menos de rendering
    • 38. Bienvenido al SimRep
      LOD para simulación
      VisRep en GPU
      SimRep en CPU
      Height Field para Ray Casting
      4 versiones
      a distintas densidades
      Source: GDC 2009 The Terrain of Next Gen
    • 39.
    • 40.
    • 41.
    • 42.
    • 43. Texturas de 10k x 10k
      5 canales de texturas
      12 canales de blending
      No lo suficientemente rápido
      Composición y Compresión en GPU
      Manejo de cache
      “Efficient Cache Replacement using Age and Cost metrics”
      Game Programming Gems 7
      Source: GDC 2009 The Terrain of Next Gen
    • 44.
    • 45.
    • 46.
    • 47.
    • 48. Conclusiones
      - Los Vector Fields son faciles de implementar
      - Tesselation por hardware es el futuro de los terrenos.
      - La separación VisRep y SimRep es genial
      - Cuidado al incrementar la densidad
      - Innovar requiere más de una solución.
      ¿Por que seguimos usando Height Fields?
      Source: GDC 2009 The Terrain of Next Gen

    ×