动态立方体贴图 - opengl

时间:2017-05-23 15:33:36

标签: opengl glsl skybox

当使用静态立方体贴图时,假设天空盒纹理上的对象距离很远,因此当相机移动时视图不会改变是没有问题的。

但是,使用动态立方体贴图时,我们会在相机附近包含对象。因此,例如;我们在相机前面有巨大的玻璃,我们在玻璃前面有物体,我们需要计算折射。因为,我们只给glsl中的纹理函数一个vec3,忽略了玻璃上的坐标。例如;玻璃中间的折射矢量是vec3(0,-0.2,-0.6),玻璃右下角的折射也是vec3(0,-0.2,-0.6)。因此,两个坐标的颜色都是相同的,但不应该。我们如何处理这个问题?

1 个答案:

答案 0 :(得分:0)

要解决此问题,您可以使用视差校正立方体贴图,这样您就可以创建"局部立方体贴图" (使用参考边界框)而不是"无限立方体贴图"。

Seb Lagarde有一个非常好的article详细解释了所有内容(参见"局部立方体贴图的视差校正"章节)。