纹理作为两个特定的权力?

时间:2016-09-28 19:29:09

标签: three.js textures

我正在使用纹理使用着色器预先计算一些位置值,并且我得到的结果是纹理不是2的幂。事实上,我确实扩展它们以使它们成为正方形(7,043,716个纹素,这是2654的正方形)但是我开始怀疑纹理必须是2的特定幂 - 可能被8整除?例如8x8,16x16,32x32,64x64,因为这些数字不断上升。是这样,如果是的话,是否有上限?

1 个答案:

答案 0 :(得分:0)

我认为您不需要成为2的特定权力,但gl.getParameter(gl.MAX_TEXTURE_SIZE)应该告诉您在您所使用的浏览器和硬件上可用的上限,并且必须 at至少 64.(警告:根据文档,它仅仅是“粗略的估计”;但它可以在不尝试上传的情况下获得,并且我认为它会低估它)

我通常是一个iOS用户,所以我可以告诉你,iPhone 4及以下版本在2048年最高,但4s及以上版本可以支持至少4096.尽可能抽出你想要的推论从那以后,假设您的代码无法应对低于2654的下限。