我有两个UIView,每个都有自己独立的renderBuffers和frameBuffers。它们属于不同的ViewControllers。我已经通过NSNotificationCenter连接了它们,所以这一切都已设置好。
我只需要将ClassAView的frameBuffer中的纹理基本渲染到ClassBView的frameBuffer中。这似乎应该很容易......我尝试传递我在ClassAView中绑定的纹理:
glBindTexture(GL_TEXTURE_2D, myClassATexture);
然后在点击屏幕后,我尝试将纹理传递给ClassBView:
// in ClassA:
[classBView addTexture:myClassATexture];
// In ClassB's addTexture method:
myClassBTexture = newTexture
glClear, glBindTexture, etc...
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
[self presentFramebuffer];
但它导致黑屏。我试过NSLog myClassATexture,但它打印出“0”。
无论如何,我如何有效地将ClassA中已经渲染的纹理传递给ClassB?
我的目标是iOS 5.0,所以如果有一个简单的方法来实现它需要iOS 5,我会全神贯注。 :)
非常感谢!
答案 0 :(得分:0)
纹理ID为0表示没有纹理,因此您需要确保正确复制纹理ID以便以后使用。