gpt4 book ai didi

iphone - 应用程序因 glGetString 而崩溃

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:51:41 25 4
gpt4 key购买 nike

我正在运行 cocos2d-iphone 1.0.0 并关注 this使用 cocos2d 和 ARC 的教程。不幸的是,每当我尝试将 TMX Tiled Map 添加到 CCLayer 时,我都会收到“SIGABRT”崩溃错误。我已将此问题追溯到 -(BOOL)checkForGLExtension:(NSString *)searchName,甚至进一步追溯到此函数内的 NSString *extensionsString = [NSString stringWithCString:glExtensions encoding: NSASCIIStringEncoding ];

这里是 checkForGLExtension 函数:

- (BOOL) checkForGLExtension:(NSString *)searchName {
// For best results, extensionsNames should be stored in your renderer so that it does not
// need to be recreated on each invocation.
NSLog(@"%@", glExtensions);
NSString *extensionsString = [NSString stringWithCString:glExtensions encoding: NSASCIIStringEncoding];
NSLog(@"%@", extensionsString);
NSArray *extensionsNames = [extensionsString componentsSeparatedByString:@" "]; }

encoding: 部分 NSString *extensionsString = [NSString stringWithCString:glExtensions encoding: NSASCIIStringEncoding]; 可能导致应用程序崩溃。我还在我的日志中收到了 GL_VENDORGL_VERSIONGL_RENDERER 甚至 glExtensions 的 NULL。

回顾 OpenGLES.framework 中的 gl.h,我看到了这一点:

/* StringName */
#define GL_VENDOR 0x1F00
#define GL_RENDERER 0x1F01
#define GL_VERSION 0x1F02
#define GL_EXTENSIONS 0x1F03

其中全部为NULL。

最佳答案

注意:我对 iOS 开发一无所知:)

从 glGetString 获取 NULL 通常意味着 OpenGL 上下文未绑定(bind)或创建不正确。你应该检查一下。还可以使用 glGetError 检查 GL 错误。

关于iphone - 应用程序因 glGetString 而崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7047622/

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