分享

11、使某个对象绕着某一个轴,旋转。

 雪柳花明 2016-09-09


使对象绕某个轴旋转,用的是Transform.Rotate方法。

该方法有几个参数重载。


Transform.Rotate 旋转

三维矢量,欧拉角。

function Rotate (eulerAngles : Vector3relativeTo : Space = Space.Self) : void

Description描述

Applies a rotation of eulerAngles.z degrees around the z axis, eulerAngles.x degrees around the x axis, and eulerAngles.y degrees around the y axis (in that order).

应用一个欧拉角的旋转角度,eulerAngles.z度围绕z轴,eulerAngles.x度围绕x轴,eulerAngles.y度围绕y轴(这样的顺序)。

If relativeTo is left out or set to Space.Self the rotation is applied around the transform's local axes. (The x, y and z axes shown when selecting the object inside the Scene View.) If relativeTo is Space.World the rotation is applied around the world x, y, z axes.

如果相对于留空或者设置为Space.Self 旋转角度被应用围绕变换的自身轴。(当在场景视图选择物体时,x、y和z轴显示)如果相对于 Space.World 旋转角度被应用围绕世界的x、y、z轴。

function Update() {
	// Slowly rotate the object around its X axis at 1 degree/second.
	//沿着x轴每秒1度慢慢的旋转物体
	transform.Rotate(Vector3.right * Time.deltaTime);

	// ... at the same time as spinning relative to the global
	// Y axis at the same speed.
	//相对于世界坐标沿着y轴每秒1度慢慢的旋转物体
	transform.Rotate(Vector3.up * Time.deltaTime, Space.World);
}


各个轴向的角度旋转。

· function Rotate (xAngle : float, yAngle : float, zAngle : float, relativeTo : Space = Space.Self) : void

Description描述

Applies a rotation of zAngle degrees around the z axis, xAngle degrees around the x axis, and yAngle degrees around the y axis (in that order).

应用一个旋转角度,zAngle度围绕z轴,xAngle度围绕x轴,yAngle度围绕y轴(这样的顺序)。

If relativeTo is left out or sot to Space.Self the rotation is applied around the transform's local axes. (The x, y and z axes shown when selecting the object inside the Scene View.) If relativeTo is Space.World the rotation is applied around the world x, y, z axes.

如果相对于留空或者设置为Space.Self 旋转角度被应用围绕变换的自身轴。(当在场景视图选择物体时,x、y和z轴显示)如果相对于 Space.World 旋转角度被应用围绕世界的x、y、z轴。

function Update() {
	// Slowly rotate the object around its X axis at 1 degree/second.
	//围绕x轴每秒1度,慢慢的旋转物体
	transform.Rotate(Time.deltaTime, 0, 0);

	// ... at the same time as spinning it relative to the global
	// Y axis at the same speed.
	//相对于世界坐标,围绕y轴每秒1度,慢慢的旋转物体
	transform.Rotate(0, Time.deltaTime, 0, Space.World);
}


绕着某个轴,按照多少角度旋转。

· function Rotate (axis : Vector3angle : float, relativeTo : Space = Space.Self) : void

Description描述

Rotates the transform around axis by angle degrees.

按照angle度围绕axis轴旋转变换。

If relativeTo is left out or set to Space.Self the axis parameter is relative to the transform's local axes. (The x, y and z axes shown when selecting the object inside the Scene View.) If relativeTo is Space.World the axis parameter is relative to the world x, y, z axes.

如果相对于留空或者设置为Space.Self 旋转角度被应用围绕变换的自身轴。(当在场景视图选择物体时,x、y和z轴显示)如果相对于 Space.World 旋转角度被应用围绕世界的x、y、z轴。

function Update() {
	// Slowly rotate the object around its X axis at 1 degree/second.
	//围绕x轴每秒1度,慢慢的旋转物体
	transform.Rotate(Vector3.right, Time.deltaTime);

	// ... at the same time as spinning it relative to the global
	// Y axis at the same speed.
	//相对于世界坐标,围绕y轴每秒1度,慢慢的旋转物体
	transform.Rotate(Vector3.up, Time.deltaTime, Space.World);
}



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多