|
|
|
|
Una
de las dudas que recibo con más
frecuencia de la gente que ya tiene una
cierta soltura programando es "Me gustaría crear un juego,
¿cómo lo hago?"
No es algo fácil, y de hecho los juegos actuales son
desarrollados por grandes
grupos de personas: programadores, grafistas, expertos en sonido, etc.
Aun así, puede ser interesante tener las nociones
básicas, para poder crear
cada uno "sus propios juegos", más sencillos que los juegos
comerciales,
pero con mucho más valor emocional... y a veces incluso
más entretenidos
que los caros juegos comerciales.
Por eso, he recopilado los cursos que conozco, que estén
relacionados con
la programación de videojuegos.
|
- IPJ
(Introducción a
la programación de juegos),
por Nacho Cabanes, en
español, en formato
HTML, centrado en lenguaje C y C++, con comentarios sobre la
conversión a
Pascal (ya disponible) y a Java (apenas comenzada). La
intención es
crear juegos
sencillos para Windows, Linux y Dos. El contenido lo puedes ver un poco más
abajo. Disponible
la versión 0.21,
en formato CHM (Ayuda de Windows 98) comprimida en un fichero ZIP
de 406 Kb de
tamaño. Tienes
también la versión 0.13 convertida a formato PDF,
comprimida en un
fichero ZIP de 467
Kb de tamaño, sólo
recomendable si no usas Windows. Este curso está en plena remodelación,
lo estoy revisando desde el primer tema y procurando que todos los
ejemplos (o casi) funcionen en C, Pascal y Java, ya desde el
primer apartado. Si quieres ver cómo avanza esta
versión,
la puedes consultar
en línea
(incluye 8 apartados por ahora).
- El CPV
(Curso de Programación
de Videojuegos), creado por Jesús Angel Sánchez
Mena y
Benjamín Moreno Palacios.
Está en español y diseñado para MsDos.
Utiliza
lenguaje Pascal, e incluye
fragmentos en ensamblador y algunas rutinas C. Están
disponibles
las entregas
1 a 5 en formato HTML para consultar en
línea, y para descargar en un
fichero ZIP de 219 Kb
. En la página
de Paco Priego se puede
descargar el curso original (6 entregas),
así
como un visor para Windows creado por él.
- PcGPE
es la PC Games Programmer
Encyclopedia (enciclopedia del programador de juegos), con
información sobre
cómo trabajar en modo gráfico, cómo
leer el
ratón y el joystick o cómo crear
muchos efectos, como fuegos, rotaciones, perspectivas, sombreados, etc.
Orientado
a MsDos. La mayoría de los fuentes están en
Pascal, con
rutinas en ensamblador
(incluye una pequeña introducción a este
último
lenguaje). En inglés. Está
comprimido en un
fichero ZIP de 720 K de
tamaño.
- El curso "Programación
de juegos
con Java 2D" te
enseña a crear un Space Invaders en 29
pasos. Lo tienes
en www.planetalia.com/cursos
- También
tienes el curso "Programación
de juegos para móviles con J2ME"
para consultar on-line en www.programacion.com/java/tutorial/ags_j2me,
o bien en formato PDF en la web de su autor www.agserrano.com/publi.html
- En Código
Verde (www.codigoverde.com)
también tienes
un Space Invaders desarrollado paso a paso, junto con otros juegos para
descargar con sus fuentes y enlaces sobre programación de
juegos.
- Un curso de
programación de
juegos con Div Games Studio
se puede encontrar en
eltutor.iespana.es/eltutor/secciones/prog/juegos
- El libro "Java
Graphics and
Gaming" (en fase beta) se puede
descargar en fivedots.coe.psu.ac.th/~ad/jg/
- El curso
(incompleto) "Java Game
Development Tutorial"
está en www.javacooperation.gmxhome.de/TutorialStartEng.html
- El libro "Programming
Linux
Games" está
disponible en formato PDF en www.overcode.net/~overcode/writing/plg/
- Si quieres
información sobre
programación de juegos
en Pascal (en
inglés),
puedes mirar también en www.pascalgamedevelopment.com
(apoyada en Free Pascal y en Delphi).
|
Toma de contacto:
¿Por qué este curso? Condiciones de
uso.¿Cómo puedo colaborar?
¿Qué herramientas emplearemos?
Temas ya preparados:
1. Preparando las
herramientas
(cómo instalar DJGPP y Allegro).
2. Entrando a modo
gráfico y
dibujando (y su versión en Pascal y en Java).
3. Leyendo del
teclado y escribiendo
texto.
4. Nuestro primer
juego: Ahorcado.
5. Creando programas
para Windows.
6. Evitemos esperar
al teclado. Segundo
juego: motos de luz.
7. Cómo
crear figuras multicolor
que se muevan.
8. Mapas. Tercer
juego: MiniSerpiente.
9. Más
sobre la paleta de
colores.
10. Cuarto juego:
Serpiente.
11. Cómo
crear juegos para Linux.
12. Utilizando el
ratón.
13. Quinto Juego:
Puntería.
14. Temporizadores
con Allegro.
15. Un poco de
matemáticas para
juegos.
16. Sexto Juego:
TiroAlPlato.
17. Distintas
resoluciones sin cambiar
el programa.
18. Cómo
reproducir sonidos.
19.
Séptimo juego: SimeonDice.
20. Formatos de
ficheros de
imágenes más habituales.
21. Cómo
leer imágenes
desde ficheros.
22. Varios
movimientos
simultáneos. Imágenes "animadas": UnMarciano.
a)
Leyendo las imágenes desde un fichero.
b)
Moviendo un enemigo que cambia de forma.
c)
Moviendo una nave y un enemigo a la vez con velocidades distintas.
d)
Añadiendo la posibilidad de disparar.
23. Moviendo varios
"enemigos" a la vez.
MataMarcianos.
a) Varios
enemigos que se mueven.
b)
Eliminando parpadeos: doble buffer.
Temas previstos para las próximas entregas (el orden puede
variar):
24. La
aproximación orientada a
objetos. (*)
a)
Cómo plasmarlo en C++. (*)
b)
Cómo plasmarlo en Java. (*)
c)
Cómo plasmarlo en Objects Pascal. (*)
25. Ampliando el
matamarcianos: nuestros
enemigos disparan. (*)
26. Ampliando el
matamarcianos: varias
vidas y dificultad creciente. (*)
27. Creando una
pantalla de
presentación sencilla. (*)
a) La
opción fácil: una imagen estática. (*)
b)
Animaciones sencillas mientras esperamos. (*)
28. Guardando y
recuperando records y
configuraciones. (*)
29. Completando el
matamarcianos con
todo esto... (*)
a)
Versión en C++. (*)
b)
Versión en Java. (*)
c)
Versión en Objects Pascal. (*)
30. Inciso 1: un
clásico
fácil de programar: Columns. (*)
31. Cómo
redefinir las teclas con
las que jugaremos. (*)
32. Manejo del
joystick. (*)
33. Inciso 2: Otro
clásico
sencillo y adictivo: Tetris (*)
34. Como saber
qué modos
gráficos tenemos disponibles. (*)
35. Empleando
distintos tipos de letra.
(*)
36. Enemigos
"inteligentes": PicMan. (*)
37. Otro
clásico: MiniAsteroides.
(*)
38. Pantallas con
elementos y
obstáculos distintos. (*)
39. Otro
clásico: NBert. (*)
40. Un primer
"arcade": MiniMiner. (*)
41. Otro
clásico más:
LaRana. (*)
42. Y otro
más: Multipede. (*)
43.
Introducción a los Scrolls.
(*)
44. Un primer juego
de scroll
horizontal, MiniMarianoBros. (*)
45.
Introducción a las figuras
3D: representación, movimiento y rotación. (*)
46. Creando una
pantalla de bienvenida
animada en 3D. (*)
47. Figuras 3D con
texturas. (*)
48. Un juego con
figuras 3D:
StarFighting. (*)
49.
Imágenes en varios planos.
(*)
50. Un matamarcianos
con scroll vertical
y varias capas: Nevious. (*)
51. Compactando
varios ficheros de datos
en uno. (*)
(...)
|
| Últimos
cambios en
esta página |
|
| 03/Sept./2005 |
La versión remodelada de la
Introducción a la Programación de Juegos, disponible para
consulta
en línea, incluye ya 8 apartados. |
| 16/Agosto/2005 |
Corregido el enlace al CPV en formato HTML,
que no funcionaba con el cambio de servidor. Comienzan los apartados
reescritos de mi curso. Habrá cambios cada día o cada
pocos días. Si te interesan, puedes consultar
esos cambios aquí. |
| 07/Agosto/2005 |
Mi curso
está en plena remodelación,
lo estoy revisando desde
el primer tema y procurando que todos los ejemplos (o casi) funcionen
en C, Pascal y Java, ya desde el primer apartado. Si quieres
ver
cómo
avanza esta versión, la puedes consultar
en línea
(por ahora sólo está disponible
la introducción). Añadido un enlace sobre
programación de juegos
en Pascal.
Aplicado a
esta página el nuevo cambio de imagen de la Web. |
| 07/Mar/2005 |
Incluida
la
entrega 0.21 de la Introducción
a la Programación de Juegos
(sólo en formato CHM, no
en PDF),
que incluye más efectos básicos para pantallas de
presentación, cómo
compilar para Windows con Dev-C++, detalles sobre el formato PCX y
sobre como mostrar estos ficheros desde Pascal.
|
| 07/Mar/2005 |
Incluida
la
entrega 0.20 de la Introducción
a la Programación de Juegos
(sólo en formato CHM, no
en PDF),
que incluye la primera entrega sobre cómo crear pantallas de
presentación. |
| 24/Dic/2004 |
Incluida
la
entrega 0.18 de la Introducción
a la Programación de Juegos
(sólo en formato CHM, no
en PDF),
que incluye la versión en Java del segundo apartado. |
| 29/Nov/2004 |
No
habia
actualizado el enlace a la entrega 0.17.
Corregido 0:-) |
| 20/Nov/2004 |
Incluida
la
entrega 0.17 de la Introducción
a la Programación de Juegos
(sólo en formato CHM, no
en PDF),
que empieza a incluir caracteristicas Orientadas a Objetos. |
| 24/Oct/2004 |
Incluida
la
entrega 0.16 de la Introducción
a la Programación de Juegos
(sólo en formato CHM, no
en PDF),
que elimina los parpadeos del matamarcianos. Añadido un
enlace a otro
curso de
programación de juegos en Java. |
| 12/Oct/2004 |
Añadidos
SEIS (!!!) nuevos enlaces
sobre programación de juegos. Incluida la entrega 0.15 de la Introducción
a la Programación de Juegos
(sólo en formato CHM, no
en PDF), primera versión del matamarcianos que realmente
incluye
varios marcianos
;-D (apartado 23a). |
| 16/Sep/2004 |
Incluida
la
entrega 0.14 de la Introducción
a la Programación de Juegos
(sólo en formato CHM, no
en PDF), con: la
cuarta aproximación al juego de marcianos (apartado 22d). |
| 24/Jul/2004 |
Incluida
la
entrega 0.13 de la Introducción
a la Programación de Juegos
(sólo en formato CHM, no
en PDF), con: la
tercera aproximación al juego de marcianos (apartado 22c).
Actualizada la
versión en formato PDF a la 0.13. |
| 02/Jun/2004 |
Incluida
la
entrega 0.12 de la Introducción
a la Programación de Juegos
(sólo en formato CHM, no
en PDF), con: la
segunda aproximación al juego de marcianos (apartado 22b),
imagen PCX para
la primera aproximación, por si alguien no quiere perder
tiempo
en crear
sus propias imágenes. |
| 21/May/2004 |
Incluida
la
entrega 0.11 de la Introducción
a la Programación de Juegos
(sólo en formato CHM, no
en PDF), con: la
primera aproximación al juego de marcianos (apartado 22a),
sonidos de ejemplo
para el juego de "Simon" (por si alguien no tiene ningún
editor
MIDI o prefiere
el trabajo hecho), versión en Pascal del juego de
MiniSerpiente,
como ejemplo
básico de Sprites en Pascal. |
| 24/Abr/2004 |
Incluida
la
décima entrega (0.10)
de la Introducción
a la Programación de Juegos
(sólo en formato CHM,
no en PDF), con: la solución del juego de "Simon",
más
detalles sobre cómo
resolver la primera aproximación al juego de marcianos
(apartados 22a a
22c), versión en Pascal del apartado 3, del juego de Motos
de
Luz y del
Ahorcado. |
| 11/Abr/2004 |
Incluida
la
novena entrega (0.09) de la Introducción
a la Programación de Juegos
(sólo en formato CHM,
no en PDF), con notas sobre: Formatos de imágenes
más
habituales, Cómo leer
imágenes desde ficheros. |
| 19/Mar/2004 |
Incluida
la
octava entrega (0.08) de la Introducción
a la Programación de Juegos
(sólo en formato CHM,
no en PDF), con notas sobre: como poder usar distintas resoluciones sin
cambiar el programa, Cómo reproducir sonidos,
versión en
Pascal del juego
del ahorcado |
| 28/Feb/2004 |
Incluida
la
séptima entrega (0.07)
de la Introducción
a la Programación de Juegos,
con notas sobre cómo
medir el tiempo, algo de matemáticas aplicadas a juegos y un
ejemplo de
juego de "tiro al plato". Incluida una versión de mi curso
convertida al
formato PDF, y una lista de contenido de mi curso. |
| 29/Ene/2004 |
Incluida
la
sexta entrega (0.06) de la Introducción
a la Programación de Juegos,
con notas sobre cómo
compilar los juegos para Linux, cómo acceder al
ratón y
un ejemplo. |
| 30/Jul/2003 |
Incluida
la
quinta entrega (0.05) de la Introducción
a la Programación de Juegos,
con un ejemplo de
juego de "la serpiente" |
| 29/Jun/2003 |
Incluida
la
cuarta entrega (0.04) de la Introducción
a la Programación de Juegos,
con notas sobre la
paleta de colores. |
| 04/Mar/2003 |
Incluida
la
tercera entrega (0.03) de la Introducción
a la Programación de Juegos,
con información sobre
cómo crear figuras multicolor que se muevan y una
aproximación al juego
de "la serpiente". |
| 13/Feb/2003 |
Localizada
la página oficial del
CPV, que ya incluye todos los fuentes -> añadido un
enlace. |
| 31/Ene/2003 |
Incluida
la
segunda entrega (0.02) de la Introducción
a la Programación de Juegos. |
| 15/Ene/2003 |
Creada
la
primera entrega de la Introducción
a la Programación
de Juegos. Añadida la
quinta entrega del CPV. |
| 12/Ene/2003 |
Cambiada
la
página, para que no
acceda únicamente al CPV, sino a todos los cursos
relacionados
con videjuegos
que vaya encontrando. Incluido también un enlace a PCGPE y
mencionado IPJ
(aún no disponible). |
|
Otros cambios
anteriores en toda la Web |
|
|
|