visual-c – 增加OpenGL的远剪裁平面距离

visual-c – 增加OpenGL的远剪裁平面距离,第1张

概述我正在尝试将我的太阳系的C OpenGL表示作为一种自学OpenGL的方法,所以请保持简单的答案. 我遇到的问题是行星距离很远,因此从任何给定行星观察时,其他一切都超出了剪切平面.如何将C OpenGL 3.1平面的剪辑移动到2000000000?如果可以的话,我更喜欢简单的代码片段. 我已经查阅了SO和论坛帖子,但是它们要么太老了,什么都不适用(使用遗留API或只是死链接),或者太复杂,以至于我 我正在尝试将我的太阳系的C OpenGL表示作为一种自学OpenGL的方法,所以请保持简单的答案.
我遇到的问题是行星距离很远,因此从任何给定行星观察时,其他一切都超出了剪切平面.如何将C OpenGL 3.1平面的剪辑移动到2000000000?如果可以的话,我更喜欢简单的代码片段.
我已经查阅了SO和论坛帖子,但是它们要么太老了,什么都不适用(使用遗留API或只是死链接),或者太复杂,以至于我无法弄清楚他们在说什么.解决方法 剪切平面由透视投影矩阵定义.

如果使用glFrustum,请将传递给它的最后一个参数更改为2000000000.0.

如果使用自己的矩阵,请将矩阵数组的第10个元素设置为:

(2000000000.0 nearClipPingPlane)/(nearClipPingPlane-2000000000.0)

(公式是(远近)/(近远))

和14日:

(-4000000000.0 * nearClipPingPlane)/(2000000000.0-nearClipPingPlane)

(公式为(-2.0 *近*远)/(远近))

然而,2000000000是非常大的价值,因此如果添加山脉等细节,可能会发生Z战斗.

总结

以上是内存溢出为你收集整理的visual-c – 增加OpenGL的远剪裁平面距离全部内容,希望文章能够帮你解决visual-c – 增加OpenGL的远剪裁平面距离所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1230712.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存