TIL)2024-02-19 테스트 환경 완성과 포탈 기능 추가
2024. 2. 19. 23:47ㆍ내외 교육들/TIL
진행상황 보고
현재 게임에 돌아가는 실제 스테이지의 내부에서 테스트를 할 수 있도록 세팅을 완료하였다. NPC가 빈자리를 향하는 오브젝트와 스폰 및 프리팹등을 준비시켰다. 다음은 게임의 완성도를 높이는 기능을 추가하는 작업을 진행하면서 정리한 것들이다.
식당 내외부 NPC 이동 → 포탈로 통한 방향
NPC는 식당 외부에서 스폰이 된다
NPC는 식당 외부의 위치에 가서 식당 내부가 빈자리가 있는지에 따라서 식당 내부로 이동한다.
식당 내부로 이동후 빈자리로 가서 상호작용을 시작한다.
상호작용을 마치고 식당 내부 입구로 다시 가서 순간 이동을 하여 식당 외부로 이동해 자기 파괴를 하러 간다
외부 입구에서 내부 입구로 순간이동을 할 때
- (전제조건)해당 NPC는 식당 외부 입구로 이동하도록 타겟이 지정되어 있다.
- NPC가 식당 입구에 들어간다면, 순간이동과 동시에 NPC한테 빈자리를 지정한다.
- 빈자리를 지정하면서 빈자리 체크 상태를 false에서 true로 바뀌도록 딕셔너리로 해당 위치를 조정한다.
- 상호작용을 마친 NPC는 식당 내부로 이동해 충돌하면, 다시 식당 외부 입구로 순간 이동하면서 식당 외부의 파괴 오브젝트로 이동한다.
- 그와 동시에 해당 자리는 true에서 false 상태로 바뀐다.
NPCSpawn이 가지는 기능들 다시 정의
- 스폰에 필요한 손님 프리팹 리스트와과 경찰 프리팹을 가지고 있다.
- 해당 NPC는 조건 코루틴에 따라서 스폰하게 된다.
- 스폰을 하게 되면 프리팹은 해당 타겟을 지정받게 된다. 여기서 타겟은 식당 외부 입구이다.
- 동시에 NPC에게 주문하고자 하는 메뉴와 메뉴 스프라이트를 선정해준다.
- (추가할 사항) NPC 파괴 기능을 넣어야 하나?
EntrancePortal이 가지는 기능들 다시 정리
- bool 값에 따라서 식당 외부와 식당 내부로 나뉘는 입구를 정의한다
- 충돌하는 오브젝트의 태그를 비교하여 손님과 경찰을 확인한다
- 식당 내부의 빈자리 여부를 확인하는 <int, bool>의 딕셔너리와 빈자리 충돌을 나타내는 게임 오브젝트들을 담은 리스트를 통해 NPC의 빈자리를 할당하며 빈자리 상태를 확인한다.
- 만약 빈자리가 없게 된다면, 잠시동안 손님의 출입을 막는 상태로 만들고, 식당 외부 입구에 NPC가 충돌하게 된다면 바로 자가 파괴를 위한 위치로 타겟을 바꾼다.
- 손님이 빠지고 빈자리가 남는 상태가 된다면, 다시 출입을 허가 하도록 한다.
- 다만 경찰은 빈자리 여부와 상관없이 식당 내부로 들어가 탐색 상태로 들어가 위장 상태를 확인하고 나가는 루틴을 가진다.
'내외 교육들 > TIL' 카테고리의 다른 글
TIL)2024-02-21 NavMeshAgent.Warp (1) | 2024.02.21 |
---|---|
TIL)2024-02-20 간단 상황보고 (0) | 2024.02.20 |
TIL)2024-02-16 애니메이션 일단락으로 완성 및 최종 목표 정하기 (0) | 2024.02.16 |
TIL)2024-02-15 애니메이션, 스폰, NPC.... (0) | 2024.02.15 |
TIL)2024-02-14 애니메이션 숙련 (0) | 2024.02.14 |