gpt4 book ai didi

ios - CCRenderTexture 端的 cocos2D-iphone 中的 OpenGL 500 错误

转载 作者:可可西里 更新时间:2023-11-01 05:00:22 27 4
gpt4 key购买 nike

正在为 ipad 开发一个绘图应用程序,并使用 CCRenderTexture 作为绘制 Sprite 的 Canvas 。我使用的绘制循环基于渲染纹理类的 cocos 示例中的绘制循环。

[target begin];

float distance = ccpDistance(start, end);
if (distance > 1) {
int d = (int)distance;
float difx = end.x - start.x;
float dify = end.y - start.y;
for (float i = 0; i < d; i+=([self.currentBrush sprite].textureRect.size.width * [self.currentBrush sprite].scale)/4.0f) {
float delta = i / distance;
[[self.currentBrush sprite] setPosition:ccp(start.x + (difx * delta), start.y + (dify * delta))];
[[self.currentBrush sprite] visit];
}
} else {
[[self.currentBrush sprite] setPosition:start];
[[self.currentBrush sprite] visit];
}

[target end];

每次调用 [target end] 时,我都会收到 OpenGL 0x0500 错误:

OpenGL error 0x0500 in -[EAGLView swapBuffers]

它似乎是基于我在“ Canvas ”上绘制的 Sprite 上的混合函数 {GL_ONE, GL_DST_COLOR}。当我使用 {GL_ONE, GL_ONE}{GL_ONE, GL_ONE_MINUS_SRC_ALPHA}(橡皮擦)时,我没有遇到同样的问题。

设备和模拟器上的 iOS 4.2 和 4.3 均存在此问题。

这是我第一次使用 OpenGL,所以我在寻找解决方案时感到有点迷茫,我们将不胜感激任何帮助。

[更新]

我删除了所有函数调用以设置混合,因为 GL_DST_COLOR 似乎是导致错误的原因。删除混合调用后(橡皮删除外)它看起来仍然一样,所以我对此很满意。

阅读后得出此解决方案 a cocos2d forum post关于同一问题。

最佳答案

May be It's bug in latest version of Cocos2d.It's give the warning and some time Performance is also decrease.I fetch same problem when we put Gesture on the view controller.

Below link is a my question discussion.


**http://stackoverflow.com/questions/21326063/glview-causes-opengl-error?noredirect=1#comment32164422_21326063**

关于ios - CCRenderTexture 端的 cocos2D-iphone 中的 OpenGL 500 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6499727/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com