Pv_log

FPS Microgame) FPS Mod: Changing and adding Game Objectives 본문

Unity Learn 번역/FPS Micro Game

FPS Microgame) FPS Mod: Changing and adding Game Objectives

Priv 2020. 3. 3. 15:55

출처


1. 유니티에서 FPS Microgame 열기

아직 Microgame 프로젝트가 없으신가요?

그럼 처음으로 돌아가 튜토리얼을 먼저 진행해주세요.

시작하기에 앞서, 이번 튜토리얼(과 다른 튜토리얼들)을 완수하기 위해서 몇 가지 특별한 에셋들이 필요합니다.

이제 그 에셋들이 준비되어 있는지 확인해봅시다!

  1. 최신 Microgame 프로젝트가 설치되어 있는지 확인해주세요: Project 창의 검색 바에서 "DetectionModule"을 검색해주세요.
    (참고: 타이핑하신 후에 "Search" 단어 옆에 필터 설정이 "All"로 되어 있는지 다시 확인해주세요.)
  2. "DetectionModule" 에셋이 나타났다면, 2단계로 넘어가시면 됩니다.
  3. 만약 아무것도 검색되지 않았다면, 을 먼저 진행해주세요.
  4. 다 됐나요? 그럼 계속 진행해봅시다!

 

 


2. 현재 달성 과제를 바꿔봅시다.

달성 과제 시스템은 게임오브젝트에 "ObjectiveKillEnemies" 또는 "ObjectiveReachPoint"와 같은 특정 컴포넌트들이 결합된 Objective 컴포넌트를 게임오브젝트에 간단히 추가하는 방식으로 작동됩니다.

Objective 컴포넌트 내에서 해당 달성 과제가 선택사항인지 아닌지를 설정할 수 있고, 달성 과제에 대한 설명을 추가할 수도 있습니다.
(In the Objective component, we can set if it is optional or not and fill some description about it. )

또한, 추가 데이터를 설정할 수도 있습니다.

예를 들어, ObjectiveKillEnemies 컴포넌트에서는 플레이어가 얼마나 많은 적을 사살해야 하는지를 설정할 수 있습니다.

여기에 3가지 종류의 목표가 있습니다: ObjectiveReachPoint, ObjectiveKillEnemies, ObjectivePickupItem

해당 스크립트들을 간단하게 커스터마이징 하거나 직접 새로운 목표를 제작할 수도 있습니다.

 

1) 기본적으로, MainScene의 목표는 모든 적을 제거하도록 설정되어 있습니다.

이 값을 적을 둘만 제거하면 되도록 바꿔봅시다.

 

 

2) MainScene을 여시고, Hierarchy 창에서 ObjectiveKillEnemies 게임오브젝트를 클릭해주세요.

 

 

3) Inspector 창에서 Objective Kill Enemies (Script) 컴포넌트를 찾아주세요.

 

 

4) Must Kill All Enemies 박스를 체크 해제해주세요.

 

 

5) Kills To Complete Objective 값을 2로 설정해주세요.

 

 

6) Objective Kill Enemies 컴포넌트 아래에 있는 Display Message 컴포넌트를 찾으셔서 메시지 내용을 "Eliminate 2 enemies"처럼 바꿔주세요.

 

 

7) Play 버튼을 누르시고, 적 둘을 제거하시면 승리 알림이 표시될 것입니다.

 

 


3. Reach Point Objective 추가하기

이제 씬에 Reach Point Objective를 추가해보겠습니다.

해당 Objective는 플레이어가 설정된 구역에 진입할 경우 활성화되는데, 이는 플레이어가 찾아야 하는 비밀 구역 같이 플레이어가 레벨을 끝내기 전에 방문할 구역으로 제작하는데 유용합니다.
(This could be useful if you want the player to visit an area of the level before finishing it, for example, if we want to force the player to find a secret zone.)

Microgame과 함께 제공된 기존 Reach Point Objective 프리팹을 드래그&드롭하시거나, 직접 새로 만드실 수도 있습니다.

 

드래그&드롭 방법:

1) Project 창에서 Prefabs 폴더 안에 있는 ObjectiveReachPoint 프리팹을 찾아주세요. (Assests > FPS > Prefabs > ObjectiveReachPoint)

 

 

2) 씬 내의 원하시는 곳에 프리팹을 드래그&드롭해주세요.

 

 

3) ObjectiveReachPoint가 Hierarchy 창에 추가된 것을 확인하셨다면, 이제 프리팹을 선택해주세요.

Inspector 창으로 가셔서 Objective Reach Point를 찾아주세요.

Is Optional 파라미터를 체크 해제해주세요.

 

 

4) Objective (Script) 컴포넌트에서 "Title" 부분을 게임 내에서 objective가 읽어드릴 내용으로 변경해주세요.

튜토리얼 상에서는 "Reach the area"로 변경하겠습니다.

 

 

5) Play 버튼을 눌러주세요.

이제 목표 구역으로 걸어가시면 새로운 달성 과제가 달성될 것입니다.

다른 달성 과제들도 컴파일하셔서 새로운 목표를 달성할 때까지 게임이 끝나지 않도록 만들어보세요.

 

 

6) 축하드립니다! 기존의 게임 달성 과제들을 수정하고 새로운 달성 과제를 추가하는 방법을 배우셨군요.

이제 씬을 저장해주세요.

 

 

메서드를 끌어모아 제작하는 방법:

1) MainScene 씬을 Project 창에서 검색하셔서 씬을 열어주세요.

 

 

2) Hierarchy 창에서 "ObjectiveKillEnemies"를 선택하시고 Inspector 창을 확인해주세요.

 

 

3) 선택사항 도전과제로 설정하기 위해 "Is Optional" 필드를 체크해주세요.

이렇게 하면, 플레이어가 해당 도전과제를 달성하지 않더라도 레벨을 클리어할 수 있게 됩니다.

 

 

4) Hierarchy 창에서 마우스 우클릭 후, Create Empty를 선택해주세요.

 

 

5) 이제 새로 생성된 게임오브젝트를 선택하시고 Inspector 창을 봐주세요.

 

 

6) Position 값을 (0, 0, 0)으로 초기화해주시고, Objective 컴포넌트를 추가해주세요.

 

 

7) 이제 Box Collider 컴포넌트와 Objective Reach Point 컴포넌트를 추가해주세요.

 

 

8) Inspector 창에서 아래의 몇 가지 사항들을 변경해주세요.

  • 게임오브젝트 이름을 "ReachPoint"로 변경해주세요.
  • Objective 컴포넌트의 Title 부분에 내용을 추가해주세요.
  • "Delay Visible" 값을 3으로 설정해주세요.
  • Box Collider의 Size 값을 (2, 2, 2)로 변경해주세요.
  • Box Collider의 Center 값을 (0, 1, 0)으로 변경해주세요.

 

 

9) 아래 사진처럼 Box Collider의 "Is Trigger" 필드가 체크되어 있는지 확인해주세요.

 

 

10) Hierarchy 창에서, "ReachPoint"를 선택하시고 Objective Reach Point 컴포넌트의 "DestroyRoot" 필드로 드래그&드롭해주세요.

 

 

11) Project 창에서 "Sign_Pyramid_Green" 프리팹을 FPS > Prefabs > Level > Signs 폴더에서 찾아주세요.

 

 

12) "Sign_Pyramid_Green" 프리팹을 Hierarchy 창에 있는 "ReachPoint" 게임오브젝트로 드래그&드롭해주세요.

 

 

13) Play 버튼을 누르시면, 아래 영상과 같이 달성 과제 오브젝트를 획득하실 수 있으실 겁니다.

이제 어떻게 Reach Point Objective를 추가하는지도 배우셨네요.

씬 저장하는 것 잊지 마세요.

 

 


4. 획득 아이템 달성 과제 추가하기

1) MainScene 씬을 Project 창에서 검색하셔서 씬을 열어주세요.

 

 

2) Hierarchy 창에서 "ObjectiveKillEnemies"를 선택하시고 Inspector 창을 봐주세요.

 

 

3) 선택사항 도전과제로 설정하기 위해 "Is Optional" 필드를 체크해주세요.

이렇게 하면, 플레이어가 해당 도전과제를 달성하지 않더라도 레벨을 클리어할 수 있게 됩니다.

 

 

4) Project 창에서 ObjectivePickupItem 프리팹을 검색하시고 Hierarchy 창으로 드래그&드롭해주세요.

만약 프로젝트를 좀 더 정갈하게 하고 싶으시다면, "Pickups" 아래에 배치해주세요.

 

 

5) Play 버튼을 누르셔서 ObjectivePickupItem을 제대로 획득할 수 있는지 확인해주세요.

 

이제 어떻게 도전과제 획득 아이템을 추가하는지 배우셨습니다.

변경사항 저장하는 것 잊지 마세요: Ctrl+S (Windows) Cmd+S (Mac)

 

 


5. 가입 및 공유하기

유니티 커넥트에 가입하셔서 작업하신 결과물과 경험들을 다른 유저들과 함께 공유해보세요.

유니티 커넥트(Unity Connect)에 있는 에 아직 가입하지 않으셨다면, 한 번 가입해보시는 걸 추천드립니다.

FPS Microgame 프로젝트와 관련된 튜토리얼들을 진행하시면서 막힌 부분에 대한 질문을 올리시거나, 다른 유니티 크리에이터 분들과 함께 직접 제작하신 결과물들을 공유하실 수도 있습니다.

이 뿐만 아니라 여러 유니티 전문가 분들이 각종 도움이나 아이디어를 제공해 드리고자 활동하고 계십니다.

한 번 확인해보세요!

 

 


 

 

수고하셨습니다!


0 Comments