La realización de un juego implica el uso de diferentes herramientas, metodologías, etcétera; estos puntos son importantes ya que de estos depende el camino que se tomara para la creación del videjuego, que generalmente son 2 diferentes metodologías:
- Crear el juego 100% desde cero, es decir, programar absolutamente todo lo que este relacionado con el juego: inteligencia artificial, animacion, texturas, sonido, modelado de personajes y escenarios, sistemas encargado de la fisica del juego, motores de renderizacion, de hecho primero se tiene que crear el motor gráfico con todas las características y después proceder.
- Usar un motor gráfico, que es, tomar una especie de kit donde se envuelven todas la herramientas necesarias para la creación del videjuego, donde todo esta integrado para trabajar de una manera mas "fácil", donde ya se está establecido y probado al 100% los motores de renderizacion, de la fisica, la inteligencia artificial, practicamente solo se centrarían en seguir el guión del juego.
Cabe mencionar que una buena idea antes de comenzar cualquier desarrollo de un videojuego, es conveniente establecer una especie de guión a seguir con la historia del juego, los limites de éste, las personalidades y aspectos de los personajes, interacción entre ellos, descripción de los escenarios, y todo lo que pueda a ayudar a tener en claro como queremos que sea la versión final de nuestro juego (que si tendrá y que no tendrá) esto para centrarse completamente en el desarrollo y no estar batallando al mismo tiempo con la historia, aspectos, etc.
Herramientas para crear un juego desde cero
Para desarrollar un juego de esta forma es necesario contar por lo menos con conocimientos acerca de una herramienta para el modelado y animación de los personajes o escenarios (2D, 2.5D, 3D) y un lenguaje de programación el cual se encargará de manejar todo lo creado con las herramientas de diseño, es decir, la animación.
El lenguaje más utilizado en el ámbito de los videojuegos es por mucho C++, debido a que puede acceder de una manera muy rápida al hardware de la plataforma (PC, Consolas).
Aunque C++ es el más utilizado no es el único, ya que se usan infinidad de lenguajes como el reciente LUA conocido por ser usado(o combinado con otro) en juegos como World of Warcraft, GTA: San Adreas o Angry Birds.
Otro lenguaje muy común para nosotros (tal ves en el desarrollo de videojuegos comerciales no lo es) es Python ya que debido a su facilidad de manejo y su amplio campo de aplicación, es un fuerte candidato para su uso en la categoría de desarrollo de videojuegos; cuenta con una variedad de librerías que sirven de apoyo para el desarrollo de videojuegos tales como: PyGame y PyGlet.
En cuanto a las actividades de modelado/diseño de los personajes y escenarios pueden llevarse acabo en ambientes o suite de animación, dentro de las más conocidas están: Maya, 3DS Max.
La mayorá de estos de paga, aunque existen otros gratuitos (tal ves de menos calidad o con menos aceptación) como: SketchUp, Blender(compatible con Python).
Existen también algunas API´s, las cuales su objetivo es el de facilitar este tipo de desarrollos:
OpenGL, DirectX, Renderman.
Desarrollo de videojuegos usando un motor gráfico
Para esta manera de desorrollo solo es necesario contar con un motor gráfico y su elección dependerá del lenguaje de programación que se desee usar durante el desarrollo. Solo es necesario apegarse al guión del juego y olvidarse de la programación del motor de la física, renderizado y todos los demas ya que un motor gráfico de distribución ya cuenta con estas herramientas (probadas y garantizadas).
Unreal Engine
Un motor gráfico potente y que ya tiene más que probado su buen funcionamiento(en juegos como Gear of War y Batman AA) es el motor de la compañía desarrolladora Epic, conocido como Unreal Engine, el cual actualmente cuenta con una licencia de desarrollo para estudiantes que es gratuita e inclusive se puede lucrar con los proyectos creados en este sin tener que pagar a Epic (siempre y cuando las ganancias no superen los 5000 USD).
Un motor gráfico potente y que ya tiene más que probado su buen funcionamiento(en juegos como Gear of War y Batman AA) es el motor de la compañía desarrolladora Epic, conocido como Unreal Engine, el cual actualmente cuenta con una licencia de desarrollo para estudiantes que es gratuita e inclusive se puede lucrar con los proyectos creados en este sin tener que pagar a Epic (siempre y cuando las ganancias no superen los 5000 USD).
El motor es multiplataforma, asi que se puede desarrollar juegos para PC, Xbox360, PS3, Wii, Android, iOS.
El lenguaje de programación utilizado para desarrollar dentro de este motor es un lenguaje propio llamado UnrealScript(inspirado en Java y C++), pero también se puede usar C++.
El kit de Unrela Engine o UDK, incluye las siguientes herramientas:
Los requerimientos mínimos para el desarrollo bajo UE son:
- Windows XP SP3 or Windows Vista
- 2.0+ GHz processor
- 2 GB system RAM
- SM3-compatible video card
- 3 GB Free hard drive space
Demo de Unreal Engine
http://www.youtube.com/watch?v=YNNhZrE1KN8
Ogre 3D
Otro motor con menos popularidad dentro del mundo comercial, pero que tambien tiene un gran potencial es el motor Ogre 3D (que como su nombre lo indica tiene la posibilad de desarrollar juegos en 3D), el cual cuenta con una licencia gratuita y es uno de los motores mas usados dentro del desarrollo de juegos de bajo nivel o por principiantes (como nosotros).
Es utilizado para el desarrollo de juegos en PC(Windows, Linux, Mac OSX)
Para desarrollar dentro de este motor se puede usar C++, Python, C#, .NET, Java.
Algunas herramientas que utiliza Ogre 3D:
Sonido - SDL_mixer
Red - SDL_net
Motor de Física - Bullet
Entrada del usuario - herramienta SDL o OIS (Object Input Oriented System)
Los requerimientos base son:
- NVidia: Geforce2 or higher required, Geforce 4(non-mx) or higher recommended
- ATI: Radeon 7500 or higher required, Radeon 9600 or higher recommended
Demo de Ogre 3D
http://www.youtube.com/watch?v=woHZRUlOQqo
Pilas
Un último motor un poco débil, pero que cuenta con buenos proyectos es Pilas, que en su mayoría los juegos creados en este motor son juegos en 2D, su licencia es gratuita (lgplv3).
Una ventaja o desventaja (según sea el caso) es que esta totalmente en español, por lo que podría facilitar a algunos el trabajo.
Se puede desarrollar para PC en los diferentes SO: Windows, GNU/Linux.
El lenguaje que se utiliza para desarrollar en este motor es Python.
En cuanto a los requerimientos para desarrollar en este motor no parecen ser muy exigentes, ya que solo se desarrollan juegos en 2D, pero sería una buena idea tomar como referencia los requerimientos mínimos para el UE para no quedarnos atorados en el proceso.
Un juego creado con Pilas
http://www.youtube.com/watch?v=kBsjie9DNWY
El motor de física de Pilas
www.youtube.com/watch?v=sEWCCHWJ638
__________________________________________________________________________
Enlaces:
www.pygame.org/
www.pyglet.org
www.lua.org
http://es.wikipedia.org/wiki/Blender
http://es.wikipedia.org/wiki/Maya_%28aplicaci%C3%B3n_gr%C3%A1fica%29
http://programmers.stackexchange.com/questions/60544/why-do-game-developers-prefer-windows/88055#88055
http://unreales.forumcommunity.net
http://www.unrealengine.com/udk
http://www.ogre3d.org/
http://www.pilas-engine.com.ar/
http://www.ogre3d.org/
http://www.pilas-engine.com.ar/
No hay comentarios:
Publicar un comentario