我目前正在创建一个位于另一个视图上方的GLKView,我在其中绘制了一些线条。 但我有一个奇怪的问题。 对于我的任务,我需要使用由此行完成的多次采样
self.drawableMultisample = GLKViewDrawableMultisample4X;
在我的构造函数中。 在iOS 7.1 / 7 / 6.1上的模拟器上,我得到了预期的结果。 在iPad Mini 1上我得到了相同的结果。
编辑: iPad 2也可以使用。
但如果我使用iPad 1(5.1)或iPad 4(7.1),我会收到以下错误。
无法制作完整的多重采样帧缓冲对象8cdd
如果我用
检查错误GLuint returned = glCheckFramebufferStatusOES(GL_FRAMEBUFFER_OES);
NSLog(@"Error code: %x -->", returned);
iPad 4上的错误代码:8219 ,iPad 1上的错误代码:8cdd
当然没有绘图。如果我禁用多次采样,则没有错误。 这个类用在一个大项目中,并且是子类。使用超类本身并不能解决问题。 GLK完全在代码中完成,它的superview是一个简单的UIView是一个.xib文件。
如果我通过在Storyboard中将GLKView作为我的类来在新项目中使用该类,则多次采样可以正常工作。
如果需要任何进一步的信息,请不要犹豫。 提前谢谢。
更新
设置GLKView的帧后似乎有问题,但仅限于非A5芯片设备。