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

Другие вопросы по тегам