我正在把一款OpenGL游戏从iPhone移植到Mac上,并且遇到了纹理损坏的问题。我猜是记忆问题。
问题是我已经使mac崩溃了3次(当游戏启动时会随机发生),所以调试变得越来越困难。
有没有办法强制软件渲染?

发布于 2011-04-10 02:58:44
创建用于初始化上下文的像素格式属性列表(initWithAttributes:)时,选择kCGLRendererGenericID as NSOpenGLPFARendererID。
NSOpenGLPFARendererID
值是一个非负的渲染器ID号。首选与指定ID匹配的OpenGL渲染器。OpenGL框架的CGLRenderers.h头文件中提供了用于选择特定渲染器的常量。值得注意的是kCGLRendererGenericID,它选择了苹果的软件渲染器。其他常量为特定硬件供应商选择渲染器。
备注!我刚刚看到kCGLRendererGenericID已被弃用,要使用的是kCGLRendererAppleSWID
另一个技巧是使用OpenGL事件探查器启动应用程序。请看这里
http://lists.apple.com/archives/quartzcomposer-dev/2010/Jun/msg00090.html
https://stackoverflow.com/questions/5607097
复制相似问题