Unityの簡単なモバイル実装(四)
5195 ワード
レビュー
Unityの簡単な移動実装(3)では,新しい機能しゃがみとジャンプを実現し,それによっていくつかの「特性」が現れ,そのためにこれらの「特性」を修正する.
リカバリ
前回のキャラクターはしゃがみ込みの効果があったのですが、立ち上がれなかったので、今回はキャラクターを元に戻す方法を書きます.
ここでは、移動係数を通常の倍数に戻し、衝突ボックスの高さをしゃがみ込む前の高さに戻し、直接数字を書きたくない場合は、floatデータを1つ保存して、使いたい場合は直接呼び出すことができます.簡単な移動なので、キャラクタ衝突ボックスを変更する必要はありません.そのため、定値を直接使用します.
回転
回転にはキャラクタの回転と視点の回転があり、一般的にキーボードがキャラクタ本体の回転を制御し、マウスが視点(カメラ)の回転を制御するので、私たちもこのように実現します.
考え方も計算してから変えて、キャラクターの回転を実現します.
まとめ
今回はキャラクターを復元する方法を追加して、キャラクターが走るとしゃがみ込むと元に戻るようにして、またキャラクターの回転の方法を追加して、基本的に私たちの簡単な移動スクリプトはここで終わります.私は総集編でこのスクリプトを見せて、大きな経験をまとめます.次の編で会いましょう.
Unityシンプルなモバイル実装(総集編)
Unityの簡単な移動実装(3)では,新しい機能しゃがみとジャンプを実現し,それによっていくつかの「特性」が現れ,そのためにこれらの「特性」を修正する.
リカバリ
前回のキャラクターはしゃがみ込みの効果があったのですが、立ち上がれなかったので、今回はキャラクターを元に戻す方法を書きます.
//
public void Recovery()
{
MoveCoefficient = 1.0f; //
PlayerCollider.height = 0.18f; //
}
ここでは、移動係数を通常の倍数に戻し、衝突ボックスの高さをしゃがみ込む前の高さに戻し、直接数字を書きたくない場合は、floatデータを1つ保存して、使いたい場合は直接呼び出すことができます.簡単な移動なので、キャラクタ衝突ボックスを変更する必要はありません.そのため、定値を直接使用します.
回転
回転にはキャラクタの回転と視点の回転があり、一般的にキーボードがキャラクタ本体の回転を制御し、マウスが視点(カメラ)の回転を制御するので、私たちもこのように実現します.
public GameObject Head;// ( )
public float HeadRotionSpeed;//
public float BodyRotionSpeed;//
public float MaxAngle;//
public float MinAngle;//
float Angle;//
public void RotActor()
{
//
transform.eulerAngles += new Vector3(0, Input.GetAxis("Mouse X") * Time.deltaTime * BodyRotionSpeed, 0);
//
Angle += -Input.GetAxis("Mouse Y") * Time.deltaTime * HeadRotionSpeed;
Head.transform.eulerAngles = new Vector3(Mathf.Clamp(Angle, MinAngle, MaxAngle), transform.eulerAngles.y, transform.eulerAngles.z);
}
考え方も計算してから変えて、キャラクターの回転を実現します.
まとめ
今回はキャラクターを復元する方法を追加して、キャラクターが走るとしゃがみ込むと元に戻るようにして、またキャラクターの回転の方法を追加して、基本的に私たちの簡単な移動スクリプトはここで終わります.私は総集編でこのスクリプトを見せて、大きな経験をまとめます.次の編で会いましょう.
Unityシンプルなモバイル実装(総集編)