You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Three.js使用VertexColors参数提示无对应导出的报错问题

报错原因

你遇到的报错是Three.js版本迭代API废弃导致的:从r125版本开始,官方就移除了VertexColors这个导出常量,你当前使用的是较新的Three.js版本,模块里根本不存在这个导出项,自然会抛出找不到对应导出的语法错误。
旧版本Three.js中材质的vertexColors属性需要传入枚举常量(NoColors/VertexColors/FaceColors)来控制顶点色模式,这套API在后续版本迭代中被简化废弃,不再使用常量传值。

顶点色效果正确实现方式

只需要修改两处代码即可,其余顶点色数据写入的逻辑不需要调整:

  • 删掉顶部import导入块中对VertexColors的引入项,不需要再导入这个不存在的常量。
  • 修改PointsMaterial初始化配置中的vertexColors字段,直接传入布尔值true即可开启顶点色渲染,修改后的材质代码如下:
const pointMaterial = new PointsMaterial({
    size: 0.1,
    map : circleTexture,
    alphaTest: 0.01,
    transparent: true,
    vertexColors : true,
});

修改完成后保存刷新,你之前写的随机顶点色数据就会正常生效,渲染出彩色的粒子点效果。

注意:r150之后的Three.js版本已经完全删除了旧顶点色常量的所有兼容逻辑,只要代码中存在对VertexColors的引用就会直接抛出运行时错误,没有降级兼容方案。

内容的提问来源于stack exchange,提问作者tsukingo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 10:27:30