Ich habe diesen Apple-Beispielcode GLEssentials sample code heruntergeladen. Ich möchte ein paar Experimente mit dem Tiefenpuffer durchführen, also habe ich mich zuerst für BUFFER_BITS entschieden.OpenGLES 2.0 falsche Tiefe Puffer Bits
Ich habe nächsten Code OpenGLRenderer.m in -initWithDefaultFBO Methode:
GLEssentials[3630:112826] Apple Software Renderer OpenGL ES 2.0 APPLE-12.4.2
depthBits: 24
aber in ES2Renderer.m Ich sehe nächste Zeile:
// code from sample
NSLog(@"%s %s\n", glGetString(GL_RENDERER), glGetString(GL_VERSION));
// buffer bits check
GLint depthBits;
glGetIntegerv(GL_DEPTH_BITS, &depthBits);
printf("depthBits: %d\n", depthBits);
ich nächste Ausgabe hatte
// using 16-bit depth buffer
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT16, backingWidth, backingHeight);
Warum ist das passiert? Ist es ein Fehler?
PS: Ich habe nur im iOS-Simulator getestet, weil ich kein iOS-Gerät habe.
Vielen Dank für OpenGLES Link-Spezifikation, ich bin total vergessen. – frankWhite