- 인스턴스에서는 가능하지만 프리펩에서 하면 연결점들이 다 고장나서 불가능하게 되어있음 (자기 자신 아래에 자기 자신이 있어야하고 그 아래에 자기자신이 있어야하고.....)
부모 프리펩의 스케일이 1이 아닐 때
프리펩의 부모 오브젝트에서 가능하다면 스케일을 모두 1로 고정하는 게 좋다. 왜냐
자식 프리펩을 회전하면 깨지기 때문이다. 부모 스케일을 1로 어떻게 만들까?
월드에 Empty Object를 생성하여(스케일 1,1,1) 그 자식으로 Cube와 Capsule을 놓으면 된다.
부모 스케일이 1이니 깨지지 않고 회전할 수 있다.
* 프리펩 월드로 갔을 때 Context : Normal을 선택하면 기본 씬에 있는 것처럼 보이게 된다.
모든 프리펩의 속성을 수정하고 싶을 때
부모에 있는 자식 캡슐에 그냥 색을 입히고 Override 하더라도 독립적인 원본 프리펩에는 그 정보가 적용되지 않는다.
프리펩의 전체를 수정할 때는 해당 오브젝트의 프리펩 모드로 들어가 수정하는 게 좋다.
기존 프리펩으로 새 프리펩 만들기
캡슐을 변형하고 프로젝트 창으로 드래그 앤 드롭을 하여 Original Prefab을 만들었을 때 이전에 있던 원본 프리펩을 삭제해도 원본 인스턴스는 씬에 남아있다.
이 게임 오브젝트를 프로젝트 창에 드래그 앤 드롭하면 다시 프리펩으로 만들 수 있음
씬에 있는 프리펩을 Unpack을 하면 이 해당 오브젝트는 인스턴스가 되고 프로젝트 창에 프리펩은 남아있음
해당 오브젝트만 인스턴스화 하는 것임
복습
프리펩 인스턴스에서 많은 걸 바꾸고 부모에서 Override 하더라도 프로젝트 창 기존 프리펩에는 연동이 안 될 경우 인스턴스를 Original Prefab으로 만들고 이것을 기준으로 다른 프리펩도 설정해준 뒤 (왼쪽 프리펩이라면 오른쪽 프리펩도 Original Prefab으로 만든 걸로 복사해줘야함) 기존에 있던 프로젝트 창의 프리펩은 제거해준다. => 옛것을 버리고 최근거를 원본 프리펩으로 만드는 것
ex) 컷씬, 시네마틱 시퀀스 = 월드에서 적의 움직임을 애니메이션으로 만들거나 월드에서 무언가가 떨어지게 만들 수 있고 플레이어가 돌아다니다가 타임라인 이벤트를 발생시킬 수도 있다 ==> 애니메이션의 한 방법인데 특정 타이밍, 타임라인을 토대로 만들어진 애니메이션이라 언제 실행될 지 알 수 있다.
Window - Sequencing - Timeline으로 Timeline을 불러올 수 있다.
Window - Animation - Animation의 Animation과 같이 이용했다.
타임라인 생성하고 적용하기
새 게임 오브젝트에 Create를 눌러 타임라인을 생성했다.
타임라인의 단위를 정할 수도 있다.
* 추가로 씬의 화면을 클릭했을 때 타임라인 창이 꺼져서 불편한 경우가 있는데 이 때는 잠금 버튼으로 고정하자
먼저 타임라인 이벤트 오브젝트의 위치를 정하고 좌측 상단의 +를 눌러 애니메이션 트랙을 생성해준다.
이후 애니메이터 부분에 타임라인 이벤트 오브젝트를 드래그앤 드롭하여 애니메이터를 생성한다.
이후 해당 오브젝트에 애니메이터가 추가되고 녹화버튼을 눌러 애니메이션 녹화를 시작한다.
씬에서 화면 구도를 잡은 후 게임 오브젝트를 선택하고 GameObject - Align With View를 하면 이 특정 위치, 각도, 뷰로 스냅해준다.
* 팁으로 마우스 우클릭 + Q나 E를 누르면 씬 카메라를 위 아래로 움직일 수 있다
얼마나 이동해야 하는지 감이 안잡힌다면 Edit - Preferences - Colors - Grid의 색을 조정하여 정하면 된다.
맘에 안 들면 우클릭 후 Edit In Animation Window에서 수정할 수 있다.
키프레임 양 끝에 바 같은 걸 드래그해서 프레임을 늘리거나 줄일 수 있다.
Curve를 선택해 애니메이션의 진행을 부드럽거나 극적으로 진행할 수도 있음
회전 같은 걸 조정한 후 물체가 부딪힐 것 같을 때 우클릭하여 Add Key를 한 뒤 위치 등을 조정하면 된다.
Painit Texture라는 항목에서 아래쪽의 Layer 부분의 Add Layer를 통해 레이어가 있다면 레이어를 추가할 수 있다.
Create New Layer를 한다면 Texture를 통해 Layer를 생성할 수 있다.
레이어를 생성하면 Duffuse Map, NormalMap, Height Map이 합쳐져서 레이어를 표현한다.
- Bump Map : 2D Map으로부터 얻은 3D 정보 혹은 3D 비주얼에 대한 레이어의 분류를 뜻하는 용어이다, Nomal Map과 Height Map은 Bump Map의 하위 용어이다. => 2D를 3D처럼 보이게 할 수 있도록 빛이 모양을 잡는 방식에 대한 정보를 가진 텍스처이다.
- Height Map : 흑백 스케일을 사용해서 높이를 보여준다. 터레인에도 높이 정보인 Height 맵이 포함되어있어 Export가 가능하다.
- Normal Map : 픽셀마다 다른 색은 빛이 어떻게 표현되어야 하는지 나타낸다 -> RGB 값을 사용, 각 픽셀의 (x,y,z) 값이 향하는 방향을 나타낸다.
여러 레이어를 추가한 모습
트리 추가하기
Paint Trees에서 Edit Trees - Add Tree로 트리 프리펩을 선택해 꾸밀 수 있다.
마우스 좌클릭을 통해 생성할 수 있고 Shift + 좌클릭으로 삭제할 수 있다.
트리가 생성될 범위, 밀도, 높이 랜덤 등 여러가지를 정할 수 있다.
나무를 심은 모습
** 이전에 Set Height로 설정하고 기준이되는 높이를 Ctrl + 좌클릭으로 한 번 지정해준뒤 (월드에 있는 타겟 지형) 다시 좌클릭만 눌러주면 그 높이로 맞춰진다.