何时使用手动贴图绑定纹理

When to bindTexture with manual mipmaps

手动设置纹理的 mipmap 层级时,在每个层级上循环的正确策略是什么?

注意:我假设 gl.createTexture() 肯定落在循环之外

选项 A

  1. gl.bindTexture(bindTarget, 纹理);
  2. gl.texParameteri();
  3. 对于每个 mipmap 级别:
    • gl.texImage2D();

选项 B

  1. gl.bindTexture(bindTarget, 纹理);
  2. 对于每个 mipmap 级别:
    • gl.texParameteri();
    • gl.texImage2D();

选项 C

  1. 对于每个 mipmap 级别:
    • gl.bindTexture(bindTarget, 纹理);
    • gl.texParameteri();
    • gl.texImage2D();

纹理参数适用于整个纹理,而不是每个 mip 级别,因此选项 a。

鉴于这些参数有助于选择是否使用 mips,您似乎可以得出结论。