De bons livres sur la programmation graphique?

9

Je cherchais un livre qui adopte une approche ascendante pour la programmation graphique. Donc, quelque chose qui commence par le filtrage 2D, peut-être passer à une cartographie normale, puis à l'occlusion ambiante, etc.

Je demande parce que j'ai été paresseux ces dernières années dans le développement de jeux et j'ai toujours utilisé un moteur qui gère cela. Je veux commencer à écrire des shaders pour mes jeux au lieu de compter sur ceux cryptiques que j'ai empruntés dans le passé. Je pense qu'une connaissance très solide dans ce domaine vous aidera et je suis un type d'apprenant de bas en haut, alors aidez-moi s'il vous plaît!

Je sais que la série GPU Gems est géniale, mais elles semblent plus ressembler à un livre de cuisine qu'à une approche ascendante que je souhaite. Vous avez tendance à obtenir une théorie plus dispersée dans les livres de cuisine au lieu de vous appuyer sur la théorie des chapitres précédents.

EDIT: De préférence quelque chose que vous avez lu! Je peux rechercher sur Amazon pour cela, mais il est difficile d'obtenir une critique impartiale de cette façon.

brandon
la source

Réponses:

10

La plupart des «effets de shader» comme le filtrage et le mappage normal ont très peu de points communs qui pourraient être considérés comme des blocs de construction entre les effets. Le filtrage 2D et le mappage normal ne sont pas plus difficiles ou avancés les uns que les autres, par exemple, et il en va de même pour de nombreux effets à quelques exceptions près (les différentes saveurs du mappage d'ombres viennent à l'esprit). Ils sont juste différents. C'est pourquoi vous verrez autant de livres de style livre de cuisine quand il s'agit de discuter de la programmation d' effets graphiques réels (par opposition à la programmation graphique à un niveau fondamental).

La plupart des effets dans le monde (c'est-à-dire non post-traitement) sont enracinés à un certain niveau dans les propriétés physiques de la lumière et dans sa simulation ou son approximation. À cette fin, la lecture de livres qui se concentrent sur le lancer de rayons comme méthode de rendu peut vous aider à mieux comprendre les théories fondamentales impliquées (le rendu basé sur la physique est également une excellente lecture).

Une fois que vous comprenez cela, la "théorie dispersée" présente dans des livres comme GPU Gems se rapportera principalement aux façons spécifiques dont le GPU peut être manipulé pour se rapprocher des scénarios physiques réels souhaités, et semblera moins décousu.

De même, les shaders de post-traitement ont tendance à s'inspirer de la théorie du traitement du signal et de l'image. Je pense que je me souviens avoir eu ce livre comme manuel dans une classe sur le sujet, mais je ne m'en souviens pas trop.

En général, cependant, vous n'allez pas trouver trop de choses qui correspondent à ce type d'approche, car la théorie qui relie tous les divers effets de shader en vogue en ce moment est structurée comme un arbre très, très peu profond plutôt qu'un très profonde - il y a très peu de dépendances qui répondent aux approches "ascendantes" une fois que vous avez dépassé les principes fondamentaux de la théorie de la programmation graphique elle-même (comment structurer la scène, le pipeline de transformation et l'algèbre linéaire associée, la pixellisation, et cetera).


la source
grande clarification. Je peux voir comment ce serait le cas maintenant
brandon