중첩 프리펩
Player 프리펩이나 Carbine 프리펩의 Weapon클래스에 None 값이 참조되어 있어도 괜찮다.
왜냐하면 Player 인스턴스 하위, 게임 화면에 보이는 요소들이 값을 참조하고 있기 때문이다. => Player 인스턴스 안에 Carbine 오브젝트가 이미 소속되어 있고 이는 Carbine 인스턴스라고도 할 수 있다.
그리고 Weapon클래스를 보면 Override 된 부분이 좌측의 파란색 띠와 굵은 글씨로 나타나는 걸 볼 수 있다. => 이처럼 서로 달라도 프리펩끼리 인스턴스를 포함시킬 수 있다.
중첩 프리펩에서 하위 프리펩의 공통되는 부분은 하위 프리펩에 적용시키는 게 편하다.(하위 프리펩 쪽에 있거나 프로젝트 창에서 참조하는 경우)
그러나 아래의 FP Camera나 Ammo Slot은 Player 프리펩(상위 프리펩)의 요소이므로 상위 프리펩에서 참조해주는 것이 맞다.
Override 된 요소를 클릭하여 Rever버튼을 누르면 해당 프리펩의 설정으로 돌아가게 된다. 이러면 프리펩과 인스턴스가 설정이 동일해져 프리펩에 바뀐 것들이 인스턴스에도 적용되게 된다.
Player 프리펩 모드에서 Carbine의 FP Camera와 Ammo Slot을 Revert하면 Carbine 프리펩의 원래 참조 값인 None으로 돌아가게 된다.
공통적으로 적용되는 부분은 Revert하여 수정되는 부분이 같이 적용될 수 있게 하면 된다.
다양한 무기 타입
이런 식으로 Shotgun이라는 개체를 만들고
Carbine의 컴포넌트를 복사하는데 Scale은 샷건 프리펩 설정으로 Revert하면 된다.
한 프리펩을 복사해서 다른 프리펩을 만들 때 쉐이더도 같이 복사되니 같은 쉐이더의 Albedo에 텍스처를 집어넣지 말고 프리펩 모드의 씬 창의 오브젝트에 집어넣으면 새로운 쉐이더가 생성되는 걸 볼 수 있다.
'유데미 강의 > C#과 Unity로 3D 게임 개발하기 : 좀비 러너 게임' 카테고리의 다른 글
무기 교체하기 (0) | 2022.09.20 |
---|---|
무기 구별 (0) | 2022.09.20 |
기본 탄약 기능 (0) | 2022.09.20 |
무기 확대 / 축소 - 시야와 마우스 민감도 (0) | 2022.09.20 |
BroadcastMessage (0) | 2022.09.19 |