2025년, 코딩은 선택이 아닌 필수!

2025년 모든 학교에서 코딩이 시작 됩니다. 먼저 준비하는 사람만이 기술을 선도해 갑니다~

응용프로그래밍/유니티기초

[유니티기초]1-02. Rigidbody를 이용하여 오브젝트를 점프

파아란기쁨1 2022. 3. 28. 11:31
반응형
목표

물리와 관련된 Rigidbody 를 알아 보자.

 

 

이론

Rigidbody : 중력

 

- 속성

mass : 오브젝트의 질량

Linear drag : 위치 움직임에 따른 마찰력

Angular Drag : 회전 움직임에 따른 마찰력

Gravity Scale : 오브젝트 중력 계수(0으로 설정하면 아래로 떨어지지 않는다)

 

Constraints : 체크된 축은 물리력에 의해 이동,회전하지 않게 된다.

 

 

실습

 

새 프로젝트 생성 - 3D 선택 후 JumpTest

- 바닥과 점프 할 큐브 생성

1. 바닥 생성 - 하이라키에서 + 기호 눌러서 3D Object -> Plane 클릭 해서 객체 생성

2. 점프 할 큐브 생성 - 하이라키에서 + 기호 눌러서 3D Object -> Cube 클릭 해서 객체 생성

Positon 을 x:0,y:5,z:0 으로 설정

 

- 큐브에 중력 컴포넌트인 Rigidbody 추가 : Add Component 클릭하여 Rigidbody 검색해서 추가

 

- 실행해서 큐브가 바닥에 떨어지는 것을 확인하자.

 

 

- 큐브를 처음 시작하자 마자 점프 하는 코드를 넣자.

1. Assets 에서 우클릭 -> Create -> C# Script 클릭하여 생성된 파일 명 Jump로 변경

2. Jump.cs 를 다음과 같이 작성

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Jump : MonoBehaviour
{
    Rigidbody rb; //Rigidbody 를 연결할 변수 선언
    // Start is called before the first frame update
    void Start()
    {
        rb = GetComponent<Rigidbody>();  //자신의 Rigidbody 를 가져와서 rb에 연결
        rb.AddForce(0,500,0); // y 축으로 500 만큼 점프하자.
        
    }

    // Update is called once per frame
    void Update()
    {
        
    }
}

(

AddForce 로 y축의 값을 증가 해서 점프 하도록 한다.

Rigidbody 는 기본 컴포넌트라서 GetComponent 로 가져 올 수가 있다.

)

 

3. Jump 스크립트를 큐브에 연결하자.

큐브 선택하여 Jump 스크립트를 끌어서 인스펙터에 놓는다.

 

- 실행하자 마자 점프 하는 것을 확인 할 수 있다.

(Start 에서 한번만 수행한다. 나중에 키보드 입력을 받아서 점프를 할 수 있도록 수정해 보자.)

 

 

연습문제

스크립트를 이용하여 x축이나 y축으로 이동시켜 보자.

반응형