2013-05-18 23 views
1

好吧,我有這個完全正常工作的場景,在有揚聲器的架子上有一個乙烯球員。一切正常(模型和紋理使用GLM,使用Mac-Cocoa的界面)。禁用GL_DEPTH_TEST時,紋理消失

我現在正在實施的是一個「碼頭式」的酒吧,那裏有浮動專輯封面,所以你可以選擇一個播放。它目前效果很好,但如果你放大得太多,他們會躲到其他物體後面消失。

我第一次嘗試:glDisable(GL_DEPTH_TEST)。但是當我這樣做時,我的專輯中的所有貼圖(包括3D模型)都變灰了。

深度問題根據預期進行了修正,但問題在於紋理。我正在使用這個版本的GLM模型加載器:http://devernay.free.fr/hacks/glm/,它自動加載紋理。啓用

GL_DEPTH_TEST: GL_DEPTH_TEST enabled

GL_DEPTH_TEST禁用: GL_DEPTH_TEST disabled

任何想法?

+0

我注意到,只有專輯去無紋理。唱機和牆壁仍然看起來有質感。 –

回答

4

沒有訪問您的代碼和資產,這只是一個猜測,但它看起來像你的專輯封面模型有正面和背面。 GL_DEPTH_TEST已禁用,背面正在繪製在正面之後,並且由於深度測試正在跳過,所以它會遮住正面。

嘗試打開背面消隱如果您尚未:

glEnable(GL_CULL_FACE); 
+0

謝謝。背面剔除確實是問題。但另一件事也造成了問題:我正在使用三角模型來製作相冊。所以它只會顯示每個臉部的三角形部分。無論如何,我重新出口的模型沒有三角形,它的工作! –