This document is about: FUSION 2
SWITCH TO

Sample Project

概述

進階KCC 提供一個專用的Unity專案,其中充滿示例、測試遊樂場及方便的程式碼片段,以協助理解KCC的工作流程及加快您的遊戲的開發流程。

playground
測試遊樂場
playground
導航網格AI遊樂場
playground
障礙物遊樂場
playground
環境遊樂場

可在下載章節下載範例專案。

功能

  • 展示場景。
  • 能力示例 - 暴衝、衝刺。
  • 互動示例 - 傳送、傳送門、跳躍盤、移動平台等等
  • AI示例 - NPC、導航網格
  • 擴展程式示例 - 處理器、舞台。
  • 偵錯場景 - 分析場景、輸入平順化。
  • 遊樂場 - 樓梯、滑坡、走廊、間隙、地貌。
  • 範本 - 準備好複製及貼上或重新寫入的指令碼。
  • 支援 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 - 含有使用導航網格的簡單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鏈結)。為了在您的頭戴式裝置上運行專案,請遵循以下步驟:

  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 indicators
NVIDIA Reflex指示器
  1. 運行KCC範例組建並且切換到專屬全螢幕模式(F8鍵)。
  2. 設定NVIDIA Reflex延遲分析器的位置及大小 - 在您的顯示器上監視方形以:
    • 上點來測量從滑鼠點擊到第一個轉傳FixedUpdateNetwork()的延遲(常規動作)
    • 下點來測量從滑鼠點擊到第一個Render()的延遲(已預測轉譯的動作)
  3. 按一下滑鼠左鍵以閃爍指示器。

🚀 結合頂級遊戲硬體後,在60赫茲Fusion模擬的平均系統延遲範圍在12毫秒左右。有了轉譯預測,它可以被進一步減少到4毫秒左右。

system latency comparison
系統延遲比較

移動分析

範例提供了工具以逐幀分析移動。

⚠️ 需要Python程式庫,在偵錯章節查看更多關於記錄器的細節。

  1. 啟動遊戲(編輯器)。
  2. 切換記錄開啟/關閉(F9鍵)。
  3. 在專案根資料夾建立新的.log檔案。
  4. Assets\Photon\FusionAddons\KCC\Utilities\Recorders複製CreateHTMLGraphs.py指令碼到根資料夾並且運行它。
  5. 以相似的檔案名稱來建立附有圖表的新的.html檔案。
  6. 查看圖表。

第三方資產

利用了第三方創作者的支援來協助完成這個範例。專案使用了以下的資產:

Back to top