場(chǎng)景設置

警告!

本指南(nán)假設您已具備 XR 開發的(de)基礎知識。有關更詳細的(de)内容,請訪問入門文檔頁面


Snapdragon Spaces示例包含了(le)針對(duì)常見 AR 用(yòng)例的(de)現成藍圖。

 

核心藍圖

這(zhè)些藍圖已準備好在 AR 環境中使用(yòng),是示例項目的(de)基礎。

 

BP_GameMode(位于 SnapdragonSpacesSamples Content > SnapdragonSpaces > Common > Core)定義了(le)體驗的(de)規則。目前,它僅将默認的(de) Pawn 類設置爲自定義的(de) BP_Pawn。爲了(le)避免在每個(gè)地圖中都進行自定義,請前往 Project Settings > Maps & Modes,并覆蓋 Default GameMode

 

圖片8.png


在 Unreal Engine 中,Pawn 是用(yòng)戶的(de)物(wù)理(lǐ)表現,定義了(le)用(yòng)戶如何與世界進行交互,自定義的(de) BP_Pawn(位于 SnapdragonSpacesSamples Content > SnapdragonSpaces > Common > Core)可(kě)以與注視控制器或 3DoF 控制器一起使用(yòng)進行交互。此外,它還(hái)包括了(le)這(zhè)些交互控制器的(de)實現,方便在編輯器中進行測試。


圖片9.png


D_ARSessionConfig(位于 SnapdragonSpacesSamples Content > SnapdragonSpaces > Common > Core)定義了(le) AR 會話(huà)中使用(yòng)的(de)功能。有關此資産的(de)基本信息,請參閱 Unreal 文檔,目前,BP_Pawn 定義了(le)示例中使用(yòng)的(de)會話(huà)配置。

 

透視模式(僅适用(yòng)于混合現實設備)

透視模式指的(de)是将物(wù)理(lǐ)環境以圖像的(de)形式呈現給 VR 設備的(de)功能,可(kě)以通(tōng)過主菜單上的(de)一個(gè)新小部件來(lái)啓用(yòng)或禁用(yòng)透視模式,該小部件包含一個(gè)“透視模式”複選框,隻有當設備支持透視模式時(shí),用(yòng)戶才能看到這(zhè)個(gè)小部件。在 BP_MainMenuWidget 藍圖中的(de) BeginPlay 函數會使用(yòng)新函數 IsPassthroughSupported() 檢查設備是否支持透視模式,該函數會返回一個(gè)布爾值,指示 SpacesEngineSubsystem 是否支持透視模式。

 

WBP_Passthrough 上的(de)複選框會調用(yòng) SpacesEngineSubsystem 中的(de) SetPassthroughEnabled(bool) 函數,設置 bPassthroughEnabled 的(de)新值,從而使用(yòng)戶能夠顯示或隐藏物(wù)理(lǐ)環境圖像。另一種調用(yòng) SetPassthroughEnabled(bool) 的(de)方法是使用(yòng)綁定到 XRController(L) X 和(hé) XRController(R) A 的(de) SwitchPassthrough 輸入。

 

bPassthroughEnabled 的(de)值可(kě)以随時(shí)通(tōng)過 GetPassthroughEnabled() 訪問,或者通(tōng)過委托 OnChangePassthrough 綁定,在值發生變化(huà)時(shí)獲取通(tōng)知。


圖片10.png