3

我想知道如何使用OpenGL实现“景深/混乱圈”效果?

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

4

2 回答 2

4

您将找不到任何“内置”到 OpenGL 中的内容来满足您的需求。您必须通过着色器来实现此效果,这非常简单。

有关如何实现此效果的文章可在此处免费获得:

Nvidia关于景深技术的文章

于 2013-05-14T14:22:51.330 回答
2

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

于 2013-05-14T15:35:27.360 回答