Coûts de développements : HD vs SD

Discussions sur les consoles de salon de Nintendo (Switch, Wii U, Wii, NGC, N64, SNES, NES), ainsi que sur les jeux disponibles ou à venir sur ces consoles mythiques !
Répondre
sakuragi
Modérateur
Modérateur
Messages : 7256
Inscription : sam. 24 mai 2003 - 19:35

Message par sakuragi »

Ba les effets qui rende un jeu beau, effets qui sont natif sur une console HD et qu'il faus travaillé pour avoir un semblant de resultat sur une wii par exemple... l'un gere en hardware , lautre il faudra passer par du software par exemple ;-)
Akhoran
Silver Mario
Silver Mario
Messages : 8092
Inscription : ven. 17 mars 2006 - 17:05

Message par Akhoran »

Ah ok.

Bah à ça je répondrais qu'on oublie que ce n'est pas le genre de chose à développer 36 fois. C'est un peu l'argument des middleware, des moteurs 3D licenciés ou des suites. Tout comme un moteur 3D, l'investissement sur ces effets il est fait une fois, et derrière il peut être rentabilisé pour d'autres jeux.

De plus l'architecture Wii est celle de la Gamecube, donc ces investissements (ou une partie) sont censés avoir déjà été fait sur Gamecube. Les développeurs ne découvrent pas ces problématiques avec la Wii, ils les connaissent depuis la Gamecube. Par exemple Factor 5 dispose déjà de librairies pour gérer du bump mapping et du self shadow, et High Voltage à aujourd'hui de quoi faire un bon paquet d'effets dans ses bagages.

Je lisais Halouc dire que la Wii ne gère pas les shaders (et s'en gausser un peu :D). C'est vrai, ça a des raisons historiques, et ce n'est pas forcément grave.

Je vais répéter ce que j'ai lu et que j'ai compris : la Wii (ou plutôt la Gamecube, mais c'est pareil) permet d'appliquer du code, des mini programmes de transformation au moment du rendu qui peuvent servir à un tas de truc, et en particulier à réaliser des effets. Sur N64 il y avait ce qu'on appelait les 'microcodes', sorte d'ancêtres des shaders actuels. [edit : La Gamecube est une évolution de cette idée, et les shaders existaient à peine et n'étaient pas vraiment standardisés]. Ca ne s'applique pas aux mêmes endroits que les shaders, il faudra donc coder ça autrement mais on peut aboutir aux mêmes effets (ça c'est Factor 5 qui l'a dit je crois). Et comme il s'agit, tout comme pour les shaders, de sorte de 'codes embarqués', ils sont réutilisables (ça c'est moi qui l'ai déduit :p).

On développe ses bouts de codes permettant de gérer ces effets une fois, on investit de l'argent dedans, et une fois que c'est fait on le recycle sur toutes les prochaines productions.

Le truc c'est qu'assez peut de boîtes se sont beaucoup investit sur Gamecube (Factor 5 s'en est étonné dans une interview), donc tout ce bagage ils ne l'ont pas, et tout est à faire. Et apparemment ils n'ont pas très envie de le faire, effectivement :p.

Derrière tout ça, je reste dubitatif au sujet de Nintendo. Déjà à l'époque de la N64, avec les fameux microcodes, Nintendo avait développé deux package différents de microcode, un bof bof et un bien bien. Mais Nintendo n'a partagé que le bof bof, et a gardé le bien bien pour lui (source Wikipedia). Sur Gamecube c'est pareil, si ces effets peuvent être obtenus via des microcodes, ces packages d'effets devraient être fournit dans les kits de développements Wii fournit par Nintendo, tout comme ces effets sont gérés par les drivers (ou direct X) des cartes vidéos sur PC, et par quelque chose de similaire sur les PS360 je suppose. [edit2 : quand tu dis que c'est en standard sur PS360, ça n'est pas fait tout seul par le hardware. Le hardware permet d'appliquer du code plus ou moins compliqué au moment du rendu, les fameux shaders, mais ce code il a été écrit par quelqu'un. Le truc c'est que ce code est fournit en standard dans les kits de développement. En tout cas c'est comme ça que j'ai compris que ça marchait].

Quand je dis que je ne comprend pas Nintendo, c'est faux, j'imagine bien pourquoi ils pratiquent ce protectionnisme de leur code : ils veulent que leurs jeux conservent un déclic d'avance sur ceux des concurrents. Seulement au final c'est nous qui nous payons des jeux en cartons de la part des développeurs qui n'ont pas le temps d'apprendre à coder :p.

Vive l'Open source \o/ !
Avatar de l’utilisateur
Count Dooku
Admin
Admin
Messages : 9670
Inscription : mar. 16 avr. 2002 - 20:48
Localisation : Belgique

Message par Count Dooku »

Merci de m'avoir évité de prendre la peine de répondre à Ex-Morpheus, Akhoran. ;)
Je crois qu'il a été outré de lire que j'assimilais la Wii aux consoles old-gen, pourtant j'avais clairement précisé

Count Dooku a écrit :(la Wii et la PS2 étant technologiquement des consoles old-gen)


...ce qui impliquait bien que je ne parlais que d'un point de vue purement technique (la discussion portant sur les coûts de développement et sur la comparaison HD/SD, il me semblait que cela allait de soi...).
Je n'imaginais même pas qu'on irait jusqu'à ressortir le discours marketing de Nintendo sur le pari de l'innovation du gameplay et la nouvelle façon de jouer. :lol:

Enfin bref. ;)
Image
Akhoran
Silver Mario
Silver Mario
Messages : 8092
Inscription : ven. 17 mars 2006 - 17:05

Message par Akhoran »

De rien Count Dooku, ça me fait plaisir :D

Sinon je suis reparti piocher quelques sources sur le charabiat technique que j'ai essayé de pondre juste au dessus :p

J'ai trouvé celle là surtout, en anglais pour ceux que ça intéresse.

Et le nom officiel du truc de la Gamecube (et donc la Wii) c'est donc les TEV (Texture Environment Unit). Le microcode c'est sur N64. Extrait choisi à ce sujet :
The important word for Wii's graphical capabilities is TEV (Texture Environment Unit). Don't forget that. When developers talk about making a game for Wii they never ever mention the TEV unit in the Wii. They only say it can't do some of the things the original Xbox could do, like shaders. They are very wrong though and they need to go back to Gamecube school (or talk to Factor 5's Juilan Eggebrecht) to find out that even the Gamecube could do everything the Xbox1 could do, only with a different method. The Xbox1 worked similar to a PC, so if developers made a game for it they would make it like a PC game. They couldn't do that with the Gamecube since developing a game on Gamecube was completely different. Custom shaders, custom lighting, custom textures - custom everything. Xbox and PC follow a code that most developers know and its not all custom. They have programmable shaders, like Shader Model 2.0 for instance.

The Gamecube has the TEV and that allowed for games like Starfox Adventures and Rouge Squadron 2/3 to have texture compression, Light sourcing and advanced shading for graphics that were considered amazing for the time they were released. Go back and play Star Fox Adventures again and tell me that it doesn't still look awesome, and it was released 5 years ago.

Bref, c'est ce que dit Sakuragi, sur Wii il faut reprogrammer tout les effets parce qu'aucun code n'est fournit en standard et qu'en plus la façon de faire n'a rien à voir avec les shaders (qui est le pain quotidien des développeurs d'aujourd'hui, l'expertise Gamecube/Wii existe très peu chez les développeurs actuels). Mais il ne faut pas oublier que ça reste un apprentissage et un investissement ponctuel, il faut faire l'effort une fois et ensuite tout devient plus simple et moins cher.
Halouc
Silicon Mario
Silicon Mario
Messages : 24614
Inscription : dim. 02 mars 2003 - 17:25
Localisation : Rennes (Bretagne)

Message par Halouc »

Très peu de studio utilise les unités TEV car c'est hautement plus chiant à programmer que les shaders. Le seul jeu qui actuellement sur Wii utilise les unités TEV est the conduit (enfin a ma connaissance).
Akhoran
Silver Mario
Silver Mario
Messages : 8092
Inscription : ven. 17 mars 2006 - 17:05

Message par Akhoran »

Ah bah au moins on est d'accord là dessus ^^

Et j'aurais envie de dire que ça rejoins ce qu'on voit dans les jeux, donc ça m'étonnerait pas.

C'est d'autant plus frustrant que lorsqu'on lit ce genre de discours sur les possibilités graphique de la console, la clef semble être la maîtrise des TEV, qui n'est pas dans le bagage actuel des développeurs où la norme ce sont les shaders. Sans les TEV la Wii a un rendu de PS2 (en tout cas c'est ce que je comprends).

Mais on s'égare un peu du sujet même si je trouve tout ça très intéressant ^^.
keoone
Liquid Mario
Liquid Mario
Messages : 2831
Inscription : dim. 16 avr. 2006 - 18:04

Message par keoone »

la GC utilisait l'OpenGL 1.1 (équivalent DX8) > la Wii utilise la version 2.0 (équivalent DX9)
Après y'a une autre différence notoire, c'est la mémoire. très importante pour les performances (d'ailleurs le plus gros frein à l'augmentation de performance des processeurs d'aujourd'hui), sur Wii les 24 mo d'1T-RAM sont intégré dans le wafer du GPU.

Ensuite effectivement la Wii possèdent des unités TEV, c'est une sorte de shaders, elles sont plus compliqué à utilisé mais offre une plus grande liberté car elles sont entièrement programmable (là ou les shaders sont plus "closonné")

Sinon pour revenir à ce que je disais quelques pages avant :

aucun moteur actuels n’utilise plus d'un seul thread pour effectuer le rendu


je me suis peut être mal exprimé, pour afficher la scène, le moteur 3D utilise 1 seul thread, les autres threads seront utlisés pour la physique, l'IA ou autres.
Donc par exemple la X360 à 6 threads (je crois), la Wii j'en sais trop rien mais m^me si elle n'en à qu'1, de toute façon vue que le rendu ne peut utlisé qu'1 thread (2 se marcheraient dessus avec les API actuelles) la différence pour le rendu n'est pas si énorme que certains peuvent le penser.
Bref 6 threads ne peuvent pas être utilisé pour le rendu, sur Wii ou X360 y'en a toujours qu'1 d'utilisé ... les autres serviront à la physique, la décompression ou autres ... donc l'utilisation d'autres threads signifie augmentation des couts lié à une IA performante, une Physique travaillé ....
Akhoran
Silver Mario
Silver Mario
Messages : 8092
Inscription : ven. 17 mars 2006 - 17:05

Message par Akhoran »

Et ça signifie aussi que les processeurs multi-coeurs sont bien utiles aux jeux :)

Y compris le Cell, donc.
Halouc
Silicon Mario
Silicon Mario
Messages : 24614
Inscription : dim. 02 mars 2003 - 17:25
Localisation : Rennes (Bretagne)

Message par Halouc »

keoone a écrit :lje me suis peut être mal exprimé, pour afficher la scène, le moteur 3D utilise 1 seul thread, les autres threads seront utlisés pour la physique, l'IA ou autres.
Donc par exemple la X360 à 6 threads (je crois), la Wii j'en sais trop rien mais m^me si elle n'en à qu'1, de toute façon vue que le rendu ne peut utlisé qu'1 thread (2 se marcheraient dessus avec les API actuelles) la différence pour le rendu n'est pas si énorme que certains peuvent le penser.
Bref 6 threads ne peuvent pas être utilisé pour le rendu, sur Wii ou X360 y'en a toujours qu'1 d'utilisé ... les autres serviront à la physique, la décompression ou autres ... donc l'utilisation d'autres threads signifie augmentation des couts lié à une IA performante, une Physique travaillé ....


Celui de la Wii est multi-tâche tout simplement (heureusement parce que ce serait la merde sinon :masque: ). Après lecture de ton dossier j'ai compris ou tu voulais en venir mais il ne faut pas oublier que sur console et sur PC il y a un degré d'optimisation qui n'a strictement rien a voir.

Maintenant l'intérêt actuel du multi core c'est d'éviter qu'un core se charge de tout le boulot. En se partageant le boulot, il y a un gain énorme. C'est un peu comme faire du RAID avec le Disque Dur, ça va plus vite avec deux disque dur qu'avec une seul (c'est une image).

Après les unité TEV, elle en n'a que 2 et le problème c'est que c'est un gros bouffe ressource.



Après je me pose la question? Est ce que la Wii est toujours en 24bits au niveau des couleurs?
Akhoran
Silver Mario
Silver Mario
Messages : 8092
Inscription : ven. 17 mars 2006 - 17:05

Message par Akhoran »

Halouc a écrit :Après les unité TEV, elle en n'a que 2 et le problème c'est que c'est un gros bouffe ressource.
Bouffe ressource, je ne sais pas, je me posais la question justement.

Des quelques doc techniques que j'ai pu lire hier, c'est comme si toute l'architecture de la Wii était pensée pour permettre d'utiliser les TEV sans baisse de performance justement.

En gros, j'ai compris ça : les TEV, c'est superposer 8 textures et faire des opérations de combinaison entre elles. C'est donc efficace si le chargement des textures est rapide, s'il y a suffisamment de mémoire pour en stocker plein, et si les opérations se font vite. Or ils disaient que les unités TEV du flipper (le proc graphique de la Gamecube) était justement capable de faire tout ça en une passe, pile poil. S'il avait fallu effectuer des opérations entre 9 textures il aurait fallu 2 passes, par exemple.

Et la mémoire rapide de la Wii (ça a souvent été mis en avant) va dans ce sens, et je comprend mieux pourquoi Factor 5 dit que l'augmentation de la RAM de la Wii par rapport à la Gamecube était un gros plus, ça permet d'avoir plus de textures différentes et donc potentiellement plus d'effets, ou de meilleurs effets.

Après je me pose la question? Est ce que la Wii est toujours en 24bits au niveau des couleurs?
Je crois, mais je suis pas sûr.
Halouc
Silicon Mario
Silicon Mario
Messages : 24614
Inscription : dim. 02 mars 2003 - 17:25
Localisation : Rennes (Bretagne)

Message par Halouc »

Je me suis un peu renseigné sur les TEV (si quelqu'un a un lien pour plus d'info) et grossomodo ça résume un peu ce qu'un gars disait sur un site de développeur

"Ah oui, ni la GameCube, ni la Wii ne supportent des shaders. Il y a la possibilité de "reconfigurer" certains endroits de la pipeline, mais ca reste dans l'ensemble du niveau des "register combiners" de la Geforce 3/4.
En fait, donc pas de vertex shaders, ni de fragment shaders (et encore moins des geometry shaders), mais des fonctions fixes pour filtrage/combination de textures."
Akhoran
Silver Mario
Silver Mario
Messages : 8092
Inscription : ven. 17 mars 2006 - 17:05

Message par Akhoran »

Oui ça colle avec ce que j'ai pu lire (j'ai tapé 'TEV + Gamecube' ou 'TEV + Shaders' dans google et j'ai pris les premiers liens :p).

De la superposition et combinaison de textures (genre a+b-c+1/3*d). après ils parlaient aussi de fonctions de décalages de positions ou de transformations matricielles de la texture avant la combinaison, je me dis qu'en étant malin ça doit permettre des trucs comme le Bump ou les reflets, ou peut être même gérer des ombrages.

Mais ça devient vraiment de l'ingénierie là.

En tout cas ils comparaient aussi à la GForce 3/4, tout en disant qu'avec un peu de travail on pouvait obtenir des effets en plus.
keoone
Liquid Mario
Liquid Mario
Messages : 2831
Inscription : dim. 16 avr. 2006 - 18:04

Message par keoone »

Après je me pose la question? Est ce que la Wii est toujours en 24bits au niveau des couleurs?


En fait a l'époque, la Gamecube était prévu pour les LCD avec des dalles TN qui était en 24 bits et elles offraient de bien meilleur temps de réponse que les technologie IPS et S-IPS en 32 bits (plutot multimédia)
Après sur les cathodiques, c'est RGB qui reste le meilleurs (signal en 24 bits > 3 couleurs en 8 bits = pixel)

Mais aujourd'hui les technologies de dalles offrent des performances équivalente donc y'a pas de raisons que la Wii soit encore en 24 bits


TEV ou shaders, peu importe en fait, ce n'est pas tant au niveau des effets que la Wii est dépassé, ce qui fait vraiment la différence visuellement, c'est le niveau de détails des textures, ceci grace à la grosse quantité de mémoire + la bande passante + la puissance de calcul qui stock, transfert et traite les données de ces textures
Halouc
Silicon Mario
Silicon Mario
Messages : 24614
Inscription : dim. 02 mars 2003 - 17:25
Localisation : Rennes (Bretagne)

Message par Halouc »

A ma connaissance les dalles TN c'est un peu de la merde.

Après sans aller dans les détails (c'est un sujet que je ne maitrise pas énormément) mais en 32 bits dans le jeux vidéo on parle de RGB-A. Le A (la transparence) est traité avant d'être envoyé dans le FRAME BUFFER qui lui aura bien un code en 24bits pour le RGB.
Akhoran
Silver Mario
Silver Mario
Messages : 8092
Inscription : ven. 17 mars 2006 - 17:05

Message par Akhoran »

keoone a écrit :Mais aujourd'hui les technologies de dalles offrent des performances équivalente donc y'a pas de raisons que la Wii soit encore en 24 bits
Partant de là, y a pas de raisons non plus qu'elle soit en SD (pas taper :p).

TEV ou shaders, peu importe en fait, ce n'est pas tant au niveau des effets que la Wii est dépassé, ce qui fait vraiment la différence visuellement, c'est le niveau de détails des textures, ceci grace à la grosse quantité de mémoire + la bande passante + la puissance de calcul qui stock, transfert et traite les données de ces textures
Ah bah je suis pas d'accord. Ce qui fait toute la différence entre un rendu next-gen et old-gen, ce sont justement les effets je trouve. Et les ombres portés aussi. Des aplats de textures, aussi fines soient elles, il leur manquera toujours quelque chose.

En fait, c'est un peu comme sur PC à l'époque où on comparait des screens avec et sans shaders. Bah ça faisait une sacrée différence à textures égales.

Ca n'enlève pas qu'en bossant ses textures on peut arriver à des résultats diablement agréables à l'oeil, ce qui reste le principal.
Répondre