ボールをコントロールする Unity シンプルな小さなゲーム (2)

Rigidbody 剛体コンポーネント: 物理プロパティを追加

前回 Rigidbody 剛体コンポーネントをボールに追加した後、ボールを地面から y 軸方向にドラッグすると、ゲームの実行後、ボールは重力が適用されているかのように地面に落ちます。

 C# スクリプト コード

前回追加したスクリプトをプレーヤーにドラッグして、コードがゲーム オブジェクトを制御できるようにします。次に、ダブルクリックしてスクリプトを開きます。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class player : MonoBehaviour
{
    private Rigidbody rd;
    // Start is called before the first frame update
    void Start()
    {
        rd = GetComponent<Rigidbody>();
    }

    // Update is called once per frame
    void Update()
    {
        rd.AddForce(new Vector3(1,0,0));
    }
}

上の図のコードは、ゲーム オブジェクトの剛体コンポーネントを取得し、それを rd に割り当てることができます。x の正の軸に大きさ 1 で力を適用します。コードを保存してゲームを実行すると、ボールがゆっくりと右に移動することがわかります (左に移動し、コードの x 位置の値を -1 に変更し、z 軸を前後に変更します)。

上記は、最初はボールが勝手に動くということなので、ボールの動きをキーボードで操作したい場合は、更新時に数行のコードを追加して修正する必要があります。次のように、

        float h = Input.GetAxis("Horizontal");
        float v = Input.GetAxis("Vertical");
        rd.AddForce(new Vector3(h,0,v));

Horizo​​ntal はユーザーのキーを取得し、左右の動きを制御できます (AD キーによって制御されます); Vertical は前後の動きを制御できます (WS キーによって制御されます)。速度が遅すぎると思われる場合は、* などの後ろの値

        rd.AddForce(new Vector3(h,0,v)*5);

これにより、はるかに速く移動します。

カメラアングルの調整 

Hierarchy ウィンドウで Main Camera を選択し、左上隅の 2 番目の座標パターン ボタンをクリックしてカメラの位置を調整し、左上隅の 3 番目のボタンをクリックしてカメラの角度を調整します。右下隅の小さなウィンドウは、調整後のゲーム実行のパースペクティブです。

壁を追加

キューブ ゲーム オブジェクトを作成し、その座標をリセットし、Z 軸を地面の幅に設定して、地面の境界に移動します。調整後、ctrl+D でゲーム オブジェクトをコピーし、壁を地面の反対側にドラッグできます。

次に、コピーを 2 回続けて 90 度回転し (右の Rotation y 軸入力 90)、適度に調整して、きちんと美しく見えるようにします。壁があるので、走っている遊技球が境界から飛び出しません。

 インターフェイスを整然と保つために、すべてのキューブは地面に配置されます。

 

Supongo que te gusta

Origin blog.csdn.net/qq_64573579/article/details/127521908
Recomendado
Clasificación