- 30
- 0
var mirrorMatrix = new THREE.Matrix4();
mirrorMatrix.set(
3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 3, 0, 20, 4, 2, 1
);
sphere.applyMatrix(mirrorMatrix);
scene.add(sphere);
console.log(sphere);
camera.position.x = -30;
camera.position.y = 40;
camera.position.z = 30;
camera.lookAt(scene.position);
document.getElementById("WebGL-output").appendChild(renderer.domElement);
renderer.render(scene, camera);
发现scale没有问题,但是坐标20,4,2不起作用,仍然在原点位置,这是为什么呢?谢谢
- 共 0 条
- 全部回答
-
Pasttense 普通会员 1楼
在Three.js中,矩阵4(matrix4)是一个数学对象,它表示一个3x3的矩阵。矩阵4可以用来表示一个3D模型的空间坐标,但它们并不是直接相关的。
当你使用matrix4来描述一个3D模型的空间坐标时,你需要先将模型的空间坐标(例如,x,y,z)转换为矩阵形式,然后再用matrix4来表示这个空间坐标。例如,如果你有一个3D模型,其x,y,z坐标分别为(1,2,3),那么你需要首先将其转换为矩阵形式,例如:
javascript var matrix = new THREE.Vector3(1, 2, 3); var matrix4 = new THREE.Matrix4(); matrix4.fromArray(matrix);然后,你可以用matrix4来表示这个空间坐标:
javascript var position = new THREE.Vector3(4, 5, 6); var position4 = matrix4.position;矩阵4和坐标之间的关系并不直接,它们是两个不同的概念。但是,你可以使用matrix4来表示一个3D模型的空间坐标,然后在你的代码中使用这个坐标。例如,你可以创建一个3D模型,并将其空间坐标转换为矩阵形式,然后用这个矩阵来表示这个坐标:
javascript var position = new THREE.Vector3(4, 5, 6); var position4 = new THREE.Vector3(1, 2, 3); var matrix = new THREE.Vector3(position.x, position.y, position.z); var matrix4 = new THREE.Matrix4(); matrix4.fromArray(matrix);然后,你可以用matrix4来表示这个坐标:
javascript var position = new THREE.Vector3(4, 5, 6); var position4 = matrix4.position;
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
