如何使用OpenGL实现景深效果?

3

我想知道如何使用OpenGL实现“景深/焦散”效果?

是否有内置的方法或库来支持它?


1
这是很多纹理查找 - genpfault
2个回答

4

你无法在OpenGL中找到任何“内置”的功能来实现你想要的效果。你需要通过着色器来实现这个效果,而这是相当简单的。

关于如何实现这个效果的文章可以在这里免费获取:

Nvidia有关景深技术的文章


2

您可以计算不同的景深近似值。对于简单的近似,您可以尝试将近物体渲染到一个纹理中,将远物体渲染到另一个纹理中。在另一个传递中,您可以模糊保存着远处物体图像的纹理,然后将两个纹理组合成一个纹理,并将其包裹在屏幕空间矩形上。这与实际的景深无关,但在实时图形中通常会使用一些小技巧 - 但视觉效果必须令人信服。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接