verticesNeedUpdate в Three.js
Я хочу использовать dat.GUI для управления координатами вершин сетки.
Сначала я думал, что мог бы удалить все кадры своих сеток, чтобы воссоздать их заново, но потом я увидел, что это не очень хороший способ.
Нужно ли использовать verticesNeedUpdate? Вроде нет на документации Three.js
1 ответ
Решение
Если ваша геометрия THREE.Geometry
, тогда вы можете обновить вершины, используя шаблон так:
geometry.vertices[ 0 ].set( x, y, z );
geometry.verticesNeedUpdate = true;
Если ваша геометрия THREE.BufferGeometry
тогда вы можете использовать этот шаблон:
geometry.attributes.position.setXYZ( index, x, y, z );
geometry.attributes.position.needsUpdate = true;
В любом случае вам нужно только установить needsUpdate
флаг, если геометрия была ранее отрендерена.
Кроме того, вы не можете изменить размер буферов; Вы можете только изменить значения данных. См. Статью Wiki Как обновить вещи для получения дополнительной информации.
three.js r.85