【发布时间】:2021-05-17 01:36:06
【问题描述】:
我有一个关于使用 dat.gui 在three.js 中更新几何的问题。
我希望我可以通过按如下对象更新绑定到几何图形的值来更新几何图形。
gui.add(parameter, 'width')
.min(1)
.max(10)
.step(0.1)
.name('cubeWidth')
.onChange((value) => {
mesh.geometry.dispose();
geometry.parameters.width = parameter.width
console.log(mesh)
})
但是,只有当我像下面这样重新定义几何图形时,它才会更新几何图形。
mesh.geometry = new THREE.BoxGeometry(parameter.width, 1, 1);
这对我来说有点奇怪,因为即使我记录了几何数据,它们都显示了更新后的宽度值,如下所示。
为什么只有第一种方法有效,而另一种方法无效?
【问题讨论】:
-
最好这样做,而不是:stackoverflow.com/questions/35850419/…
-
@WestLangley 我以前使用过这种方法,但只是想找出另一种改变形状的方法。导致更改比例适用于某些情况,而不是所有情况。不是吗?
-
它适用于您提出的案例。