유니티 C# 인스펙터에서 드래그로 값 조절하는 방법 예시 코드 작성

반응형

유니티 C# 인스펙터에서 드래그로 값 조절하는 방법 예시 코드 작성

using UnityEngine;

public class PlayerController : MonoBehaviour
{
    [Header("Movement Settings")]
    [SerializeField] private float moveSpeed = 5f; // 이동 속도
    [SerializeField] private float jumpForce = 10f; // 점프 힘

    private Rigidbody2D rb;

    void Start()
    {
        rb = GetComponent<Rigidbody2D>();
    }

    void Update()
    {
        Move();
        Jump();
    }

    void Move()
    {
        float moveInput = Input.GetAxis("Horizontal");
        rb.velocity = new Vector2(moveInput * moveSpeed, rb.velocity.y);
    }

    void Jump()
    {
        if (Input.GetButtonDown("Jump") && Mathf.Abs(rb.velocity.y) < 0.001f)
        {
            rb.AddForce(Vector2.up * jumpForce, ForceMode2D.Impulse);
        }
    }
}

 


코드 설명

  1. 필드 선언:
    • moveSpeed와 jumpForce는 public 또는 [SerializeField]로 선언하여 인스펙터에서 드래그로 값 조절이 가능합니다.
    • [Header("Movement Settings")]는 인스펙터에서 그룹을 나누어 시각적으로 구분할 수 있게 해줍니다.
  2. Rigidbody2D 컴포넌트:
    • Start() 메서드에서 Rigidbody2D 컴포넌트를 가져옵니다.
  3. Update() 메서드:
    • Move()와 Jump() 메서드를 호출하여 플레이어를 이동시키고 점프시킵니다.
  4. 이동과 점프:
    • Move() 메서드는 수평 입력을 받아 Rigidbody2D의 속도를 설정합니다.
    • Jump() 메서드는 점프 버튼이 눌렸을 때 점프를 하도록 설정합니다.

 

사용법

  1. 유니티 에디터에서 빈 게임 오브젝트를 생성하고 Rigidbody2D 컴포넌트를 추가합니다.
  2. 위의 PlayerController 스크립트를 추가합니다.
  3. 인스펙터에서 moveSpeed와 jumpForce 값을 드래그하여 조정할 수 있습니다.
  4. Play 모드에서 키 입력으로 캐릭터를 이동하고 점프할 수 있습니다.
반응형