Sie sind auf Seite 1von 4

Gua aprender programar videojuegos con C++

Escrito por adrigm el 24 de febrero de 2012 en Desarrollo Videojuegos, Programacin | 11 Comentarios.

Si me preguntaran sobre cual es el mejor lenguaje para programar videojuegos, dira que depende. Depende del prposito, plataforma, tipo de juego y un sin fin de detalles ms. Pero si me dijeran que dijera el ms general, el ms usado, el ms potente y en el que estn hechos la mayora de las superproducciones de las grandes compaas dira C++ sin pensrmelo dos veces. C++ es el lenguaje por excelencia en el mundo de los videojuegos debido a que combina el bajo nivel y la eficiencia que da C con la programacin orientada a objetos que es casi imprescindible en la programacin de videojuegos. El problema es que para los recin llegados al mundo de la programacin empiezan a investigar y mucha gente les mete miedo diciendo que C++ es muy complejo y que no es un buen lenguaje para comenzar, esto es una verdad a medias, es cierto que hay lenguajes de ms alto nivel que simplifican ciertas cosas a cambio de sacrificar control y eficiencia, pero por lo menos en mi caso eso es mucho peor para aprender. Me explico, cuando uno est aprendiendo tienen que entender el porqu de las cosas, cual es la finalidad de esto o lo otro, porque mejor usar este tipo de dato o este otro. Eso con lenguajes de alto nivel se pierde, te abstraen tanto del hardware y el bajo nivel que no comprendes porque se usan ciertas cosas. Se aprende porque s y no se est aprendiendo realmente como funcionan las cosas. Con C++ tienes que comprender que es lo que est haciendo el ordenador y porque las cosas se hacen as. Yo sinceramente aprendo mejor las cosas cuando entiendo el porqu que cuando de me dicen: simplemente es as. As que animo a todos los nuevos programadores a no tener miedo y a empezar a programar con C++ y a entender las cosas. Muchas veces nos dicen que son complejas, pero no es cierto al fin y al cabo la programacin es sencilla, se complica cuando se empieza a abstraer y abstraer, pero de eso ya habr tiempo.

Otro de los grandes escollos una vez se decide empezar con C++ es el temido Por dnde empezar muchos potenciales programadores se desaniman al poco tiempo porque no encuentran algo que les ensee desde cero o se desmotivan viendo que tienen simples programas de consola, Ellos quera programar videojuegos, no letras blancas sobre un fondo negro! Sobre esto ltimo no puedo ayudar mucho, es la nica forma de empezar, es muy difcil aprender conceptos bsicos con aplicaciones grficas. Sobre lo primero voy a intentar ayudar sobre el cmino que yo seguira. En la red hay mucha documentacin para aprender a programar videojuegos, la mayora como sabrs, en ingls (es lo que hay) de todas maneras en esta comunidad tratamos de generar y recomendar contenido en espaol y voy a intentar que as sea en esta pequea gua de como aprender a programar videojuegos con C++.

1. Aprende C++
Parece obvio, pero a veces no lo es tanto. Para empezar basta con usar un editor de texto con el que generar los ficheros fuentes y un complidador, yo recomiendo el compilador gnu gcc (g++ para C++) y el IDE Codelite. Pero eso es cuestin de cada uno, hay muchos IDE y compiladores C++. Una ves tengas eso necesitas un manual/curso/tutorial de C++ que te ensee desde el principio. Puedes comprar un libro (hay muchos y muy buenos) buscar alguno en ings en google (tambin los hay muy buenos), pero como dijimos antes vamos a tratar de darte una opcin en espaol. Yo te recomiendo el curso de ConClase es muy popular y de los mas visitados en la red, un curso completo de C++ en espaol y gratuito.

http://c.conclase.net/curso/

A la vez que aprendes C++ te recomiendo que busques y leas mucho acerca de Algoritmos, mtodos de programacin y estructuras de datos. Lee y lee mucho pues es la nica forma de aprender. Una web que debera tener a mano todo programador de C++ es la siguiente, contiene toda la referencia de las bibliotecas estndar de C++, es bueno tenerla a mano siempre.

http://www.cplusplus.com/reference/ (ingls)

2. La STL
Una vez te defiendas con C++ a un nivel bsico te dars cuenta que hacer ciertas cosas es algo tedioso, existe una coleccin de Bibliotecas que son un Standard de C++ y que la mayora de los compiladores actuales trae llamada STL, La STL es casi fundamental para no

volverte loco cuando los programas se vuelven complejos y necesitas tipos de datos avanzados. Descubrirs que contiene plantillas que facilitan el uso de tipos de datos avanzados como cadenas, vectores, diccionarios y un largo etctera de utilidades. A continuacin dejo algunos documentos muy tiles para aprender a usar la STL.

http://geneura.ugr.es/~gustavo/stl/stl.html http://decsai.ugr.es/~jfv/ed1/c++/cdrom4/paginaWeb/stl.htm http://www.zator.com/Cpp/E5.htm http://gabarro.org/wiki/STL_vector http://mictlan.utm.mx/arreglos.html

3. Vamos a por los juegos


Aunque espero que durante las etapas anteriores hayas tenido imaginacin y empezaras a crear tus propios juegos en modo consola tales como ahorcados, adivina el nmero, hundir la flota, etc. Ha llegado la parte de empezar con aplicaciones grficas. Aqu uno debe elegir que camino tomar. Para los videojuegos el camino sera aprender a usar una biblioteca 2D. Muchos se desilusionan en este punto nueva mente porque ellos quieren hacer super juegos 3D que compitan con el ltimo juego de moda, pero primero se debe aprender a caminar para despus correr. Aprender como se trabaja en un proyecto de videojuego y con bibliotecas externas, aprender a usar imgenes y conceptos de programacin grfica. Existen varias bibliotecas grficas con las que empezar, pero mi recomendacin es SDL, tiene bastante reputacin en el mundo de los videojuegos 2D, es simple y existe mucha documentacin. En este apartado es cuando es ms difcil encontrar documentacin en espaol, pero existe un gran trabajo en espaol en forma de wiki perfecto para comenzar en este maravilloso mundo.

http://softwarelibre.uca.es/wikijuegos/

Esto estupendo tutorial no se limita a mostrat y explicar las caractersticas de SDL, sino que trata de explicar el buen uso de la misma y finalmente tiene el desarrollo de un videojuego paso a paso. Totalmente recomendada para iniciarse con grficos.

4. Sigue aprendiendo
A estas alturas ya habrs aprendido una base y sabrs que camino debes seguir, que cosas debes aprender y como tienes que moverte. En todo momento tienes que estar leyendo, documentndote y aprendiendo es la nica forma de poder entrar en este mundo del desarrollo de videojuegos que est avanzando cada da. Para eso te recomiendo un par de webs sobre programacin de videojuegos, desgraciadamente, la mayora en ingls.

http://gpwiki.org/ Impresindible tenerla en favoritos para todo programador de videojuegos. La wiki por excelencia del desarrollo de videojuegos. http://www.gamedev.net/ Otra muy importante, comunidad muy activa, te enterars de las ltimas novedades y en los foros siempre hay alguien dispuesto ayudar, siempre que sepas ingls. http://www.gamasutra.com/ A tener muy encuenta, ofertas de trabajo, grandes artculos Aadela a tu lista de webs a mirar cada da. http://www.stratos-ad.com/ La comunidad ms grande de desarrollo en espaol. Puedes encontrar muy buenas cosas en los foros. http://www.google.com/ No no es coa, est es la ms importante de todas. Lo de arriba es una gua para comenzar, pero te surgirn miles de dudas a cada paso que des. Google es tu amigo, lo sabe casi todo y lo resuelve casi todo si sabes buscar bien. Aprende si no sabes a usar todos los trucos de google. Un programador y ms uno de videojuegos debe ser autodidacta y aprender a buscarse la vida en este competitivo y apasionante mundo.

Espero que te sirva de algo esta pequea gua si quieres adentrarte en el mundo de la programacin de videojuegos y no sabias como hacerlo.

Bibliografa http://www.micronosis.com/mis-recomendaciones-para-desarrollar-un-juego-v-20/ http://wikis.uca.es/wikijuegos/w/index.php?title=Portada http://www.mgp-peru.com/diseno-programacion-videojuegos.php http://www.u-tad.com/masteres/programacion-videojuegos/ http://mexico.sae.edu/programas/licenciaturas/programacion-de-videojuegos http://www.taringa.net/posts/apuntes-y-monografias/15171226/Aprende-programacion-devideojuegos-sin-salir-de-este-post_.html

Das könnte Ihnen auch gefallen