【小白学unity】上下左右移动+跳跃

1. 找到一个棒棒糖图片,拖入到unity中。

2. 将棒棒糖拖入到场景中,重命名为lolipop。

3. 给lolipop添加一个Rigidbody2D组件。

4. 创建一个C#脚本LolipopController.cs,并将其添加到lolipop游戏对象上。

5. 运行游戏, 棒棒糖由于Rigidbody2D的Body Type值为Dynamic,会自动往下掉落。

6. 按下W/S/A/D键可以左右移动棒棒糖了,按下O键可以弹跳了。

// using System.Numerics;
using UnityEngine;


public class LolipopController : MonoBehaviour
{
    public float jumpForce = 5f;  // 跳跃力度
    public float moveSpeed = 2f;  // 移动速度

    private Rigidbody2D rb2d;

    void Start()
    {
        // 获取 Rigidbody2D 组件
        rb2d = GetComponent();
    }

    void Update()
    {
        // 跳跃
        if (Input.GetKeyDown(KeyCode.O))
        {
            Jump();
        }

        // 左移
        if (Input.GetKey(KeyCode.A))
        {
            Move(Vector2.left);
        }

        // 右移
        if (Input.GetKey(KeyCode.D))
        {
            Move(Vector2.right);
        }

        // 上移
        if (Input.GetKey(KeyCode.W))
        {
            Move(Vector2.up);
        }
    }

    void Jump()
    {
        rb2d.velocity = new Vector2(rb2d.velocity.x, jumpForce);
    }

    void Move(Vector2 direction)
    {
        // 移动时乘以 Time.deltaTime 来使移动速度与帧速率无关
        transform.Translate(direction * moveSpeed * Time.deltaTime);
    }
}

你可能感兴趣的:(Unity,unity,游戏引擎)