약 한달간 C#을 공부하고나서 유니티를 시작하게 되었다.
프로젝트를 2회정도 진행하였고 (콘솔, Winform) C#에 대해 더 알 수 있었던 경험이 되었다.
처음 유니티를 접했을 때는 낯설어서 어디에 무엇이 있는지 아직 잘 모르겠다.
익숙해지기 위한 시간이 더 필요하다고 느꼈다.
1. 개발환경 준비 ✨
구글에서 Unity를 검색하면 Unity Hub 다운로드가 있는데 빠르게 다운받을 수 있다.
에디터 버전은 2021.3.18f1 LTS 버전으로 진행할 것이다.
오른쪽 하단에서 프로젝트 이름과 용량을 생각하여 경로를 설정해주면 된다.
2. 해보기
왼쪽은 하이러키뷰(Hierarchy)에서 Plane을 생성하는 것이고 오른쪽은 메뉴의 GameObject에서 Plane을 생성하는 것이다.
Plane이 생성되었고 Scene뷰에서 클릭하거나 하이러키뷰에서 Plane을 클릭하면 오른쪽의 인스펙터에서 수정할 수도 있다. Transform의 Position을 원점(0, 0, 0)으로 설정합니다.
상단 메뉴 Edit -> Preferences의 메뉴에서 Create Objects at Origin을 체크해준다
(생성하는 객체의 Position 값을 항상 월드 좌표의 원점(0, 0, 0)으로 설정하는 옵션이다)
이후로는 공부했던 내용대로 드래그 앤 드랍 식으로 따라만해도 쉽게 스테이지를 만들어 볼 수 있었기 때문에 생략하겠습니다.
3. 용어정리📃
Capsule의 높이는 유니티의 유닛(Unit) 단위로 2유닛으로 디자인되어 있다. (1유닛 1m 하지만 절대적인 단위는 아님)
균등 스케일과 비균등스케일
균등 스케일 (Uniform Scale) : 3D 모델의 (x, y, z) 스케일(Scale) 값이 모두 같은 값을 갖는다. (1, 1, 1)
비균등 스케일 (Non-Uniform Scale) : 균등과 반대로 값이 다른경우이다. 이경우 정적 모델(움직이지 않고 고정된)모델에는 별다른 문제가 없지만, 비균등 스케일로 설정된 객체 하위에 다른 객체가 있다면 하위 객체의 회전 계산에 문제가 발생할 수 있다.
가능한 균등 스케일을 유지하는 것이 바람직하다.
텍스처 (Texture) : 3D 모델의 표면에 매핑시킬 이미지 파일 (3D 모델에 텍스처를 입힌다고 생각하면 좋다)
모바일 플랫폼에서 속도를 향상시키고 싶다면 2ⁿ(POT, power of two)형태의 텍스처를 사용해야 한다.
최적화를 위해서 텍스처를 적절한 품질로 설정하는 작업을 병행해야 유리하다.
머터리얼 (Material) : 3D 모델에 텍스처를 적용하려면 3D모델과 텍스처 사이에 머터리얼이라는 매개체가 필요하다.
머터리얼은 3D 모델에 적용할 텍스처의 다양한 속성을 설정하는 역할을 한다. (텍스처를 어떤 간격으로 반복하고, 어떻게 표현할지..)
렌더링 모드 (Rendering Mode) : Opaque (불투명), Cutout (그물망 표현), Fade (홀로그램 효과), Transparent (투명)의 네가지 설정을 통해 다양한 재질감을 표현할 수 있다. 아직 사용해보진 않았다.
알베도 (Albedo) : 빛을 반사하는 정도, 반사율
메탈릭 속성 (Metallic) : 객체 표면에 금속 재질을 표현하기 위한 텍스처. 값이 1에 가까울수록 금속 재질에 가까워지는 특성이 있다.
노멀 맵 (Normal Map) : 표면의 세밀한 입체감이나 질감을 표현하기 위한 텍스처의 일종
3D 모델링으로 많은 폴리곤(Polygon)을 소모하지 않고 같은 효과를 낼 수 있다. 속성값이 커질수록 거친 음영효과를 낸다.
하이트 맵 (Height Map) : 텍스처 높낮이, 노멀 맵과 비슷하지만 돌출 시켜 뒤의 사물을 가리는 효과를 낼 수 있다.
오클루전 (Occlusion) : 흑백의 텍스처, 간접조명에 의해 생기는 명암을 더욱 뚜렷이 표시해
사물의 입체감과 깊이감을 살리는데 사용된다.
이미션 (Emission) : 스스로 빛을 방출하는 속성
디테일 마스크 (Detail Mask) : Secondary Maps에 적용할 마스크를 설정하는 텍스처 슬롯. 특정 부분을 세부적인 텍스처를 표현할 때 사용한다.
프리팹 (Prefab) : 복사가 가능한 원본의 개념
'개발 > Unity' 카테고리의 다른 글
[Unity] 캐릭터 컨트롤러 [CharacterController] (0) | 2023.02.22 |
---|---|
[Unity] 충돌이벤트와 트리거이벤트, 키네마틱 [Collision, Trigger, Kinematic] (1) | 2023.02.22 |
[Unity] 오브젝트 이동, 회전, AddForce, 점프, LookAt 과 RotateAround [Transform] (1) | 2023.02.22 |
[Unity] 캐릭터 제작 및 총 발사 로직 [1 / 2] (1) | 2023.02.20 |
[Unity] Unity 시작과 기본 기능들 [2 / 2] (1) | 2023.02.20 |