2010-03-19 73 views
1

我正在构建一个游戏级别编辑应用程序,作为大学项目的一部分。在我的应用程序中,我有多个视口,一个透视视口和三个正交视图,所有视图都设置为查看同一场景。使用GLOrtho查看3D场景的Side,Front,Top透视图

我已经成功地设置了正交视图,并且可以翻译和缩放它们以模仿滚动和缩放。不幸的是,我遇到了一个问题 - 我的场景仍然包含三个维度,因此,在某些深度的正交模式下查看的对象在剪辑量之外时会被剪切。

大多数3D制作工具或关卡编辑器允许您以正交模式查看所有对象,无论深度如何。

我想我需要做的是在适当的维度上调整我的场景,使所有的值都介于1和-1之间,是否有一种直截了当的方式来解决这个问题?或者有更好的方法。

非常感谢您的帮助, 丹

+1

很抱歉回复我自己的帖子。我现在用的解决方案是通过所需坐标轴上一个令人讨厌的小值(当前为0.0001)来缩放我的整个场景,并将裁剪平面设置为接近:-10 far:10。 这意味着我的orphographic视图捕获了100000范围内的项目,我无法预测将创建该大小的场景! 这不完全是一个优雅的解决方案,所以如果有人知道这个问题是如何解决商业应用程序,我很乐意听到它。 – talldan 2010-03-19 15:28:41

回答

0

为什么不设置你的裁剪平面到淫秽值,像100000.0。我认为大多数情况下你需要找到某种最大价值。如果建模城市街区,则建模人员不能使用毫米级(1单位= 1毫米)。

我认为我看过/处理过的大多数商业应用程序只有一个用户可配置的裁剪平面值,默认值很大。

+0

感谢蒂莫西的回应。将它作为用户可以指定的值是很有道理的,所以我一定会这样做。 – talldan 2010-03-22 14:44:50