目錄
概觀
本文說明為何為 XBOX 主機遊戲新增觸控控制項是有益的,並提供如何打造出色觸控控制項體驗的最佳做法。 觸控控制項一直是雲端遊戲作品中玩家最常要求的功能之一。XBOX Cloud Gaming (Beta) 和 XBOX 遠端遊玩都支援這些控制項。XBOX 觸控控制項為玩家開啟了與遊戲互動的新方式,讓玩家在遊玩方式和時機上有更多選擇。透過與遊戲開發人員合作,將觸控控制項整合到超過 200 款遊戲中,我們學到了很多。觸控控制項可協助開發人員更有創意、更靈活地設計玩家在不同裝置和平台上不使用遊戲台與遊戲互動的方式。在開發初期就考量觸控控制項和實體遊戲台對應,開發人員就能設計出更直覺、更容易使用的遊戲體驗,以滿足不同的偏好和情境。為 XBOX 主機遊戲新增觸控控制項的優點
觸控控制項讓玩家無論身在何處,都能在不需要遊戲台的情況下享受遊戲。這讓更廣泛、更多元的玩家族群能夠接觸遊戲,尤其是可能沒有遊戲台或偏好不使用遊戲台遊玩的新手或休閒玩家。XBOX Game Streaming 遙測和資料顯示,已實作觸控控制項的遊戲在各種遊戲類型中,遊玩時間和使用者觀感都有明顯提升。百分之二十的 XBOX Cloud Gaming 玩家只使用觸控來玩遊戲。此外,在所有遊戲類型中,提供觸控控制項的遊戲平均遊玩量約為未提供觸控控制項之遊戲的兩倍。而且,使用觸控控制項的玩家對該遊戲整體串流觀感的滿意度平均而言相當,甚至更高。因此,支援觸控的遊戲必須切合需求,而最重要的是,要能以觸控控制項順暢遊玩。最後,支援觸控的遊戲在目錄中會以 [以觸控遊玩] 篩選條件和 [支援觸控] 標籤特別標示,如下列螢幕擷取畫面所示。綜合以上所有因素,讓遊戲支援觸控的重要性顯而易見,而更重要的是,要確保遊戲能以觸控控制項順暢遊玩。![[以觸控遊玩] 遊戲列的螢幕擷取畫面](https://mintcdn.com/microsoft-4404708b/UZTRJSf0emX1fheE/images/gdk/features/common/play-with-touch.png?fit=max&auto=format&n=UZTRJSf0emX1fheE&q=85&s=069d73da606ef4c7fb6643f817bae080)
最佳做法
本指南提供為遊戲建立觸控控制項的基本做法。這些做法著重於為觸控螢幕裝置上的玩家提供流暢、自然的體驗。大多數做法都可以輕鬆整合,不需要變更現有的遊戲程式碼。先玩其他支援觸控的遊戲
目前已有許多支援觸控的優秀遊戲範例。雖然沒有兩款遊戲的輸入需求完全相同,但只要熟悉現有支援觸控的遊戲,就能了解哪種類型的觸控控制項和配置可能適合您的遊戲、如何使用原生觸控等等。如需如何使用觸控控制項玩遊戲的詳細資訊,請參閱在雲端遊戲或遠端遊玩中使用 XBOX 觸控控制項。使用觸控控制項遊玩未修改的遊戲
直接使用觸控控制項遊玩您的遊戲,以了解遊戲搭配觸控控制項的運作方式,這一點很重要。只要在內容測試應用程式中使用 Standard 配置,從開發套件串流到觸控裝置,即可輕鬆做到。如需如何設定串流開發環境的資訊,請參閱遊戲串流測試必要條件。雖然
Standard 配置有助於感受遊戲搭配觸控控制項的效果,但我們一般不建議使用此配置來玩遊戲。若要為遊戲開發觸控控制項,請參閱下列指導方針。從範本開始並保持精簡
在遊戲中開始使用自訂觸控控制項非常簡單,不需要變更任何遊戲程式碼。只要幾分鐘,您就可以從 XBOX GitHub 的範本取得範例配置,或使用 Create 命令,根據遊戲的特定需求自訂配置。移除所有不必要的按鈕,然後自訂範本。雖然範本已套用許多控制項位置的最佳做法,但下一節將提供更深入的配置自訂指導方針。遵循控制項放置指導方針
傳統的遊戲台控制配置通常最多會同時使用四個輸入。如下圖所示,遊戲過程通常需要在控制器上同時使用兩隻拇指和兩根手指。(綠色的控制項通常使用拇指操作,紅色的控制項則使用手指操作。)


upper 和 lower 區域最適合較不常用的動作。玩家可能需要刻意移動拇指才能觸及這些控制項,尤其是在平板電腦等較大的裝置上。下一節將詳細說明每個區域,以及各種遊戲動作可以考慮放置的位置。
最後,遊玩您的遊戲並依使用頻率為所有動作排序非常重要。例如,在射擊遊戲的 FPS 模式中,常用動作包括射擊、重新裝填、瞄準和移動角色。較不常用的動作包括切換武器、投擲手榴彈和使用物品。最少使用的動作則是開啟選單和地圖。您可以運用此排序,依照下列以主要、次要和第三動作區分的指導方針來放置觸控控制項。
左側滾輪
左側滾輪通常用於玩家移動或行進,以及需要在玩家移動時執行的動作。內部
左側內部滾輪環通常保留給僅一個控制項,用來四處移動角色。這是主要的行進動作。秘訣
- 在角色控制的遊戲中,使用非相對 (絕對) 左搖桿。_相對_一詞是指搖桿如何根據觸控開始的位置來回應觸控移動。如需詳細資訊,請參閱搖桿。
- 如果遊戲有根據左搖桿輸入量變更速度 (例如從走路變為跑步) 的系統,請改用相對左搖桿。在玩家需要逐漸改變輸入以變更速度的情況下,非相對搖桿的效果不佳。
- 在可以使用方向鍵或左搖桿控制角色行進的 2D 遊戲中,請使用方向鍵而非搖桿控制項。除非左搖桿提供方向鍵所沒有的功能 (例如速度或精細的角度方向),否則請這麼做。使用搖桿而非方向鍵時,建議在 2D 角色行進中使用非相對搖桿。
- 對於只用來瀏覽選單的特定配置,請盡可能使用方向鍵控制項。如果無法使用方向鍵,請使用非相對搖桿。
- 簡單的配置請使用相對搖桿。習慣使用遊戲台的玩家對相對搖桿會比較熟悉。不過,非相對搖桿可讓玩家更快速地套用所需的輸入,而不必一直拖曳觸控,因此能提供更高的技術上限。請試用這兩種搖桿,充分了解哪一種最有樂趣。
外部
外部滾輪環適合其他常用動作。不過,最常用的動作通常屬於右側滾輪。秘訣
- 為次要和第三動作建立外環控制項叢集。這可為此動作提供較大的點擊區域。在叢集中只使用單一控制項時,請考慮使用
[<your secondary action control>, null]或[null, <your secondary action control>]的叢集語法,建立含有一個空白位置的雙控制項叢集,與[<your secondary action control>]相比,可有效地將單一控制項放置在環的稍內側或稍外側。 - 將次要動作放在內環左上方的外側,即插槽 7 和插槽 8。這樣不需要往螢幕中央伸展就能輕鬆觸及。在滾輪中的所有其他插槽都已填滿且需要空間之前,請勿分割次要插槽 (控制項叢集)。
- 將第三動作放在內環的正下方,即插槽 4 和插槽 5。這是從主要動作快速移動拇指的舒適位置。在滾輪中的所有其他插槽都已填滿且需要空間之前,請勿分割第三插槽 (控制項叢集)。

- 考量哪些動作需要在玩家行進時同時按住 (例如按住以蹲下或衝刺)。建立具有
action指派的搖桿控制項,讓兩個動作能同時發生,同時讓右拇指能空出來執行其他重要動作。如需範例,請參閱超過閾值時從走路切換為衝刺的搖桿。
右側滾輪
右側滾輪最常用來執行鏡頭移動以及主要角色動作,例如攻擊、射擊、跳躍、使用物品或特殊技能。內部
一般而言,請將右側內部滾輪環保留給僅一個控制項,用來執行最常用的動作,例如主要攻擊。雖然內部滾輪環可以叢集多個控制項,但最好保留一個大型點擊區域專門用於最常用的動作。
秘訣
- 對於可能需要同時按住另一個動作的常用動作 (例如開鏡瞄準),請考慮使用具有
pullAction的按鈕控制項,讓單次觸控就能同時啟動瞄準和射擊。
外部
外部滾輪環通常用於可在移動時執行的快速動作。這類動作的範例包括跳躍、衝刺閃避和重新裝填。秘訣
- 為次要和第三動作建立外環控制項叢集,為此動作提供較大的點擊區域。在叢集中只使用單一控制項時,請考慮使用
[<your secondary action control>, null]或[null, <your secondary action control>]的叢集語法,建立含有一個空白位置的雙控制項叢集,與[<your secondary action control>]相比,可有效地將單一控制項放置在環的稍內側或稍外側。在滾輪中的所有其他插槽都已填滿且需要更多空間之前,請勿在次要叢集中新增其他控制項。 - 將次要動作放在主要動作右上方的外側,即插槽 1 和插槽 2。這樣不需要往螢幕中央伸展就能輕鬆觸及。在滾輪中的所有其他插槽都已填滿且需要空間之前,請勿分割次要插槽 (控制項叢集)。
- 將第三動作放在內環的正下方,即插槽 4 和插槽 5。這是從主要動作快速移動拇指的舒適位置。在滾輪中的所有其他插槽都已填滿且需要空間之前,請勿分割第三插槽 (控制項叢集)。

- 在第三插槽中使用類似跳躍的動作。
如果還有類似衝刺閃避的動作,請在插槽 4 使用衝刺閃避、在插槽 5 使用跳躍,而不要為第三動作使用控制項叢集。這樣可以有效地將空間一分為二,讓主要動作、跳躍、衝刺閃避和玩家移動之間能輕鬆組合。下圖顯示透過叢集,主要攻擊、衝刺閃避和跳躍之間可以輕鬆組合。

- 視其他動作需要與類似跳躍的動作多接近而定,考慮將它們放在次要插槽 (插槽 1 和 2 之間的叢集) 或插槽 6 中。在此基礎上,在插槽 5 和 6 之間建立叢集,即可在跳躍附近放置另一個動作。

- 盡可能使用陀螺儀感應器控制項來控制鏡頭。這樣右拇指就能隨時空出來執行其他動作。不得已時,才使用相對右搖桿來控制鏡頭。
上方
上方區域最適合不常用的選單或瀏覽類動作。此區域從右上角開始,並向中央延伸。秘訣
- 在遊戲的電影式段落中,上方區域可用於略過動作。右上角是瀏覽動作的常見位置,而且很可能位於信箱模式或柱狀模式的黑邊內。
- 左上角保留給系統按鈕。玩家會預期上方列中有類似暫停或瀏覽遊戲的動作。請考慮在此區域放置地圖、物品欄和選單等項目。
下方
下方區域位於螢幕底部中央。此區域是控制項最不常使用的區域。在某些裝置上,可能很難觸及螢幕中央。秘訣
- 雖然可以在下方區域放置空白控制項來調整控制項的位置,但請記住,各種裝置的外型規格可能會讓可見的控制項變少。請勿嘗試透過新增許多空白控制項,將控制項放置在底部角落。它們經常會與控制滾輪重疊。玩家經常會將滾輪稍微往下移,以取得舒適的遊玩姿勢。
遵循特定控制項類型和進階情境的秘訣
4 向和 8 向方向鍵
方向鍵通常用於控制角色進行 4 向或 8 向移動。它也適合用來瀏覽選單。根據預設,方向鍵控制項的運作方式與實體方向鍵相同,可同時啟動多個方向。這也稱為 8 向。相較之下,4 向方向鍵一次只能啟動四個方向中的一個。若要將方向鍵限制為僅限 4 向,請將"interaction": {"activationType": "exclusive"} 新增至控制項。
秘訣
- 當 2D 遊戲允許角色往包括斜角在內的八個方向移動時,請使用 8 向方向鍵。
- 當 2D 遊戲只允許角色往左、右、上、下四個方向移動時,請使用 4 向方向鍵。
- 控制選單時,請使用 4 向方向鍵。
陀螺儀瞄準和射擊遊戲秘訣
將複雜遊戲調整為觸控控制項時,常見的情境是,雖然使用者只有兩隻拇指能合理地與觸控控制項互動,但可能需要一次啟動兩個以上的動作。為了協助處理這些較複雜的工作,可以使用陀螺儀來提供額外的輸入。秘訣
- 使用陀螺儀來控制玩家視角鏡頭。能夠左右及前後傾斜裝置來精確控制鏡頭,對玩家來說很直覺。
- 在遊戲中瞄準時,搭配滑鼠輸入使用陀螺儀 (指定
"output": "relativeMouse") 遠優於使用搖桿 (指定"output": "relativeJoystick"),尤其是在第一人稱和第三人稱遊戲中。 - 手機在實體空間中旋轉 90 度,通常會讓遊戲內角色轉動 120 度。此功能讓玩家在不同遊戲間切換時更容易上手,並讓控制項感覺更熟悉。
- 建議搭配觸控板使用陀螺儀。較熟練的玩家會希望使用此組合來快速轉向,而大部分的精細瞄準則來自陀螺儀。
- 考慮將搖桿與陀螺儀結合,提供更多遊玩方式。除了搖桿提供的功能之外,還可以使用陀螺儀控制項進行微調。
- 「永遠開啟」樣式的陀螺儀具有最高的技術上限;不過,這種樣式不適合在行進中車輛上的玩家。
- 在可行的情況下,針對選單和遊戲中不需要陀螺儀控制項的其他段落,使用不含陀螺儀控制項的不同配置。
- 視動作以及遊戲如何支援這些能力而定,大多數按鈕可使用
"renderAsButton": true的觸控板建立。瞄準+射擊是主要範例,但這也適用於格擋和投擲手榴彈等動作。以下是瞄準 (LT) + 射擊 (RT) 觸控板控制項的範例。
- 一律將瞄準+射擊放在較靠近螢幕中央的位置,通常是右側滾輪外側的插槽 5。如果放在邊緣,當玩家無法將鏡頭完全轉向右側時,就會沒有空間可以滑動。
- 為第一人稱或第三人稱射擊遊戲建置新的觸控配置時,請使用第一人稱射擊入門範本。每個動作的位置都經過充分分析。
renderAsButton: true 的觸控板作為瞄準+射擊控制項,以達成精確瞄準,如下列螢幕擷取畫面所示。

處理複雜和組合動作
只用兩隻拇指執行複雜動作,對玩家來說可能很有挑戰性。觸控調整套件提供數種機制,讓玩家能以觸控執行複雜動作。秘訣
- 可以將多個動作指派給單一控制項。例如,同時按下左肩按鈕和右肩按鈕會啟動蹲下。下列按鈕定義可讓玩家按一下即可啟用蹲下。
將多個動作指派給控制項時,無法使用預設圖示。請務必自訂樣式,以指出控制項具有的語意動作,如下列範例所示。
- 可以將
pullAction指派給按鈕控制項。這可協助玩家使用一次觸控和拖曳動作來啟動兩個動作。例如,瞄準指派給 LT,射擊指派給 RT。下列按鈕定義可讓玩家在按住按鈕時瞄準,然後向外拉動來射擊。
- 具有
action和actionThreshold的搖桿,除了其軸輸出之外,只有在達到actionThreshold的值時才會啟動指派的動作。例如,只有左搖桿輸入時會啟動走路,按下 RT 並搭配左搖桿輸入則會啟動衝刺。下列搖桿定義可讓玩家在超過閾值 2.5 時啟動衝刺。玩家只要使用左搖桿就能從走路切換為衝刺。

- 具有 “action” 的搖桿可在使用搖桿時啟動指派的動作。例如,按下左肩按鈕會啟動環形選單,並可透過移動右搖桿進行選取。下列搖桿定義可讓玩家按住左肩按鈕,並使用右搖桿從環形選單中選取動作。
action 的搖桿,透過環形選單來選取裝備。

使用觸控調整套件編輯器
適用於 Visual Studio Code 的觸控調整套件 (TAK) 編輯器延伸模組是用於建立、預覽、驗證及封裝觸控調整套件組合 (TAB) 的工具。這些檔案的副檔名為 .takx。您可以在 VS Code 中針對 XBOX Game Streaming 上的遊戲使用 TAK 編輯器,而不需要進行中的遊戲串流。使用此 VS Code 延伸模組可提供內嵌 Intellisense,並簡化觸控控制項的撰寫體驗。
變更觸控控制項以符合目前的遊戲內情境
遊戲可以在執行階段根據動態遊戲狀態,變更觸控配置或修改配置的狀態。這兩種方法可以搭配使用,為玩家打造最自然的體驗。如需詳細資訊,請參閱有關如何根據遊戲狀態變更觸控配置或修改狀態的文件。 例如,Minecraft Dungeons 會使用觸控配置狀態修改,隨著玩家學會新能力,逐步顯示遊戲機制。

使用電影式配置,在影片和過場動畫期間保持沉浸感
影片和過場動畫的主要用途是讓玩家觀賞以享受遊戲的故事。必要的控制項通常僅限於暫停和略過等項目。為了打造最具沉浸感的觀賞體驗,盡可能移除控制項非常重要。秘訣
- 可能的話,只在玩家需要時才顯示觸控控制項。
- 偵測玩家的觸控輸入相對簡單。如需詳細資訊,請參閱使用 IGameInput 為遊戲建置原生觸控介面和完整的 SimpleCloudAwareSample 遊戲範例。
- 即使顯示了觸控調整套件配置,仍可偵測觸控。透過使用原生觸控 API,玩家可以點選螢幕,讓遊戲顯示最精簡的電影式配置。在一段時間未偵測到觸控輸入後,遊戲可以隱藏此配置。


使用原生觸控完整自訂觸控互動
原生觸控是在觸控螢幕裝置上玩遊戲最熟悉的方式。行動裝置上的玩家很熟悉內建直接觸控支援來控制遊戲的遊戲。透過使用GameInput API,您可以在遊戲中啟用原生觸控。它提供更直覺、更自然的方式來與遊戲世界互動。原生觸控可以補充或取代重新對應至 XBOX 控制器按鈕和搖桿的觸控調整套件覆疊。如需詳細資訊,請參閱使用 IGameInput 為遊戲建置原生觸控介面和完整的 SimpleCloudAwareSample 遊戲範例。
以下是一些原生觸控支援的範例。
- 物品欄管理: 原生觸控可讓玩家直接點選物品,甚至使用拖曳等技巧,讓選取和裝備物品變得更輕鬆、更快速。與傳統以控制器為基礎的管理方式相比,這可以大幅提升使用品質。

- 選單: 在觸控螢幕上操作選單更加直覺。只要點選想要的項目即可,不必使用方向鍵或搖桿瀏覽到該項目。
- 完整原生觸控支援: 有些遊戲支援完整的原生觸控,不需要使用觸控調整套件重新對應至控制器。這可讓玩家完全專注於行動遊戲體驗。這些遊戲通常已經有行動版本或支援觸控友善介面,因此支援原生觸控相對容易。主要設計為使用滑鼠遊玩的遊戲,通常也比較容易支援原生觸控。

使用自訂資產以符合遊戲的美術風格
雖然您可以從內建的圖示集中為控制項選取資產,但最具沉浸感且最無縫的體驗,是使用與遊戲美術風格相符的圖稿來自訂控制項。這麼做能讓觸控調整套件覆疊感覺目的明確、自然,且是遊戲不可或缺的一部分。這與單純重新對應僅考量控制器而設計的遊戲形成對比。 例如,Minecraft Dungeons 使用反映遊戲內設計語言的方塊風格圖示。
針對觸控控制項變更遊戲內 UI、提示和控制項重新對應
UI、提示和控制項重新對應通常會根據玩家使用的輸入類型而變更。例如,如果遊戲同時支援遊戲台以及鍵盤和滑鼠輸入類型,通常會在偵測到遊戲台輸入時顯示遊戲台專用的按鈕提示。偵測到鍵盤或滑鼠輸入時,遊戲通常會顯示鍵盤和滑鼠 UI。 這種以輸入類型為基礎的動態使用者體驗,也適用於觸控調整套件控制項。透過使用 XGameStreamingGetGamepadPhysicality API,可以識別輸入是來自實體遊戲台,還是來自已轉譯為虛擬控制器輸入的觸控配置。據此,可以自訂使用者體驗,向玩家顯示最適當的圖像。 例如,Gears 5 會根據輸入類型動態調整遊戲內提示。


檢查觸控控制項和 XBOX Game Streaming 的常見問題
遊戲過程中中斷連線
在行動裝置上,玩家有許多情況會短暫離開遊戲。例如,前往主畫面、查看訊息和新聞,以及撥打電話。這些情況會導致串流用戶端中斷連線或暫停。因此,可能會與遊戲產生狀態不一致的情形。秘訣
- 確保遊戲從中斷連線狀態返回時,觸控控制項 (包括配置、資產和狀態) 能正確載入和運作。使用 API 控制觸控控制項的狀態時,這一點尤其重要。
- 玩家中斷連線時,盡可能暫停遊戲,以避免進度遺失或遊戲結束的情況。這可以透過偵測受限事件或串流用戶端的中斷連線來完成。
與各種裝置類型的相容性
能夠使用觸控控制項的裝置類型有很多種,包括手機、平板電腦和二合一電腦。這些裝置的特性各不相同,包括螢幕大小的差異以及是否具有感應器,如果未考量這些差異,可能會無法舒適地遊玩。秘訣
- 確保所有觸控控制項在各種螢幕大小的裝置上都能運作,且容易觸及。
- 確認裝置上感應器的可用性。如果無法使用感應器,請提供不需要感應器的其他選項。例如,您的遊戲使用陀螺儀進行瞄準。如果裝置上沒有陀螺儀,請改用觸控板控制項。
- 若要輕鬆測試不同的螢幕大小,可以使用電腦變更電腦版內容測試應用程式或網頁瀏覽器的視窗大小。如果手邊沒有支援觸控的電腦,內容測試應用程式提供將滑鼠點選視為觸控事件的設定,可進行基本測試。最後,使用 TAK 編輯器延伸模組預覽視窗檢視,即可輕鬆檢視不同尺寸的觸控控制項。
