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 :

[first person shooter]Gerer les tirs


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2007
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 204
    Points : 67
    Points
    67
    Par défaut [first person shooter]Gerer les tirs
    Salut,
    Etant dans la phase de conception de mon jeu de tir doom-like, je me demande comment gerer les tirs:
    creer un modele de roquette, dont la vitesse sera tres grande
    ou bien creer un generateur de particules

    la collision sera gere par raypicking evidement.
    dommage

  2. #2
    Nouveau membre du Club
    Inscrit en
    Décembre 2009
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 26
    Points : 29
    Points
    29
    Par défaut
    Tu peux faire une liste avec tous les balles du jeux dans laquelle tu tiendrais des classes de base 'BasicBullet'. Les balles auront une vitesse, une positionne mais il auront aussi une méthode qui va les mettre en jour. Donc tu pourras avoir plusieurs comportements pour tes balles (balistique, téléguidé, en ligne droit). Une balle va avoir un modelé attaché mais aussi des générateurs de particules.

    Tu peux traiter les collisions en utilisant une intersection entre une segment de ligne (position de frames dernier et actuelle) et des sphères, 'bounding boxes' et des mailles polygonaux.

  3. #3
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 022
    Points : 2 273
    Points
    2 273
    Par défaut
    Et ca va dépendre de ton type d'arme. Pour une roquette, j'imagine qu'elle ne va pas arriver directement sur ta cible ? Dans ce cas t'auras plutôt un solide avec une certaine vélocité et un test de collision basique. En revanche, pour un fusil tu pourras utiliser du lancer de rayons, vu que l'impact est direct.
    Sinon pourquoi tu parles de particules ? Pour l'explosion ?
    Vive les roues en pierre

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Tu peux utiliser un volume englobant pour une roquette, je pense notamment à une boite englobante orientée (oriented bounding box), c'est une approximation suffisante, je ne recommande pas d'utiliser directement la maille du projectile car ce serait plus lent et le gain de précision par rapport à la solution que je propose est négligeable.

    Pour les autres projectiles, les balles entre autres, lance un rayon.

    Pour les effets d'explosion, tu peux utiliser des sprites, faire varier la transparence, la taille et t'arranger pour qu'ils soient orientés face au joueur. Regarde comment j'ai fait dans mon FPS.

    Tu peux aussi gérer les impacts si tu connais la surface impactée et le point d'impact.

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2007
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 204
    Points : 67
    Points
    67
    Par défaut
    Citation Envoyé par gouessej Voir le message
    Bonjour

    Tu peux utiliser un volume englobant pour une roquette, je pense notamment à une boite englobante orientée (oriented bounding box), c'est une approximation suffisante, je ne recommande pas d'utiliser directement la maille du projectile car ce serait plus lent et le gain de précision par rapport à la solution que je propose est négligeable.

    Pour les autres projectiles, les balles entre autres, lance un rayon.

    Pour les effets d'explosion, tu peux utiliser des sprites, faire varier la transparence, la taille et t'arranger pour qu'ils soient orientés face au joueur. Regarde comment j'ai fait dans mon FPS.

    Tu peux aussi gérer les impacts si tu connais la surface impactée et le point d'impact.
    Ah tu as deja fait un FPS! merci beaucoup, je suis sur que ca devrait m'aider!
    dommage

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par bachir006 Voir le message
    Ah tu as deja fait un FPS! merci beaucoup, je suis sur que ca devrait m'aider!
    Oui j'espère, c'est le but. Utilises-tu un moteur 3D existant ou bien écris-tu ton propre moteur?

  7. #7
    Membre du Club
    Inscrit en
    Octobre 2007
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 204
    Points : 67
    Points
    67
    Par défaut
    Citation Envoyé par gouessej Voir le message
    Oui j'espère, c'est le but. Utilises-tu un moteur 3D existant ou bien écris-tu ton propre moteur?
    Faut pas etre fou non plus, j'utilise Soya3D comme moteur 3D(en python)
    La physique, je la gere moi meme a base de raypicking pour le sol, et de spheres englobantes pour le reste.

    Je vois avec du recul que le tuto de gouessej est plutot axé connaissance théorique , chose dont je n'ai pas particulièrement besoin en ce moment(je n'ai pas à gerer les matrices moi même par example)
    J'aurais préféré qu'il se concentre plutot sur "Comment créer un FPS" plutot que "Voici les bases pour créer un FPS".


    Sinon, j'ai récupéré le dépot SVN. Je ne trouve pas les modèles 3D que tu utilises. Sont il placés dans un dossier special?
    Je n'ai encore pris la peine de compiler les sources, je n'ai pas fait de JAVA auparavant, et les étapes sont très longues pour le faire. (je suis sous Linux)
    dommage

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par bachir006 Voir le message
    Faut pas etre fou non plus, j'utilise Soya3D comme moteur 3D(en python)
    C'est pas le problème. J'utilisais mon propre moteur au départ, ce n'est plus le cas aujourd'hui.

    Citation Envoyé par bachir006 Voir le message
    Je vois avec du recul que le tuto de gouessej est plutot axé connaissance théorique , chose dont je n'ai pas particulièrement besoin en ce moment(je n'ai pas à gerer les matrices moi même par example)
    J'aurais préféré qu'il se concentre plutot sur "Comment créer un FPS" plutot que "Voici les bases pour créer un FPS".
    Mon tutoriel est loin d'être fini. De plus, ça commence à faire un bout de temps que je fais de la 3D, j'utilise des moteurs et je vois bien que certains aspects (souvent les plus difficiles à implémenter) sont mal gérés (tu trouveras très très peu de moteurs avec une implémentation robuste de la division de l'espace en cellules et en portails et du portal culling, certains ont ce dernier mais pas les outils qui vont avec). Pour mieux utiliser un moteur 3D quel qu'il soit, c'est quand même mieux de comprendre ce qu'il y a dedans, comment ça marche à l'intérieur sinon tu risques de caler le jour où ça ne marche pas comme prévu si je puis dire. Si tu fais l'impasse sur les connaissances théoriques, ce ne sera pas sans conséquence.

    Citation Envoyé par bachir006 Voir le message
    Sinon, j'ai récupéré le dépot SVN. Je ne trouve pas les modèles 3D que tu utilises. Sont il placés dans un dossier special?
    Je n'ai encore pris la peine de compiler les sources, je n'ai pas fait de JAVA auparavant, et les étapes sont très longues pour le faire. (je suis sous Linux)
    Les modèles au format Collada sont placés dans le répertoire "dae" de la branche pré-bêta, je vais bientôt en rajouter un autre, une sorte d'humanoïde cannibale assez bien fichu. J'ai détaillé l'installation sur mon site Internet et c'est aussi simple sous Linux que sous Windows. Je suis moi aussi (exclusivement) sous Linux.

  9. #9
    Membre du Club
    Inscrit en
    Octobre 2007
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 204
    Points : 67
    Points
    67
    Par défaut
    C'est pas le problème. J'utilisais mon propre moteur au départ, ce n'est plus le cas aujourd'hui.
    Je parlais pour mon propre cas. J'ai déjà essayer (et plusieurs fois) de faire un moteur 3D digne de ce nom. Mais à chaque fois je foirais quand il s'agissait de manipulation de matrices(ou quaternion :p ). J'etais au collège, donc...
    Ma carte graphique est obsolète, donc les shaders et effets je peux oublier complètement.

    Actuellement, mon objectif premier est de créer un jeu COMPLET, pas juste un moteur graphique avec un chargeur de fichier .OBJ, donc je me tourne vers un moteur tout fait.(ogre en C++ au début, irrlicht, puis Soya3D)

    Mon tutoriel est loin d'être fini. De plus, ça commence à faire un bout de temps que je fais de la 3D, j'utilise des moteurs et je vois bien que certains aspects (souvent les plus difficiles à implémenter) sont mal gérés (tu trouveras très très peu de moteurs avec une implémentation robuste de la division de l'espace en cellules et en portails et du portal culling, certains ont ce dernier mais pas les outils qui vont avec). Pour mieux utiliser un moteur 3D quel qu'il soit, c'est quand même mieux de comprendre ce qu'il y a dedans, comment ça marche à l'intérieur sinon tu risques de caler le jour où ça ne marche pas comme prévu si je puis dire. Si tu fais l'impasse sur les connaissances théoriques, ce ne sera pas sans conséquence.
    Le titre du tuto est bien: Réalisation d'un First Person Shooter en 3D. Je m'attendait à avec uniquement des informations specifiques sur la création de FPS, pas sur les moteurs graphiques en général.
    Mais bon puisque le tuto n'est pas fini, je reste sur ma faim. Je m'abstient de juger pour l'instant.
    dommage

Discussions similaires

  1. gerer les parametres entrée sur un TADOStoredProc
    Par keguira dans le forum Bases de données
    Réponses: 1
    Dernier message: 13/09/2004, 15h56
  2. [Htaccess] Gérer les erreurs HTTP du type 404...
    Par Marshall_Mathers dans le forum Apache
    Réponses: 4
    Dernier message: 01/07/2004, 10h29
  3. [interbase] gerer les transactions
    Par webbulls dans le forum Bases de données
    Réponses: 3
    Dernier message: 14/05/2004, 18h27
  4. Camera First Person Shooter
    Par Martin dans le forum OpenGL
    Réponses: 6
    Dernier message: 15/01/2004, 04h37
  5. [syntaxe] Gerer les variables dans une requete
    Par rastapopulos dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 15/04/2003, 12h53

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