2010-05-18 6 views
5

Ich bin wirklich gespannt, wie das folgende getan wirdEchtzeit weiche Schatten ohne Stencilbuffer

http://kortham.net/temp/fallingBlocks.png

Sie scheinen softish Schatten in Echtzeit auf dem iPhone zu erreichen, die kein Schablonenpuffer zur Verfügung hat. Es scheint hier ziemlich flüssig zu laufen http://www.youtube.com/watch?v=u5OM6tPoxLU

Wer hat eine Idee?

+0

Beachten Sie auch die gezackten Kanten der Schatten, zumindest auf dem Screenshot in Ihrem Beitrag. Sie sind grobe Annäherungen, nicht pixelgenaue Schatteneffekte. – Ricket

Antwort

3

Der Stencil Buffer ermöglicht die Hardwarebeschleunigung von Schattenrendern, wird aber nicht unbedingt zum Anzeigen von Schattenvolumen benötigt. Bei einer geringen Anzahl von Körpern und Lichtquellen emuliert die Software möglicherweise das Verhalten des Stencil-Puffers (dies ist jedoch im Vergleich zur hardwarebeschleunigten Implementierung sehr langsam).

Es gibt auch andere Möglichkeiten, um Schatten anzuzeigen. Die am häufigsten verwendete Methode ist Shadow Mapping (ein detaillierterer Ansatz kann gefunden werden), der keinen Schablonenpuffer benötigt. Es wird sowohl für PS2-Spiele als auch für Wii-Spiele verwendet, da diese Hardware auch keinen Stencil-Buffer besitzt. Der Schattenalgorithmus kann schließlich auch als ein einfaches Ray-Tracing-System implementiert werden, da keine Bodenerkennung erforderlich ist und die Schatten im Grunde auf einfachen 2D-Formen (Kreise) berechnet werden und Quadrate). Das könnte der beste Ansatz für diesen speziellen Fall sein.

Verwandte Themen