2012-03-22 29 views
1

我正在顯示以[0,0,-10],寬度和高度爲10000爲中心的紋理sqad。相機定位在[0 ,0,0]和向下看的負z軸(眼點= [0,0,0],中心= [0,0,-1]):OpenGL ES:glOrtho()顯示對象,但gluPerspective()不是

GLU.gluLookAt(gl, 0f, 0f, 0f, 0f, 0f, -1f, 0f, 1f, 0f); 

照明和深度測試被禁用。

在正射模式下,班組顯示完美,具有紋理和全部 - 我甚至可以縮放和平移。 但是,通過切換到立體模式時,:

GLU.gluPerspective(gl, 60.0f, w/h, 1.0f, 1000.0f); 

那麼該視圖是隻是空白。有沒有人知道可能會導致這種情況?

UPDATE:

使用glFrustum代替gluPerspective,它的工作原理:

gl.glFrustumf(-scaledHalfW, scaledHalfW, -scaledhalfH, scaledhalfH, 1.0f, 100.0f); 

但爲什麼gluPerspective不顯示任何東西?

回答

4

w/h整數除法可能嗎?

+1

它是! omg現在感覺很愚蠢:) w/h將爲0,將視口扭曲到恰好爲0的寬度。 – manmal 2012-03-22 17:55:40