放置和缩放物体(Mesh)
大小:
某些网格(如 box)具有可在创建过程中设置更改的属性。
const box = BABYLON.MeshBuilder.CreateBox("box", {width: 2, height: 1.5, depth: 3})
创建后,对于没有大小调整选项的网格,可以通过缩放网格来更改大小。
const box = BABYLON.MeshBuilder.CreateBox("box", {});
box.scaling.x = 2;
box.scaling.y = 1.5;
box.scaling.z = 3;
或是通过三位向量来修改缩放大小
const box = BABYLON.MeshBuilder.CreateBox("box", {}); //unit cube
box.scaling = new BABYLON.Vector3(2, 1.5, 3);
位置:
对于大多数网格,位置属性将网格的中心放置在该位置。位置也是具有属性 x、y 和 z 的矢量对象,因此以下两组代码将框定位在同一位置。
box.position.x = -2;
box.position.y = 4.2;
box.position.z = 0.1;
//使用三位向量设置物体位置,参数分别对应x,y,z
box.position = new BABYLON.Vector3(-2, 4.2, 0.1);
方向:
至于缩放和位置,网格的旋转属性是具有属性 x、y 和 z 的矢量对象。然而,在构建我们的第一个世界时,我们只会考虑围绕一个轴的旋转,因为围绕所有三个轴设置旋转可能会令人惊讶地令人困惑。
旋转以弧度表示。babylon.js提供了一个转换工具。这两行代码将产生相同的旋转。
//使用两种不同的方式旋转物体
box.rotation.y = Math.PI / 4;
box.rotation.y = BABYLON.Tools.ToRadians(45);