Auteur |
Humour Et Réflexions Technologiques Zuber (animation pour les nuls) |
Wild_Cat Anarchy in the UK
Score au grosquiz
0031906
pts.
Joue à Kiesel A2, MusicMan Sterling 5
Inscrit : May 01, 2002 Messages : 11272 De : Laval, de l'autre côté du pont
En ligne | Posté le: 2006-02-22 13:59
Wow, ça fait plaisir de voir autant de réactions positives... Il y a plus de gens intéressés par la technique ici que ce que je pensais ^^.
Alors, je vais essayer de répondre dans l'ordre:
CBL: J'aime beaucoup le titre de ce topic . Pour ce qui est du VSync, je me rappelle d'un réglage pour l'activer/désactiver dans les paramètres du driver de ma Riva TNT2 Ultra. Il est désactivé par défaut (ce qui peut donc produire l'effet de déchirement pas très joli quand on a un mauvais moniteur) parce que ça fait perdre un tout petit peu de perfs (vraiment pas grand-chose, j'avais testé à l'époque, c'était 2 ou 3 FPS dans Unreal Tournament) et parce que ça limite ta frame rate à la fréquence de rafraîchissement du moniteur, ce qui chagrine les mecs qui investissent trois mois de salaire dans une carte vidéo.
tienou: Je suis ingénieur logiciel, ça aide un peu ^^.
Niloc: Ce serait bien, mais non, pour deux raisons. Déjà, parce que tu peux toujours baser tes calculs sur les images dans un jeu en 3D (exemples: énormément de jeux 3D Japonais, notamment Ninja Gaiden et les Devil May Cry). Ensuite parce que le coup de la 3D aplatie ne change pas grand-chose à la programmation de jeux 2D, elle la rend juste plus facile. Un polygone rectangulaire avec une texture dessus, et boum, tu as un sprite. Les images sont toujours dessinées une par une, et la texture du polygone modifiée. Pratiquement tous les jeux console 2D actuels basent leurs calculs sur les frames.
IsKor: Merci merci, je suis moi-même assez fier de ce jeu de mots .
emixam: Vu le succès de cet article, je ne suis pas contre en écrire d'autres. Ce qui me manque, c'est un sujet. Il faut savoir que cet article a débuté comme un post sur ce forum, en réponse à une question de Mew sur l'animation (justement). Lolo m'a ensuite fait remarquer qu'en développant un poil plus ça ferait un article sympa pour le site, and the rest is history. Donc message à tout le monde: si vous avez un sujet un peu technique que vous voudriez voir approfondir, dites-le! Postez sur le forum, et si c'est dans mes compétences, je me ferai un plaisir de discuter dessus, voire d'écrire un article s'il y a suffisamment de matière (et puis je ne suis pas le seul techos dans le coin, donc si ce n'est pas moi ce sera un autre ^^).
Ulrask: Ton premier paragraphe est exact (même si je dirai que si une technique ne marche pas dans le cas général, il vaut mieux restreindre son utilisation aux seuls cas dans lesquels elle est absolument nécessaire); le second par contre est complètement faux. Quelle que soit la technique utilisée, la machine crache autant d'images par seconde qu'elle le peut. La différence, c'est qu'avec des timers une frame rate plus élevée donne une animation plus fluide, et sans timers une animation identique mais plus rapide. Le ralenti est plus agréable à l'oeil que les saccades: c'est le *seul* avantage de cette technique (bon, ça et une ou deux multiplications en moins, autrement dit peanuts), à contraster avec le wagon d'inconvénients décrit dans l'article. L'argument de la "plus grande maîtrise du hardware", c'est du pipeau. Quant au fait que beaucoup de bons jeux soient faits comme ça, c'est vrai. Tout comme on peut écrire des romans fabuleux avec un crayon à papier, un stylo à encre, une machine à écrire ou un ordinateur.
Bon, faut que je reparte au boulot. La séance reprend ce soir.
_________________ https://twitter.com/MaxNoelBass
https://www.youtube.com/c/TheTiberianSons
|
maxxxxxx Gros pixel
Score au grosquiz
0012874
pts.
Joue à 7 Wonders, MK8, Lego Batman
Inscrit : Feb 28, 2005 Messages : 1451 De : Lille
Hors ligne | Posté le: 2006-02-22 17:43
Mon employeur ne te remercie pas non plus pour cette demi-heure perdue à lire ton article ! Passionant mais surtout très compréhensible pour un noob comme moi.
|
Esteban Gros pixel
Joue à Dead Cells, EA Sports WRC, Trackmania Turbo
Inscrit : Jan 28, 2003 Messages : 1987 De : la planète Mars(eille)
Hors ligne | Posté le: 2006-02-24 20:20
Il me semblait avoir lu le topic consacré à la question de l'animation sur le forum, mais j'avais eu plus de mal à suivre que là. L'article est super bien structuré : on cerne bien les concepts et les enjeux.
Vivement un futur article:). Pour le sujet : la comparaison des versions PSOne et Saturn d'un même jeu, histoire de mettre en évidence pourquoi l'une est plus belle que l'autre, les astuces qu'il aura fallu utiliser pour obtenir le même effet sur 2 architectures différentes... Il y avait eu une discussion autour de la Saturn il y a quelque temps sur ce fourm. Ca pourrait être sympa, mais jforce personne (pis ça risque d'être plus technique...)
en tout cas bravo pour ces éclaircissements
|
Boumchakal Pixel microscopique
Inscrit : Feb 24, 2006 Messages : 7
Hors ligne | Posté le: 2006-02-24 21:58
Je vais faire court : Ton article est Génial, facil et agréable à lire ! Si tu traites tous les sujets d'info de cette façon tu peux très facilement te faire passer le Hubert Reeves de l'informatique ! Vivement ton prochain dossier Pour le sujet je propose : La gestion mémoire vive et dure pour les nuls ! Avec exemple d'utilisation d'application sous Windows et Linux (Pour l'application je pense bétement à un jeux, ou un émulateur tiens ^^ )
|
JPB Camarade grospixelien
Joue à FS2020, Pacific Drive
Inscrit : Apr 25, 2002 Messages : 3360 De : Liverdun
Hors ligne | Posté le: 2006-02-25 00:37
Voilà un article sur un sujet ardu, clairement expliqué, et avec humour encore.
Quel performance !
Chapeau Wild Cat, j'ai appris plein de trucs, et en fait j'ai compris des petits détails que je croyais connaître... alors qu'en fait je me fichais le doigt dans l'oeil, j'avais tout faux.
Génial !
_________________ JPB, tombé dans les jeux vidéo depuis TRON
|
Wild_Cat Anarchy in the UK
Score au grosquiz
0031906
pts.
Joue à Kiesel A2, MusicMan Sterling 5
Inscrit : May 01, 2002 Messages : 11272 De : Laval, de l'autre côté du pont
En ligne | Posté le: 2006-02-26 14:19
Allez hop, je continue la séance de questions-réponses:
Kaede: C'est expliqué dans l'article. Si tu veux limiter le nombre d'images par seconde calculées (et donc affichées) à N, il suffit d'attendre un peu avant d'afficher chaque image, de sorte que le temps écoulé entre l'image précédente et celle-ci soit au moins égal à 1/N (donc 1/60 seconde pour un jeu limité à 60 fps).
Et pour ce qui est du jeu en réseau sur émulateurs, il y a deux obstacles principaux au jeu en réseau. Le premier est effectivement celui-ci. Le second (encore plus chiant) est que comme l'émulateur n'a pas conscience de quel jeu il fait tourner, il faut essayer de garder synchronisée toute la RAM de la machine émulée, ce qui bouffe de la bande-passante et demande un temps de latence minimal. De plus, pour cette même raison, il est impossible d'écrire un netcode "prédictif" (comme dans les FPS depuis Quake: quand le réseau ne transmet pas les infos assez vite, le jeu essaie de prédire ce que les autres joueurs font en fonction de leurs actions passées) pour un émulateur.
Thezis: Merci. Notez que les illustrations (à l'exception des deux lignes ) ne sont pas de moi. Je suis très très nul pour ce qui est d'illustrer un article, aussi c'est Laurent (avec un coup de main d'Erhynn Megid, et du site Amiga Chapter One) qui s'est chargé de cette partie du boulot. Merci à lui!
RainMakeR: Je suppose que la partie de Warcraft 2 qui se charge des scrollings a été codée avec des vitesses en pixels par image, et qu'il n'y a pas de limite supérieure sur sa frame rate. Résultat, comme ton PC moderne est largement plus puissant que ce qu'il faut pour faire tourner le jeu, il crache beaucoup plus d'images par seconde que prévu par les développeurs... Et c'est le drame.
Pour ce qui est des gifs animés de Turrican, je ne peux pas te dire grand chose sinon de les observer plus attentivement (ou les ouvrir avec un éditeur de gifs pour les regarder image par image)... Celui de la version Amiga comporte beaucoup plus d'images et est donc plus fluide en mouvement.
L'intérêt de la motion capture, c'est le même intérêt qu'il y a à faire un film plutôt qu'un dessin animé. La machine est capable d'interpoler des phases d'animation simples, mais elle ne sait pas d'elle-même ce que doit être l'animation dans sa totalité. Il faut lui fournir des étapes-clés (par exemple: Solid Snake debout les bras le long du corps, puis Solid Snake avec les bras à l'horizontale, puis Solid Snake avec les bras en Y au-dessus de sa tête). La motion capture sert à obtenir ces étapes-clés à partir d'un acteur (en chair et en os) qui effectue vraiment le mouvement demandé. Les animations ainsi réalisées ont donc l'air plus naturelles, plus réalistes (mais souvent pas assez "surnaturelles", c'est pourquoi Sam Fisher par exemple n'est pas motion-capturé).
Mortal Kombat? Jamais entendu parler de cette technique, donc je pense que c'est du pipeau. Ce que Midway a fait pour MK, c'est simplement filmer des acteurs sur un fond bleu et coller les images directement dans le jeu.
eSceNeKCAP: Ca pourrait être intéressant, mais je ne pense pas connaître suffisamment les architectures de la PSOne et de la Saturn pour m'en charger. Tout ce que je peux te dire sur le sujet, c'est que la PS1 a été conçue dès le départ pour faciliter le développement de jeux 3D, alors que la Saturn devait être une console qui aurait tout arraché en 2D et uniquement en 2D. Lorsque Sega s'est rendu compte de ce qu'était en train de faire Sony, ils ont ajouté des trucs à la va-vite pour que la Saturn puisse faire de la 3D. Le design original avait déjà une architecture un peu louche, le résultat final est une Franken-console (les seuls qui aient fait pire sont Atari avec la Jaguar). Et quand on fait de la 3D sur Saturn, si je me souviens bien, on fait en réalité de la 2D qu'on déforme bizarrement. En plus d'être super-chiant à faire et de bouffer un max sur les performances de la console, c'est aussi l'approche inverse de ce que font les machines modernes (avec lesquelles la 2D est en réalité de la 3D "plate").
Boumchakal: Bien obscur aussi comme sujet, ça... Je ne suis pas convaincu qu'il ait un gros intérêt potentiel, à part pour ceux qui voudraient écrire leur propre système d'exploitation.
_________________ https://twitter.com/MaxNoelBass
https://www.youtube.com/c/TheTiberianSons
|
Mikah Pixel digne de ce nom
Inscrit : Feb 19, 2006 Messages : 131 De : La Hesbaye profonde ...
Hors ligne | Posté le: 2006-02-26 20:41
Excellent article qui me rappelle une série de dossiers parus il y a un ou deux ans dans la revue (défunte) pc-team ...
instructif mais avec l'humour en plus !
@wild_cat : Un autre sujet en vue ?
_________________ "Les hommes construisent trop de murs et pas assez de ponts."
Isaac Newton
|
RainMakeR Chef de Rubrique Nécrologique Score au grosquiz
1035015
pts.
Joue à Exoprimal, The Chants, Kamiwaza Way of the Thief
Inscrit : Apr 01, 2003 Messages : 32864 De : Toulouse
Hors ligne | Posté le: 2006-02-26 21:36
bah je verrai bien un dossier sur la motion capture parce que j'ai pas encore tout compris
_________________
|
Esteban Gros pixel
Joue à Dead Cells, EA Sports WRC, Trackmania Turbo
Inscrit : Jan 28, 2003 Messages : 1987 De : la planète Mars(eille)
Hors ligne | Posté le: 2006-02-27 19:22
Tu fais exprès ? même moi j'ai compris enfin, voilà ce que j'ai cru comprendre
Pour animer de la 3D, il faut créer un modèle, puis son squelette. pis tu détermine la position du squelette à un instant t, celle à un instant t+1.
Le cpu se charge, au moyen de vecteurs, d'amener les points composant le squelette de leur position t à leur position t+1.
Tu n'as pas besoin de dessiner toutes les étapes d'animation de ton modèle : juste 2 suffisent, puisque c'est le cpu qui animera le modèle par le biais de son squelette : ça représente une économie de temps.
Le problème, c'est qu'en faisant confiance au cpu pour animer ton squelette, en lui donnant juste comme indication la position t+1 de chacune de ses parties, on se retrouve avec un mouvement pas très naturel, haché... L'idéal, pour imprimer un mouvement complexe au modèle est de déterminer des multitudes d'étapes intermédiaires, c'est-à-dire déterminer la position de points t+1, t+2, t+3... t+n
Pour animer un triangle ou une figure simple, dont le squelette n'est composé que de 2 ou 3 points, l'opération ne pose pas de problème. Par contre, si on veut reproduire les mouvements d'un footlballeur avec un minimum de réalisme, il faut non seulement une ossature complexe pour le modèle, mais aussi un nombre incalculables d'étapes d'animations intermédiaires.
Il reviendrait presque au même (en terme de charge de travail)de dessiner le modèle 3D pour chaque étape d'animation ou de décomposer les mouvements extrêmements complexes du squelette.
C'est là que la motion capture intervient. Tu dessine ton modèle 3D ainsi que son squelette. Puis tu colles les points de ce squelette sur une personne réelle. C'est elle qui, en exécutant des mouvements, va indiquer à l'ordinateur les points t+1, t+2, t+3... t+n. Le seul effort à faire est de dessiner un squelette suffisamment détaillé ainsi qu'un modèle de base. Pour alléger le travail du cpu, on détermine le nombre d'étapes que l'on veut pour l'animation (pasque s'il faut animer tous les mouvements de 2 équipes de foot avec 500 étapes d'animations à la seconde, ben ta PS2 qui peut piloter des missiles atomiques elle rend l'âme )
Un autre avantage est le réalisme que procure cette technique : on a du mal à se représenter le mouvement de certains points du squelette en mouvement (les épaules d'un footballeur lorsqu'il frappe dans la balle, les mouvements de son pied d'appui...). Avec la motion capture, ils sont animés sans que l'on ait à se poser la question.
Le dossier de Wild cat, "il fait travailler des parties de mon cerveau qui travaillaient pas avant" pour reprendre les dires de M. F. PAGNY
|
Wild_Cat Anarchy in the UK
Score au grosquiz
0031906
pts.
Joue à Kiesel A2, MusicMan Sterling 5
Inscrit : May 01, 2002 Messages : 11272 De : Laval, de l'autre côté du pont
En ligne | Posté le: 2006-02-27 19:27
|
RainMakeR Chef de Rubrique Nécrologique Score au grosquiz
1035015
pts.
Joue à Exoprimal, The Chants, Kamiwaza Way of the Thief
Inscrit : Apr 01, 2003 Messages : 32864 De : Toulouse
Hors ligne | Posté le: 2006-02-27 21:04
nan mais je croyais que tu pouvais faire tes propres etapes d'anim à partir de ta motion capture. Si c'est juste pour recuperer 2-3 etapes cles... enfin bon faudrait que j'etudie la chose
_________________
|
Polo Tout petit pixel
Inscrit : Apr 11, 2005 Messages : 46
Hors ligne | Posté le: 2006-02-27 23:51
Et pour des jeux comme Flashback ou Prince of Persia premier du nom, qu'en est-il exactement?
Pour reprendre l'exemple du héros de Turrican, il a beau être animé en 50 fps, je trouve ça beaucoup moins fluide que Conrad dans Flashback...
|
twipol Pixel monstrueux
Score au grosquiz
0001886
pts.
Joue à Duplo, petites voitures et livres musicaux...
Inscrit : Mar 15, 2003 Messages : 2702 De : Lyon
Hors ligne | Posté le: 2006-02-28 01:38
Bien joué Wild, très bonne initiative qui débouche sur un dossier instructif. J'ai enfin compris pourquoi sur ma Playstation PAL, mon Tekken 3 jap tournait plus vite que le Tekken 3 PAL, parce qu'avant je croyais que ça dépendait de la console et pas uniquement du jeu. (merde. j'ai bien compris hein ?)
Ha, ça aurait été intéressant de parler de l'animation modulaire. C'est vraiment super ingénieux comme procédé pour donner une grande impression de fluidité sans se fouler ^^
Comme thème pour un futur article, c'est peut-être vaste, mais l'intelligence artificielle ? Tu sais des trucs à ce sujet ?
_________________ "Et quand ils devenaient mécontents […] cela ne menait à rien, car sans idées générales, ils ne se focalisaient que sur des contrariétés insignifiantes. Les plus grands maux échappaient invariablement à leur attention." G. Orwell
|
Wild_Cat Anarchy in the UK
Score au grosquiz
0031906
pts.
Joue à Kiesel A2, MusicMan Sterling 5
Inscrit : May 01, 2002 Messages : 11272 De : Laval, de l'autre côté du pont
En ligne | Posté le: 2006-02-28 08:59
Qu'est-ce que tu appelles l'animation modulaire, exactement? C'est la technique qui consiste à diviser un seul personnage en plusieurs sprites (façon Earnest Evans sur Mega CD -- qui, si c'est bien ça, n'est pas vraiment une exemple probant de l'efficacité de la technique )?
_________________ https://twitter.com/MaxNoelBass
https://www.youtube.com/c/TheTiberianSons
|
twipol Pixel monstrueux
Score au grosquiz
0001886
pts.
Joue à Duplo, petites voitures et livres musicaux...
Inscrit : Mar 15, 2003 Messages : 2702 De : Lyon
Hors ligne | Posté le: 2006-02-28 15:16
C'est bien ça. Mais la première fois que j'ai entendu ce terme c'était à propos de Rayman. Le rendu est vraiment bon (par contre je ne connais pas Earnest Evans).
_________________ "Et quand ils devenaient mécontents […] cela ne menait à rien, car sans idées générales, ils ne se focalisaient que sur des contrariétés insignifiantes. Les plus grands maux échappaient invariablement à leur attention." G. Orwell
|
Niloc-Nomis Pixel visible depuis la Lune
Score au grosquiz
0024194
pts.
Joue à Dishonored (One X) / Metro 2033 (Switch)
Inscrit : Aug 11, 2002 Messages : 8697 De : Ferté sous Jouarre
Hors ligne | Posté le: 2006-03-04 11:21
C'est facile pour Rayman puisqu'il lui manque la moitié dezs membres!
Moi j'ai une autre question : qu'en est-il des jeux d'arcade (sur machine d'arcade)? Street Fighter 2 et Final Fight tournaient-ils aussi 20% plus vite à Tokyo et à Las Vegas, où des modifications ont-elles été opérées?
_________________ ... mais j'ai rebranché la Master System sous la télé!
|
RainMakeR Chef de Rubrique Nécrologique Score au grosquiz
1035015
pts.
Joue à Exoprimal, The Chants, Kamiwaza Way of the Thief
Inscrit : Apr 01, 2003 Messages : 32864 De : Toulouse
Hors ligne | Posté le: 2006-03-04 21:49
Citation :
Le 2006-03-04 11:21, Niloc-Nomis a écrit:
C'est facile pour Rayman puisqu'il lui manque la moitié dezs membres!
Moi j'ai une autre question : qu'en est-il des jeux d'arcade (sur machine d'arcade)? Street Fighter 2 et Final Fight tournaient-ils aussi 20% plus vite à Tokyo et à Las Vegas, où des modifications ont-elles été opérées?
Bah sur borne ca tourne à la meme vitesse quelquesoit le pays vu que ca tourne sur des ecrans arcade
_________________
|
Niloc-Nomis Pixel visible depuis la Lune
Score au grosquiz
0024194
pts.
Joue à Dishonored (One X) / Metro 2033 (Switch)
Inscrit : Aug 11, 2002 Messages : 8697 De : Ferté sous Jouarre
Hors ligne | Posté le: 2006-03-05 00:33
Oui mais ils sont bien soumis à la fréquence du courant en vigueur délivrée dans le pays où ils se trouvent, ces écrans.
D'où ma question.
_________________ ... mais j'ai rebranché la Master System sous la télé!
|
Wild_Cat Anarchy in the UK
Score au grosquiz
0031906
pts.
Joue à Kiesel A2, MusicMan Sterling 5
Inscrit : May 01, 2002 Messages : 11272 De : Laval, de l'autre côté du pont
En ligne | Posté le: 2006-03-05 02:46
Pas exactement. La fréquence de rafraîchissement est dictée par le standard (PAL ou NTSC), pas par la fréquence du courant d'alimentation. Bien sûr, la fréquence de rafraîchissement dictée par un standard est généralement égale à celle du courant dans son pays d'origine, pour des raisons historiques (un peu comme la taille des réservoirs de la navette spatiale est liée à celle du cul d'un cheval).
Les bornes d'arcade Américaines ou Japonaises en Europe sont sans doute dotées d'un écran NTSC et d'une alimentation qui accepte le 240V 50Hz. Maintenant, je dois avouer que je n'y connais rien en hardware arcade.
Oh, et bien vu Twipol. Je n'avais pas du tout pensé à Rayman, mais c'est vrai que c'est une technique d'animation très économe et efficace. Par contre, ça pose quand même beaucoup de contraintes sur le design des personnages ^^.
_________________ https://twitter.com/MaxNoelBass
https://www.youtube.com/c/TheTiberianSons
|
Thezis Pixel visible depuis la Lune
Joue à Far Cry 3
Inscrit : Jul 19, 2002 Messages : 8910 De : Bruxelles
Hors ligne | Posté le: 2007-07-19 10:58
Je viens de retomber sur cet article en réalisant une recherche sur Max Payne (tous les chemins mènent à Rome) et vraiment c'est un excellent article. Finalement, il est vraiment dommage que GP ne contienne pas plus d'articles techniques ou sur les systèmes (même si la base de données est déjà impressionnante). Encore Bravo Wild_Cat!
PS ar contre, je ne le retrouve nul part dans la page dossier. Faut-il retravailler l'article en php? Dans ce cas, je suis volontaire, le soviet peut m'envoyer les fichiers.
_________________ Dans la vie, il y a 3 catégorie des personnes : ceux qui savent compter et ceux qui ne savent pas compter. (Anonyme)
|