2010-08-08 72 views
1

我有一個簡單的iPhone OpenGL ES應用程序,其中我使用紋理渲染全屏幕背景圖像,然後使用線條在其頂部繪製3D多面體。紋理使用glDrawTexfOES顯示。使用glDrawTexfOES渲染背景圖像與前景對象的問題

問題是我似乎無法在背景上顯示多面體。在glDrawTexfOES調用中,如果我使用小於1的z值,背景圖像將顯示但不包含多面體。如果z值是1(或更多),則多面體顯示但不顯示背景圖像。

混合未啓用。深度測試已開始。連接深度緩衝區。當多面體被繪製時,深度測試似乎正在工作。多面體用簡單的線條繪製。

z值行爲表明也許多面體的深度緩衝值爲1 ...?

任何線索如何獲得背景圖像和前景對象顯示?

回答

0

我的猜測是,當你繪製背景圖像時,禁用深度遮罩。這將確保在放下背景時保持深度緩衝區不變,以便繪製多面體並且不會影響深度測試。

做一個簡單的測試並縮小背景,然後放大多面體並使用原始算法渲染。您應該可以在任何地方看到您的幾何圖形,無論是背景,還是多面體實際通過深度測試的任何位置。

+0

謝謝,塞繆爾。我會給你一個鏡頭並回報。 – bfalling 2010-10-21 18:21:59