繁体   English   中英

来自 Xcode 4 的黑客 OpenGL ES2 模板项目的问题

[英]Questions for hacking OpenGL ES2 template project from Xcode 4

通过 xcode4 从 opengl 模板创建新项目,您将看到一个颜色方块在移动。

我想再放两个小视图来显示同一件事。 我所做的是添加两个

EAGLView *glView1;
EAGLView *glView2;

然后使用属性/系统大小等进行设置,并使用 self.view 进行相同的编码,如下所示

 [(EAGLView *)self.view setContext:context];
[(EAGLView *)self.view setFramebuffer];

if (!glView2) {
    glView2 = [[EAGLView alloc] init];
}
[self.glView2 setContext:context2];
[self.glView2 setFramebuffer];

if (!glView1) {
    glView1 = [[EAGLView alloc] init];
}
[self.glView1 setContext:context];
[self.glView1 setFramebuffer];

对 self.view 所做的其他地方做同样的事情。 还要在界面生成器中做正确的链接。 (xcode4)

但结果显示在此处输入图像描述

我发现 drawFrame 中的最后一个绘制顺序将决定 window 将显示哪个

[self.glView1  setFramebuffer];
[self.glView2  setFramebuffer];         // these will not show , but if put last, it will show
[(EAGLView *)self.view setFramebuffer]; // this will work 

这对解释我的目的和问题有意义吗? 非常感谢您指出根本原因并通过此帮助我 go。

您需要阅读有关 OpenGL ES 2.0(“OGLES2.0”)的信息。 您不应该使用多个 EAGLView 实例。 您只需要一个,然后使用 OGLES2.0 命令来绘制它。

OpenGL 学习起来并不容易,您必须花费大量时间才能使用它实现简单的渲染。 你应该寻找一个像cocos2D这样的外部库来帮助你实现你想要的。 仔细阅读那里的教程和文档,并进行实验。 仍然需要很多时间才能达到令人满意的结果,但比你自己直接使用 OGLES 的时间要少得多。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM