我在3ds Max中生成了一个大小为10k×10k的地形网格。我的问题是远剪裁只是关闭,我无法看到我想要的。我正在尝试实现雾着色器,我现在看到的只是不行。
我的相机构造函数看起来像这样
Camera::Camera():
cameraPosition_(glm::vec3(-1.0f, 1000.0f, 20.0f)),
cameraLook_(glm::vec3(0.0f, 800.0f, 200.0f)),
lookAt_(glm::lookAt(cameraPosition_,
cameraLook_,
WORLD_YAXIS)),
near_(0.1f),
far_(10000.0f),
projection_(glm::perspective(
70.0f,
4.0f / 3.0f,
near_,
far_)),
name_("Default Camera")
{
}
答案 0 :(得分:1)
真实相机没有近距离和远距离剪裁平面。由于数值精度问题,虚拟相机需要它们。将近处和远处的平面设置为极值来模拟真实的相机很有吸引力,但这会使对象失败。平面之间的范围越小,您将获得的伪像越少,并且它们应设置为略微超出实际对象的范围。
(如果您确实需要天空中的两架飞机和同一镜头中的叶子上的虫子,请通过使用不同的相机设置绘制两次来伪造它)。