Android NDK中的矩阵堆栈容量有点小

时间:2010-06-21 09:54:39

标签: iphone android opengl-es android-ndk

我在iPhone / iPod / iPad / MacOSX / Windows上创建了DirectX8保留模式的渲染器和加载器。 DirectX8保留模式格式是场景图形式,层次结构如此之深。 因此,只发生了Android NDK OpenGLES GL错误代码0x503,0x0504(命令堆栈溢出或流量不足)。

android的堆栈容量有点吗? 谁试图检查每台设备的容量? (NexusOne,HTC03A,Droid,Xpedia等。)

1 个答案:

答案 0 :(得分:1)

要查询最大堆栈大小,请将glGetIntegerv与GL_MAX_MODELVIEW_STACK_DEPTH和GL_MAX_PROJECTION_STACK_DEPTH一起使用。如果你推得太多的矩阵,这将会溢出。

您正在使堆栈下溢,这是代码中的错误。当堆栈中没有任何东西时,不要弹出。

如果您发现堆栈空间太小,您可以通过软件创建自己的矩阵堆栈,这不会受到GL ES实现的限制。