CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Moteur 2D + collisions + évenement

Quintoff
Quintoff
Niveau 10
27 mars 2005 à 12:26:34

Salut,

Alors j´aimerais créer un moteur 2D pour mon jeu qui gerait en même temps les collisions. Ca serait pour l´utiliser à l´aide de méthodes qui prendraient ce genre d´argument :
- Un identifiant représentant l´objet à afficher ( perso, batiment, déco, . ..)
- Un nombre qui représente enfet une couche : le jeu serait définit en plusieur couche : couche derriere le joueur, couche devant le joueur, couche inaccessible par le perso ( => gestion des collisions).
- Deux valeurs entières, x et y représentant la position de l´objet dans la zone de jeux.

Pour les évenements la je pensais les gerer inépendament du moteur graphique par exemple :
if(x == 10 && y == 20) => entre dans un bâtiment.

Mais seulement je ne suis pas trop sur de la façon de procéder. Je sais que des " foromeurs" ont une certaine expérience et savent sûrement si la méthode que je vient de vous présenter et bonne.

Merci d´avance pour vos infos.

ps : je parle au niveau de la logique et de la facon de procéder et non au niveau des librairies et de la prog proprement dite. ( En plus je fais du java donc me parler de SDL ect ca ne me sert pas a grand chose :) )

Lapintade
Lapintade
Niveau 30
27 mars 2005 à 12:51:35

Ce que tu veux faire ce n´est pas un moteur 2D ( moteur 2d = moteur qui affiche des elements en 2d), mais un MOTEUR DE JEU 2D.

Un moteur de jeu est quelquechose de specifique a un type de jeu. Quel est le type de jeu que tu veux faire ? Ensuite on pourra en parler ?

( En effet tu gere pas du tout de la meme facon un RPG et un jeu de plateforme par exemple).

paradox-
paradox-
Niveau 6
27 mars 2005 à 12:56:20

Petit HS:

" En plus je fais du java donc me parler de SDL ect ca ne me sert pas a grand chose "

:d) GL4Java existe et peut etre que ces messieurs de Microsoft inventerons un truc DirectX pour Java# :) Donc même avec du Java on peut penser en terme d´API classique

Quintoff
Quintoff
Niveau 10
27 mars 2005 à 12:56:59

Ok, merci.

C´est un simple rpg en 2D assez proche d´un Pokémon sur gameboy au niveau de l´ambiance et des graphismes. Avec des combats en temps réel ( comme slayersonline).

Donc j´ai quelques difficultés sur la facon de procéder, je pense qu´il faut plus ou moins procéder comme je l´ai décrit dans mon premier post mais pas sur du tout!

Merci d´avance.

Quintoff
Quintoff
Niveau 10
27 mars 2005 à 12:58:37

" GL4Java existe et peut etre que ces messieurs de Microsoft inventerons un truc DirectX pour Java# Donc même avec du Java on peut penser en terme d´API classique" => Merci mais je veux que mon application reste portable donc faut pas que je touche au JNI en plus j´ai ce qu´il faut pour l´affichage :-)

Lapintade
Lapintade
Niveau 30
27 mars 2005 à 13:15:43

C´est un simple rpg en 2D

Rien n´est simple.

Ton idée de debut est bonne.
Si je peux te donner un conseil, c´est de bien separer l´affichage et la gestion des collisions et des objets. Ca simplifie beaucoup les choses.

Pour l´affichage, en effet il faut plusieurs couches. Pour le decor deux couches suffisent ( le fond et le devant).

Pour les collisions une simple grille avec des booleens suffit ( 0=le perso peut passer, 1=le perso peut pas passer).

Pour la gestion des evenements, c´est un peu plus compliqué. Le plus simple c´est de faire un tableau d´objets comme tu as dit.

Quintoff
Quintoff
Niveau 10
27 mars 2005 à 13:21:41

Un grand merci tout s´éclaire, je comptais diviser la zone de jeu en case comme tu dis mais j´avais pas pensé utiliser les booleens :) . Pour les couches je cerchait aussi tro compliqué. Et pour les évenement apparement ca va :-) .

Sinon encore une petite question : Je comptait réaliser mon jeu de tel facon que la map s´affiche partie par partie et que quand le joueur va sur le bord de l´écran, ca affiche une autre zone de jeu. Cependant, je me suis demander si ca ne serait pas gènant pour le joueur! Pour que le perso reste constamment au centre de l´écran et que la map bouge et non le joueur, faut il adopterune autre technique?

Merci d´avance.

Lapintade
Lapintade
Niveau 30
27 mars 2005 à 13:30:58

La technique reste la meme si tu veux utiliser un scrolling.

Aprés c´est juste l´affichage qui differe ( toujours bien separer l´affichage de la gestion du jeu).

Tu prends la position de ton perso, ca correspond au centre de ton ecran, et ensuite tu affiche tes tiles en fonction de ca. Faut prevoir d´afficher une rangée de plus tout autours pour qu´on voit pas de noir. C´est pas bien compliqué a comprendre ( mais c´est long a expliquer, je te laisse cherche un peu).

Lapintade
Lapintade
Niveau 30
27 mars 2005 à 13:31:47

Pour le scrolling il faut prevoir de pouvoir afficher tes tiles 2D a n´importe quelle position , et non juste aligné sur une grille. Voila, c´est ca le truc important.

Quintoff
Quintoff
Niveau 10
27 mars 2005 à 13:38:07

Ok merci je vais chercher :) Juste un petit détail : des tiles c´est les objets a afficher, les images en sorte?

Quintoff
Quintoff
Niveau 10
27 mars 2005 à 14:02:58

Après quelques recherches : " Une tile est une surface DirectDraw rectangulaire ou carrée sur laquelle on dessine une image bmp. On peut la comparer à une petite brique, ou un élément de puzzle. En assemblant un grand nombre de tiles entre elles, ont peut recréer un mode complexe avec uniquement quelque images. Le programmeur n´aura en fait qu´a dessiner le contenu d´une même tile représentant de l´herbe partout sur l´écran pour créer un champs. Si celles-ci sont bien fait, le joueur ne devrait pas voir l´illusion. Une cartes se compose de n tiles en largeur et de m tiles en hauteur."

Merci encore pour toutes ces infos.

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment