IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement 2D, 3D et Jeux Discussion :

[collision] conception d'un jeu


Sujet :

Développement 2D, 3D et Jeux

  1. #21
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 537
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 537
    Points : 2 548
    Points
    2 548
    Par défaut
    C'est sans doute un peu bateau ce que je vais dire, mais il n'y a pas (et même jamais) de solution miracle . . .

    Le tileset permet aussi de fournir un éditeur de map dans le futur de façon bien plus simple que la grosse map globale. ca peut etre interessant !

  2. #22
    Membre habitué Avatar de skysee
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 191
    Points : 137
    Points
    137
    Par défaut
    J'ai une question sur la mise en œuvre avec des tuiles.
    Les tuiles sont des pavés de forme rectangulaire que l'on associe les uns à côté des autres pour formé le circuit dans mon cas. Je dois donc définir des tuiles bloquantes ou non pour ce qui concerne les collisions.
    Mais dans le cas des virages ou alors des lignes droites en biais je ne vois pas trop.

    Plus clairement, comment gérer les collisions d'une ligne droite en biais, puisque le bord d'une tuile ne pourra pas correspondre avec le bord de la route.

    Tout ca pour dire que je ne trouve de solution simples nécessitant peu de données concernant le circuit.

    édit : sinon Frifon que penses tu d'un fichier image représentant la map avec un fichier de données représentant les points clés du circuit? ou y'à t'il plus simple.

  3. #23
    Membre régulier
    Inscrit en
    Juillet 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 104
    Points : 95
    Points
    95
    Par défaut
    J'ai penser à deux solutions :
    1 - lors de la création d'une map, peindre les objets/contours sujet à collision d'une certaine couleur et tester à chaque boucle si la position d'une voiture est la même que celle d'un pixel de couleur prédéfini.
    Mais la çà ne me paraît pas réaliste en terme de performance...
    ben si tu reduit ton test à la surface faite par la voiture + son déplacement il ne te reste qu'un petit carré à tester ? mais cette sol parait pas tres propre la sol 2 me semble plus tenir la route

    2 - Avoir une map faisant juste office d'arrière plan, et avoir en parallèle un tableau, au dimension de la map (la aussi ca me paraît énorme), ou chaque case représentant un pixel est a 0 ou 1 suivant s'il doit y avoir collision ou pas.
    j'ai utilisé cette technique dans un petit jeu de voiture tout en ASM(286)... il y'a fort longtemps.... un truc tre sympa avec cette technique c'est d'utiliser une image RGB et de definir des materiaux differents, par exemple bleu=> glisse, vert=>ralentit, gris => route normal, etc... ca permet de definir des level "tres visuellement". pour les collision le noir.

    optimisation:
    Il faut definir le contour de ta voiture par un ensemble de points :pour ca il suffit d'ecrire un petit prog qui charge le sprite de la voitur et qui detecte tout les pixel à coté du fond, on peu utiliser le principe du fond bleu/violet.

    a - tu remplis le fond avec un couleur qui n'existe pas dans ton sprite
    b - tu conserve pour ton sprite la pos de tout les pixel qui ont la couleur du fond comme voisin

    les collisions:
    suivant la position et rotation de ton sprite tu calcul la pos de tout tes points de contour sur ton image de fond (la map de materiau) et tu les utlise pour calculer tes collisions en deplacant chaque point de contour par le vecteur de deplacement de ta voiture

    a - tu tourne tout les point comme ton sprite
    b - tu deplace tout tes point à la pos de ton sprite
    c - tu deplace chaque point par le vecteur de déplacement de la voiture , tu arrete si rencontre d'un point noir (solid).
    - si aucun point ne passe sur un point noir, c'est terminé tu peu déplacer la voiture
    - si un ou plusieur point passe sur un point noir il faut garder celui qui y passe le premier, calculer le nouveau déplacement et recommencer à l'étape "a"

    pour commencer à tester et/ou simplifier au max tu peux juste utiliser quatres points (formant le rectangle autour de la voiture) mais ca risque de faire pas mal de bugs.

  4. #24
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 399
    Points : 413
    Points
    413
    Par défaut
    Citation Envoyé par DzzDDzzD Voir le message
    pour commencer à tester et/ou simplifier au max tu peux juste utiliser quatres points (formant le rectangle autour de la voiture) mais ca risque de faire pas mal de bugs.
    Au contraire je dirai que une boite englobante orienté entrainera sans doute moins de bugs (ou en tout cas moins de complications). Les formes concaves étant plus difficiles a gérer (risque de blocage avec 2 formes qui se retrouve imbriqué, résolution des collisions beaucoup plus galère...). Je pense que pour un micro machine like une boite englobante orientée est amplement suffisant. Après tout dépend de la forme de la voiture. Si la forme est un peu complexe, plusieurs OBB ou sphères peuvent le faire largement.
    SPARK
    Moteur de particule C++ opensource avec modules de rendu OpenGL, Irrlicht et SFML

Discussions similaires

  1. Besoin d'avis sur la conception d'un jeu
    Par MonsieurHelmut dans le forum Développement 2D, 3D et Jeux
    Réponses: 13
    Dernier message: 14/03/2007, 20h14
  2. Conception d'un jeu de tennis
    Par b Oo dans le forum Développement 2D, 3D et Jeux
    Réponses: 5
    Dernier message: 17/01/2007, 22h19
  3. Conception d'un jeu de course
    Par zooffy dans le forum Développement 2D, 3D et Jeux
    Réponses: 5
    Dernier message: 03/11/2006, 19h29
  4. [Conception] Concevoir le jeu Pierre Feuille Ciseau
    Par websurfeur dans le forum Général Java
    Réponses: 14
    Dernier message: 17/03/2006, 19h26
  5. [VB] Aide pour la conception d'un jeu
    Par superbruno dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 17/01/2006, 18h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo