[]怎么让模型原地依照Y轴旋转到 我指定的角度? 角度 如何 转换成 Y轴旋转 的四元数?

请问 怎么让模型原地依照Y轴旋转到 我指定的角度?
角度 如何 转换成 Y轴旋转 的四元数?
已邀请:

Monica - 知识达人

赞同来自: 183*****755

rotate是方法,只要调用角度就会发生改变,你可以直接调localRotationEuler属性改变它的角度。使用这个方法就可以直接把第二个问题绕开了。
var t:Transform3D;
t.localRotationEuler = new Vector3(0, 45, 0);
不过在这里还是贴一下使用代码:
var q:Quaternion = new Quaternion();
Quaternion.createFromYawPitchRoll(45,0,0,q);
 

avpvsdoom

赞同来自:

box.transform.rotate(new Vector3(0,45,0),true,false);
我知道 这个方法可以旋转 但是这个方法不能写在 Laya.timer.loop 的回调方法里面 如果要按照这么写的话 模型就疯狂的旋转 所以我没用这个方法 我是在 Laya.timer.loop 的回调方法里算出的旋转角度 这个角度会实时更新 所以不能用 box.transform.rotate 这个方法 我只能用
fish.transform.rotation = quaternion 这个方法 实时更新 旋转角度 我就是想问 给定 一个 Y轴旋转角度 怎么去填写
new Laya.Quaternion(0,y,0,w) 里面的 y 和 w 这两个值是 怎么通过角度算出来的。
 
再次说明 我知道box.transform.rotate这个方法可以旋转, 以上就是我不能用这个方法的原因。
其他引擎都是有 rotationX rotationY rotationZ 这些属性 直接给弧度值 模型就按照相对应 XYZ 轴给定的弧度值旋转了 可是 LayaBox 里面没有这些属性 要想实现我上面的功能 只能用 四元数 Quaternion 去实现!
 
我就是想问 怎么通过给定轴的角度 去转换成四元数里面的 x,y,z,w ! 你们的帮助文档里面也没有关于 四元数操作的的例子!
 
最关键的问题 不做解答 ~~~~~~~~~~~~~~~~~~

不做解答也行 能不能出个视频教程 也让我们不是很懂四元数的学习学习 付费视频教程也行啊 可是目前什么都没有 API文档 写的也是 要多简单有多简单 多一句都不带提的!

下面摘自API文档
Parameters
x:Number (default = 0) — 四元数的x值
y:Number (default = 0) — 四元数的y值
z:Number (default = 0) — 四元数的z值
w:Number (default = 1) — 四元数的w值

总结 就是 四个 四元数的 值...................................................

careylwq

赞同来自:

laya的局限性太大了,深感无力,很多问题都没人解答,得不到解决方法

要回复问题请先

商务合作
商务合作