| |||||
| Dernière réponse | |
|---|---|
| Sujet : Création d'un moteur de jeu 2D | |
| snev42 | Je ne dirais qu'une chose :
[#ff0000]ALLEGRO RULEZ |
| Aperçu |
|---|
| Vue Rapide de la discussion |
|---|
| snev42 | Je ne dirais qu'une chose :
[#ff0000]ALLEGRO RULEZ |
| BlackWolf | bah chez moi ca tourne impec c fluide et ca ne plante pas.
Config : Amd Thunderbird 800 256 meg de ram ge-force 2 GTS 32mb HD 46 gig + 15 gig win 98 SE + Dx8 |
| pinguin007 | ben au buro le jeux marche 5 sec puis redone la main a win2k |
| darkoli | eh si il marche chez moi ton jeu mais bizarrement ca rame un peu. J'ai une TNT et un PIII600E avec 256Mo de SDRAM et ca rame !!!
Ben sinon ca à l'air de bien marcher mais ton jeu est visiblement tres gourmand en ressources et la TNT ne suffit pas. |
| Alload | Bon, le jeu marche chez personne...
:lol: :lol: :lol: Je sais pas d'où ça vient. Ventilo > Ben bien sûr que tu pourrais adapter ton moteur à D3D, c'est vachement simple. Vas faire un tour dans l'aide de la librairie D3DX de la SDK, tu vas trouver une section qui parle de l'éléement D3DXSprite qui sert à afficher des sprites. Ensuite c'est à peu près pareil qu'avec DirectDraw. Tu spécifies un RECT pour la source de l'image, une texture où se trouve l'image à la place d'une surface, un vector pour indiquer l'emplacement du pixel haut/gauche sur l'écran, et quelques autres trucs et c'est bon. Ce qui est bien, c'est que même si on est sous D3D, on est pas obligé d'utiliser des matrices ou des repères 3D, c'est simplement du DirectDraw amélioré qu'on fait. Et en plus tu peux agrandider ou réduire l'image afficher directement ou lui faire subir des rotations. Si tu veux de l'aide pour porter ton code, contactes moi: alload@hotmail.com. ;) |
| art_dupond |
|
| Ventilo |
|
| Alload | Pour le chat, on peut se faire ça sur ICQ sinon, mon UIN: 16189367 ou si tu as AIM: LordAlload . |
| nibbles1 | allo alload ! :D je te l'ai envoyé ;) |
| nibbles1 | désolé
caramail est en cours de maintenance qui disent :lol: :lol: :lol: :lol: |
| nibbles1 | :jap: je sais pas :hap: :D :D :D :D :D ok je te renvoie ça merci qui :jap: |
| Alload | Nibbles1 > Tu pourrais me mailer le fichier que je t'ai envoyé avec le code source du programme? Parce que mon ordi a planté alors que j'étais entrain d'éditer le code et maintenant j'arrive plus à l'avoir.
:( |
| Alload | Pour tous ceux qui veulent bien tester mon programme et dire si ça marche ou pas:
http://www.multimania.com/final6/ShootEmUp.exe Merci :) |
| darkoli | ben si tu veux Alload, je peux essayer ton jeu chez moi et te dire si ca marche !!! |
| Alload | Oki, ça je savais déjà. Mais je demandais juste si il y avait moyen de clarifier un peu tout ça.
Sinon, comment ça il marche pas mon jeu Nibbles1? Arf :D T'es sûr qu'il y a DirectX 8 installé? Sinon, ça vient surement du fait que la carte graphique est trop vieille, peut-être qu'elle ne supporte pas le color keying, les vieilles le font pas je crois. Et donc elle peut pas afficher les images. :( |
| darkoli | en fait je suis d'accord avec Willythekid, un moteur 2d c'est pas tres compliqué comme un moteur 3d, y'a trois etapes importantes :
1° Calculs (positions de objets,interactions,collision,deplacement,...) 2° Affichage (décors + objets + effets éventuels + ...) 3° Recuperation des evenements et mise à jour des parametres/variables Ben apres en affichage 2D, ca depend de ce que tu veux, il se peut que ce soit seulement des copies de sprites (copies de zone memoires) mais il peut y avoir la gestion des effets speciaux 2D (faire une explosion,tire d'une objet, fumée, ...) |
| nibbles1 | marche po ton exe sous w98 ici ! :lol: je c pa si ca vient du hardware ( c 1 ATI rage pro) :fou: vas-y debug alload ! :D |
| Willythekid | Quake3 aussi, je pense :) |
| nibbles1 | en tt cas ça a l'air suffisant pr faire un pacman ou un serpent :D |
| Willythekid | Un moteur de jeu 2d?? quesako ??
Enfin je vois pas trop de quoi tu parle :) Je peux toujours essayer de te donner une idee de comment on fait un jeu (tous les jeux, 2D ou 3D :))...de maniere tres tres tres superficielle :) (parce que c'est long et complique et parce que c'est pas mon domaine :) ) 1) On blit les sprites/animation sur l'ecran 2) On recupere les touches presses, les "events" des joueurs (un tel presse la touche "gauche", etc) etc 3) On update les variables, les objets en consequence. (On gere eventuellement les collisions, etc) Et bien sur on revient a 1...jusqu'a ce que le jeu soit fini :) Maintenant, j'imagine que j'ai repondu a cote :) |
| nibbles1 | :fou: :fou: pas de dx8 installé sur ce PC :fou: :fou: ben oui je bosse, je suis pas cchez moi :lol: |
| nibbles1 | ok fodra ke je refasse un executable ! en plus y aura tt un petit tas de petits bouts d'fichiers par-ci par-là :D :D attention :D :D jouable à 4 sur un clavier :jap: sans aucun conflit Cartman, Kenny, Stanley et Kyle avec 4 sprites chacun :jap: objet : longueur des flammes :wahoo: 4 maps :D je demande l'accord à mon co-développeur :lol: et si l'accord et ok, je te mailerai une version démo :na: si tu pouvais aller sur un chat ke je t'explique le moteur... caramail ? ca te va ? yahoo ? |
| Alload | Bah on peut assimiler le prog que je t'ai envoyé à un jeu, mais un tout petit alors.
:D En fait il y a pas de but dans mon jeu, c'était juste pour tester le scrolling et la gestion des collisions. Sinon, je veux bien que tu m'expliques ton "moteur" de Bomber Park. Je veux même bien l'exécutable. :) |
| nibbles1 | merci ça c'est :bounce: t'as jamais fait de jeu ? même un tout petit ?? si tu veux ke je t'explik mon "moteur" de Bomber Park (TM) :D :D , taka demander. :wahoo: |
| Alload | Ben disons que le Pascal je connais pas, donc je pourrais pas lire le code, merci quand même.
:) Sinon concernant mon avancement, j'ai arreté DirectDraw. Et oui, je suis passé à Direct3D 8, car je me suis rendu compte d'une part que c'était pas la peine d'apprendre une API morte et d'autre part que c'était très simple d'utiliser des sprites avec Direct3D et que c'était plus rapide. Voilà, la librairie D3DX8 est géniale, on peut aussi facilement dessiner des sprites qu'avec DirectDraw, et l'initialisation de D3D8 est plus rapide que celle de DirectDraw. Je t'envois le code source du dernier programme que j'ai fais, il est en Direct3D par contre. Mais tu verras, c'est pas compliqué. :) |
| nibbles1 | ah! t'es encore là ! ;) t'as avancé alors ? moi j'ai pas eu le temps :fou: t'as fait quoi de beau ? :D (ça veut dire, envoie tes src :hello: ) merci monsieur :jap: moi je suis en stage alors je peux pas bosser mon jeu :fou: :fou: un moteur de jeu, j'ai fait un bomberman en turbo pascal, je c pas si ça pouré tédé !! |
| Alload | Réflechissant à comment faire le mieux possible un jeu 2D (qui n'est plus un Shoot'em Up mais un jeu de course vu de dessus :D ), je me demandais comment créer un moteur de jeu.
Je pense que ce serait pratique de rassembler toutes les fonctions nécessaires dans une grande class moteur de jeu, mais j'ai du mal à me représenter comment l'organiser. Un moteur de jeu se présente comment? On lui envoit des messages et lui utilise les fonctions qui sont assignées aux messages? Aidez moi à comprendre la théorie. :) |




