Edgeshelper 不更新网格的位置
Edgeshelper not updating position of mesh
我想画一个有颜色的盒子,包括边缘(用不同的颜色)
这是我用来创建框和边的代码。我已将它们都添加到 object3D 中,因为我将在场景中有许多不同的对象并希望强制封装。
var mesh = new THREE.Mesh( geo, material );
var edge = new THREE.EdgesHelper( mesh, 0xffffff );
var container = new THREE.Object3D();
container.add(mesh);
container.add(edge);
scene.add(container);
上面发布的代码有效并产生了这个:
但是当我像这样改变父对象的位置时:
container.position.set(0,30,0);
只移动了边缘。为什么?
将 .updateMatrix() 添加到容器、网格或边缘对象似乎不会产生不同的结果。
如何移动父对象,包括它的所有子对象?
您需要直接将助手添加为场景的子项。
这是由于许多助手中出现了以下几行:
this.matrix = object.matrixWorld;
this.matrixAutoUpdate = false;
three.js r.70
我想画一个有颜色的盒子,包括边缘(用不同的颜色) 这是我用来创建框和边的代码。我已将它们都添加到 object3D 中,因为我将在场景中有许多不同的对象并希望强制封装。
var mesh = new THREE.Mesh( geo, material );
var edge = new THREE.EdgesHelper( mesh, 0xffffff );
var container = new THREE.Object3D();
container.add(mesh);
container.add(edge);
scene.add(container);
上面发布的代码有效并产生了这个:
但是当我像这样改变父对象的位置时:
container.position.set(0,30,0);
只移动了边缘。为什么?
将 .updateMatrix() 添加到容器、网格或边缘对象似乎不会产生不同的结果。
如何移动父对象,包括它的所有子对象?
您需要直接将助手添加为场景的子项。
这是由于许多助手中出现了以下几行:
this.matrix = object.matrixWorld;
this.matrixAutoUpdate = false;
three.js r.70