unity物體旋轉腳本
『壹』 unity3d中如何旋轉物體,但坐標軸卻不旋轉
1、打開unity3D軟體,點擊create創建一個新的javascript的腳本,初始內容如圖所示
『貳』 unity 如何讓物體繞自己的中心軸轉
1、打開unity3d在場景中創建一個球體。
『叄』 unity中如何讓物體以一定速度沿y軸旋轉90度
1,你可以做判斷,用transform.Rotate,當轉過90度後停止旋轉
2,用四元數的插值運算transform.rotation
=
Quaternion.Lerp(from.rotation,
to.rotation,
Time.time
*
speed);from.rotation在start獲取一下當前的rotation,to.rotation就是旋轉90度後的rotation
『肆』 unity,按下空格健,物體旋轉x軸旋轉30度,定在30度不動,松開空格健物體回到0度,腳本怎麼寫
void Update()
{
if (Input.GetKey(KeyCode.Space))
{
if (transform.localEulerAngles.x < 30)
this.transform.Rotate(new Vector3(1, 0, 0), 5f * Time.deltaTime);
else
this.transform.localEulerAngles = new Vector3(30,0,0);
}
else
{
if (transform.localEulerAngles.x > 0 && transform.localEulerAngles.x <= 30)
this.transform.Rotate(new Vector3(-1, 0, 0), 5f * Time.deltaTime);
else
this.transform.localEulerAngles = new Vector3(0, 0, 0);
}
}
『伍』 Unity3d C# 滑鼠點擊下物體,物體勻速旋轉180°,要看到旋轉過程,這個代碼怎麼寫
將我下面的腳本掛到場景中
創建目標物體Cube 這里使用射線檢測物體名字實現的
usingSystem.Collections;
usingSystem.Collections.Generic;
usingUnityEngine;
publicclassRotateCube:MonoBehaviour
{
boolstartRotate;
TransformaimCube;
floatspeed=1f;
voidUpdate()
{
if(Input.GetMouseButtonDown(0))
{
Rayray=Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHithit;
if(Physics.Raycast(ray,outhit,100))
{
if(hit.collider.gameObject.name=="Cube")
{
aimCube=hit.collider.transform;
startRotate=true;
}
}
}
if(startRotate&&aimCube.localEulerAngles.y<180)
{
aimCube.Rotate(Vector3.up*speed);
}
}
}