Tutorial de programación de videojuegos con Bennu

Started by Windgate, May 19, 2009, 12:07:33 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Windgate

Estoy preparando un tutorial para aprender a programar videojuegos con Bennu desde 0.0, separado en temas, intentando sustituir al antiguo pdf orientado a Fénix, que aunque es una referencia maravillosa está a punto de cumplir una década y empieza a estar anticuado.

La idea es que sirva de referencia para poder comenzar con Bennu sin tener ni idea de programación, vendrá acompañado de diferentes "juegos" con los que practicar, hay incluso ejercicios propuestos.

Os dejo los temas 4 y 5 para que les vayáis echando un vistazo y comentéis posibles mejoras, ya sea en el diseño, en la fuente de texto, en las explicaciones o en lo que sea. Está todo muy masticado, tened en cuenta que suelo trabajar con chicos de entre 12 y 18 años de edad que usan Bennu como primer lenguaje de programación de su vida.

Tema 4: http://www.mediafire.com/?ozjnmzzmdmi

Tema 5: http://www.mediafire.com/?imyziktnnzl

Los temas previos están previstos para dar indicaciones sobre cómo crear correctamente un FPG a partir de Sprites, usando las herramientas del Bennupack, para Windows por el momento...
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

DCelso

osk nos dijo que actualizaría su documento para este verano, es este el documento del que hablas, así que quizas os piseis los trabajos :D. Aunque no está nada mal así habrá más variedad :D.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

DCelso

He visto los temas que has puesto y están muy bien, yo diría que son demasiado cortos quizas,vas a necesitar mil temas para completar un libro :D.
Normalmente, no digo siempre, en la enseñanza un tema suele dar para una clase completa y a las malas se divide en subapartados para varias clases pero nunca al revés, no vi ninguna clase en la que se dieran 10 temas de golpe :D.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

SplinterGU

No lei aun los articulos, pero cortos o no, y viendo los juegos de los alumnos de wingate no podemos negar que sus metodos sirven.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Windgate

Cada tema está pensado para unas 2 horas, sobre todo para los que es la primera vez que se enfrentan a un lenguaje de programación. Quizás hayáis visto el tema 4 y os parezca muy muy noob, pero creedme que es mejor que el chico se machaque durante 2 horas hasta comprender "tonterías" como:

x=100;
graph=1;
angle=90000;

Y así no tener que recordárselo a cada día, o avanzar con aspectos como un IF sin que tan siquiera recuerde el funcionamiento de los ejes x,y.

Por supuesto que éste es el tutorial más sencillo del mundo, así que si se actualiza el otro documento para verano sin lugar a dudas servirá para los que ya tienen alguna noción previa de programación.

Voy a ponerme a hacer algunos temas más, espero llegar a unos 40-50... Incluso quisiera meter la parte de 3D, pero esperaré a que se estabilice la Bennu3D no vaya a ser que redacte el tutorial sobre el M8EE y desaparezca.
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

osk

Quote from: DCelso on May 19, 2009, 10:13:15 AM
osk nos dijo que actualizaría su documento para este verano, es este el documento del que hablas, así que quizas os piseis los trabajos :D. Aunque no está nada mal así habrá más variedad :D.


En la variedad está el gusto. Eso es lo que dicen. ;-)

Windgate

Temas 1 y 2 listos, son básicamente orientaciones sobre cómo encontrar/elegir correctamente gráficos y cómo construir nuestro primer FPG.

Tema 1: http://www.mediafire.com/?nzw4j3dnzij
Tema 2: http://www.mediafire.com/?mybmtztnjng

Tengo ganas de terminar con estos primeros temas noob y empezar con la parte heavy del tutorial ;)
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

Windgate

Tengo el tema 3 listo, en breve empiezo con la mega-super-ultra sencillísima plantilla de videojuego con la que poder practicar los sencillos ejemplos de los temas 4 y 5. Básicamente pondrá una resolución de pantalla, cargará un FPG y mostrará un gráfico en el centro de la pantalla. No quiero pasar de 10 líneas de código (A ver si puedo...).

Tema 3: http://www.mediafire.com/?z1nmmylme2y

Tal y como lo estoy haciendo ya no hay excusa para quienes les da miedo empezar con Bennu porque les parece complicado.
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

darío

#8
Hola, estoy echándole un vistazo a los tutos.

Con respecto al primer tuto, he notado que la dirección http://spritedatabase.com no existe (quizás es .net?).

En cualquier caso ánimo con ello ya que este tipo de cosas son las que al final hacen que la gente empiece a programar en un lenguaje tan peculiar como es bennu.

Un saludo,
Darío
My sites:
Smart Fpg Editor - Painless FPG Edition for Bennu and PixTudio
fenixlib - .NET support for manipulating PixTudio, Bennu and Div graphic formats

Windgate

Aarrrggg, cierto, es spritedatabase.net

Millares de gracias Dario, ese tipo de errores garrafales son lo que quiero evitar, muchas personas podrían haberse rendido con el tutorial por un fallo así xDDD

Voy a rectificar el tema y el link de este hilo, gracias de nuevo!
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

DCelso

He leído los temas, está muy bien, peero (yo siempre poniendo la puntillita) deberías intentar ser más preciso en la terminología, sobre todo, con gente que empieza, una base buena en terminología evita muchos quebraderos de cabeza :D.
Un sprite ni un scroll no son exactamente lo que dices. Sería bueno que intentaras usar definiciones de la rae, wordreference o en última instancia de la wikipedia, o ya más concretamente crearte un diccionario de términos usados con la definición que vas a darle (esto no es nada recomedable pero a veces no hay remedio por usar anglicismos o palabras de otros idiomas :D)

En fin, lo que tú llamaste sprite es en realidad un juego de sprites (spriteset en inglés) aunque claro cada uno utiliza su propia terminología depende de quien le enseñase (por esto hay que hacer incapié en el principio de la formación) hay que intentar tirar siempre de la raiz de la palabra y de sus primeras utilizaciones para evitar malentendidos.

http://www.wordreference.com/es/
http://rae.es/rae.html
http://es.wikipedia.org/wiki/Sprite_(videojuegos)

Lo que tú llamaste scroll es en realidad un escenario (o fondo de pantalla), claro este escenario puedes asociarlo a una sección que pueda desplazarse con la función scroll pero no se llama scroll a este tipo de imágenes quizás escenarios desplazables pero tampoco queda muy bien :D.

Luego no sé qué dirá SplinterGU, pero la palabra "bennu" así sola me recuerda al pájaro :D más que al lenguaje, creo que es más correcto llamarle BennuGD ya que asocia al conjunto entero de recursos del proyecto.

Y los ejercicios aún no los has puesto ¿no? Más que ejercicios veo reflexiones.

Bueno ya podeis acuchillarme.:(, que conste que todo lo digo para mejorar y hacer una buena documentación, no simplemente por criticar eh.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

splinter_work

A mi si me decis spriteset, refieriendote a sprites, creo que me perderia...
Con respecto a Bennu o BennuGD, yo tambien suelo decir Bennu, pero es cierto, lo correcto seria BennuGD.

Por otro lado, creo que a windgate no le molestaria si te ofreces a colaborar con la correccion de los documentos, mas si son cortitos... si tengo algun tiempo yo tambien les pegare una revisada y comentare al autor si encuentro alguna mejora posible.

Windgate

Arrggg, maldita sea, entiendo todas vuestras aclaraciones sobre la nomenclatura.

El problema es que me gusta usar términos con nombres extremadamente simples para no volver locos a mis chicos, de todas formas lo tengo muy en cuenta, ésas son las críticas que hacen falta.

¿Sustituyo Bennu por BennuGD? A nivel de búsqueda en Google ambos términos llevan al mismo sitio, y en lenguaje humano creo que solemos hablar de Bennu... En ese término me quedaría con Bennu a secas.

Eso de distinguir entre spriteset y sprite me parece buena idea, sobre todo porque yo hablaba de "recortar un sprite para obtener cada animación" cuando sería mucho más exacto hablar de "recortes el spriteset para obtener cada sprite". Ese apunte sí que me parece kojonudo DCelso.

Y en cuanto a scroll, sería mejor dejar el término "scroll" para referirnos a la struct scroll donde se guardan los scrolls, y hablar de "escenarios y backgrounds o fondos" para referirnos a los gráficos (¿Sprites?) que están en el FPG.

Por supuesto me encanta que me critiquen.
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

DCelso

#13
Volviendo a releer tu definición de scroll del tema 1, parece que te refieres a una fase o etapa (stage en inglés).  http://www.wordreference.com/es/translation.asp?tranword=stage
Puede que si no te gusta escenario o ninguna de las anteriores, pues escena tal vez, (en su primera acepción de la rae :D)
http://buscon.rae.es/draeI/SrvltConsulta?TIPO_BUS=3&LEMA=escena

Es que, en serio, scroll queda muy mal porque viene de un anglicismo y encima mal usado. el struct scroll es porque sirve para hacer "scrolling" (subir y bajar) a una imagen.
http://www.wordreference.com/es/translation.asp?tranword=scroll

En cuanto a spriteset es la unión de sprite y set (juego o conjunto). Para mí siempre me supuso extraño porque debería ser sprites set (conjunto de sprites) pero no sé porqué siempre lo vi referenciado como "sprite set" o "spriteset", todo junto.
http://creatures.wikia.com/wiki/Sprite

NOTA:Ahora que lo pienso puede que ninguna palabra le vaya bien del todo para referirte a la imagen de la escena  ya que no deja de ser eso imagen del escenario, imagen de la fase, mapa de la fase, etc. porque claro al conjunto de todos los datos de una fase es a lo que se llama fase o nivel.
Está claro que con poner la definción a lo que te refieres con una palabra es suficiente así que, bueno, mientras se entienda y tal puedes dejar la que quieras o incluso invertarte una nueva acepcion para scroll para crear tendencias :D o mejor aún inventarte una palabra nueva por ejemplo: fasimagen o escenagen  :D.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

DCelso

En cuanto a BennuGD yo siempre leo bennu-gedé con dos enes y dos palabras una llana y otra aguda. Y queda muy bien porque parece algo tope chulo "bennu-gedé" porque si lees "bennu" parece una palabra mas sosilla y no te digo nada si lees "benu" que parece como si dijeras venus en singular :D.
Ahora que npi de cual es la pronunciación real de la palabra bennu porque viene del griego y su traducción es al español es fenix :D
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/