Desarrollando un motor propio - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

Desarrollando un motor propio

Description:

Haciendo mi tercer motor en ratos libres: Win, Linux, Mac, NDS. Programador ... Nodes: Entity, Camera, Billboard, Lights, ParticleEmitter, Mesh, AnimatedMesh, ... – PowerPoint PPT presentation

Number of Views:28
Avg rating:3.0/5.0
Slides: 17
Provided by: Ager54
Category:

less

Transcript and Presenter's Notes

Title: Desarrollando un motor propio


1
Desarrollandoun motor propio
  • Eloy Ribera
  • eloyribera_at_gmail.com

2
Y este tío quién es?
  • Desarrollador amateur desde el instituto.
  • Andor Studios (www.andorstudios.com)
  • NoticiasJuegos (www.noticiasjuegos.com)
  • Haciendo mi tercer motor en ratos libres Win,
    Linux, Mac, NDS.
  • Programador de videojuegos.

3
Desarrollando un motor propio
  • Antes de empezar
  • Vale, por dónde empiezo?
  • Desarrollando el motor
  • Mantenimiento
  • Resumen
  • Preguntas y debate

4
Antes de empezar
  • Dominas el lenguaje... Inglés?
  • Qué nivel de programación tienes?
  • Tienes los conocimientos que necesitas?
  • Para qué plataformas? Win, Linux, Mac, DS, 360,
    PSP, iPhone, móviles...
  • Estudia otros motores, por ejemplo...

5
Antes de empezar
  • Irrlicht (irrlicht.sf.net)
  • Torque (www.garagegames.com)
  • OGRE (www.ogre3d.org)
  • Panda3D (www.panda3d.net)
  • ...
  • www.devmaster.net
  • Open Source O

6
Antes de empezar
  • Haz un DAFO de cada motor.
  • Tras estudiar los motores, saca conclusiones qué
    es cómodo y qué no.
  • Qué objetivos persigues al realizar tu motor?
  • Realmente necesitas crear un motor?

7
Vale, por dónde empiezo?
  • Apúntate a clases de inglés.
  • Lee libros sobre la materia.
  • Internet está llena de tutoriales, pero has de
    saber adaptarlos.
  • Adopta un estilo de programación.
  • Olvídate de salir los fines de semana!

8
Vale, por dónde empiezo?
  • A qué tipo de juego va destinado el motor?
  • Qué features quieres o necesitas?
  • Para qué plataformas?
  • En cuánto tiempo y cuántas personas?
  • Planificación sistemas, clases...

9
Desarrollando el motor
  • CORE
  • Math vector2, vector3, matrix4, plane, etc...
  • Managers ResourceManager, InputManager...
  • Cadenas, listas, contenedores... Usad la STL si
    podéis!
  • Consejos
  • OOP.
  • Templates.
  • Código limpio.
  • Ojo a las particularidades de cada plataforma.

10
Desarrollando el motor
  • GFX
  • Render Renderer, VertexTypes...
  • Mesh Meshes, MeshManager, Loaders...
  • Material Color, Texture, Material,
    TextureManager...
  • Consejos
  • Usa interfaces y después implementa para cada
    plataforma.
  • Sin warnings!
  • Managers imprescindibles.

11
Desarrollando el motor
  • GFX Scene2D
  • Image2D Posición, tamaño, textura, color...
  • GUI TextBox, Checkers, Buttons, Scroll de texto,
    fade-in, fade-out, movimiento de controles...
  • Consejos
  • 43 vs 169
  • Se ha de ver bien en cualquier resolución.
  • Padres e hijos han de llevarse bien.
  • Quién ha de verse por encima de quién?

12
Desarrollando el motor
  • GFX Scene3D
  • Nodes Entity, Camera, Billboard, Lights,
    ParticleEmitter, Mesh, AnimatedMesh, Terrain,
    SkyBox, etc...
  • Visibilidad.
  • Updates y Renders.
  • Consejos
  • Empezar con una cámara y una malla.
  • Ir ampliando hasta tener una escena con todos los
    tipos.
  • Ojo a la partición del espacio.
  • Sencillez vs Eficiencia.

13
Desarrollando un motor
  • Input
  • Específico para cada plataforma ?
  • Eventos quien quiera enterarse, que se registre.
  • Soportar diferentes dispositivos.
  • Audio
  • No te compliques, usa librerías (Fmod, Bass,
    IrrKlang, Audiere, OpenAL...)
  • Algunos sonidos han de sonar en la escena
    (relación con Scene2D y Scene3D).

14
Mantenimiento
  • El motor no está terminado si no tiene
    documentación.
  • Añadir features de una en una.
  • Algunas posibles scripting, shaders, normal
    mapping... Y localización!
  • ...
  • Dar uso al motor haz juegos!

15
Resumen
  • Observa lo que hay.
  • Planificación.
  • Empieza por lo básico.
  • NO reinventes la rueda.
  • NO añadas features porque sí.
  • Usa tu motor para hacer juegos!

16
Preguntas y debate
Eloy Ribera eloyribera_at_gmail.com
Write a Comment
User Comments (0)
About PowerShow.com