1

Bonjour,

le développement amateur evolue rapidement actuellement, et j'aurai aimé savoir ou les développeurs francophones échangent leur savoir ?

De plus, je souhaite créer 2 ou 3 jeux sympa, et je ne sais pas comment les faire:

- Utiliser du C + SDL
- Utiliser du C + SDL + Lib EDGE (pour un usage non commercial, je crois qu'on peux les utiliser sans problème)
- Utiliser Fenix (ca a l'air super, mais peu de personnes n'ont l'air de l'utiliser sur GP2X)


Ce qui m'embete le plus c'est comment peux on développer sur PC pour GP2X (faut il a chaque fois copier l'exe sur GP2X, lancer et regarder ?). Je suis un dév. amateur, donc j'ai l'habitude de compiler pour voir si ca marche toutes les 2 minutes. J'ai entendu dire qu'on peux faire un script sur PC qui lancerai via USB sur la GP2X une application en TELNET direct sur un partage SAMBA du PC. Ca a l'air intéressant, mais existe t'il un tuto détaillé a ce sujet ?

Merci d'avoir lu mon mail en entier wink

edit:
Bon pour la partie TELNET voir le topic:
topics/75780-controler-la-gp2x-a-partir-du-pc-par-le-port-usb

2

sinon tu peux tester via samba... wink
avatar
Tout probleme a sa solution
Oeil de feu

3

tu peux aussi, si tu utilise les lib SDL compiler pour windows et le tester sur ton pc et apres le compiler pour la GP2x.

Pour le tuto sur comment mettre en place la liaison SAMBA entre la GP2x et le PC:
http://www.gp2x-generation.com/content/view/270/36/

apres si tu as des probleme passe sur le topic sur le forum

4

tu peux utiliser un cross-compileur, pour compiler simultanement un prog pour la gp2x et pour ton syteme d'exploitation, pour pouvoir tester sans souci, ou encore plus simplement developper normalement ton programme puis au moment de la "finalisation" le compiler pour la gp2x.

en tout cas moi je te recommande le C++ et les libs SDL pour programmer. ce n'est peut etre pas la solution de faciliter, mais c'est selon moi une solution "ilimité", je veux dire par la ou tu ne sera pas limité par la licence de EDGE ou par les possibilité et les dépendances de fenix (mais attention la je suis assez subjectif car je ne connais pas bien ce language)

++
--> www.emericdev.com
--> www.gp2xfr.info

5

Merci pour ces réponses.

Je n'ai pas beaucoup de temps en ce moment ... (pourquoi il faut travailler oO) , mais je vais me lancer maintenant que j'ai installé ce fabuleux frimware 2.0, j'ai l'impression que tout va etre plus simple.

Je crois que le mieux c'est encore d'essayer ... Fenix avait l'air intéressant étant donné que c'est du langage semi interprété (donc programme identique quel que soit la plateforme), mais il est vrai que le langage à l'air un peu bricolé.

J'avais pensé que Windows et GP2X (linux) était trop différents pour que je fasse tout sur windows, puis que j'ajuste pour la GP2X, mais en structurant bien le programme, ca peux etre intéressant. Le mieux serait de faire un (mini) moteur 2D qui permettrai par une simple constante de choisir pour quelle plateforme on veux compiler.

J'ai plein d'idées qui me viennent wink

Je vais essayer de trouver un peu de temps, et vous ferait part de mon expérience.

PS: Pour EDGE, je suis d'accord avec toi, mais j'avais tendance a choisir la simplicité et ne pas refaire ce qui fonctionnait ... d'après eux si bien et si facilement ;D

6

Celesta, le nouveau SDK officiel permet de programmer en C, et de compiler soit pour windows, soit pour gp2x. L'installation est super simple, tu dezip le dossier GP2XSDK puis tu lances devc++. Ensuite tu créer un nouveau projet ("Application") et c'est parti! Tu peux facilement choisir ta cible:
sdk_officiel.png
Biensûr c'est avec SDL smile

7

enfaite tu ne programme jamais vraiment "pour" ou "avec" le systeme d'exploitation, mais avec des librairies. En utilisant SDL par exemple, utilisable sous linux/windows/gp2x tu n'a quasiment (voir aucune) lignes à changer pour compiler ton programme sur ces differentes platformes, tu peux donc compiler et tester sans probleme sur PC puis juste recompiler apres pour passer sur ta GP2X wink
apres pour compiler simultanement pour PC et pour GP2X recherche du coté du "cross compiler" sur le wiki gp2x.

si tu a des interogations ou quoi que ce soit n'hezite pas a passer nous voir ici !
et si tu cherche a faire un jeu un peu complex passe aussi nous voir il y a probablement des gens qui cherche des projets (moi par exemple smile)
--> www.emericdev.com
--> www.gp2xfr.info

8

Bonjour,

le forum n'est pas très actif, alors je vais donner de mes nouvelles.

Tout d'abord, merci à beersleep pour son SDK qui est exactement ce que je voulais !!! (j'avais téléchargé plein de devkit GP2X, mais aucun n'était apparement aussi simple que celui là), puis à tchern0byl pour son altruisme et ses réponses complètes.

Malgré le peu de temps que j'ai en ce moment (responsables: mon boulot et WOW), j'ai installé donc le GP2XSDK puis ajouté 2 ou 3 lignes au nouveau projet application afin d'afficher via les fonctions SDL un BMP.
- compilé pour Windows: CA MARCHE DU PREMIER COUP !!!
- compilé pour GP2X: ca marche pas ... puis j'ai réessayer cette fois si sans oublier de copier AUSSI le BMP wink ... et ca a marché sans modifier aucune ligne de code!!!

Je pense que là ou il faudra différencier le code Windows de GP2X, c'est pour l'interaction clavier/boutons gp2x.

Voilà !! Je vais essayer Jeudi de développer une petite appli qui remplacera le menu GP2X (via autorun.gpe). En effet je trouve un peu lourd d'avoir fait un bouton par application (video/jeux/appli/ebook). Je vais essayer de faire un menu qui permettrai de faire de l'association d'extension (ex: un fichier texte qui dit: si .avi alors exécuter la commande qui lance le lecteur video avec comme paramètre la vidéo)...

@+

9

oui pour les boutons il faut modifier... mais en definissant les boutons dans des constantes et en choisissant la cible de compil via une constante également tu peux compiler pour pc et en changeant simplement la constante qui définit pour quoi tu compile hop tu compile pour gp2x..

Si je retrouve je te filerai le bout de code grin meme si je suis qu'un noob en c++ j'avais réussi a le faire smile si ca te permet de gagner un peu de temps !
avatar
Tout probleme a sa solution
Oeil de feu

10

#define TARGET_GP2X

#ifdef TARGET_WINDOWS
#   define GP2X_BUTTON_UP              (SDLK_KP8)
#   define GP2X_BUTTON_DOWN            (SDLK_KP2)
#   define GP2X_BUTTON_LEFT            (SDLK_KP4)
#   define GP2X_BUTTON_RIGHT           (SDLK_KP6)
#   define GP2X_BUTTON_START           (SDLK_RETURN)
#else
#    define GP2X_BUTTON_UP              (0)
#    define GP2X_BUTTON_DOWN            (4)
#    define GP2X_BUTTON_LEFT            (2)
#    define GP2X_BUTTON_RIGHT           (6)
#    define GP2X_BUTTON_START           (8)
#endif


voila, moi j'utilisais que les boutons Start et les fleches/joystick smile à toi de compléter !
avatar
Tout probleme a sa solution
Oeil de feu

11

Merci beaucoup oeildefeu smile

J'arrive maintenant a afficher une image png via sdl_image (je sais je suis trop fort ^^) mais j'aurai souhaité la faire rétrécir et agrandir pour donner un effet d'éloignement puis de rapprochement, j'ai cru comprendre que SDL ne le fesait pas mais SDL_gfx oui, alors j'ai ajouté :

#include <SDL/SDL_rotozoom.h>
...
puis ma fonction :
IMG_zommed = rotozoomSurface(IMG_ico_game,0.5,0.5,0);
...

ca marche ... presque... le linker me dit:

[Linker error] undefined reference to `_imp__rotozoomSurface'

je n'arrive pas a trouver ce qu'il faut faire, ...... une idée ....

12

t'es sous devcpp ? si oui au linker tu lui a mis SDL_gfx ?
Je sais pas trop mais je propose smile
avatar
Tout probleme a sa solution
Oeil de feu

13

Merci oeildefeu smile

Je ne suis qu'ingénieur système, donc je n'ai que des notions de programation (e.g. vbs lol)
Je ne connais pas les notions tels que makefile, linker, ... par contre je sais comment fonctionne une classe, un sémaphore, ... (allez comprendre pourquoi lol)

En tout cas ca fonctionne, donc pour résumer, pour utiliser SDL_GFX, il faut mettre dans le code #include <SDL/SDL_rotozoom.h> et paramétrer DEVC++ de la facon suivante:

Dans outils> option du compilateur, ajouté -lSDL_gfx comme vu ci dessous:

Ajouter ces commandes lors de l'appel de l'éditeur de liens:
-lmingw32 -liconv -lgp2x -lSDL_gfx



Mais mis ces info, car j'ai cherché pendant des heures dans trouver de solutions (plein de personnes ont le meme problème).

PS: par encore testé en compilation GP2X, je croise les doigts Y

14

normalement la premiere compilation pour gp2x merde lol grin

Sinon situ commpile, teste, ca merde, modifie recompile et reteste directement.. essaye d'éteindre et rebooter la console j'ai noté que défois elle prenait pas en compte les changements.. j'ai pas compris pourquoi...
avatar
Tout probleme a sa solution
Oeil de feu

15

je reviens vers vous car j'ai quelques problèmes.

le package GP2X SDK est super (dispo sur dev.gp2x.com) ..... mais, il n'inclue pas la lib sdl_gfx pour la compilation gp2x. Donc j'ai essayé de les inclure (comme decrit ci dessus) et .... ca fonctionne pas ... le linker me dit que les lib sont en hardware FP et mon .gpe en software FP (mon amis google m'a dit que ca veux dire Floating Point).

D'autre package on l'air plus complet, mais n'ont pas dev-c++ ...

Quelqu'un aurait un environement tout fait que l'on pourrait téléchargé, ou comment peux on compiler les lib, est t'il vrai qu'il faut mettre l'option -static ? (plein de question)

16

si ca utilise des floating point tu ne pourras les utilise, car les processeurs arm ne gere pas les float c'est pour ca que adapter opengl est tres dur

17

Bonne nouvelle !!!

En me connectant aujourd'hui, j'ai vu qu'ils ont distribué une nouvelle release de GP2XSDK !!! avec plein (je crois) de nouvelles libs

Le dev GP2X devient un vrai plaisir car simple comme BONJOUR (hello world).

lien: http://dev.gp2x.com/sdk/gp2xsdk_windows.zip

Je pense que c'est une news a rajouter sur le site et dans le topic news wink