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

Moteurs de jeux vidéo Discussion :

Stocker des terrains et modèles graphiques dans un SGBD


Sujet :

Moteurs de jeux vidéo

  1. #1
    Membre actif

    Inscrit en
    Août 2005
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 401
    Points : 228
    Points
    228
    Par défaut Stocker des terrains et modèles graphiques dans un SGBD
    Bonjour,

    J'ai besoin de votre aide et de votre expertise. Je souhaite me lancer dans l'écriture en JAVA d'un MMORPG en 3D. Je souhaiterais pour cela que mes "niveaux" soient stocké dans ma base de données. (Je stocke que tel ou tel élément et comme cela et comme ceci). Pensez-vous que cela sot possible si oui comment ?

    Ma seconde question est la suivante :
    Je pense choisir un moteur graphique en JAVA de type JOGL. Pensez-vous que cela soit judicieux ? Je demande juste a avoir 150Fps maximum je n'ai pas besoin de plus.
    Avez-vous des suggestions sur le moteur graphiques à adopter ? Sachant que je souhaite pouvoir importer des modèles venus de divers logiciels de création 3D dont blender.

    J'ai donc besoin d'une expertise de votre part pour pouvoir m'orienter sur mon choix. J'en suis qu'à l'étape de la rédaction du cahier des charges de mon projet et je pense avancé par itération tranquillement. Je ne veux pas me lancer dans un projet trop ambitieux. L'innovation dans mon projet, c'est que j'aimerais que les joueurs puisse modéliser le monde qui les entoure selon leurs envie. D'où l'idée de stocker des modèles, le sols, et leurs emplacements dans une base. Mais je ne sais pas si cela est possible. Why not.

    D'avance merci.

    NB: Je travaille depuis 6 ans déjà avec JAVA, mais je ne me suis jamais lancé dans la 3D.

  2. #2
    Membre expert

    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Février 2006
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 1 031
    Points : 3 092
    Points
    3 092
    Par défaut
    MMORPG en 3D
    Je ne veux pas me lancer dans un projet trop ambitieux.
    mais je ne me suis jamais lancé dans la 3D.
    Tu sembles être quelqu'un de censé je te conseille d'abord ces lectures :
    http://conquerirlemonde.com/blog/201...mo-3d-amateur/
    http://conquerirlemonde.com/blog/200...ement-foireux/

    Commence par un projet simple en 3D.
    Puis essayes d'y ajouter du multijoueurs à 2-3 joueurs.
    Quand tu auras réussis tu auras l'expertise nécessaire pour abandonner ton idée initiale. ( je caricature à peine )

    Bon courage !

    ( sinon les éléments du terrain directement dans la BDD oui, pourquoi pas ; il faut juste réfléchir à l'intérêt d'une base de données dans ce cas par rapport à un ficher à récupérer directement par le client )
    Suivez le développement de Chibis Bomba
    twitter : https://twitter.com/MoD_DiB
    DevBlog : http://moddib.blogspot.fr/

  3. #3
    Membre actif Avatar de NevilClavain
    Homme Profil pro
    Ingé logiciel
    Inscrit en
    Septembre 2009
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingé logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 68
    Points : 214
    Points
    214
    Par défaut
    Pour ce qui est du terrain, tu pourrais t'orienter vers des solutions de type "procédural" : ton moteur est capable de régénérer un terrain à partir d'un 'seed' (typiquement un int32) qui lui est associé : le seed alimente un formule mathématique (le plus souvent une fractale) qui, au moment de la reconstruction, te pond la hauteur de chaque sommet de la grille de ton terrain. A chaque seed, un terrain différent; du coup pour stocker ton terrain, il te suffit de stocker dans ta base le seed qui a servit a construire celui-ci, soit 4 octets en tout et pour tout (hors méta-données associées bien sur)
    Bon à voir si ça tient vraiment la route par rapport à ce que tu souhaites, j'ai pas poussé la réflexion plus loin que ça

    Quelques liens en rapport:

    http://vterrain.org

    http://www.gamasutra.com/view/featur..._universe_.php

  4. #4
    Membre habitué
    Inscrit en
    Avril 2011
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 59
    Points : 154
    Points
    154
    Par défaut
    Citation Envoyé par akrogames Voir le message
    Je souhaite me lancer dans l'écriture en JAVA d'un MMORPG en 3D.
    Citation Envoyé par akrogames Voir le message
    c'est que j'aimerais que les joueurs puisse modéliser le monde qui les entoure selon leurs envie.
    Citation Envoyé par akrogames Voir le message
    mais je ne me suis jamais lancé dans la 3D.



    Citation Envoyé par akrogames Voir le message
    Je ne veux pas me lancer dans un projet trop ambitieux.
    Raté
    MMO + 3D + contenu dynamique ajouté par les joueurs, je pense que tu es pas loin du combo ultime niveau complexité pour un premier projet.

    Je ne suis pas sur que le stockage de données soit ton seul problème. La facon dont tu va gérer les transfert des ressources entre ton serveur et les clients risque d'être assez groovie aussi.

  5. #5
    Membre actif

    Inscrit en
    Août 2005
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 401
    Points : 228
    Points
    228
    Par défaut
    Vous avez tous raison, c'était ma conclusion aussi. Je ne savais qu'avec un simple Int on arrivais à générer des fractales. C'est sympa la technique.

    Anything en réalité j'ai déjà réalisé un jeu en 2D en JAVA du même type et je stocke mon terrain, la position de tous les objets et des joueurs dans une base de données. D'où l'idée de faire ainsi pour la 3D.

    Je pense plutôt m'orienté vers de la 3D isométrique du coup car cela se rapproche de ce que j'ai déjà réaliser vous en pensez quoi?

    J'ai vraiment peur que les moteurs 3D de Java soit trop lent dans le jeu... Même si ce n'est plus aussi flagrant qu'avant.

    Et comme le dis MoDDiB, il faut que je procède en itération. Pas de multi au début juste un petit test en 3D.

    Merci de votre expertise en tout cas.

  6. #6
    Membre habitué
    Inscrit en
    Avril 2011
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 59
    Points : 154
    Points
    154
    Par défaut
    Citation Envoyé par akrogames Voir le message
    Anything en réalité j'ai déjà réalisé un jeu en 2D en JAVA du même type et je stocke mon terrain, la position de tous les objets et des joueurs dans une base de données.
    Ca fonctionne en multi?


    Citation Envoyé par akrogames Voir le message
    J'ai vraiment peur que les moteurs 3D de Java soit trop lent dans le jeu... Même si ce n'est plus aussi flagrant qu'avant.
    Tout dépent ce que tu veux afficher et comment tu organise ton monde(cloisoné/ouvert). Juste un truc 150 FPS c'est sans grand interet à viser, normalement à 60 tu as deja un jeu assez fluide pour 99% des mortels
    Je ne suis guère fan du java mais si tu te sens à l'aise avec, continue avec.


    Qu'est ce que tu appele 3D iso?
    Une vue à la Fallout?

  7. #7
    Membre actif

    Inscrit en
    Août 2005
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 401
    Points : 228
    Points
    228
    Par défaut
    Pour mon jeu en 2D, je suis parti d'un projet que j'ai fait il y a 5 ans que j'ai petit à petit amélioré. Le jeu fonctionne correctement en multi mais les graphismes ne sont vraiment pas terrible. Bon si il y a 50 personnes, mon serveur commence à galérer mais avec moins cela fonctionne.

    Pour moi la 3D iso, c'est de la 3D mais avec la caméra plongeante à 60° environ.
    Exemple :


    Mon objectif c'est 150FPS car sous CSS, un bon FPS, c'est 150-200 car sinon cela lag et c'est pas terrible. (J'ai déjà joué à CSS sous linux avec 50FPS je perd tous le temps ^^)

    Mon monde sera cloisonné afin de ne pas trop surchargé le serveur... Sinon c'est dur dur.

    Tu utilises du C++ toi pour développez tes jeux ?

  8. #8
    Membre actif Avatar de NevilClavain
    Homme Profil pro
    Ingé logiciel
    Inscrit en
    Septembre 2009
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingé logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 68
    Points : 214
    Points
    214
    Par défaut
    Citation Envoyé par akrogames Voir le message
    Mon objectif c'est 150FPS car sous CSS, un bon FPS, c'est 150-200 car sinon cela lag et c'est pas terrible. (J'ai déjà joué à CSS sous linux avec 50FPS je perd tous le temps ^^)
    Heu...

    Je suis pas expert mais un soft qui rame coté réseau parce que l'affichage descend en dessous des 150 FPS, c'est qu'y a un truc VRAIMENT bancal quelque part dans l'architecture

  9. #9
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 214
    Points : 10 140
    Points
    10 140
    Par défaut
    Citation Envoyé par NevilClavain Voir le message
    Heu...

    Je suis pas expert mais un soft qui rame coté réseau parce que l'affichage descend en dessous des 150 FPS, c'est qu'y a un truc VRAIMENT bancal quelque part dans l'architecture
    +1
    Je suis d'accord voit pas le rapport entre affichage et le réseau,sauf si y a un gros souci dans architecture.

    @akrogames
    150 fps c'est trop après ça dépend des jeux le 30 fps est largement suffisant pour pas mal de jeu, même si certain type de Jeux demande plus (jeux de fight par exemple 50/60 fps).

    Pour ton screen ça ressemble a du 2D iso ><

    Pour moi 3D en vu iso c'est plus comme FF tactics sur psone
    http://ouarpzone.free.fr/images/fft/4.jpg

  10. #10
    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
    En fait, il parle de Counter Strike (un FPS) et je confirme que plus le framerate est haut (avec des min-max différents selon la perception des personnes), plus tu es avantagé car plus la scène est décomposée (donc fluide ) mais rien à voir avec le réseau. Personnellement, en dessous de 100 pour un FPS, ça commence à me déranger. (Enfin, disons que quand tu passes de 100 à 60, tu vois vite la différence en multi)
    Vive les roues en pierre

  11. #11
    Membre actif

    Inscrit en
    Août 2005
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 401
    Points : 228
    Points
    228
    Par défaut
    Merci Djakisback ! C'est la réponse que j'allais donner.

    C'est quoi la différence entre 3D iso et 2D iso ?

  12. #12
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 214
    Points : 10 140
    Points
    10 140
    Par défaut
    Oh ok méa culpa ,j'ignorai pour Conter strike.
    Moi j'aurais jamais dit 3D iso , pour moi quand on parle de iso c'est obligatoirement du 2D iso.
    Apres peut être qu'en parle de 3D iso pour les jeux qui ressemble a du 2D iso ,mais ton screen c'est du 2D je vois aucun 3d dedans donc bon ><

  13. #13
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2011
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 576
    Points : 1 528
    Points
    1 528
    Par défaut
    Je croyait que dans tous les cas l'écran bridait le frameRate perçus à 60fps (selon l'écran)... On m'aurait mentis ?
    La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer. - Antoine de Saint-Exupéry

  14. #14
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    La PS3 fait du 30 FPS.
    Les applications sous Windows ont la synchronisation verticale d'activée par défaut, soit, sont limités à la vitesse de rafraichissement de l'écran.
    Mais lorsqu'il est désactivé, les application ne sont plus limitée.
    Après, un écran peut être rafraichit à plus de 60 FPS (120 pour les jeux en 3D avec lunettes). Mais, bon, sérieusement, pour un écran plat (LCD ou autre), plus besoin de la synchronisation verticale depuis, qu'il n'y a plus de balayage de faisceaux.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  15. #15
    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
    Le taux de rafraichissement des écrans monte plus haut maintenant et il me semble que la limite maximum des FPS est bien celle du rafraichissement vertical. J'ai un doute tout à coup

    Mais à la base, je parlais effectivement plutôt des Cycles Per Second, avec désynchro verticale en me basant sur mon expérience du vieux Counter Strike 1.1-1.6. J'avoue n'avoir pas très bien compris ce qui se passe quand on tourne à 100 cycles mais qu'on ne peut afficher que 60 images/seconde maximum. Je crois que plusieurs rendus sont affichés partiellement en même temps, en tout cas la différence était flagrante pour moi en terme de jouabilité entre 100 et 60.

    (La PS3 peut monter plus haut que 30 je crois, Rage, par exemple tourne à 60 il me semble. Anecdotiquement, quand j'ai testé le jeu Skate 1, qui tournait à 30 fps il me semble, j'ai trouvé ça injouable et limite buggé en fait)
    Vive les roues en pierre

  16. #16
    Membre actif

    Inscrit en
    Août 2005
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 401
    Points : 228
    Points
    228
    Par défaut
    Merci à tous pour les réponses sur le FPS.

    Vous me conseillez d'enregistrer mes mondes en 3D dans des fichiers et d'échanger des fichiers entre mes clients et mon serveur ? Au lieu d'enregistrer tous les objets avec leurs coordonnées dans une base de données ?

    Encore merci pour tout

  17. #17
    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
    En fait, il est assez difficile de répondre à cette question. Il faudrait plus de précisions (puissance machine serveur, types de données, fréquence des insert/select dans la BDD, nombre de connectés max, etc.). Et même avec ça, je dirais que la seule solution serait de faire des tests. Ou bien, il faudrait au moins que tu évalues le volume et la fréquence des transactions puis tu dois pouvoir trouver des tableaux indicatifs pour différents SGBD sur le net.

    Personnellement, la solution me semble viable uniquement si tu stockes toutes les modifications de map en mémoire de l'appli serveur et que tu fasses des inserts seulement de temps en temps mais modifier la BDD à chaque modification du terrain par un user me semble lourd. Se pose également le problème des modifications multiples par différents users.
    Et par sécurité, au final, je verrais deux applis serveur avec mémoire partagée, dont l'une puisse sauver en BDD les infos de la première en cas de crash de celle-ci.

    Pour info, un MMO en Java pose également le problème de la sécurité étant donné que Java est parfaitement décompilable.
    Vive les roues en pierre

  18. #18
    Membre expert

    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Février 2006
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 1 031
    Points : 3 092
    Points
    3 092
    Par défaut
    Citation Envoyé par Djakisback Voir le message
    Pour info, un MMO en Java pose également le problème de la sécurité étant donné que Java est parfaitement décompilable.
    Pour faire une sécurité efficace il faut toujours partir du principe que le hacker dispose des sources complètes, donc C++ ou Java, même combat !
    Suivez le développement de Chibis Bomba
    twitter : https://twitter.com/MoD_DiB
    DevBlog : http://moddib.blogspot.fr/

  19. #19
    Membre actif

    Inscrit en
    Août 2005
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 401
    Points : 228
    Points
    228
    Par défaut
    Djakisback je pense que tu as raison pour la charge serveur, cela me semble lourd aussi... J'ai plus qu'à faire des tests. Je souhaiterais qu'il y ai 2000 personnes maximum sur le serveur en même temps. Donc oui cela va laguer c'est certain.

    Après ils peuvent toujours décompiler, les formules de jeux sont dans la documentation du jeux. Je n'ai rien a caché.

  20. #20
    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
    Citation Envoyé par MoDDiB Voir le message
    Pour faire une sécurité efficace il faut toujours partir du principe que le hacker dispose des sources complètes, donc C++ ou Java, même combat !
    Je dirais que c'est pas faux mais plus en Java, si tu vois ce que je veux dire
    Vive les roues en pierre

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/12/2009, 15h00
  2. Peut-on stocker des sources et la javadoc dans le ".jar"?
    Par nicrob_77 dans le forum Général Java
    Réponses: 7
    Dernier message: 24/10/2008, 08h40
  3. Réponses: 4
    Dernier message: 05/05/2007, 19h12
  4. Réponses: 2
    Dernier message: 13/01/2007, 23h04
  5. [VB]stocker des données de pages web dans une base
    Par tofito dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 15/02/2006, 11h02

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