2014-01-28 21 views
0

在我的IOS應用程序中,我有一個2視圖的屏幕:一個經典的UIView和一個openGLES視圖。 3d視圖已經過了2d,我設置了一個清晰的背景來查看它後面的二維視圖。iOS模擬器上的OpenglES層沒有透明度

它按預期顯示在所有ios設備上,但3d視圖在ios模擬器上不透明。 在3D視圖我用這些行:

[myOpenGLView setBackgroundColor:[UIColor clearColor]]; 
[myOpenGLView setOpaque:NO]; 

而且每次渲染之前我打電話:

glClearColor(0.,0.,0.,0.); 
glClear(GL_COLOR_BUFFER_BIT); 

有誰得到了同樣的問題?

+0

你遵循所有的步驟在這裏模擬器的bug:http://stackoverflow.com/a/4456862/19679 ?請注意,您需要使用支持視圖的CAEAGLLayer,而不是視圖本身。 –

回答

0

看來我不能改變eaglLayer的不透明度。

我的OpenGL視圖是單例,當我初始化它,我打電話

eaglLayer.opaque = YES; 

,當我使用它的第二次(其中,我需要透明度)我改變其值NO,但該層是黑色模擬器和iOS設備上的半透明。

在另一方面,如果我設置不透明度爲NO直接,我沒有