Deferred Shading
En Image de synthèse, le deferred shading (ombrage différé) est une technique de rendu dans laquelle le calcul de l’algorithme d'ombrage est divisé en tâ…




En Image de synthèse, le deferred shading (ombrage différé) est une technique de rendu dans laquelle le calcul de l’algorithme d'ombrage est divisé en tâches plus réduites qui écrivent dans des tampons intermédiaires dans le but d'être combinées a posteriori, plutôt que d'écrire immédiatement le résultat du shader dans la mémoire vidéo. Les implémentations sur du matériel récent tendent à utiliser de multiples tampons de rendu (MRT) afin d'éviter des transformations géométriques redondantes. Habituellement, une fois tous les tampons nécessaires construits (sous la forme de textures), un algorithme d'ombrage y accède (utilisant une équation d'illumination) et les combine pour produire l'image finale. De cette façon, les calculs et les accès à la mémoire nécessaires à l'ombrage de la scène sont réduits aux seules portions visibles, diminuant ainsi la complexité des appels aux shaders.
Une des utilisations spécifiques touche à l'éclairage. Les tampons de rendu, collectivement appelés g-buffer (avec un G pour géométrie) stockent divers paramètres utiles à l'algorithme d'illumination. Les données stockées sont généralement la couleur, les normales ou la position dans le repère écran, bien qu'en théorie tout type de donnée puisse être stockée à destination de la passe d'éclairage. Du fait de l'utilisation de multiples tampons de rendu, souvent en virgule flottante, la bande passante mémoire employée est supérieure à celle du Forward Rendering. Les cartes graphiques récentes affichent des performances en calcul supérieures à leurs temps d'accès. Ce facteur, renforcé par l'hypothèse que l'écart entre puissance de calcul et transfert mémoire se creuse à l'avenir, pourrait indiquer que le deferred rendering ne constitue pas une solution à long terme.
Un désavantage majeur du deferred rendering réside dans l'impossibilité de gérer la transparence à l’intérieur même de l'algorithme, bien qu'en réalité ce problème soit général au rendu des scènes avec Z-buffer scenes et qu'il tende à être géré en retardant et en triant des portions transparentes de la scène[1].
Cette technique est utilisée de façon grandissante dans les jeux vidéo en raison du contrôle qu'elle offre lorsqu'il s'agit d'utiliser un grand nombre de sources lumineuses tout en réduisant la complexité et le nombre d'instructions des shaders. La société Sony Computer Entertainment a édité plusieurs jeux qui utilisent le deferred shading, dont Killzone 2 de Guerrilla Games, LittleBigPlanet de Media Molecule, inFamous de Sucker Punch Productions. Les autres jeux connus pour exploiter le deferred shading sont S.T.A.L.K.E.R.: Shadow of Chernobyl de GSC Game World, Dead Space d'Electronic Arts[2], NCSoft's Tabula Rasa[3], Crackdown de Realtime Worlds, Grand Theft Auto IV de Rockstar Games et StarCraft II de Blizzard Entertainment[4]. Le CryENGINE3 de Crytek propose aussi une implémentation du deferred shading[5].
Références
- ↑ (en) « NVIDIA SDK 9.51 - Featured Code Samples », NVIDIA, (consulté le )
- ↑ (en) « Dead Space by Electronic Arts », NVIDIA (consulté le )
- ↑ (en) « Deferred shading in Tabula Rasa » [archive du ], NVIDIA (consulté le )
- ↑ [PDF] (en) « StarCraft II Effects & techniques » [archive du ], AMD (consulté le )
- ↑ (en) « CryENGINE 3 Specifications » [archive du ], Crytek GmbH (consulté le )
Voir aussi
Articles connexes
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.