作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试克隆然后缩放网格,但缩放似乎并没有立即在克隆的对象上起作用,出于使用 CSG ThreeBSP 进行编程的目的。我想我应该在缩放后调用一个函数来强制矩阵或其他内部变量立即重新计算,而不是等待渲染端的完整更新循环。
我的代码看起来像这样:
var someMesh2 = someMesh1.clone();
someMesh2.scale.set(2,2,2);
someProgrammingOperation(someMesh2);
//It turns out that internally, someMesh2 still has the same properties (matrix?) as someMesh1 :(
我错过了什么?也欢迎提出建议:)
最佳答案
每当您调用 renderer.render()
时,渲染器都会为您更新
object.matrix
。
如果需要手动更新对象矩阵,调用
object.updateMatrix();
它会根据 object.position
、object.quaternion
和 object.scale 的当前值更新矩阵。
(请注意,object.rotation
和 object.quaternion
保持同步。当您更新一个时,另一个会自动更新。)
three.js r.84
关于javascript - Three.js:如何在克隆后强制更新矩阵? (与 CSG ThreeBSP 一起使用),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42355049/
我正在尝试克隆然后缩放网格,但缩放似乎并没有立即在克隆的对象上起作用,出于使用 CSG ThreeBSP 进行编程的目的。我想我应该在缩放后调用一个函数来强制矩阵或其他内部变量立即重新计算,而不是等待
仅当我在倒数第二行中使用 MeshNormalMaterial 时,骰子才看起来像骰子 (result = resultBSP.toMesh(materialNormal);)。对于任何其他 Mate
我是一名优秀的程序员,十分优秀!