La parte de la programación que es algo bastante complejo para elegir, primero tenemos que definir para que plataforma vamos a programar, pc, celulares, iphones, web, xbox, e.t.c.Voy a explicar las tecnologías que podemos usar respecto a lo que yo se, seguramente después vamos a ir agregando cosas.
Game Maker es una herramienta de desarrollo rápido de aplicaciones. El programa es gratuito, aunque existe una versión comercial ampliada con características adicionales. Actualmente se encuentra en su versión 8.0. El programa está diseñado para permitir a sus usuarios desarrollar fácilmente videojuegos sin tener que aprender un lenguaje de programación como C++ o Java. Para los usuarios experimentados Game Maker contiene un lenguaje de programación de scripts llamado Game Maker Language (GML), que permite a los usuarios personalizar aún más sus videojuegos y extender sus características.
Para hacer algo bueno en 3D tenemos FpsCreator, Es una herramienta altamente flexible y fácil de usar para crear juegos de acción en primer persona con impresionantes gráficos 3D. Únicamente tienes que utilizar el sencillo editor 3D para dar vida a tus personajes y entornos. Muros, luces, puertas, enemigos, munición, armas y todo tipo de componentes más se introducen con sólo arrastrar el ratón y con increíble precisión. Todos los elementos se vinculan de forma inteligente. Tú simplemente tienes que seleccionarlos y jugar con un clic del ratón. FPS Creator X10 utiliza scripts personalizados para cada elemento del juego. Desde el comportamiento de la IA hasta la forma en que una llave abre la puerta, prácticamente todo está controlado por scripts en lugar del código del programa. Esto significa que, aquellos que quieran meter mano en el código, pueden abrir los archivos de los scripts con cualquier editor de texto y modificarlo. Aunque es perfectamente posible crear un juego complejo y de grandes dimensiones sin introducir una sola línea de código, la opción está ahí para quienes quieran mayor nivel de control.
Obviamente hay muchísimos programas como estos pero no nos vamos a expandir mucho en estos temas.
C++ es un lenguaje excelente para crear juegos debido a su potencia y flexibilidad. Utilizando Visual C++ y una librería gráfica , se puede escribir juegos en código nativo o código administrado. Esta flexibilidad le permite crear su juego en la plataforma con la que se sienta más cómodo. No obstante, crear un buen juego es un desafío que está fuera del ámbito de este paseo guiado.
Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET el cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes. C# fue diseñado para combinar el control a bajo nivel de lenguajes como C y la velocidad de programación de lenguajes como Visual Basic. Es una parte esencial de la plataforma .Net, C# combina los mejores elementos de múltiples lenguajes de amplia difusión como C++, Java, Visual Basic o Delphi. De hecho, su creador Anders Heljsberg fue también el creador de muchos otros lenguajes y entornos como Turbo Pascal, Delphi o Visual J++. La idea principal detrás del lenguaje es combinar la potencia de lenguajes como C++ con la sencillez de lenguajes como Visual Basic, y que además la migración a este lenguaje por los porgramadores de C/C++/Java sea lo más inmediata posible.
Delphi es otra opción que podemos tener a la hora de programar juegos para PC. Delphi es una opción viable para el desarrollo? Sí, definitivamente. Está siendo desarrollado activamente, y hay una buena parte 3 de los componentes que hay. Usted probablemente puede recibir una aplicación de acabado mucho más rápido en Delphi entonces un montón de otras herramientas. Es grande para el desarrollo general de aplicaciones de Windows y las aplicaciones de base de datos. Para los juegos, los controladores de dispositivo o el desarrollo de aplicaciones incrustadas YMMV. Delphi es un producto, no un lenguaje, mas bien es la implementación de Object Pascal de la empresa Borland, es un producto de software que integra un IDE (Integrated Developement Environment, Entorno Integrado de Desarrollo), un Compilador de Object Pascal y un Depurador. Debido a que es el mas famoso y usado de los compiladores Object Pascal mucha gente cuando habla de Delphi está hablando en realidad de la implementación en Delphi del lenguaje Object Pascal, para todo los casos practicos Delphi y Object Pascal tienen significados equivalentes aunque no identicos, de todas formas yo, cuando hable de Delphi haré referencia tanto al producto de Borland como al lenguaje Object Pascal, excepto cuando explícitamente así lo indique.
Basicamente el lenguaje Java nos sirve para desarrollar aplicaciones para celulres y dispositivos móviles. La primer aplicación, y quizás más lucrativo hasta la fecha, fue el uso de la mensajería SMS (Short Message Service). Nuestros pequeños terminales nos permiten enviar mensajes cortos de texto (hasta un tamaño de 160 caracteres) que son enviados desde el terminal al centro servidor de mensajes cortos o SMSC (Short Message Service Centre), que a su vez se encarga de hacer llegar el mensaje al móvil destinatario. El lenguaje Java es un lenguaje completamente orientado a objetos. Todo en Java es un objeto. La versatilidad y eficiencia de la tecnología Java, la portabilidad de su plataforma y la seguridad que aporta, la han convertido en la tecnología ideal para su aplicación a redes. De portátiles a centros de datos, de consolas de juegos a superequipos científicos, de teléfonos móviles a Internet, Java está en todas partes. Java ha sido probado, mejorado, ampliado y probado por una comunidad especializada de más de 6,5 millones de desarrolladores, la mayor y más activa del mundo. Gracias a su versatilidad, eficiencia y portabilidad, Java se ha convertido en un recurso inestimable ya que permite a los desarrolladores:
- Desarrollar software en una plataforma y ejecutarlo en prácticamente cualquier otra plataforma
- Crear programas para que funcionen en un navegador web y en servicios web
- Desarrollar aplicaciones para servidores como foros en línea, tiendas, encuestas, procesamiento de formularios HTML, etc.
- Combinar aplicaciones o servicios que usan el lenguaje Java para crear servicios o aplicaciones totalmente personalizados
- Desarrollar potentes y eficientes aplicaciones para teléfonos móviles, procesadores remotos, productos de consumo de bajo coste y prácticamente cualquier tipo de dispositivo digital
PHP es un acrónimo recursivo ºque significa PHP Hypertext Pre-processor (inicialmente PHP Tools, o, Personal Home Page Tools). Con PHP basicamente podemos hacer paginas webs, pero hace un tiempos se impuso una moda de hacer juegos con este lenguaje, se pueden hacer juegos tipo tetris, osea simples, o la moda que se impuso es hacer juegos, donde se muestren imágenes, y se vaya contando una historia, por ejemplo tipo age of empires pero sin animaciones, solo imágenes y texto, se maneja con base de datos para poder obtener recursos, grabar partidas, obtener experiencia, e.t.c.
Objective-C es un lenguaje orientado a objetos. Comparado con C++, la gramática es mucho más sencilla y concisa. Sus raíces, además de C, se pueden encontrar en Smalltalk.
La importancia de Objective-C es cada vez mayor, pues es el lenguaje de programación de toda la plataforma de Apple (Macintosh, iPod, iPhone).
Para mi gente Javera, verán que Objective-C es a veces un poco extraño, pero si se tiene cuidado de aprender las principales diferencias, uno puede llegar a querer rápidamente a este lenguaje.
El ambiente de desarrollo de Apple, XCode, hace que programar en Objective-C sea muy pero muy cómodo. Las librerias que Apple entrega son un ejemplo de diseño y buen gusto, así como las herramientas de Debug, emuladores, etc.
Es necesario aprender un poco de C y saber programar en cualquier lenguaje antes de ver detalles de Objective-C.
En el próximo post vamos a hablar sobre librerías gráficas y de sonido que podemos usar para complementar estos lenguajes de programación.