我的意思是功能支持的最大宽度和高度,谢谢! 我尝试了两次屏幕高度,报告错误0x8cdd,这意味着不支持。
答案 0 :(得分:2)
如有疑问,请务必阅读扩展规范......在这种情况下:GL_APPLE_framebuffer_multisample
。
如果您阅读了扩展程序规范,则会指向GL_MAX_RENDERBUFFER_SIZE
以及特定于扩展程序本身的其他实现定义限制:GL_MAX_SAMPLES_APPLE
。
简而言之,宽度和高度不能超过GL_MAX_RENDERBUFFER_SIZE
的值,样本数不能超过GL_MAX_SAMPLES_APPLE
。因此,您应该在运行时查询这些值并采取相应的行动。
GLuint max_rb_size, max_samples_apple;
glGetIntegerv (GL_MAX_RENDERBUFFER_SIZE, &max_rb_size);
glGetIntegerv (GL_MAX_SAMPLES_APPLE, &max_samples_apple);
这应该回答你的问题,因为这是具体的实施,这是我能为你做的最好的。我可以告诉你,GLES2要求MAX_RENDERBUFFER_SIZE至少为1x1(不开玩笑),Apple的扩展只需要支持1个样本。这些必需的最小值中的任何一个都不是特别有用,因此您必须在运行时查询它以找出真正的系统支持的内容:)