프리펩 변형(Prefab Variant)
프리펩에 우클릭 - Create - Prefab Variant를 누르면 새 프리펩이 생성된다.
Prefab Variant는 저렇게 빗금이 쳐져있는 프리펩 모양으로 생성된다.
Prefab Variant는 프리펩의 자녀로 생각하면 된다. 프리펩의 모든 수정사항은 특정 매개변수를 오버라이드하지 않는 이상 Variant에 반영된다.
이전에 만든 Prefab Variant에서 Mesh Filter를 바꿔준다. Mesh Filter는 mesh의 틀이라고 생각된다.
변경한 Mesh Filter를 제외한 다른 것들이 Tile에서 온 것을 알 수 있다.
Tile 프리펩을 수정하면 Tile 프리펩의 Variant인 Tile_RoadStraight도 변경사항이 적용되게 된다.(둘은 연결되어 있음)
위의 과정으로 모서리도 만들어줬다.
길의 방향을 나타내기 위해 타일 자체를 회전하면 Text도 같이 회전한다.
이를 막기위해 Tile Mesh만 회전하는 방법이 있지만 그 때마다 회전하기는 불편하다.
그래서 Prefab Variant의 Prefab Variant를 만들 수 있다는 것을 이용해 각 방향의 프리펩을 만들어주면 된다. (위 방법을 방향마다 한 번 씩만 적용해주면 된다.)
그리고 아까와 같이 Prefab Variant를 수정하면 Prefab Variant의 Variant도 수정된다.
이 상황에서 Tile 프리펩을 변경해도 Prefab Variant와 Prefab Variant의 Variant는 변경되지 않는데
Variant의 Scale이 기존 Tile 프리펩에 Override하고 있기 때문이다. Revert하면 Tile 프리펩의 Scale로 돌아간다.
Revert 한 후 다시 Tile Scale을 바꾸면
Tile 프리펩부터 Tile의 Variant 프리펩, Variant의 Variant 프리펩까지 적용이 되는 걸 볼 수 있다.
누구의 Variant인지 헷갈릴 때 Variant의 Open에 커서를 올리면 해당 정보가 나와있다. 그리고 누르면 그 Variant의 원본 프리펩으로 가게 된다.
이렇게 이동하면 좌측 상단에 프리펩 이동 흐름이 나와있다.
실습
타일들을 정리해주고 Path를 순서대로 맞춰서 한번에 Enemy의 Path List에 넣어준다.
실행
잘 이동하는 걸 볼 수 있다.
'유데미 강의 > C#과 Unity로 3D 게임 개발하기 : 레엄 러쉬' 카테고리의 다른 글
마우스 입력 탐지 (0) | 2022.09.02 |
---|---|
적 움직임 매끄럽게 하기 (0) | 2022.09.02 |
외부 에셋과 중첩 프리펩 (0) | 2022.09.02 |
코루틴 (0) | 2022.09.02 |
리스트와 적 웨이포인트 (0) | 2022.09.02 |