没有模板缓冲区的实时软阴影

Tom*_*nto 5 iphone opengl-es

我很好奇以下是如何完成的

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

它们似乎在iphone上实现了实时柔和的阴影,它没有可用的模板缓冲区.它在http://www.youtube.com/watch?v=u5OM6tPoxLU似乎非常流畅

有人有想法吗?

Tyn*_*Tyn 3

模板缓冲区允许硬件加速阴影渲染,但不一定需要显示阴影体积。在主体和光源数量较少的情况下,软件可以模拟模板缓冲区的行为(但与硬件加速实现相比,速度会非常慢)。

此外,还有其他方式来显示阴影。最常用的是Shadow Mapping(更深入的方法可以在 GameDev.net 上找到),它不需要模板缓冲区。它用于 PS2 游戏以及 Wii 游戏,因为这些硬件也没有模板缓冲区。

最后,在这个特定游戏的情况下,阴影算法也可以实现为简单的光线追踪系统,因为不需要地板检测,并且阴影基本上是在 2D 简单形状(圆形和正方形)上计算的。对于这种特殊情况,这可能是最好的方法。