Unity3D 控制物體移動 旋轉 縮放

2022-09-19 20:42:11 字數 1785 閱讀 1650

1.指定方向移動:

//移動速度 

float translatespeed = 10f;

表示「向前」

transform.translate(vector3.forward *translatespeed);

2.全方向移動:

//x軸移動速度移動速度 

float xspeed = -5f;

//z軸移動速度移動速度

float zspeed = 10f;

//向x軸移動xspeed,同時想z軸移動zspeed,y軸不動

transform.translate(xspeed,0,zspeed);

3.重置座標:

//x軸座標 

float xpostion = -5f;

//z軸座標

float zpostion = 10f;

//直接將當前物體移動到x軸為xpostion,y軸為0,z軸為zpostion的三維空間位置。

transform.position = vector3(xpostion,0,zpostion);

輸入控制:

1.輸入指定按鍵:

//按下鍵盤「上方向鍵」

if(input.getkey ("up"))

print("up!");

//按下鍵盤「w鍵」

if(input.getkey(keycode.w);)

print("w!");

2.滑鼠控制

//按下滑鼠左鍵(0對應左鍵 , 1對應右鍵 , 2對應中鍵) 

if(input.getmousebutton(0))

print("mouse down!");

input.getaxis("mouse x");//滑鼠橫向增量(橫向移動) 

input.getaxis("mouse y");//滑鼠縱向增量(縱向移動)

3.獲取軸:

//水平軸/垂直軸 (控制器和鍵盤輸入時此值範圍在-1到1之間)

input.getaxis("horizontal");//橫向

input.getaxis ("vertical");//縱向

按住滑鼠拖動物體旋轉和自定義角度旋轉物體:

float speed = 100.0f;

float x;

float z;

void update () else

//旋轉角度(增加)

transform.rotate(new vector3(x,y,0));

/**---------------其它旋轉方式----------------**/

*time.deltatime * speed);//繞y軸 旋轉

//用於平滑旋轉至自定義目標

pinghuaxuanzhuan();

}//平滑旋轉至自定義角度

void ongui()

}bool iszhuan= false;

quaternion targetrotation;

void pinghuaxuanzhuan()

}

鍵盤控制物體縮放:

float speed = 5.0f;

float x;

float z;

void update ()

Unity3D 物體移動方式總結

在unity3d中,有多種方式可以改變物體的座標,實現移動的目的,其本質是每幀修改物體的position。transform 元件用於描述物體在空間中的狀態,它包括 位置 position 旋轉 rotation 和 縮放 scale 其實所有的移動都會導致position的改變,這裡所說的通過tr...

Unity3D 物體移動方式總結

在unity3d中,有多種方式可以改變物體的座標,實現移動的目的,其本質是每幀修改物體的position。transform 元件用於描述物體在空間中的狀態,它包括 位置 position 旋轉 rotation 和 縮放 scale 其實所有的移動都會導致position的改變,這裡所說的通過tr...

Unity3D 物體移動方式總結

在unity3d中,有多種方式可以改變物體的座標,實現移動的目的,其本質是每幀修改物體的position。transform 元件用於描述物體在空間中的狀態,它包括 位置 position 旋轉 rotation 和 縮放 scale 其實所有的移動都會導致position的改變,這裡所說的通過tr...