【发布时间】:2019-01-07 09:24:20
【问题描述】:
假设我在场景中有一个父对象和父对象的 n 个子对象。
编辑:添加了网格创建代码(假设我有一个基本场景和相机设置)
父组创建:
var geometry = new THREE.PlaneGeometry( 0, 0 );
var surface = new THREE.Group();
surface.geometry = geometry;
子网格:
surface.add(new Sprite());
scene.add(surface);
有没有办法我可以只为子级忽略父级的变换矩阵(但保持其作为父级的变换不变)?
我知道matrixAutoUpdate = false; 让我可以手动更新孩子的变换矩阵,但它仍然应用父变换矩阵。
我想为孩子们完全忽略它,但仍然能够保留其世界变换并提取其旋转、平移和缩放值。
【问题讨论】:
-
您能否分享您为获得更好答案而创建的网格的代码。
-
是的,我已经发布了网格创建代码。
-
这是一个组,而不是一个网格! threejs.org/docs/#api/objects/Group请先去这个链接。
-
你为什么要这样做?为什么不将曲面创建为独立网格?如果表面打算独立于其他对象(精灵)进行变换,那么它应该独立于它们。
-
我想提取并有选择地将某些特征从父级应用到子级...我不想应用整个转换矩阵,我想制作一个自定义矩阵,我可以在其中选择和提取父母的特征并将它们应用到孩子身上,这不是 Three.js 为我完成的
标签: javascript matrix three.js transform