일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 유니티 스토리
- unity 설치
- 유니티 체스
- Unity 독학
- 크래프톤
- 크래프톤 정글랩
- 크래프톤 게임 정글 랩
- node.js
- Unity Chess
- 유니티 독학
- unity 공부
- unity 개발
- 유니티 대화
- 크래프톤 정글 게임랩
- unity 게임 개발
- ETRI 연구연수
- protobuf란
- 게임 독학
- protobuf 란?
- 오픽 im1
- unity 게임
- unity
- 유니티 퀘스트
- 게임 개발 독학
- 유니티
- 오픽 im1 5일
- 크래프톤 정글 게임 랩
- unity 강의
- 게임 개발
- 유니티 미연시
- Today
- Total
하참이의 아이디어노트
Unity 강의 1일차 (5) - 프리미티브 구조 만들기 본문
본 강의는 다음 문서를 참고하여 제작하였습니다. 자세한 내용은 하단 문서를 참고하시거나 댓글로 질문 주시면 성심성의껏 답변해드리겠습니다.
프리미티브로 구조 만들기 - Unity Learn
이 튜토리얼에서는 게임 오브젝트와 트랜스폼에 대해 배운 내용을 바탕으로 3D 프리미티브 기반의 구조물을 만들어 보겠습니다. 이 튜토리얼에서 배울 내용은 다음과 같습니다. 비어 있는 씬에
learn.unity.com
사실 이 강의를 작성하기 바로 전까지 프리미티브 구조가 무엇인지 저 역시 몰랐습니다.
프리미티브 구조는 복잡한 대상을 표현하기 위해 잘 정의된 기초 요소들을 모아서 구축하는 구조입니다.
네? 조금 더 풀어서 얘기하면 복잡한 구조체를 패턴화 해서 분석 후 분류 하는 방식이라 생각하시면 편할 것 같습니다.
아직도 모르시겠다구요? 그럼 일단 따라와보세요! 저희는 다음과 같은 구조를 만들 것 입니다.
단계는 다음과 같습니다.
1. 빈 게임 오브젝트 생성
2. 계단 제작
3. 벽면 제작
4. 지붕 제작
우선 빈 게임 오브젝트 부터 만들어볼까요? 지난번에 큐브를 만들었던 방식과 비슷하게 빈 게임 오브젝트를 만들겠습니다. (지난번에 만들던 큐브가 있다면 하이어라키창에서 클릭 후 Delete 혹은 우클릭 -> Delete로 제거합시다.)
하이어라키 창 우클릭 -> Create Empty

빈 게임 오브젝트를 만드는 이유는 무엇일까요? 애초에 왜 이런게 존재하는 걸까요? 주로 이 빈 게임 오브젝트를 만드는 이유는 여러 게임 오브젝트를 묶어서 표현하기 위해서 입니다.
예를 들어볼까요? 30명의 학생들을 묶어서 A 반으로 부르자고 합시다. A 반이라는 것은 실체가 있는 것 일까요? 아니죠. 그저 개념일 뿐 입니다. 저희가 만들 구조도 마찬가지 입니다. 계단과 벽면과 지붕으로 이루어져 있다 (또는 묶어져 있다. 둘 다 좋은 표현입니다.) 라는 것일 뿐 특별한 것은 없네요.
더 쉽게 표현하면 이후 제작할 작은 구조들을 담아서 정리하기 위한 하나의 폴더를 만든다고 생각하셔도 좋습니다.
빈 게임 오브젝트를 생성하고 클릭하면 Inspector 창에 해당 오브젝트의 정보를 볼 수 있습니다.

뭐가 뭔지 자세하게는 모르지만 대략적인 것들은 바로 알 수 있을 것 같습니다.
GameObject라 적혀있는 박스는 게임 오브젝트에 이름을 나타내는 것 같습니다. 이름을 Monument로 변경합니다. 이는 하이어라키창에서 F2를 누르거나 우클릭 -> Rename으로도 가능합니다.

다른건 제쳐두고 밑에 Transform이라 되어있는 것은 Position, Rotation, Scale... 딱 봐도 해당 게임 오브젝트의 형태를 조절할 수 있을 것 같습니다. 하지만 Position이 보기 좋지 않게 설정되어있네요.
해당 좌표를 0, 0, 0으로 변경하여 보기 좋게 만들어줍시다. 값이 변경됨에 따라 씬 뷰에서 오브젝트가 움직이는 것을 확인하면 더 좋습니다.

이제 계단을 만들어 봅시다.
지난번에 처럼 Cube 게임 오브젝트를 만들어봅니다. 단, 이번에는 아까 만든 Monument 아래에 만들 것 입니다. (이는 Monument의 자식으로 만들 것 입니다. 또는 Monument의 하위 오브젝트로 만들 것 입니다. 와 같은 뜻 입니다. 모두 자주 사용하는 표현이므로 익숙해집시다.)
Monument를 우클릭하고 3D Object -> Cube로 Monumnet 하단에 Cube를 생성해줍니다.

그리고 생성한 Cube의 이름을 Floor로 변경합니다. 설명은 생략하겠습니다.
Floor를 7개를 복사하여 총 8개가 존재하도록 합니다. GameObject의 복사는 Ctrl + D 로 합니다. 복사하기 전에 Floor의 Transform의 y를 0.2로 변경해둡시다.

이제 각 Floor의 Transform 값을 조절하여 계단처럼 시각화하겠습니다. 각 Transform 수치는 다음과 같습니다.




완성하면 다음과 같은 모양이 생성됩니다.

여기서 감이 좋고 응용력이 좋은 학생이라면 해당 설명만 듣고 바로 프리미티브 구조를 완성하였을 것 입니다. 하지만 저는 감이 좋지 않기 때문에 설명을 더 이어나가도록 하겠습니다.
Monument 게임 오브젝트의 자식으로 다른 큐브 게임 오브젝트를 생성하고 이름을 Wall로 변경합니다. 설명은 생략하겠습니다.

인스펙터에서 아래와 같이 값을 변경합니다.

다음과 같은 벽이 생성됨을 확인할 수 있습니다.

벽 오브젝트도 복사 하여 나머지 기둥을 제작합니다. 단, 이번에는 Transform 값을 제공하지 않겠습니다.


이제 천장을 만들겠습니다. Monument 밑에 Platform의 이름을 가진 빈 게임 오브젝트를 생성합니다.

그리고 Floor 게임 오브젝트들을 Platform으로 드래그하여 하위 오브젝트로 옮깁니다. Ctrl을 누른 상태로 클릭하면 여러개의 게임 오브젝트를 동시에 선택할 수 있습니다.

Platform 오브젝트를 복사합니다. 그리고 복사한 또 하나의 Platform의 이름을 Roof로 변경합니다.

마지막으로 Roof의 Transform 값을 조절하여 프리미티브 구조체를 완성해보세요!

자. 드디어 공부라고 할 만한 내용이 나왔습니다. 응용할 수 있고, 변경할 수 있는 내용이죠. 또한 이번에 했던 내용조차 더 깔끔하게 정리가 가능할 것이라 생각합니다.
문제의 난이도는 어떠셨나요? 갑자기 뭔 문제야 하고 귀찮아 하시는 분들도 계셨을 것 입니다. 하지만 이후에 좋은 게임을 만들기 위해선 이런 일들은 수 없이 할 것 입니다. 지금부터라도 해서 익숙해져야 나중에 덜 스트레스를 받지 않을까요!
수고하셨습니다! 다음 강의에서 뵙겠습니다!
'Unity > Unity 기초' 카테고리의 다른 글
Unity 강의 1일차 (7) - 머티리얼 (2) | 2025.01.15 |
---|---|
Unity 강의 1일차 (6) - 컴포넌트 (4) | 2025.01.15 |
Unity 강의 1일차 (4) - 패키지 (0) | 2025.01.15 |
Unity 강의 1일차 (3) - 3D 기초 (0) | 2025.01.15 |
Unity 강의 1일차 (2) - Unity Editor (2) | 2025.01.14 |