Cocos2D 2.0 - 无数的 OpenGL 错误

2024-01-06

我正在将 Cocos2D 项目转换为 2.0。

我使用Cocos2D 2.0模板(没有物理的简单模板)创建了一个空白项目,并将所有文件从旧项目转移到空白项目。

我也将其转换为 ARC。

我编译并没有看到任何错误。我运行该应用程序,它似乎运行正常,但我在控制台上出现这些错误...

MyApp[1266:707] cocos2d: animation stopped
MyApp[1266:707] cocos2d: animation started with frame interval: 60.00
MyApp[1266:707] cocos2d: surface size: 640x960
MyApp[1266:707] cocos2d: surface size: 640x960
MyApp[1266:707] cocos2d: animation stopped
MyApp[1266:707] cocos2d: animation started with frame interval: 60.00
MyApp[1266:707] failed to call context
MyApp[1266:707] cocos2d: surface size: 640x960
MyApp[1266:707] Failed to make complete framebuffer object 0x8CDD
OpenGL error 0x0506 in -[CCSprite draw] 532
OpenGL error 0x0502 in -[CCGLView swapBuffers] 280
MyApp[1266:707] failed to call context
MyApp[1266:707] cocos2d: surface size: 640x960
MyApp[1266:707] Failed to make complete framebuffer object 0x8CDD
OpenGL error 0x0506 in -[CCSprite draw] 532
OpenGL error 0x0502 in -[CCGLView swapBuffers] 280
OpenGL error 0x0506 in -[CCSprite draw] 532
OpenGL error 0x0502 in -[CCGLView swapBuffers] 280
OpenGL error 0x0506 in -[CCSprite draw] 532
OpenGL error 0x0502 in -[CCGLView swapBuffers] 280
OpenGL error 0x0506 in -[CCSprite draw] 532
OpenGL error 0x0502 in -[CCGLView swapBuffers] 280
OpenGL error 0x0506 in -[CCSprite draw] 532
OpenGL error 0x0502 in -[CCGLView swapBuffers] 280

正如我所说,这是从空白模板创建的。

我该如何解决这个问题?


OpenGL 错误 0x506 = GL_INVALID_FRAMEBUFFER_OPERATION

Cocos2D 2.0 和 Cocos2D 1.0 之间的主要区别在于 OpenGLES 版本。 Cocos2D 2.0 使用 OpenGLES 2.0,Cocos2D 1.0 使用 OpenGLES 1.0。

我猜你可能使用了在 OpenGLES2.0 中找不到但在 OpenGLES 1.0 中找到的 API

示例:GLBegin()、GLLineWidth() 等

使用这个绘图函数:

-(void) draw
{
    [super draw];
    ccGLEnableVertexAttribs( kCCVertexAttribFlag_Position );
    kmGLPushMatrix();
    self.world->DrawDebugData();    
    kmGLPopMatrix();
}

而不是这个:

-(void) draw
{
    glDisable(GL_TEXTURE_2D);
    glDisableClientState(GL_COLOR_ARRAY);
    glDisableClientState(GL_TEXTURE_COORD_ARRAY);

    world->DrawDebugData();

    // restore default GL states
    glEnable(GL_TEXTURE_2D);
    glEnableClientState(GL_COLOR_ARRAY);
    glEnableClientState(GL_TEXTURE_COORD_ARRAY);

}

还可以使用 Cocos2D 2.0 中的 GLES-Render.h 和 GLES-Render.m

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Cocos2D 2.0 - 无数的 OpenGL 错误 的相关文章

  • 了解 applicationSignificantTimeChange:

    我发现有时我的应用程序 Cocos2d 游戏 在显着的时间变化后会出现 错误 例如 case 1 当应用程序进入后台并在几分钟后重新启动它时 我可以看到加载图像然后应用程序 游戏恢复 case 2 当应用程序进入后台并在很长一段时间后更改应
  • Cocos2d中用手指旋转精灵

    我需要帮助用手指计算精灵的旋转 精灵旋转得很好 但在我手指第一次触摸时 它不知何故自行旋转了几度 此外 只有当手指围绕精灵中心旋转时 旋转才起作用 我正在尝试模拟自行车车轮 并有一个齿轮精灵和一个踏板精灵作为齿轮精灵的子级 我希望当我触摸踏
  • cocos2d 3.x CCButton 设置精灵帧图像扭曲且回调/块不起作用

    我需要设置按钮的精灵框架 当我使用构造函数时它正在工作 CCSprite sprite CCSprite spriteWithImageNamed but png CCButton button CCButton buttonWithTit
  • 通过游戏中心发送 NSString

    我想通过 Gamecenter 将 NSString 从另一台 iPhone iPad 发送到另一台 iPhone iPad 但它因 EXC BAD ACCESS 崩溃 在 h 文件中 typedef enum kMessageTypeRa
  • Cocos2D 2.0 - 无数的 OpenGL 错误

    我正在将 Cocos2D 项目转换为 2 0 我使用Cocos2D 2 0模板 没有物理的简单模板 创建了一个空白项目 并将所有文件从旧项目转移到空白项目 我也将其转换为 ARC 我编译并没有看到任何错误 我运行该应用程序 它似乎运行正常
  • Cocos2d 2.0 - 左下角有 3 个数字

    我的 Cocos2D 2 0 项目屏幕左下角有 3 个数字 82 0 016 60 0 60 可能是 FPS 那么其他两个呢 我记得以前的 Cocos 版本只有 FPS 数字 有什么线索吗 谢谢 82 lt number of draw c
  • 我可以像精灵一样缩放 box2d 中的形状吗?

    因为我们总是使用cocos2d中的功能 所以我可以随时缩放我的精灵 我可以在box2d中做同样的事情吗 例如 我创建了一个圆形的身体 然后我想让它变大 我尝试在创建圆后重新分配 m radius 但不起作用 如果您只是将 shape m r
  • cocos2d 在场景之间移动

    如何在 cocos2d 应用程序中的场景之间移动 我有一只在天空中飞翔的鸟 那么我如何设置场景随着应用程序中的不同位置而变化 如果有人知道解决方案 请帮忙 听起来您想要一款基于图块的游戏 以下是关于如何实现基于图块的游戏的精彩教程的链接 h
  • 花栗鼠碰撞检测

    我对花栗鼠完全陌生 而且我刚刚使用它几天 所以我猜这是非常明显的事情 但是我找不到任何相关文档 Chipmunk 中是否有任何回调或方法可以告诉您 2 个给定的形状发生了碰撞 如果不是 最好的方法是简单地在精灵上使用 cgrect cont
  • 如何检查设备是否有互联网连接:cocos-2d

    在我的一款 iPhone 应用程序中 我需要查明该设备是否有互联网连接 有人请帮忙吗 使用可达性类 if self checkInternetConnected NSLog Internet connected n BOOL checkIn
  • 移动一个精灵时所有精灵都不可见[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我的场景中有 7 个精灵 所有精灵都添加到可变数组中 当我触摸一个精灵来移动时 其他精灵在我触摸移动方法后不可见 这是我的代码 if se
  • 我的 Cocos2D-iPhone 游戏可以支持 VoiceOver 吗?

    我正在制作一款游戏 玩家通过动作对声音做出反应 由于玩游戏不需要视觉元素 而且许多人都是闭着眼睛玩的 所以不完全兼容 VoiceOver 似乎很遗憾 我目前正在使用 Cocos2D iPhone 和 CocosDenshion 来处理音频
  • 如何将 CCSprite 从一个父级转移到另一个父级?

    我有一个CCSprite called sprite那是一个孩子CCLayer called movingLayer它本身就是当前的子项CCLayer运行我的游戏逻辑 所以它是self在这种情况下 movingLayer以永远重复的动作在屏
  • 在cocos2d中平滑拖动Sprite - iPhone

    我已经实现了对精灵对象的拖动 如下所示 BOOL ccTouchesMoved NSSet touches withEvent UIEvent event UITouch touch touches anyObject CGPoint lo
  • Cocos2d 3.0中如何获取winSize

    我在Cocos2d 1 0和Cocos2d 2 0中使用了以下代码 但在Cocos2d 3 0中似乎找不到 CGSize s CCDirector sharedDirector winSize 如何在Cocos2d 3 0中获取屏幕尺寸 您
  • cocos2d 屏幕上没有添加排行榜

    我使用下面的代码来显示排行榜 但我得到的只是控制台 cocos2d surface size 480x320 代码 void showLeaderboardForCategory NSString category Only execute
  • Pvr 在 cocos2d 3.2 版本中翻转:从 2.1 移植时的困境

    我目前正在将一个游戏从cocos2d 2 1版本移植到3 2版本 我们有超过 3600 个未翻转的 pvr gz 文件 例如在 2 1 下生成和工作的文件 我们使用TexturePacker测试了pvr图像的flipY选项 并且确实有足够的
  • 使用 CCTouchDispatcher Cocos2d 2.0 Beta-2 ARC

    我正在使用 cocos2d 2 0 BETA 2 0 最新的 创建一个游戏 我需要在其他班级添加一个操纵杆 所以我在第二堂课上称之为 CCTouchDispatcher 但我不能这样调用 CCTouchDispatcher sharedDi
  • 在cocos2d中添加UIViewController

    我想在 cocos2d 项目中显示 UIViewController 所以我在我的 CCLayer 类中执行此操作 void displayMainMenu CGSize screenSize CCDirector sharedDirect
  • 如何在 Xcode 4 中安装 Cocos2d PROJECT 模板?

    我可能已经用 20 种不同的语法搜索了这个问题 但找不到答案 请帮忙 如何在 xcode 4 中安装 Cocos2d 项目模板 我尝试了不同的方法 但是当我在 Xcode 4 中构建新项目时它们仍然没有出现 帮助 下载 cocos2d ip

随机推荐