Actualité
luage

LuaGE v2 : un luaplayer spécialement conçu pour PSP

par ,
Source: forums pspgen

LuaGE : Lua Game Engine est un luaplayer specialement concu pour être lancé sur PSP.

SamyPesse membre de nos forums a dévoilé son nouveau projet, Lua Game Engine. Il s'agit d'un tout nouveau luaplayer conçu entierement par ce Dev qui a la particularité d'être multi-plateformes, c'est à dire conçu pour pouvoir se lancer sur la PSP, DS ou Windows 32. Vous l'aurez compris grâce à ce luaplayer, il est possible de développer des jeux en LUA pour plusieurs consoles à la fois, et d'adapter l'image à chacune d'entre elles.

Notre membre précise également que son projet est Open Source, les autres développeurs pourront donc jeter un coup d'œil au code source si le cœur leur en dit.

luage2

Quoi de beau dans la v1 ?

Avis à tout nos fans de LUA, voici donc la liste de possibilités de la v1 de LuaGE.

System.getX() : Renvoie la résolution en X la plus adéquate à la plateforme
System.getY() : Renvoie la résolution en Y la plus adéquate à la plateforme
System.getName() : Renvoie le nom de la plateforme

Windows.create(x,y,largeur,hauteur,nom,fullscreen,3d) : Ouvre une fenêtre au coordonnées donnée et de la taille spécifié, fullscreen permet de la lancer en plein écran et 3d permet d'activer le mode 3D
Windows.get() : Renvoie la structure Image pour dessiner dessus
Windows.delete() : Ferme la fenêtre
Windows.flip() : affiche la fenêtre
Windows.event() : renvoie l'évènement de la fenêtre
Les différents évènements sont :
EVENT_WINCLOSE : on a appuyé sur le bouton quitté de la fenêtre
EVENT_KEYDOWN : on appuye sur une touche
EVENT_KEYUP : on a relâché une touche
EVENT_MOUSEMOVE : on a déplacé la souris

Joystick.getKey() : renvoie la touche pressé sur le clavier
Joystick.getPad() : renvoie la touche du joystick pressé
Les différentes touches sont :
JOYSTICK_NO : aucune touche pressé
JOYSTICK_UP
JOYSTICK_DOWN
JOYSTICK_RIGHT
JOYSTICK_LEFT
JOYSTICK_T1 : X sur psp et espace sur windows
JOYSTICK_T2 : O sur psp
JOYSTICK_T3
JOYSTICK_T4
JOYSTICK_T5
JOYSTICK_T6

Joystick.getMouseX() : renvoie le déplacement en x de la souris (du pad sur psp)
Joystick.getMouseY() : renvoie le déplacement en y de la souris (du pad sur psp)

Image.load(image) : charge une image
Image.create(l,h,ram) : crée une image vide, la valeur ram peut être :
MEMORY_VRAM : pour la mémoire vidéo
MEMORY_RAM : pour la mémoire ram
image:delete() : supprime l'image de la mémoire
image:clear(color) : lave l'image
image:blit(x,y,img) : affiche une image sur une image
image:pixel(x,y,color) : affiche un pixel sur l'image
image:rect(x,y,l,h,color) : affiche un rectangle sur l'image
image:circle(x,y,r,color) : affiche un cercle de raton r et de centre (x,y)

Color.new(r,g,b) : renvoie la couleur
Color.delete(color) : supprime la couleur color de la ram

ge3D.clear() : lave le buffer 3D
ge3D.mode(mode) : change le mode, mode peut être :
GE_3D_POINTS
GE_3D_TRIANGLES
GE_3D_QUADS
GE_3D_POLYGONS
ge3D.look(cx,cy,cz,cix,ciy,ciz,vx,vy,vz) : positionne la camera au point c(x,y,z) regardant vers ci(x,y,z) avec comme vertical v(x,y,z)
ge3D.stop() : stop l'affichage avec le mode (met bien en place les nouveaux vertex)
ge3D.vertex(x,y,z) : crée un vertex
ge3D.coord(x,y) : spécifie les coordonnées de la texture
ge3D.texture(img) : spécifie la texture à utiliser

 

Et pour la v2 ?

Support des fonts ttf
police=Font.load("test/CircleOfDust.ttf",size) : charge une font ttf
police:mode(norm,gras,italique,souligne) : change le mode
police:print(x,y,texte,screen,color) : ecrit un texte à l'ecran
police:delete() : supprime la musique

Support du son MP3 (pas pour psp)
musique=Sound.load("test/musique.mp3") : charge une musique
musique:play() : joue la musique
musique:delete() : supprime la musique

Support du reseau (sauf pour psp) :
socket=Network.create(port)
socket:listen(max) : met le socket en ecoute
socket:delete() : supprime et ferme la connection
socket:connect("192.168.9.10",10) : connection (adresse,port)
--ne marche pas encore car manque socket:accept()
socket:send(message,taille_message)
socket:recv(message,taille)

 

Voilà donc un projet très prometteur, qui ne demande qu'a être amélioré et perfectionné. Si vous vous sentez l'âme d'un Dev en LUA possédant du temps libre, nous vous encourageons donc a participer à ce projet. N'hésitez pas non plus à visite le topic original (voir source plus bas)

luage3
test en 3D

Lua Game Engine v2

Téléchargement, instructions et mode d'emploi disponibles
dans la fiche de téléchargement ci-dessous.

dl

Source de Lua Game Engine

Téléchargement, instructions et mode d'emploi disponibles
dans la fiche de téléchargement ci-dessous.

dl

Commenter 13 commentaires