2011-12-02 73 views
0

我在OpenGL中繪製了一個三角形,並且可以向上,向下,向左移動它。我使用SFML作爲我的窗口框架,我想知道我怎樣才能保持我的三角形在窗口中,而不是移動到它的外面,即如果它一直走到頂端,我希望它停止通過高度讓對象留在屏幕上OpenGL SFML

回答

0

這在很大程度上取決於你的投影矩陣。你需要獲得它的高/低界限(如果你使用透視圖,它們將取決於Z距離;當Z被壓扁時,正交矩陣更容易),然後檢查它們 - 如果你的對象關閉 - 禁止移動。

+0

是的,我使用gluPerspective,我如何獲得高/低界? – rjs

+0

下面是gluPerspective代碼:http://www.opengl.org/wiki/GluPerspective_code Z值在近剪裁平面和遠剪裁平面之間均勻分佈。我不知道SFML是否有任何捷徑來實現你的目標,所以我會去定製數學解決方案。 – Kromster