Unity3D如何用脚本旋转物体(多种方式旋转)

关于旋转物体:
第一种:Rotate(vector,中心点);有两个参数:
第一个参数是需要旋转的方向+速率,第二个参数是指旋转选择的中心(第二个参数可带可不带,默认以自己为中心)

transform.Rotate(x,y,z):以自身坐标系为参考,而不是世界坐标系,分别以x度y度z度绕X轴、Y轴、Z轴匀速旋转
transform.Rotate(vector3,Space.Self):以自身坐标系为参考
Transform.Rotate(vector3,Space.World):以世界坐标系为参考
放在Updata会出现每帧都在旋转

第二种:rotation = rotation;看等号就知道是用来赋值的
transform.rotation = Quaternion.Euler(new Vector3(x, y, z));
这样就能改变物体的角度
放在Updata会出现也不会每帧旋转,因为说了这是赋值
如何使它旋转呢?
例如:
在这里插入图片描述

第三种:transform.localEulerAngles = new Vector3(x, y, z);看等号就知道是用来赋值的
这段代码就可以实现赋值旋转了
放在Updata会出现也不会每帧旋转,因为说了这是赋值
如何使它旋转呢?ctrl+V:(逐渐枯燥)
例如:
在这里插入图片描述
第四种:transform.eulerAngles = new Vector3(x,y,z)
是赋值
要旋转:
在这里插入图片描述
第五种:transform.localRotation=Quaternion.Euler(x,y,z)
在这里插入图片描述

逐渐简化~~
你应该能懂的~~

**第六种:transform.RotateAround(Vector3 point, Vector3 axis, float angle); **
//做了个蝴蝶
在这里插入图片描述
Wing.RotateAround(father.position,Vector3.up,45);
//2D蝴蝶,围绕旋转的物体时一个平面,比蝴蝶翅膀大,运行之后非常好看
transform.RotateAround(Vector3 point, Vector3 axis, float angle)
Vector3 point ==围绕旋转的中心点。
Vector3 axis == 旋转时,所绕的轴,如果是Vector3.up/down,是Y轴,是left/right是X轴。
float angle == 每次旋转的角度。

  • 19
    点赞
  • 133
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值