I want to use dat.GUI to manipulate the coordinates of a mesh vertices.
At first I thought I could have removed every frame my meshes to recreate them anew, but then I saw here that it's not a good way.
Is verticesNeedUpdate that I should use? It seems not to be on Three.js documentation
I want to use dat.GUI to manipulate the coordinates of a mesh vertices.
At first I thought I could have removed every frame my meshes to recreate them anew, but then I saw here that it's not a good way.
Is verticesNeedUpdate that I should use? It seems not to be on Three.js documentation
Share Improve this question edited May 23, 2017 at 11:53 CommunityBot 11 silver badge asked Apr 18, 2016 at 16:23 Ph1Ph1 3511 gold badge5 silver badges14 bronze badges1 Answer
Reset to default 6If your geometry is THREE.Geometry
, then your can update the vertices by using a pattern like so:
geometry.vertices[ 0 ].set( x, y, z );
geometry.verticesNeedUpdate = true;
If your geometry is THREE.BufferGeometry
, then you can use this pattern:
geometry.attributes.position.setXYZ( index, x, y, z );
geometry.attributes.position.needsUpdate = true;
In either case, you only need to set the needsUpdate
flag if the geometry has been previously-rendered.
Also, you cannot resize buffers; you can only change the data values. See the Wiki article How to Update Things for additional information.
three.js r.85