我正在使用 react-three-fiber,但无法更新mesh
和vertex
显示颜色。即使我执行了以下所有步骤,我的网格颜色也保持不变:
我有以下代码创建一个mesh
:
const material = new THREE.MeshBasicMaterial({
color: 0xffffff,
transparent: true,
opacity: 0.5,
wireframe: false,
side: THREE.DoubleSide,
vertexColors: true,
});
const mesh = new THREE.Mesh(curvedGeometry, material);
然后我使用primitive
组件渲染该网格
<primitive object={mesh} />
稍后,我更改了该网格中的面和顶点颜色。这样所有的顶点和面都有下图中的颜色值:
最后,我像这样将几何上的 colorsNeedUpdate 值设置为 true
polygonMesh.geometry.colorsNeedUpdate = true;
代码沙箱链接在这里:https ://codesandbox.io/s/change-vertex-colors-old-rz82v?runonclick=1&file=/src/index.tsx:665-673