일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 삼성 #갤럭시 #S22 #울트라 #S22U #S22 울트라 #갤럭시 S22 울트라 #스마트폰 #
- 안드로이드 디버그 브리지
- Ah-1z
- 유니티 헬기
- 언어유형학
- 유니티 충돌
- c#
- HTML
- hyngng
- 유니티 공부
- 플레이어 이동
- 유니티 기초
- 안드로이드 디버그 브릿지
- 헬기 만들기
- HTML 설명
- C# 스크립트
- 유니티
- 유니티 벡터
- Hierachy
- 유니티 플레이어
- ADB 설치
- 포합어
- 유니티 Collision
- 하이어라키
- 갤럭시
- rigidbody
- 비교언어학
- OnCollisionEnter
- 유니티 오브젝트
- Unity
- Today
- Total
HYNGNG | 알곡사료
움직이는 플레이어 만들기 본문
🙂블로그 이전했습니다!🙂
유니티 3D환경에서의 기초 이동 시스템 짜임새와 구조를
여기에 정리해 둔다.
3D Core 프로젝트를 만들고 열었더니
아무것도 없는 화면이 나왔다.
여기에서 나는 먼저 바닥이 될 육면체(Cube)와 움직임의 대상이 될 구(Sphere)를 만들었다.
Hierachy 창에서 우클릭 > 3D Object > Cube OR Sphere 클릭으로
도형 오브젝트를 생성할 수 있다.
생성한 육면체(Cube)가 크기가 작아 구(Sphere) 안에 파묻혀 있다.
Cube는 바닥 판으로 사용하기 위해 만든 것이니 크기와 위치를 조정해야 한다.
구와 육면체는 플레이어와 바닥으로 사용할 것이니 이름을 바꾸는 게 적절하므로
생성된 Sphere의 이름은 Player로, Cube 오브젝트의 이름은 Floor로 바꾸었다.
플레이어가 이동할 바닥을 만들기 위해
Inspector 창에서 Floor의 설정값을 조정했다.
크기(Scale)값에 10배수를 먹여 (1,1,1)에서 (10,10,10)으로 조정하고,
회전(Rotation)값은 X축으로 90도 회전을 시켜 뉘인 다음
Hierachy 창에서 Floor를 선택하고 W를 누르면 도형의 중심에 생성되는 좌표계 중
파란색(Z축)을 아래로 당겨 위치를 내려 바닥판 역할을 할 수 있게 했다.
되게 간단한 작업인데, 글로 풀어 쓰니까 되게 어려워진 느낌이다...;;
Project 창에서 Assets 폴더에 MyTestAssets 폴더를 생성하고
PlayerBall이라는 이름으로 C# 스크립트를 하나 만들어 준 다음
구(Sphere)의 움직임을 다룰 간단한 C# 코드를 작성했다.
코드에 대한 설명은 별도의 글로 따로 작성했다.
Hierachy 창에서 Player를 선택하고 Inspector 창의 하단 메뉴 Add Component를 통해
Rigidbody 옵션을 추가하고, 방금 만든 C# 스크립트를 Inspector 창으로 끌어와 적용시켰다.
입력하는 WASD 방향키에 따라 Player가 가속을 받아
잘 이동하면서도 Floor를 벗어나면 떨어지기도 하는 모습을 볼 수 있었다.
+++
만약 구 움직임에 대한 스크립트를 구 오브젝트가 아니라
다른 쌩뚱맞은 오브젝트에 적용하면 어떨까 하는 생각이 떠올라서,
3D 모델 파일을 배포하는 사이트에 찾아가 아무 무료 모델을 다운받았다.
나 같은 경우는 뭔가 움직이면 멋져 보일 것 같은 헬기였다.
프로펠러가 돌아가게 하는 방법도 모르고
공중을 체공하게 하는 방법도 모르지만
'구'처럼 좌우로 구르고, 하늘로 점프하게 만들 수는 있었다.
.3ds형식의 파일을 넣으니 제대로 불러와졌고,
Collider 컴포넌트와 Rigidbody 컴포넌트, 그리고 내 스크립트를 적용시켰다.
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
아주 잘 작동하는 모습을 확인할 수 있었다.
'유니티' 카테고리의 다른 글
유니티 : 에셋스토어에서 받은 파일 불러오기 (0) | 2022.06.22 |
---|