当我致电sudo apt-get install python-mysqldb
以获得一侧超过4096像素的Canvas.drawBitmap()
时 - 我什么都没得到。没有错误,也没有绘制位图。在LogCat中只出现此消息:
W / OpenGLRenderer:位图太大而无法上传到纹理中(2880x4920,max = 4096x4096)
这引出了以下问题:
答案 0 :(得分:1)
这取决于硬件和软件。您可以在运行时使用有效的OpenGL上下文进行查询(请参阅:Get OpenGL max texture size)
int[] maxTextureSize = new int[1];
GLES10.glGetIntegerv(GL10.GL_MAX_TEXTURE_SIZE, maxTextureSize, 0);
请注意,支持的大小可能会更小,具体取决于纹理的格式。例如,除了最大像素大小外,您的硬件还可以具有最大纹理大小(以字节为单位)。要检查支持的纹理大小,请使用所需的大小和格式创建代理纹理(GL_PROXY_TEXTURE_2D
目标,而不是GL_TEXTURE_2D
),然后使用{{查询纹理大小(宽度或高度) 1}}。如果纹理太大,则大小将设置为0.