キーを押している間はオブジェクトが浮き上がり、離すと落下していく仕組みをつくりましょう。
何もしなければ重力によって落ちていきますが、Spaceキーを押している間は、重力に逆らって浮上していきます。
関連記事:
AddForceを使ったジャンプとvelocityによるジャンプ
重力に逆らって上昇する
落下スピードをランダムにする
重力に逆らって浮上
Cubeを作成して、リジッドボディを追加します。
CubeUp.csを作成して、Cubeに追加します。
CubeUp.csを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CubeUp : MonoBehaviour { Rigidbody rb; private float jumpSpeed; void Start() { jumpSpeed = 2; rb = GetComponent<Rigidbody>(); } void Update() { if(Input.GetKey(KeyCode.Space)) { rb.velocity = new Vector3(rb.velocity.x, jumpSpeed, rb.velocity.z); } } } |
ゲームプレイして、スペースキーを押してみましょう。
キーを押している間、重力に逆らってCubeは浮上しますが、キーを離すと落下していきます。
関連記事:
AddForceを使ったジャンプとvelocityによるジャンプ
重力に逆らって上昇する
落下スピードをランダムにする