opengl-es - que significa vbo en minecraft
Tamaño máximo para Objetos de búfer vértice(OpenGL ES 2.0) (3)
Hay un tamaño máximo, en el sentido de que la GPU siempre puede emitir un error GL_OUT_OF_MEMORY. Pero aparte de eso, no.
¿Hay un tamaño máximo para los objetos de búfer de vértices ligados a GL_ARRAY_BUFFER o GL_ELEMENT_ARRAY_BUFFER ???
Originalmente, estaba dibujando una malla compuesta de 16 submallas. Para cada submenú, creé un buffer de vértice y durante la fase de renderizado, llamé a glDrawElements. Esto funcionó bien en el simulador de iOS, pero cuando traté de renderizar en mi dispositivo, la pantalla parpadea constantemente y las mallas no se muestran.
Luego hice algunas lecturas y descubrí que no debes llamar a glDrawElements demasiadas veces durante una fase de renderizado. Traté de combinar todas mis submeses en un buffer de vértice. El buffer enlazado a GL_ARRAY_BUFFER contiene 3969 vértices, donde cada vértice contiene 20 flotantes. Entonces el tamaño de este buffer es 317520 bytes. Los índices vinculados a GL_ELEMENT_ARRAY_BUFFER son 16425 cortos. El tamaño de este búfer es, por lo tanto, 32850 bytes.
En el wiki de OpenGL, dice que "1 MB a 4 MB es un tamaño agradable de acuerdo con un documento nVidia" para un Objeto de búfer de vértices.
Imprimí el resultado de glGetError después de vincular cada objeto de memoria intermedia y de llamar a glDrawElements, y no veo ningún error. Sin embargo, mis mallas no se muestran correctamente. Parece que solo la primera malla se dibuja correctamente. ¿Hay algo sospechoso en la forma en que lo he implementado? No quería hacer esta pregunta demasiado tiempo así que si hay alguna información adicional que necesita para responder esta pregunta, hágamelo saber. Si no hay nada en teoría que parezca incorrecto, quizás acabo de cometer un error al implementarlo.
Mira esto:
http://www.sunsetlakesoftware.com/2008/08/05/lessons-molecules-opengl-es
Hay algunos límites naturales que utilizan tipos de datos más pequeños, como obviamente ~ 65000 para usar los cortos como índices.
Pero lo más importante es que hay algo de ayuda adicional en el enlace, que es un tutorial muy bueno, e incluye algunas pruebas anecdóticas de que los cortos hasta el límite funcional natural funcionan.
Sé que es demasiado tarde para responder esta pregunta. Sin embargo, ¡me gustaría que la respuesta ayude a alguien!
Basado en la especificación de OpenG Graphics System (Versión 4.5 (Core Profile) - 28 de mayo de 2015), establece: "No hay límite en el número de vértices que se pueden especificar, excepto el tamaño de las matrices de vértices". por favor mira la página 322.
Lo siento, también como menciona Nicol Bolas aquí: https://.com/a/7369392/4228827
Saludos, Naif