|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : décembre 2008 Messages : 12 ![]() |
Bonjour,
Je en suis pas du tout pro en la matière, mais je voudrais savoir combien de polygones compte les personnages des jeux en ligne comme Aion par exemple ? Je crois que wow c'est 500 le personnage, je me trompe peut-être ? merci infiniment |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() ![]() Alexandre LaurentIngénieur développement logiciels Inscription : mai 2008 Messages : 10 780 ![]() |
Bonjour,
Je ne vais pas répondre précisément à la question, mais il faut savoir que sur un jeu online, le nombre de polygone importe peu, car les polygones ne sont pas transférés entre le client et le serveur. Après, WoW en aura peut être moins, car il est sorti il y a longtemps, et que Blizzard voulait le faire tourner sur beaucoup de machines, même les moins puissantes.
__________________
Vous souhaitez participer à la rubrique 2D / 3D / Jeux ? Contactez-moi ![]() La rubrique a aussi un blog ! Ma page sur DVP Mon Portfolio Qui connaît l'erreur, connaît la solution. |
|
00
|
|
|
#3 | |
![]() ![]() Inscription : décembre 2006 Messages : 1 614 ![]() |
Citation:
Dans un jeu 'offline', c'est assez simple: je peux très bien décider dans ma game logic qu'à tel endroit je ne mettrai jamais plus de x monstres en même temps. Genre je fais arriver des vagues de monstres petit à petit en prenant en compte ce qu'il y a déjà d'affiché dans la scène. Dans un jeu 'online', ça me paraît plus compliqué car il peut très bien y avoir un attroupement de beaucoup de joueurs au même endroit. Il me paraît délicat d'empêcher les gens de se trimballer où ils veulent en fonction de l'affluence et donc il faudra bien être capable de tous les afficher. Après, je pense qu'avoir un chiffre précis pour le nombre de polygones est assez inutile: l'objectif n'est pas de dire "500 est un bon chiffre" tellement ça dépend de plein d'autres facteurs (type de rendu, type de public et donc hardware ciblé, effets ajoutés à la scène, détails des décors, ...), d'autant que ça peut évoluer (très) vite au fur et à mesure que les nouvelles générations de hardware apparaissent. Amha, le mieux est encore de choisir une config minimum qu'on s'impose pour le jeu, de s'équiper de la carte graphique qui correspond et de faire quelques tests soi-même en essayant de se rapprocher au mximum des conditions du jeu final.
__________________
Mon projet du moment: BounceBox, un jeu multijoueurs sur Freebox, sur PC et depuis peu sur smartphone/tablette Android. |
|
|
|
00
|
|
|
#4 | |
|
Expert Confirmé Sénior
![]() Développeur informatique Inscription : novembre 2006 Messages : 4 453 ![]() |
Citation:
Un personnage c'est en moyenne entre 5000 et 10000 polygones voire plus. Cependant dans un jeu sophistiqué si tu charges en mémoire un objet 3d ily a des techniques de réduction de polyogones ou bien tu affiches des persos avec beaucoup de poylognes devant la caméra et des persos avec un nombre réduit de polygones derrière c.a.d. loin de la caméra |
|
|
|
00
|
|
|
#5 | |
![]() ![]() ![]() ![]() Alexandre LaurentIngénieur développement logiciels Inscription : mai 2008 Messages : 10 780 ![]() |
Citation:
Après, pour l'histoire de l'attroupement, j'imagine que de toutes façon, on se prend les limite technique des serveurs / zone / nombre max de joueurs / interactions. Je sous entends aussi, que le joueur à une machine acceptable, et que WoW, qui est certes une référence, remonte quand même à quelques années, et qu'ils n'ont pas changé le moteur, je crois.
__________________
Vous souhaitez participer à la rubrique 2D / 3D / Jeux ? Contactez-moi ![]() La rubrique a aussi un blog ! Ma page sur DVP Mon Portfolio Qui connaît l'erreur, connaît la solution. |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : décembre 2008 Messages : 12 ![]() |
Merci pour vos réponses et réaction
J'ai réussi à glaner aussi des informations complémentaires sur le sujet : A l'heure d'aujourd'hui les MMORPGs usent en moyenne 2.5 k de polygones pour représenter un personnage et 1k pour les créatures du monde. Par contre, si j'ai bien compris, la donnée des polygones est gérée par les cartes graphiques des clients, c'est à dire que ce n'est pas le serveur qui gère les polys mais ce sont les clients qui les reçoivent ? Ici ont garde l'idée que le serveur gère la position X Y Z. ps: Le sujet n'est pas facile, si cela intéresse un programmeur qui aurait une expérience dans le domaine, ou ayant peut être niveau ingénieur programmation réseau, afin de nous aider à créer une document sur le sujet " avec l'histoire des sokets compris je crois" cela pourrait poser quelques structures pour débuter le projet. |
|
|
00
|
|
|
#7 | |||
![]() ![]() Inscription : décembre 2006 Messages : 1 614 ![]() |
Citation:
Citation:
Le contenu des échanges client <=> serveur est minimal: grosso modo de l'odre de "tel perso bouge au de X1,y1 vers x2,y2 entre les temps t1 et t2). A charge pour le client d'afficher le personnage en question, de générer l'animation, de calculer le chemin (en fonction de la topologie du sol), etc... Citation:
Je te conseille trèèèès vivement de te tourner vers les moteurs déjà existant qui t'éviteront de réinventer la roue (en moins bien) et t'épargneront des années de formation et d'essaie infructueux. Il me semble que le moteur de Ryzom en est un parmi d'autres.
__________________
Mon projet du moment: BounceBox, un jeu multijoueurs sur Freebox, sur PC et depuis peu sur smartphone/tablette Android. |
|||
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : décembre 2008 Messages : 12 ![]() |
merci pour ces précisions.
Sinon oui, je n'y entend pas grand chose en programmation, mais j'ai je suis entrain de monter une équipe pour ce faire, mais il est clair que rien ne démarera vraiment tant qu'il n'y aura pas un "architecte" pour la partie dev. Nous en sommes conscient. J'espère trouver ici ou ailleurs un ingénieur, qui a demander une intervention d'un indépendant sur 1 mois pour établir un doc sur le sujet, moyennant compensation. |
|
|
00
|
|
|
#9 |
![]() ![]() Inscription : décembre 2006 Messages : 1 614 ![]() |
Je pense que tu ne saisis pas la complexité d'une telle entreprise. Pour faire une autre analogie: tu n'irais pas demander à un architecte en bâtiment de te pondre un plan d'un building de 200 étages en un mois (!) et espérer pouvoir le construire tout seul avec ta brouette toi et ton frère en suivant le plan comme un montage de Lego.
Pourtant c'est grosso modo ce que tu sembles croire comme étant possible en matière d'informatique. Je te conseille vivement de jeter un oeil à ce sujet: La vérité sur la conception de jeux amateurs.
__________________
Mon projet du moment: BounceBox, un jeu multijoueurs sur Freebox, sur PC et depuis peu sur smartphone/tablette Android. |
|
|
00
|
|
|
#10 |
|
Membre confirmé
![]() ![]() Inscription : janvier 2008 Messages : 586 ![]() |
Tu dis que le nombre de polygones importent peu pour le serveur.
Mais il me semble que les tests de collisions sont effectues sur le serveur ? Au moins la broadphase non? Si c'est une broadphase alors certes les nombres de polygones ne comptent pas !
|
|
|
00
|
|
|
#11 | |
![]() ![]() ![]() ![]() Alexandre LaurentIngénieur développement logiciels Inscription : mai 2008 Messages : 10 780 ![]() |
Citation:
Il y a plusieurs solutions au probleme et chacune d'elle a ses avantages, mais aussi des inconvenients. On peut faire gerer les collisions aux serveurs, tout comme au client. Dans le cas d'une gestion du cote du serveur, il faudra une phase de validation de la commande du client (donc un message de retour, disant que le client peu bouger graphiquement, ou pas) (Dans la theorie simple, j'entends) On peut faire la gestion chez le client aussi, car il a la positions de tout les objets, mais dans le cas de collision humain/humain, il faudra une confirmation du cote du serveur, car, dans un cas, il se peut que l'humain dans lequel nous rentrons dedans soit deja parti .Mais, dans les deux cas, cela ne prend pas trop de bandes passantes, par contre, les effets de latences sont importantes pour le joueur.
__________________
Vous souhaitez participer à la rubrique 2D / 3D / Jeux ? Contactez-moi ![]() La rubrique a aussi un blog ! Ma page sur DVP Mon Portfolio Qui connaît l'erreur, connaît la solution. |
|
|
00
|
|
|
#12 | |||
![]() ![]() Inscription : décembre 2006 Messages : 1 614 ![]() |
Citation:
La seule solution 'sûre' est donc de gérer les collisions côté serveur qui joue le rôle de gardien des règles du jeu (et d'arbitre en cas de cas de 'conflits'). Citation:
Citation:
D'une façon générale, le serveur doit toujours vérifier la véracité de ce qu'un client lui dit. Y compris les collisions qu'il devra donc calculer lui aussi de son côté. Par contre, quand je disais que le nombre de polygones n'influait pas côté serveur, c'est parce que le serveur ne fait pas des tests sur chaque polygone réellement affiché dans le jeu (sinon il tomberait sous la charge): il utilise des modèles extrêmement simplifiés de chaque élément. Par exemple il pourrait réduire un personnage à une simple boite (une 'bounding box') et donc ne tester que la collision entre les deux boites de deux personnages (ce qui est très rapide) alors que les personnages, eux, sont composés de milliers de polygones à l'écran. Un exemple d'une image où on voit (dans Counter Strike) le personnage tel que représenté à l'écran avec beaucoup de polygones (à gauche) et le personnage tel que vu pour les tests de collisions (à droite). ![]() Ici on pourrait doubler le nombre de polygones affichés pour le personnage (histoire d'avoir un rendu 'plus beau'), ça ne changerait rien aux calculs effectués pour les collisions (et inversement). Donc les deux ne sont pas corrélés. L'image est tirée de cet excellent article à propos du moteur réseau de Valve. Même si l'aspect réseau d'un FPS est très différent de celui d'un MMORPG, certaines bases sont communes et je ne peux que te conseiller de le lire attentivement.
__________________
Mon projet du moment: BounceBox, un jeu multijoueurs sur Freebox, sur PC et depuis peu sur smartphone/tablette Android. |
|||
|
|
10
|
|
|
#13 |
|
Membre confirmé
![]() ![]() Inscription : janvier 2008 Messages : 586 ![]() |
Petite question en passant,
On voit que le personnage simplifie est constitue de plusieurs OBB. Quel est le genre d'algorithme qui permet a partir d'un modele de decouper en plusieurs sous formes physiques de "manieres intelligentes". Merci |
|
|
00
|
|
|
#14 |
![]() ![]() ![]() ![]() Alexandre LaurentIngénieur développement logiciels Inscription : mai 2008 Messages : 10 780 ![]() |
Les boites de collisions sont cree par les artistes (souvent), sinon on peut generer pendant le chargement, en prenant les extremites des 'os' (ou parties) de l'objet.
__________________
Vous souhaitez participer à la rubrique 2D / 3D / Jeux ? Contactez-moi ![]() La rubrique a aussi un blog ! Ma page sur DVP Mon Portfolio Qui connaît l'erreur, connaît la solution. |
|
00
|
|
|
#15 |
|
Membre à l'essai
![]() Inscription : janvier 2011 Messages : 34 ![]() |
Je pense je ne pas me tromper : les positions des polygones ne sont pas envoyé entre le serveur est le client, c'est juste une position relative au personnage, suivant la complexité du personnage on peut en envoyer plus
par exemple dans un jeu tu affiche une boule : et ben seul le centre de la boule est envoyé, et aussi bien sur le type de l'objet, le client en sachant la position de la boule, + son type (la boule fait x de rayon ect) peut ainsi l'afficher après je dit ça mais je n'ais jamais dévelopé de jeu en reseau, peut etre qu'il existe d'autres methodes |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com