본문 바로가기
개발/C#

유니티 C# 물리 AddForce 간단 사용법

by SPNK 2022. 12. 22.
반응형
  • 코드 작성
using UnityEngine;

public class Example : MonoBehaviour
{
    // Rigidbody 컴포넌트
    Rigidbody rb;

    // 힘의 크기를 조절하는 변수
    public float forceAmount = 10.0f;

    void Start()
    {
        // Rigidbody 컴포넌트 가져오기
        rb = GetComponent<Rigidbody>();
    }

    void Update()
    {
        // "Jump" 키를 누르면 힘을 적용
        if (Input.GetKeyDown(KeyCode.Space))
        {
            // Rigidbody에 지속적인 힘을 가함
            rb.AddForce(transform.forward * forceAmount, ForceMode.Force);
        }

        // "Fire1" 키를 누르면 순간적인 힘을 적용
        if (Input.GetButtonDown("Fire1"))
        {
            // Rigidbody에 순간적인 힘을 가함
            rb.AddForce(transform.up * forceAmount, ForceMode.Impulse);
        }

        // "Fire2" 키를 누르면 지속적인 가속도를 적용
        if (Input.GetButtonDown("Fire2"))
        {
            // Rigidbody에 지속적인 가속도를 가함
            rb.AddForce(transform.right * forceAmount, ForceMode.Acceleration);
        }

        // "Fire3" 키를 누르면 순간적인 속도 변화를 적용
        if (Input.GetButtonDown("Fire3"))
        {
            // Rigidbody에 순간적인 속도 변화를 가함
            rb.AddForce(transform.forward * forceAmount, ForceMode.VelocityChange);
        }
    }
}
반응형

댓글