Babylon.js中的球体旋转

问题描述 投票:0回答:1

我想就使用Babylon.js框架的旋转问题寻求帮助。

我需要球体旋转45度,正好与对角线圆对齐,而对角线圆的方向是45度,但我没有得到它。

我做的代码在下面的链接中。https:/codepen.iopolalaspenVwvaKwL

负责旋转的方法是循环()方法,每次渲染场景时都会触发。

function loop () {
    var y1 = scene.getMeshByName("I1");
    y1.rotation.y - = 0.01 * Math.sin (Math.PI / 4);
    y1.rotation.x - = 0.01 * Math.sin (Math.PI / 4);
}

我想是我对旋转处理不当。谁能帮帮我,好吗?

javascript graphics 3d babylonjs
1个回答
0
投票

使用你的代码,最好的方法是首先旋转球体的父体(你所谓的 newMesh (或 I1))在添加球体作为子球之前,围绕Z轴旋转45度。

newMesh.rotate(BABYLON.Axis.Z, Math.PI / 4);

之后,你可以在渲染循环中围绕它的 Local (!) X 轴旋转。

function loop(){
    var y1 = scene.getMeshByName("I1");
}

这样你就能得到一个围绕你的(模拟的)枢轴的完美旋转。

© www.soinside.com 2019 - 2024. All rights reserved.