Three.js使用GLTFLoader、DRACOLoader加载模型报错,解决方案

381 阅读1分钟

遇到的问题

Three.js使用GLTFLoader、DRACOLoader加载模型报错如下:

THREE.DRACOLoader: Unexpected geometry type.

分析可能原因

两种可能:

  • 可能原因一:THREE.DRACOLoader.setDecoderPath('url')中设置的draco解压器之url路径不正确。
  • 可能原因二:draco解压器路径正确但版本与当前Three.js不匹配。

解决方案思路

  • 对于可能原因一,修改正确的draco的url
  • 对于可能原因二,引入版本相符的draco

以vite脚手架为例 node_modules\three\examples\jsm\libs\ 下的darco文件夹拷贝到 public\ 下,之后报错就解决了。