復習:発射台
CoddyのUnityジャーニー「物理演算とゲームプレイ」セクションの一部。レッスン 7/63。
チャレンジ
簡単プレイヤー(2 kg の Rigidbody)は地面に沿ってオレンジ色の発射台まで歩きます。その Transform は pad フィールドにあります。Jumper を作成してください。
- 左矢印キーと右矢印キーで、生の軸入力を使ってプレイヤーを x 方向に正確に
speedm/s(4)で移動させます。矢印キーを押していないときは停止し、重力は働き続けます。 - 発射台の上で Space キーを押すと、
launch(16)のインパルスでプレイヤーを真上に打ち上げます。これにより質量が考慮されます。プレイヤーの x 座標と発射台の x 座標との差が 1 未満の場合、プレイヤーは発射台の上にいます。それ以外の場所で Space キーを押しても何も起きません。 - Space キーを押した入力が失われないようにしてください。
Update()で入力を読み取り、物理処理はすべてFixedUpdate()で行います。
Play を押し、発射台まで歩いて乗ってから打ち上げ、次に Check を押してください。
自分で試してみよう
using UnityEngine;
public class Jumper : MonoBehaviour
{
public float speed = 4f;
public float launch = 16f;
public Transform pad;
private Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
}