이번에는 물체에 물리를 적용시켜 자동으로 점프를 시켜보겠습니다.
우선 바닥을 만들어 줘야겠죠?
Hierarchy 밑에 + 클릭 -> 3D Object -> Plane 클릭
바닥을 만들었다면 이제 점프를 시킬 물체를 만들어야 합니다.
Hierarchy 밑에 + 클릭 -> 3D Object -> Cube 클릭
큐브를 생성하면 바닥에 겹치게 생성되는데 바닥 위로 위치를 옮겨줍시다.
이제 본격적으로 큐브를 점프 시켜줄 거예요.
우선 생성한 큐브를 물리적 큐브로 만들어줍시다.
큐브를 선택해 주시고 인 스펙터 창에서 맨 밑에 보면 Add component라는 버튼이 있는데, 이 버튼을 클릭해 주시고 입력란에 rigidbody 입력 후 Rigidbody를 클릭해 줍니다.
이제 물리 큐브에 점프를 적용시켜보겠습니다.
점프시키는 방법은 코딩으로 점프 스크립트를 만든 다음에 큐브에 적용시켜 주면 됩니다.
프로젝트 창에서 Create -> C# script 클릭 -> 생성된 프로젝트 이름을 jump로 변경 -> 스크립트 더블클릭
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class jump : MonoBehaviour
{
public Rigidbody jumpstart;
void Start()
{
jumpstart.AddForce(0, 500, 0);
}
}
위에 코드처럼 입력해 주고 저장 후 유니티로 다시 돌아갑니다.
.AddForce가 입력 방향으로 힘을 가한다는 건데 500수치 부분으로 500만큼(y 축)의 힘을 가한다는 거예요.
완성된 jump 스크립트를 물리적 큐브에 드래그 앤 드롭을 해줍니다.
그러면 큐브 인스펙터창에 jump 스크립트가 적용되어 있는데 jumpstart 메뉴 옆에 none(Rigidbody)라고 되어있어서 아직 점프가 되지 않습니다.
위에 메뉴의 Rigidbody를 jumpstart의 none 부분에 드래그 & 드롭을 해줍시다.
여기까지 했으면 완성입니다. 플레이 버튼을 눌러서 잘 적용되었는지 확인해봅시다.
잘 적용 되었네요ㅎㅎ
그럼 응용으로 x축으로 300 y 축으로 300을 물리 적용해 보겠습니다. 그러면 대각으로 움직이겠죠?
한번 해보겠습니다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class jump : MonoBehaviour
{
public Rigidbody jumpstart;
void Start()
{
jumpstart.AddForce(300, 300, 0);
}
}
예상했던 대로 잘 되네요ㅋㅋ
유니티로 물체를 점프시키는 방법을 알아봤고요 그럼 이만 마치겠습니다~안녕~
'게임만들기' 카테고리의 다른 글
[유니티]구글플레이 콘솔에서 모바일용 게임 빌드 업 시 기본 환경설정 사항 (0) | 2022.09.15 |
---|---|
[유니티]버튼클릭으로 사이트 이동하기 (0) | 2021.09.15 |
[유니티]버튼 클릭으로 간단하게 씬 전환하기 (0) | 2021.06.15 |
[유니티] 물체에 중력을 적용해 바닥에 떨어뜨리기 (0) | 2021.04.25 |
유니티 게임만들기 도전~! (0) | 2021.04.25 |
댓글