0

我正在使用 jsonLoader 加载我的 3D 模型。由于我想提高加载性能,我已将纹理转换为 DDS 格式(使用 Gimp 插件)。但我无法摆脱这个问题:

GL_INVALID_ENUM : glActiveTexture: texture was GL_FALSE three.min.js:477

WebGL: drawElements: texture bound to texture unit 0 is not renderable. 
It maybe non-power-of-2 and have incompatible texture filtering or is not
'texture complete'. Or the texture is Float or Half Float type with linear
filtering while OES_float_linear or OES_half_float_linear extension is not enabled. 
three.min.js:477

GL_INVALID_ENUM : glActiveTexture: texture was GL_LINES 

每个纹理面已经是 2 的幂。关于问题是什么的任何想法?

编辑:我找到了一些可能的 WebGL 解决方案,但由于我不使用着色器,我想知道 Three.js 是否有任何解决方案

4

1 回答 1

0

我设法通过为每个转换的纹理生成 mipmap 来解决这个问题。总之:使用带有 BC3/DTX5 压缩的 Gimp DDS 导出器并选择“生成 mipmaps”选项。我希望这个解释会有所帮助。

于 2014-07-07T10:00:02.700 回答