当一个object3D对象的position或者rotation发生变化时,使用object3D对象的getWorldPosition()返回的世界坐标可能不正确。因为three.js的相对坐标改变后世界坐标默认不会自动更新,而是到了渲染时才更新。
解决办法:在更改相对坐标后,如果要马上获取其世界坐标或者子对象的世界坐标,首先要调用object3D对象的updateMatrixWorld()强制更新世界坐标。然后获取的世界坐标才是正确的。
当在three.js中修改object3D对象的position或rotation时,需先调用updateMatrixWorld()来即时更新世界坐标,再获取正确的worldPosition。此操作确保了在坐标变化后立即能获得准确的世界坐标值。
当一个object3D对象的position或者rotation发生变化时,使用object3D对象的getWorldPosition()返回的世界坐标可能不正确。因为three.js的相对坐标改变后世界坐标默认不会自动更新,而是到了渲染时才更新。
解决办法:在更改相对坐标后,如果要马上获取其世界坐标或者子对象的世界坐标,首先要调用object3D对象的updateMatrixWorld()强制更新世界坐标。然后获取的世界坐标才是正确的。
2732
376
6230

被折叠的 条评论
为什么被折叠?
