This document is about: FUSION 2
SWITCH TO

샘플 프로젝트

개요

고급 KCC는 KCC가 어떻게 작동하는지 이해하고 게임 개발 과정을 가속화할 수 있도록 예시, 테스트 환경 및 편리한 코드 조각으로 가득한 전용 유니티 프로젝트를 제공합니다.

플레이 그라운드 테스트
플레이 그라운드 테스트
Navmesh AI 플레이 그라운드
Navmesh AI 플레이 그라운드
장애물 플레이 그라운드
장애물 플레이 그라운드
환경 플레이 그라운드
환경 플레이 그라운드

샘플 프로젝트는 다운로드 섹션에서 다운로드할 수 있습니다.

기능

  • 쇼케이스 씬.
  • 능력 예제 - 대시, 스프린트.
  • 상호 작용 예 - 텔레포트, 포털, 점프 패드, 무빙 플랫폼, ...
  • AI 예 - NPC, NavMesh.
  • 확장 예제 - 프로세서, 스테이지.
  • 씬 디버깅 - 프로파일링 장면, 입력 평활.
  • 플레이 그라운드 - 계단, 경사로, 복도, 틈새, 지형.
  • 템플릿 - 복사하여 붙여 넣거나 다시 쓸 수 있는 스크립트.
  • PC/모바일/VR/게임패드 지원.
  • Photon 메뉴 통합.

샘플 제어

  • Mouse - 보기
  • W,S,A,D - 이동
  • Shift - 뛰기
  • Space - 점프
  • Tab - 대시
  • +,- - 스피트 토글
  • Enter - 커서 잠금/잠금 해제
  • Ctrl + Shift + M - 앱 일시정지/재개
  • Q,E - 부드러움 테스트용 패털티 + 룩
  • F4 - 입력 발사 전환
  • F5 - 대상 프레임 율 전환
  • F6 - 품질 전환
  • F7 - 수직 동기화 전환
  • F9 - 레코더 전환 (플레이어 위치 / 카메라 / 입력 평활)
  • F12 - 현재 씬에서 연결 해제

프로젝트 구조

  • Assets - 기본 프로젝트 폴더
    • Example - 샘플 "게임"과 관련된 모든 리소스 포함
      • 00_Showcase - 쇼 케이스 씬
      • 01_PlayerMovement - Player 컨트롤러의 다양한 구현(기본, 고급, 전문가, 탑-다운, vr)을 포함합니다)
      • 02_Features - 스프린트, 대시, 가변 표면 속도 등의 플레이어 능력 포함
      • 03_Interactions - 플레이어가 상호 작용하는 객체의 구현 - 환경, 텔레포트, 플랫폼, ...
      • 04_AI - NavMesh를 사용한 간단한 NPC 구현 및 예제 이동 내용 포함
      • 05_Extensions - 사용자 지정 프로세서/스테이지로 KCC를 확장하는 방법을 보여주는 스크립트 예시 포함
      • 06_Debug - 성능 및 입력 평활도를 테스트하기 위한 씬이 포함되어 있습니다
      • A1_Playgrounds - 콜라이더 타입/각도 조합, 탈침투 등으로 KCC 동작 테스트 전용 씬
      • A2_Templates - 부분 구현을 통해 기존 KCC 데이터 구조체를 확장하기 위한 템플릿
      • Shared - 여러 예제에서 공유하는 데이터, 일반 설정, 스크립트 관리자, 유틸리티 포함
    • Photon - Photon SDK, 추가 기능, 패키지 등의 기본 폴더
      • FusionAddons
        • KCC - 고급 KCC 애드온
      • FusionMenu - Photon 메뉴 <=> Fusion 컨트롤러 포함
      • PhotonMenu - Photon 메뉴 패키지

권장하는 학습 방식

  1. Showcase 씬을 시도해 봅니다.
  2. 상호 작용 장면(03_Interactions 폴더)을 사용해 보십시오.
  3. 01_BasicMovement에서 기본 이동 구현을 확인합니다.
  4. 02_AdvancedMovement에서 고급 이동 구현을 확인합니다.
  5. 일부 작은 기능(02_Features 폴더)와 상호 작용(03_Interactions 폴더)의 구현을 확인합니다.

이제 KCC와 어떻게 협력하고, KCC가 다른 객체(프로세서)와 어떻게 상호작용하는지, 그리고 플레이어의 행동을 어떻게 변화시키는지에 대한 기본적인 이해가 필요합니다.

  1. 콘텍스트에 대하여 더 학습하기 위해서는 아키텍쳐, 실행상호 작용에 관해 학습할 좋은 시점입니다.
  2. 03_ExpertMovement에서 일인칭 전문가 운동 구현 확인
  3. 03_ExpertMovement에서 삼인칭 전문가 운동 구현 확인

⚠️ 전문가 이동은 전체 렌더 예측, 맞춤형 입력 평활화 및 CPU, GPU 및 네트워크 스파이크와 관련된 에지 케이스를 다루는 기타 기능을 갖춘 가장 정교한 솔루션입니다.

  1. 샘플 프로젝트의 나머지 부분을 확인합니다.
  2. 더 많은 정보를 학습하기 위해서는 기능, 확장디버깅을 확인합니다.
  3. 프로젝트에 스크립트를 가져오거나 이 내용을 정리하고 게임을 만듭니다. 🚀

VR 지원

샘플 프로젝트는 Oculus 플랫폼에서 테스트됩니다(Oculus Link도 지원됨). 헤드셋에서 프로젝트를 실행하려면 다음 단계를 수행하십시오:

  1. VRMovement를 기본 씬으로 사용합니다. VR과 함께 작동하도록 구성된 유일한 씬입니다.
  2. Project Settings => XR Plug-in Management를 엽니다.
    • Initialize XR on Startup를 활성화합니다.
    • Oculus 공급자(또는 테스트할 다른 모든 공급자)를 활성화합니다.
  3. 플레이.

NVIDIA Reflex를 통한 시스템 지연 시간 테스트

적당한 하드웨어 장비로, 시스템 지연 테스트는 NVIDIA Reflex로 진행할 수 있습니다.

  1. GameplayUI 프리팹에서 NVIDIAReflex 게임 객체를 활성화합니다.
NVIDIA Reflex 지시자
NVIDIA Reflex 지시자
  1. KCC 샘플 빌드를 실행하고 전용 전체 화면 모드(F8 키)로 전환합니다.
  2. NVIDIA Reflex 지연 분석기 - 모니터링 사각형을 모니터에 설치 위치 및 크기:
    • 마우스 클릭 후 첫 번째 포워드 FixedUpdateNetwork()까지의 지연 시간을 측정하는 상위 도트(정규 동작)
    • 마우스 클릭부터 첫 번째 Render()까지의 지연 시간을 측정하기 위한 더 아래의 도트(렌더
  3. 마우스 왼쪽 버튼을 클릭하면 인디케이터가 깜박입니다.

🚀 최고의 게임 하드웨어와 결합하여 60Hz Fusion 시뮬레이션 범위의 평균 시스템 지연 시간은 약 12ms입니다. 렌더 예측을 사용하면 약 4ms까지 더 줄일 수 있습니다.

시스템 지연 비교
시스템 지연 비교

이동 분석

샘플은 프레임 단위로 이동을 분석하는 도구를 제공합니다.

⚠️ 파이썬 라이브러리가 필요하며, 디버깅 섹션에서 레코더에 대한 자세한 내용을 확인하시기 바랍니다.

  1. 게임을 시작합니다(편집기).
  2. 녹화 On/Off(F9 키)를 전환합니다.
  3. 프로젝트 루트 폴더에 새 .log 파일이 생성됩니다.
  4. Assets\Photon\FusionAddons\KCC\Utilities\RecordersCreateHTMLGraphs.py 스크립트를 루트 폴더에 복사하여 실행합니다.
  5. 그래프가 있는 새 .html 파일은 비슷한 파일 이름으로 만들어집니다.
  6. 그래프를 확인합니다.

타사 에셋

이 샘플은 타사 크리에이터들의 지원으로 가능해졌습니다. 프로젝트는 다음과 같은 에셋을 사용합니다:

Back to top