Ahora vamos a escribir un juego simple en 2d, puedes editar mapas para distintos niveles. En C64 habia conjuntos de 254 caracteres de 8x8 pixeles que heran los bloques constructores del mapa. Podemos salvar este "bloque constructor" en una imagen, tambien conocido como tile set, o azulejo. Aqui hay un ejemplo para un juego de tuneles, tipo Pac-man:
Las tablas en Lua son mucho más que variables. La principal diferencia es que las tablas pueden ser usadas para almacenar múltiples cantidades de datos, no sólo un dato. Puedes pensarlo como un contendedor con muchos cajones dentro para almacenar diferente información. Cualquier juego que hagas en el futuro seguramente usará varias tablas. Usar tablas en Lua es básicamente lo mismo que usar arrays en cualquier otro lenguaje de programación. También aprenderemos algunas otras cosas en este tutorial.
En este tutorial vamos a aprender cómo manejar la entrada de botones de tu PsP y haremos un sencillo programa que mostrará texto en pantalla cuando presionas ciertos botones. Sin la entrada de botones no hay interactuación del usuario, lo cual es bastante aburrido. Sigamos y aprendamos un poco sobre esto ahora. Usaremos comandos que aprendimos en anteriores tutoriales, incluidas las variables. Usaremos menos comentarios en este tutorial y mostraremos otro método de mantener el código ordenado dividiéndolo en secciones.
En este tutorial vamos a aprender como usar variables en tus programas. Las variables son muy importantes y llegarán a ser unas de nuestras mejores amigas. Puedes pensar que las variables son almacenes que guardan información que tú puedes llamar en cualquier momento en tu programa.
Ahora, vamos a hacer nuestro primer programa para la PSP en Lua. Recuerda que durante todo el tutorial vamos a usar la versión de Windows del LuaPlayer. Algunas funciones no funcionan bien o no funcionan en la versión de Windows. Por ejemplo, el sonido no es muy bueno. Algunas nuevas funciones recientemente añadidas al LuaPlayer ni siquiera funcionan en la versión de Windows. Pero, para las cosas que haremos, todo debería ir bien. Deberías poner las carpetas luaplayer y luaplayer% en la ruta PSP/GAME de tu PSP.
Hola, primero quiero presentarme. Soy ELeNDeR y esta va a ser mi segunda contribucion a esta magnifica web. Hace unos dias abri en el foro de tutoriales un post titulado: Sencillo manual para pasar tus divx a PMP. Me siento orgulloso de ese tutorial porque lo hice yo solito, con capturas de pantalla y bien explicado. Si no le has echado un vistazo ya estas tardando. Pero en esta ocasion voy a traducir al español el tutorial de Lua de esta web.
Navegando por la red he encontrado un documento PDF con documentacion actualizada del funcionamiento interno de la PSP. Incluye informacion de todo tipo desde los esquemas de conexion de la Memory Stick. Estructuracion de la memoria y kernel. Registros, formatos de instrucciones. De gran ultilidad para todos aquellos que querais avanzar mas en la programacion de homebrews o creacion de hardware diverso.
Después que leer el capitulo 1 y el capitulo 2, ya debes tener tu entorno de desarrollo completamente funcional, y has compilado tu primer programa basico para la PSP. Es hora de avanzar a mejores cosas y mas grandes. El "hola mundo" es una aplicacion perfecta, una gran experiencia para aprender, pero no hace nada. Eso es lo que este tutorial va a pretender enmendar. Como hacer que nuestros programas hagan las cosas.
Hola, esta es una traduccion libre del tutorial de programacion en Lua para LuaPlayer de psp, intentare ser fiel al tutorial original, pero seguramente ire añadiendo cosas nuevas.
Para empezar, quisiera indicar que desconozco mucho del lenguaje Lua, e ire aprendiendo a la par de vosotros, asi que se aceptan criticas y consejos, espero que todos vayamos probando scripts, y creando los nuestros propios, de tal forma que compartamos nuestros conocimientos.
La entrada y salida de es una funcion estandard. Un ejemplo simple del juego de la serpiente es la carga y salvado de la puntuacion.
Comprender como se representan los pixeles en pantalla es importante para escribir juegos. La pantalla de la PSP, como muchas otras pantallas, tiene el mismo concepto que los antiguos tubos de imagen: Un haz de electrones comienza a barrer desde la esquina superior izquierda de la pantalla y va abanzando escaneando todas las lineas de arriba a abajo. (el amigo abismo que es electronico podra explicarlo mejor), cuando llega abajo necesita algun tiempo para volver al comienzo, esto es llamado vertical blank (vBlank), Por supuesto, en la PSP no existe realmente este haz de electrones, pero podemos pensar que funciona de esta manera, con el script "screen.waitVblankStart" hace que el programa espere hasta que comience el proximo barrido, durante esta espera, ningun pixel es escrito en la pantalla, lo que te da la oportunidad de intercambiar la screen y el offscreen para evitar parpadeos o destellos.
Bueno vamos a comenzar ya con el tutorial propiamente dicho, y como mejor que con un primer ejemplo muy basico:
-- crear un nuevo objeto de color verde = Color.new(0, 255, 0) -- mostrar el texto "hola mundo" en el offscreen screen:print(200, 100, "Hola mundo!", verde) -- volver visible el offscreen screen.flip() -- esperar infinitamente while true do screen.waitVblankStart() end
Salva este archivo como script.lua en el mismo directorio de la PSP, donde esta EBOOT.PBP. Cuando arranques luaPlayer veras una imagen en negro con las letras verdes escritas Hola mundo!
Una vez instalado el SDK y Cygwin, teniendo actualizadas todas las librerias, podremos empezar a plantearnos qué es lo que queremos hacer y como. Doy por supuesto que habra gente que lea este tutorial con unos minimos conocimientos de C o C++, y gente que no. Con él intentaré mostraros la base de como estructurar vuestros propios proyectos para PSP. Se intentaran dar los primeros pasos; eso si, para los no iniciados en programacion, quiero comentarles que el C no es el mejor lenguaje para empezar a programar.
Escribo esta guía por dos motivos. El primero es porque me he estado peleando un par de días para conseguir instalar el PSPSDK en mi ordenador y si no lo escribo todo, me olvidaré. El segundo es proporcionar un punto de partida a aquellas personas que quieran desarrollar para la psp y no sepan cómo empezar.
Poco a poco y por entregas vamos a publicar un tutorial para que podais introduciros en el apasionante mundo de la programación en C parar PSP. Empezaremos desde cero, desde la instalación del entorno de programación hasta como crear programas básicos.