Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 19/08/2007, à 21:12

Mr.Bathor

Moteur de jeu de plateforme

Bonjour, je suis nouveau de quelques mois (3) sur ubuntu et linux en général , j'ai commençer un p'tit moteur de jeu de plateforme en c++ :


Screen.png



Important :

La librairie Engine2D.so est nécessaire ( dans usr/lib ).

Procédure pour copié la librairie :

- Décompresser l'archive
- lançer un terminal
- aller dans

/Release-02/Install lib

- puis pour installé la lib :

sudo ./install-lib

pour la supprimé :

sudo ./delete-lib

ensuite pour lançer le "jeu test"
retourné à la racine du répertoire
et (tapez ou cliquez) directement sur l'icone :

./Test-Fullscreen

plein écran

./Test-Windowed

fenêtre



File:1->Release-02.tar.gz
dl_count.png

Je vous invite aussi à voir les vidéos : http://www.dailymotion.com/Unknown-FR-


@++

Dernière modification par Mr.Bathor (Le 24/08/2007, à 17:04)

Hors ligne

#2 Le 19/08/2007, à 22:22

LarTicK

Re : Moteur de jeu de plateforme

Salut,

ça marche pas, j'ai une erreur au lancement :

./Test Engine: error while loading shared libraries: /home/jerome/Desktop/Editeur/Engine2D.so: cannot open shared object file: No such file or directory

Malgré tout ça à l'air pas mal sur la vidéo

Hors ligne

#3 Le 19/08/2007, à 22:37

Mr.Bathor

Re : Moteur de jeu de plateforme

Merci , étrange l'erreur , j'ai mis à jour l'archive, peut tu me dire si tu as toujours le problème ?
merci.

Hors ligne

#4 Le 19/08/2007, à 23:33

LarTicK

Re : Moteur de jeu de plateforme

même erreur ou presque :

./Test Engine: error while loading shared libraries: /home/jerome/Desktop/Editeur/./Engine2D.so: cannot open shared object file: No such file or directory

Il doit falloir indiquer quelque part que tu veux utiliser des chemins relatifs et pas absolus

Hors ligne

#5 Le 20/08/2007, à 00:13

Mr.Bathor

Re : Moteur de jeu de plateforme

Merci, c'est un problème du compilo que j'utilise pour le jeu. je vais reporté le bug.

Hors ligne

#6 Le 20/08/2007, à 00:38

Mr.Bathor

Re : Moteur de jeu de plateforme

File:1->Test_Engine.tar.gz
dl_count.png

Je viens de faire une màj, en espérant avoir résolu le bug...
Merci

Hors ligne

#7 Le 20/08/2007, à 13:02

Mr.Bathor

Re : Moteur de jeu de plateforme

Peut on me dire si le bug est résolu ? smile

Hors ligne

#8 Le 20/08/2007, à 15:41

LarTicK

Re : Moteur de jeu de plateforme

non, c'est toujours la même chose sad , tu peux vérifier si ça marche en changeant de répertoire après avoir compilé, normalement ça devrait déclencher l'erreur ( à condition de ne pas faire une copie, il ne faut pas qu'il reste de binaire dans le dossier où tu compiles)

Hors ligne

#9 Le 20/08/2007, à 16:38

Mr.Bathor

Re : Moteur de jeu de plateforme

c'est là que je ne comprends pas, j'ai changé de répertoire, il n'y a plus de binaire, j'ai compilé la lib avec gcc, le jeu avec purebasic, le bug viens de purebasic lors de la compilation. c'est chiant mad j'ai signalé le bug...
Merci à toi LarTicK pour le test.

@++

Hors ligne

#10 Le 20/08/2007, à 17:26

Mr.Bathor

Re : Moteur de jeu de plateforme

Bon , dieu le père m'a donner la marche à suivre :
il faut copié la lib dans usr/lib , logiquement sa tourne ensuite.

Hors ligne

#11 Le 21/08/2007, à 19:53

Mr-Bathor

Re : Moteur de jeu de plateforme

Personne n'a pu testé ? j'aimerais savoir si cela tourne chez d'autre ubuntiens. je n'est pas encore de proche qui ont linux ( j'vais les convertir big_smile )
N'ouliez pas de copié la lib dans usr/lib
par la suite je fabriquerais un paquet .deb , mais laisser moi le temps , je débute encore sous linux. big_smile

Merki.

#12 Le 22/08/2007, à 10:23

clem-vangelis

Re : Moteur de jeu de plateforme

j'ai testé et meme apres avoir copié Engine2D.so dans /usr/lib ça ne marche pas meme erreur

Hors ligne

#13 Le 22/08/2007, à 15:47

Link31

Re : Moteur de jeu de plateforme

export LD_LIBRARY_PATH=dossier_qui_contient_le_fichier_so
./Test\ Engine

Ça devrait marcher (pas testé).

Hors ligne

#14 Le 22/08/2007, à 16:07

Mr.Bathor

Re : Moteur de jeu de plateforme

Merci, chez moi cela fonctionne, mais chez d'autre , qu'est ce que cela donne ?
désolé d'être un boulet ^^

Hors ligne

#15 Le 22/08/2007, à 16:21

0livier

Re : Moteur de jeu de plateforme

Yep...

Je veux bien essayer mais que faut-il faire précisément une fois l'archive décompressée pour jouer ?

PS: si tu veux que ce fil devienne plus conséquent, je te conseil de ré-éditer le premier post à chaque nouvelle modif/version un peu dans ce style

Bon courage...

Hors ligne

#16 Le 22/08/2007, à 16:56

Mr.Bathor

Re : Moteur de jeu de plateforme

Merci Olivier, j'ai pris en compte tes remarques. logiquement , tu cliques sur "test engine" cela devrais fonctionné, si tu as une erreur comme quoi Engine2D.so n'existe pas, alors essaye (pas testé):

export LD_LIBRARY_PATH=dossier_qui_contient_le_fichier_so
./Test\ Engine

ou tu copie la lib dans usr/lib ( ici ca marche)
Merci encore.

Hors ligne

#17 Le 22/08/2007, à 19:08

0livier

Re : Moteur de jeu de plateforme

Désolé Mr.Bathor...

J'ai extrait ton archive sur deux PC différents, tout deux sur Ubuntu 7.04 mais j'ai beau double cliquer sur Test Engine rien ne se passe...
En console idem...

Une idée ?

Hors ligne

#18 Le 22/08/2007, à 19:21

Mr.Bathor

Re : Moteur de jeu de plateforme

qu'est ce que la console te renvois ?
as tu

 PATH : /TonDossier/

as tu essayé ceci :

export LD_LIBRARY_PATH=dossier_qui_contient_le_fichier_so
./Test\ Engine

ou bien de copié la lib dans usr/lib ?

Hors ligne

#19 Le 22/08/2007, à 19:23

LarTicK

Re : Moteur de jeu de plateforme

ça marche toujours pas, même en changeant la variable d'environnement ou en déplaçant le engine.so dans /usr/lib sad

par contre ça marche si je crée un dossier /home/jerome/Desktop/Editeur et que je met le fichier so dedans, mais forcément c'est moins pratique tongue

Ce serait possible de voir les sources ? ça serait plus facile pour comprendre ce qui va pas.

Sinon le jeu en lui même est pas mal, un jeu de plateforme tout ce qu'il y a de plus classique, mais ça fonctionne. Sauf si on va sur la gauche au tout début ça fait des trucs un peu bizarre : ça détruit une partie du décors sur la droite. Sinon la vitesse est bonne. Ça glisse un peu trop à la réception des sauts à mon goût, mais c'est un détail.

Voilà voilà ...

Hors ligne

#20 Le 22/08/2007, à 22:31

Mr.Bathor

Re : Moteur de jeu de plateforme

Merci, pour ce qui est de la destruction c'est normal, en fait le décor est affiché dans une double boucle for-next ( une pour les x,l'autre pour les y ) la taille de la carte fait 256x256x64 (64 taille d'une tuile), mais l'écran ne peut contenir que 12 tuiles en x et 9 en y , donc par rapport au personnage j'affiche le strict minimum.
Pour la source , le moteur est en c++ , le code du jeu-test en purebasic, il sera bien évidement opensource ( le moteur ) une fois fini et nettoyé.
pour la partie purebasic , la seule ligne qui concerne la librairie c'est :

ImportC "Engine2D.so"

je peut peut être essayé de faire :

ImportC "usr/lib/Engine2D.so"

en tout cas merci pour test encore une fois.

Hors ligne

#21 Le 22/08/2007, à 22:50

Link31

Re : Moteur de jeu de plateforme

Mr.Bathor a écrit :

je peut peut être essayé de faire :

ImportC "usr/lib/Engine2D.so"

Mauvaise idée. L'avantage des bibliothèques dynamiques, c'est que leur liaison se fait dynamiquement, justement. Donc remplacer un chemin hardcodé par un autre n'a strictement aucun intérêt.

Je ne connais pas PureBasic, mais avec gcc la liaison dynamique est déterminée au moment de la compilation, pas dans le code. Tu devrais essayer de regarder dans la documentation du compilateur.

Pour vérifier l'état des liaisons dynamiques, tu peux utiliser ldd :

ldd Test\ Engine

Hors ligne

#22 Le 22/08/2007, à 23:21

Mr.Bathor

Re : Moteur de jeu de plateforme

Effectivement en faisant cela j'obtient cela :

/home/jerome/Desktop/Editeur/./Engine2D.so

y a bien une erreur lors de la compilation, est ce que cela viens de la lib ou bien du purebasic ?

Hors ligne

#23 Le 23/08/2007, à 00:01

Link31

Re : Moteur de jeu de plateforme

Si tu as écrit ImportC "Engine2D.so", alors ça vient du compilateur.

Hors ligne

#24 Le 24/08/2007, à 00:24

0livier

Re : Moteur de jeu de plateforme

J'ai l'impression d'être un boulet mais la console me dit juste que Test Engine n'est pas une commande valable...

Je suis si fatigué pour ne pas arriver à la même erreur que vous ?

Hors ligne

#25 Le 24/08/2007, à 02:08

Link31

Re : Moteur de jeu de plateforme

0livier a écrit :

Test Engine n'est pas une commande valable...

Par contre celle-ci l'est (à condition d'être dans le bon dossier) :

./Test\ Engine

Hors ligne