绑定太多纹理(超过100)会导致错误

时间:2012-12-07 18:10:03

标签: android opengl-es textures wavefront

我有一个以obj和mtl格式呈现对象的代码(android - opengl es 1.1)对于小对象(几个纹理)我没有问题但是当纹理数量超过30-40时,我在我的logcat中收到这个:eglLockWindowSurface无法映射内存... 我使用onSurfaceCreatedglBindTexture(所有单个纹理单元)加载texImage2D中的所有纹理。绑定它们以便在onDrawFrame

中绘图

究竟是什么问题?我搜索了几个小时但除了纹理图集之外找不到任何解决方案。由于我的公司给了我blender / 3dsmax的导出文件,我不能使用这种方法。 我怎么能避免这个错误并使用这么多纹理呢?

提前致谢。

1 个答案:

答案 0 :(得分:0)

仅限加载和绑定纹理是最大整数大小!限制是最大纹理大小(取决于设备) 如果最大纹理大小为4096kB,则表示您无法绑定宽度*高度* 4大于4096,000的图像。 (4是浮动大小)。所以你必须缩小你的形象。