This document is about: QUANTUM 2
SWITCH TO

Scene Loading

概述

在Quantum的脈絡中載入一個場景,其有兩個部分:

  1. 場景檢視(Unity);及,
  2. 針對模擬的場景資料(Quantum)。

這個文件將呈現3個有效的方法,以執行場景載入。在這些方法之中,您將希望自行載入Unity場景及地圖資料(針對後者是透過OnMapChanged回調)。

注意事項: Simulation Config資產提供一個 從地圖自動載入場景 選項。這對於 原型 而言還可以,但對於 生產,我們強烈建議您撰寫您自己的遊戲特定載入器。

在離線時載入

在玩家進入對戰配對或開始遊戲之前,Unity場景可以被離線/本機地載入。針對直接對戰配對的休閒遊戲,這是一個好的選項。

順序:

  1. 在背景中載入遊戲遊玩場景,即便是在離線時(Unity)
  2. 進入對戰配對並且找到一個房間(Photon Realtime)
  3. 以已經預先載入的遊戲遊玩場景來開始模擬(Quantum)

在Photon房間中時載入

如果您需要一個大廳來通知玩家對戰前資訊,您可以透過Photon Realtime API來協調載入,並且在每個人已經載入遊戲遊玩場景之後立即啟動Quantum模擬。

順序:

  1. 玩家加入一個Photon房間

  2. 針對所有透過Realtime加入房間的客戶端,來協調場景載入:

    1. 以(自訂Photon訊息或房間屬性)發出預期載入時間的信號
    2. 等待所有客戶端來確認它們已經載入場景(玩家屬性), 主要客戶端發出逾時的信號
    3. 發出Quantum模擬開始的信號(房間屬性)

當遊戲開始時,模擬及遊戲遊玩立即開始,不需要任何額外的載入。;這對於所有參與玩家而言是公平的。

在Quantum開始之後載入

這個選項與上一個類似,但有一個關鍵區別:大廳規則由Quantum模擬來控制與執行。這樣做的話可以讓您立即受益於確定性,這在需要執行預先對戰規則時特別有用——舉例而言,在MOBA中的角色選擇規則。

順序:

  1. 加入一個房間(Realtime)
  2. 開始模擬(Quantum)
  3. 載入遊戲遊玩場景(Unity)
  4. 遊戲遊玩場景有一個由模擬邏輯控制的大廳
  5. 玩家可以以他們的選擇來使用SendPlayerData
  6. 由大廳系統(Quantum)來執行一個逾時,因此在客戶端出現故障時維持了確定性
  7. 停用Quantum中的大廳系統,並且啟用與遊戲遊玩相關的系統
Back to top