當玩家將您的遊戲串流到其行動裝置時,提升遊戲樂趣的最佳方式之一,就是讓他們能夠使用觸控控制項與您的遊戲互動。XBOX 遊戲串流支援使用 Touch Adaptation Kit 在遊戲上方疊加觸控控制項,對於遊戲中許多以虛擬遊戲手把遊玩是自然方式的畫面而言,這會是很好的選擇。不過,對於遊戲中的選單、地圖、物品欄畫面等部分,直接使用觸控輸入與遊戲互動可能更為自然。例如,玩家很自然地會想點選選單選項來與其互動,或想使用手機手勢來放大和捲動地圖。Microsoft Game Development Kit (GDK) 提供的 API 可讓您在遊戲中建置這種原生觸控介面,使其感覺像是真正的行動體驗。Touch Adaptation Kit 與原生觸控並非互斥:您可以在遊戲中同時使用兩者,在最適合您遊戲的地方使用各種形式的觸控輸入。例如,使用原生觸控選單,同時在主要遊戲迴圈中使用 Touch Adaptation Kit,可能是建構遊戲觸控輸入策略的合理方式。
如果您正在建置使用原生觸控的遊戲,請通知您的客戶經理。必須設定 XBOX Game Streaming 後端服務,您的遊戲部署到零售環境時才能接收觸控事件。
原生觸控是透過 IGameInputReading::GetTouchState API 提供給您的遊戲。此 API 會提供目前的觸控點集合,代表玩家目前用來觸碰螢幕的手指集合。若要將這些觸控點轉換為按下、移動和放開事件,在每個畫面之間追蹤其狀態會很有幫助。
任何在前一個畫面中不存在、但在目前畫面中存在的觸控點,都是新的觸控按下。
任何在前一個畫面中存在、且在目前畫面中仍然存在的觸控點,若觸控的座標已變更即為移動,否則為無作業。
在前一個畫面中存在、但已不再存在的觸控點,則為觸控放開。
建置這些按下、移動和放開事件的非常基本輸入迴圈,可能如下所示:
struct TouchPoint{ // GameInputTouchState.touchId corresponding to this point uint64_t Id = 0; // X pixel being touched uint32_t X = 0; // Y pixel being touched uint32_t Y = 0; // Is this entry in the array of touch points currently being used to track a touch bool IsInUse = false; // Is this TouchPoint tracking a finger which is currently touching the screen bool IsTouchActive = false;};// Touch points currently being trackedstd::array<TouchPoint, 10> g_touchPoints = {};extern IGameInput* g_gameInput;extern uint32_t g_frameWidth;extern uint32_t g_frameHeight;void TouchPointPressed(const TouchPoint& touchPoint);void TouchPointMoved(const TouchPoint& touchPoint);void TouchPointReleased(const TouchPoint& touchPoint);void ProcessTouchInput(){ // Reset the active touch state from the previous frame for (TouchPoint& touchPoint : g_touchPoints) { touchPoint.IsTouchActive = false; } // Process any new touch points for this frame Microsoft::WRL::ComPtr<IGameInputReading> reading = nullptr; if (SUCCEEDED(g_gameInput->GetCurrentReading(GameInputKindTouch, nullptr, &reading))) { uint32_t touchCount = reading->GetTouchCount(); if (touchCount > 0) { std::vector<GameInputTouchState> touchStates(touchCount); touchCount = reading->GetTouchState(touchCount, touchStates.data()); for (const GameInputTouchState& touchState : touchStates) { const uint32_t x = static_cast<uint32_t>(touchState.positionX * g_frameWidth); const uint32_t y = static_cast<uint32_t>(touchState.positionY * g_frameHeight); // Check to see if we are already tracking this touch point auto existingPoint = std::find_if(std::begin(g_touchPoints), std::end(g_touchPoints), [id = touchState.touchId](const TouchPoint& point) { return point.IsInUse && point.Id == id; }); if (existingPoint != g_touchPoints.end()) { // We were already tracking the point - it is still alive this frame, but it may have // also moved position. existingPoint->IsTouchActive = true; if (existingPoint->X != x || existingPoint->Y != y) { existingPoint->X = x; existingPoint->Y = y; TouchPointMoved(*existingPoint); } } else { // This is a new touch point. Start tracking it and treat it as a press auto insertPoint = std::find_if(std::begin(g_touchPoints), std::end(g_touchPoints), [](const TouchPoint& point) { return !point.IsInUse; }); if (insertPoint != std::end(g_touchPoints)) { insertPoint->Id = touchState.touchId; insertPoint->X = x; insertPoint->Y = y; insertPoint->IsInUse = true; insertPoint->IsTouchActive = true; TouchPointPressed(*insertPoint); } } } } // Look for any points which were pressed last frame but are no longer pressed this frame // and treat those as touch releases for (TouchPoint& touchPoint : g_touchPoints) { if (touchPoint.IsInUse && !touchPoint.IsTouchActive) { TouchPointReleased(touchPoint); touchPoint = TouchPoint{}; } } }}
最後修改於 2026年10月20日
這個頁面有幫助嗎?
⌘I
{"docsConfig":{"theme":"maple","$schema":"https://mintlify.com/docs.json","name":"XBOX Game Development Documentation","description":"Official developer documentation for the Microsoft Game Development Kit (GDK), XBOX Services APIs, PlayFab, PIX, and Partner Center — build, publish, and operate games on XBOX and Windows.","colors":{"primary":"#7CC400","light":"#7CC400","dark":"#7CC400"},"logo":{"light":"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026auto=format\u0026n=EGENQIzNH9RmFI5A\u0026q=85\u0026s=78627ddb1e16ee7d1baa7bf50fdd25f5","dark":"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026auto=format\u0026n=EGENQIzNH9RmFI5A\u0026q=85\u0026s=78627ddb1e16ee7d1baa7bf50fdd25f5"},"favicon":{"light":"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026auto=format\u0026n=EGENQIzNH9RmFI5A\u0026q=85\u0026s=78627ddb1e16ee7d1baa7bf50fdd25f5","dark":"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026auto=format\u0026n=EGENQIzNH9RmFI5A\u0026q=85\u0026s=78627ddb1e16ee7d1baa7bf50fdd25f5"},"appearance":{"default":"dark"},"background":{"color":{"light":"#FFFFFF","dark":"#09090b"}},"navbar":{"links":[{"href":"https://forms.cloud.microsoft/Pages/ResponsePage.aspx?id=v4j5cvGGr0GRqy180BHbR0NCPI86XoxGliSdH5F4obBUNUJFVE1BN0U4MlRUQzRSQUtGTjkwVDFaNy4u","label":"Submit a Bug / Issue"}],"primary":{"type":"button","label":"User Experience Feedback","href":"https://forms.cloud.microsoft/Pages/ResponsePage.aspx?id=v4j5cvGGr0GRqy180BHbR0NCPI86XoxGliSdH5F4obBUM0FQSjUwQkYyVFdDQ0tLQlI0MjhJTzQ1Wi4u"}},"footer":{"socials":{"website":"https://developer.microsoft.com/en-us/games","discord":"https://discord.com/invite/BDVZ8yY38W","youtube":"https://www.youtube.com/msftgamedev"},"links":[{"header":"GDK","items":[{"label":"GDK Download","href":"https://www.microsoft.com/en-us/software-download/gdk"},{"label":"GDK on GitHub","href":"https://github.com/microsoft/GDK"},{"label":"GDK Samples","href":"https://github.com/microsoft/Xbox-GDK-Samples"}]},{"header":"Services \u0026 Tools","items":[{"label":"PlayFab","href":"https://developer.microsoft.com/en-us/games/products/playfab"},{"label":"Microsoft Azure","href":"https://azure.microsoft.com/"},{"label":"Visual Studio","href":"https://visualstudio.microsoft.com/"},{"label":"Havok","href":"https://www.havok.com/"},{"label":"Simplygon","href":"https://www.simplygon.com/"}]},{"header":"Publishing","items":[{"label":"Onboarding HUB","href":"https://developer.microsoft.com/en-US/games/publish"},{"label":"Publish with ID@XBOX","href":"https://www.xbox.com/en-US/developers/id"},{"label":"XBOX Publisher Guide","href":"https://developer.microsoft.com/en-us/games/publish"},{"label":"Partner Center","href":"https://partner.microsoft.com/en-us/dashboard"}]}]},"seo":{"metatags":{"author":"XBOX","category":"Game Development","og:site_name":"XBOX Game Development Documentation","og:image":"/images/We_Are_Xbox_Email-Signature_200x200.png","twitter:card":"summary_large_image","twitter:image":"/images/We_Are_Xbox_Email-Signature_200x200.png","description":"Official developer documentation for the Microsoft Game Development Kit (GDK), XBOX Services APIs, PlayFab, PIX, and Partner Center — build, publish, and operate games on XBOX and Windows.","keywords":"XBOX, GDK, Game Development Kit, XSAPI, PlayFab, Partner Center, PIX, Microsoft Game Development, XBOX Series X, XBOX One, Windows game development, xbox-live, achievements, multiplayer","og:type":"website","twitter:site":"@msftgamedev"},"organization":{"name":"Microsoft","url":"https://developer.microsoft.com/en-us/games/","logo":"https://developer.microsoft.com/en-us/games/favicon.ico","sameAs":["https://github.com/microsoft/Xbox-GDK-Samples","https://www.youtube.com/msftgamedev","https://developer.microsoft.com/en-us/games/"]},"indexing":"navigable"},"fonts":{"heading":{"family":"Segoe UI Bold","weight":700,"source":"fonts/Segoe UI Bold.woff","format":"woff"},"body":{"family":"Segoe UI","weight":400,"source":"fonts/Segoe UI.woff","format":"woff"}},"styling":{"eyebrows":"breadcrumbs","latex":true},"thumbnails":{"background":"https://mintcdn.com/microsoft-4404708b/yWviP1jMKvfGdjTk/images/We_Are_Xbox_Teams-Background_01_Original_1920x1080.webp?fit=max\u0026auto=format\u0026n=yWviP1jMKvfGdjTk\u0026q=85\u0026s=80319a2dac1bf15401e6b379afe9e911"},"metadata":{"timestamp":true},"navigation":{"languages":[{"language":"en","href":""},{"language":"es","href":"es"},{"language":"fr-CA","href":"fr-CA"},{"language":"fr","href":"fr"},{"language":"ja-jp","href":"ja-jp"},{"language":"ko","href":"ko"},{"language":"pt-BR","href":"pt-BR"},{"language":"zh-CN","href":"zh-CN"},{"language":"zh-TW","href":"zh-TW"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"microsoft-4404708b","hasAudioNarration":false,"actualSubdomain":"microsoft-4404708b","customDomains":["docs.xbox.com","devdocs.xbox.com"],"gitSource":{"type":"github","owner":"microsoft","repo":"xbox-game-development-documentation","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"eaf903eb-9218-420c-b471-71f9e4b4e8be","liveDeploymentHistoryId":"6ae55fa57129a4cc30992f66","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae55fa57129a4cc30992f66"},"feedback":{"thumbs":true,"agentFeedback":true,"issues":false,"edits":false,"contextualFeedback":{"allowEmail":true}},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae55fa57129a4cc30992f66","clientVersion":"0.0.4043","searchFilterCounts":[{"language":"en","tag":"GDK APIs","count":3482},{"language":"fr-CA","tag":"GDK APIs","count":3417},{"language":"fr","tag":"GDK APIs","count":3417},{"language":"zh-TW","tag":"GDK APIs","count":3417},{"language":"pt-BR","tag":"GDK APIs","count":3416},{"language":"ko","tag":"GDK APIs","count":3386},{"language":"en","tag":"PlayFab APIs","count":3346},{"language":"fr-CA","tag":"PlayFab APIs","count":3346},{"language":"fr","tag":"PlayFab APIs","count":3346},{"language":"pt-BR","tag":"PlayFab APIs","count":3346},{"language":"zh-TW","tag":"PlayFab APIs","count":3346},{"language":"zh-CN","tag":"PlayFab APIs","count":3341},{"language":"es","tag":"PlayFab APIs","count":3340},{"language":"ja-jp","tag":"PlayFab APIs","count":3340},{"language":"ko","tag":"PlayFab APIs","count":3340},{"language":"zh-CN","tag":"GDK APIs","count":3337},{"language":"ja-jp","tag":"GDK APIs","count":3336},{"language":"es","tag":"GDK APIs","count":3330},{"language":"en","tag":"PlayFab API","count":2556},{"language":"fr-CA","tag":"PlayFab API","count":2556},{"language":"fr","tag":"PlayFab API","count":2556},{"language":"pt-BR","tag":"PlayFab API","count":2556},{"language":"zh-CN","tag":"PlayFab API","count":2556},{"language":"zh-TW","tag":"PlayFab API","count":2556},{"language":"es","tag":"PlayFab API","count":2555},{"language":"ja-jp","tag":"PlayFab API","count":2555},{"language":"ko","tag":"PlayFab API","count":2555},{"language":"en","tag":"API Reference","count":2428},{"language":"fr-CA","tag":"API Reference","count":2428},{"language":"fr","tag":"API Reference","count":2428},{"language":"pt-BR","tag":"API Reference","count":2428},{"language":"zh-CN","tag":"API Reference","count":2428},{"language":"zh-TW","tag":"API Reference","count":2428},{"language":"es","tag":"API Reference","count":2427},{"language":"ja-jp","tag":"API Reference","count":2427},{"language":"ko","tag":"API Reference","count":2427},{"language":"en","tag":"Functions","count":1982},{"language":"fr-CA","tag":"Functions","count":1920},{"language":"fr","tag":"Functions","count":1920},{"language":"pt-BR","tag":"Functions","count":1920},{"language":"zh-TW","tag":"Functions","count":1920},{"language":"ko","tag":"Functions","count":1918},{"language":"ja-jp","tag":"Functions","count":1914},{"language":"es","tag":"Functions","count":1912},{"language":"zh-CN","tag":"Functions","count":1912},{"language":"en","tag":"Services C API","count":1523},{"language":"es","tag":"Services C API","count":1523},{"language":"fr-CA","tag":"Services C API","count":1523},{"language":"fr","tag":"Services C API","count":1523},{"language":"ja-jp","tag":"Services C API","count":1523},{"language":"ko","tag":"Services C API","count":1523},{"language":"pt-BR","tag":"Services C API","count":1523},{"language":"zh-CN","tag":"Services C API","count":1523},{"language":"zh-TW","tag":"Services C API","count":1523},{"language":"en","tag":"XBOX services API reference","count":1105},{"language":"zh-CN","tag":"XBOX services API reference","count":1048},{"language":"ja-jp","tag":"XBOX services API reference","count":1044},{"language":"fr-CA","tag":"XBOX services API reference","count":1043},{"language":"fr","tag":"XBOX services API reference","count":1043},{"language":"ko","tag":"XBOX services API reference","count":1043},{"language":"zh-TW","tag":"XBOX services API reference","count":1043},{"language":"pt-BR","tag":"XBOX services API reference","count":1042},{"language":"es","tag":"XBOX services API reference","count":1041},{"language":"pt-BR","tag":"Services","count":988},{"language":"fr","tag":"Services","count":987},{"language":"zh-TW","tag":"Services","count":987},{"language":"fr-CA","tag":"Services","count":986},{"language":"en","tag":"Services","count":977},{"language":"zh-CN","tag":"Services","count":969},{"language":"ja-jp","tag":"Services","count":963},{"language":"ko","tag":"Services","count":960},{"language":"es","tag":"Services","count":949},{"language":"en","tag":"Structures","count":927},{"language":"fr-CA","tag":"Structures","count":927},{"language":"fr","tag":"Structures","count":927},{"language":"pt-BR","tag":"Structures","count":927},{"language":"zh-TW","tag":"Structures","count":927},{"language":"ko","tag":"Structures","count":907},{"language":"zh-CN","tag":"Structures","count":898},{"language":"es","tag":"Structures","count":897},{"language":"ja-jp","tag":"Structures","count":897},{"language":"en","tag":"PlayFab REST API References","count":757},{"language":"es","tag":"PlayFab REST API References","count":757},{"language":"fr-CA","tag":"PlayFab REST API References","count":757},{"language":"fr","tag":"PlayFab REST API References","count":757},{"language":"ja-jp","tag":"PlayFab REST API References","count":757},{"language":"ko","tag":"PlayFab REST API References","count":757},{"language":"pt-BR","tag":"PlayFab REST API References","count":757},{"language":"zh-CN","tag":"PlayFab REST API References","count":757},{"language":"zh-TW","tag":"PlayFab REST API References","count":757},{"language":"default","tag":"PlayFab APIs","count":596},{"language":"default","tag":"PlayFab REST API References","count":596},{"language":"default","tag":"Server","count":162},{"language":"default","tag":"Account Management","count":112},{"language":"default","tag":"Multiplayer","count":88},{"language":"default","tag":"Client","count":79},{"language":"default","tag":"Admin","count":74},{"language":"default","tag":"Addon","count":62},{"language":"default","tag":"MultiplayerServer","count":51},{"language":"default","tag":"Groups","count":50}],"searchSettings":{"maxResults":10,"isFiltersEnabled":true,"showContentSnippets":true}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":true,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true,"deflection":{"enabled":false,"type":"link"}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"starterQuestions":[{"_id":"6ac9660d63bf063e3d634cde","deploymentId":"6a1f493825ae88ce6e69dab9","questionText":"What do I need to do before I can publish my game?","status":"active","generatedBy":"manual","createdAt":"2026-10-09T22:09:17.346Z","updatedAt":"2026-10-09T22:09:17.346Z","__v":0},{"_id":"6ac965e463bf063e3d634a49","deploymentId":"6a1f493825ae88ce6e69dab9","questionText":"How do I get access to game development tools?","status":"active","generatedBy":"manual","createdAt":"2026-10-09T22:08:36.356Z","updatedAt":"2026-10-09T22:08:36.356Z","__v":0},{"_id":"6ac965c863bf063e3d634792","deploymentId":"6a1f493825ae88ce6e69dab9","questionText":"How do I get started in building my XBOX game?","status":"active","generatedBy":"manual","createdAt":"2026-10-09T22:08:08.403Z","updatedAt":"2026-10-09T22:08:08.403Z","__v":0}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":"#content-area{max-width:none;min-width:0}#content [data-table-wrapper] [data-component-part=scroll-area-viewport]{scrollbar-width:thin}#content [data-table-wrapper] [data-component-part=scroll-area-viewport]::-webkit-scrollbar{display:block;height:8px}#content [data-table-wrapper] [data-component-part=scroll-area-viewport]::-webkit-scrollbar-thumb{background-color:gray;border-radius:4px}#content [data-table-wrapper] [data-component-part=scroll-area-scrollbar][data-orientation=horizontal]{display:none}#background-color::after{content:\"\";position:fixed;inset:0;pointer-events:none;z-index:0;background:linear-gradient(to top left,rgba(124,196,0,.18) 0,rgba(124,196,0,.08) 10%,rgba(124,196,0,.02) 25%,rgba(124,196,0,0) 60%)}html.light #background-color::after{background:linear-gradient(to top left,rgba(124,196,0,.1) 0,rgba(124,196,0,.05) 10%,rgba(124,196,0,.02) 25%,rgba(124,196,0,0) 60%)}#sidebar{background:linear-gradient(to right,rgba(124,196,0,.08) 0,rgba(124,196,0,.03) 25%,rgba(124,196,0,0) 60%);border-right:1px solid rgba(124,196,0,.15)}html.light #sidebar{background:linear-gradient(to right,rgba(124,196,0,.05) 0,rgba(124,196,0,.02) 25%,rgba(124,196,0,0) 60%);border-right:1px solid rgba(124,196,0,.12)}#content-area a.link,#mdx-content a,#mdx-content a.link,mdx-content a{color:#1e6feb}#content-area a.link:hover,#mdx-content a.link:hover,#mdx-content a:hover,mdx-content a:hover{color:#1552b8}html.dark #content-area a.link,html.dark #mdx-content a,html.dark mdx-content a{color:#4c9aff}html.dark #content-area a.link:hover,html.dark #mdx-content a:hover,html.dark mdx-content a:hover{color:#7bb6ff}html.light #content-area,html.light #mdx-content,html.light #mdx-content dd,html.light #mdx-content dt,html.light #mdx-content li,html.light #mdx-content p,html.light #mdx-content span,html.light #mdx-content td,html.light #mdx-content th,html.light mdx-content{color:#1f1f1f}html.light #mdx-content h1,html.light #mdx-content h2,html.light #mdx-content h3,html.light #mdx-content h4,html.light #mdx-content h5,html.light #mdx-content h6,html.light #page-title,html.light #sidebar,html.light #sidebar a,html.light #sidebar-content,html.light #table-of-contents,html.light breadcrumb-item,html.light breadcrumb-list,html.light sidebar-group,html.light sidebar-group-header,html.light sidebar-title,html.light toc-item,html.light toc-item a{color:#000}html.dark #content-area,html.dark #mdx-content,html.dark #mdx-content dd,html.dark #mdx-content dt,html.dark #mdx-content li,html.dark #mdx-content p,html.dark #mdx-content span,html.dark #mdx-content td,html.dark #mdx-content th,html.dark mdx-content{color:#e6e6e6}html.dark #mdx-content h1,html.dark #mdx-content h2,html.dark #mdx-content h3,html.dark #mdx-content h4,html.dark #mdx-content h5,html.dark #mdx-content h6,html.dark #page-title,html.dark #sidebar,html.dark #sidebar a,html.dark #sidebar-content,html.dark #table-of-contents,html.dark breadcrumb-item,html.dark breadcrumb-list,html.dark sidebar-group,html.dark sidebar-group-header,html.dark sidebar-title,html.dark toc-item,html.dark toc-item a{color:#fff}"},{"filePath":"style.css","content":":root{--sidebar-width:17rem;--content-width:100%}@media (min-width:1024px){html:not([data-page-mode=custom]) #content-container{padding-inline:2rem;column-gap:1.5rem}}@media (min-width:1280px){#content-side-layout:not([data-api-example]){flex:0 0 13rem;width:13rem;max-width:13rem}#content-side-layout:not([data-api-example]) #table-of-contents-layout{width:100%;padding-inline-start:0}}#content [data-table-wrapper]{--page-padding:0px;width:100%;max-width:100%;margin-inline:0}#content [data-table-wrapper]>[data-component-part=scroll-area-viewport],#content table [data-component-part=code-block-root]>[data-component-part=scroll-area-viewport]{overflow:visible!important}#content [data-table-wrapper]>[data-component-part=scroll-area-viewport]>[data-component-part=scroll-area-content]{display:block;width:100%;min-width:0!important}#content [data-table-wrapper]>[data-component-part=scroll-area-viewport]>[data-component-part=scroll-area-content]>div{display:block;width:100%;min-width:0}#content table{table-layout:fixed;width:100%;min-width:0;max-width:100%}#content table td,#content table th{min-width:0;word-break:normal;vertical-align:top}#content table code,#content table td,#content table th{white-space:normal;overflow-wrap:anywhere}#content table pre,#content table pre code,#content table pre code span{white-space:pre-wrap!important;overflow-wrap:anywhere;word-break:normal}#content table [data-component-part=code-block-root],#content table [data-component-part=scroll-area-content]{width:100%;min-width:0!important;max-width:100%}#content [data-table-wrapper]>[data-fade-overlay],#content table [data-fade-overlay]{display:none}#content .xbox-home{--xbox-text:#181d14;--xbox-secondary:#4d5646;--xbox-muted:#5d6755;--xbox-card:#f4f7ef;--xbox-border:#dce3d5;--xbox-accent:#427100;width:min(100%,902px);margin-inline:auto;padding:120px 32px 96px;color:var(--xbox-text);font-family:var(--font-inter),Inter,\"Segoe UI\",sans-serif;font-size:16px;line-height:1.6}html.dark #content .xbox-home{--xbox-text:#fafafa;--xbox-secondary:#cccfc9;--xbox-muted:#a2a49e;--xbox-card:#0d100b;--xbox-border:#252922;--xbox-accent:#7cc400}#content .xbox-home,#content .xbox-home *,#content .xbox-home ::after,#content .xbox-home ::before{box-sizing:border-box}#content .xbox-home :is(h1, h2, h3, p, dl, dt, dd, ol){margin:0}#content .xbox-home a{color:inherit;text-decoration:none}#content .xbox-home a:focus-visible,#content .xbox-home summary:focus-visible{outline:2px solid var(--xbox-accent);outline-offset:5px}#content .xbox-home img{display:block;margin:0;flex-shrink:0}#content .xbox-home-hero{display:grid;grid-template-columns:minmax(0,1fr) 376px;gap:48px;align-items:start;margin-bottom:76px}#content .xbox-home h1{font-size:52px;font-weight:500;line-height:1.05;letter-spacing:-1.2px}#content .xbox-home .xbox-home-description{display:block;margin-top:24px;color:var(--xbox-secondary);font-size:17px;line-height:28px}#content .xbox-home-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;font-size:13px}#content .xbox-home-primary,#content .xbox-home-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 14px;border:1px solid var(--xbox-border);border-radius:10px}#content .xbox-home .xbox-home-primary{border-color:#7cc400;background:#7cc400;color:#101708;font-weight:600}#content .xbox-home-start{padding:20px 20px 8px;border:1px solid var(--xbox-border);border-radius:16px;background:var(--xbox-card)}#content .xbox-home-start h2{font-size:14px;font-weight:600;line-height:24px}#content .xbox-home .xbox-home-start-description{display:block;margin:4px 0 16px;color:var(--xbox-muted);font-size:12px;line-height:20px}#content .xbox-home-start-link{display:flex;align-items:center;gap:12px;min-height:52px;padding-block:12px;border-top:1px solid var(--xbox-border);font-size:13px;line-height:20px}#content .xbox-home-start-link span,#content .xbox-home-step span{flex:1}#content .xbox-home-section+.xbox-home-section{margin-top:52px}#content .xbox-home-section>h2{margin-bottom:24px;font-size:24px;font-weight:500;line-height:32px;letter-spacing:-.3px}#content .xbox-home-section>.xbox-home-section-description{margin-top:-12px;margin-bottom:24px;color:var(--xbox-muted);font-size:15px}#content .xbox-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}#content .xbox-home-product{border-radius:12px;background:var(--xbox-card)}#content .xbox-home-product-media{display:flex;align-items:center;justify-content:center;height:144px;border-radius:12px 12px 0 0;background:#121907}#content .xbox-home-product-label{display:block;padding:22px;font-size:14px;line-height:24px}#content .xbox-home-terms>div{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;padding-block:20px;border-top:1px solid var(--xbox-border);font-size:14px;line-height:24px}#content .xbox-home-terms>div:last-child{border-bottom:1px solid var(--xbox-border)}#content .xbox-home-definition{color:var(--xbox-muted)}#content .xbox-home-steps{display:grid;gap:12px;padding:0;list-style:none;counter-reset:xbox-step}#content .xbox-home-step-row{display:flex;align-items:center;gap:16px;counter-increment:xbox-step}#content .xbox-home-step-row::before{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:var(--xbox-border);color:var(--xbox-muted);font-size:12px;content:counter(xbox-step)}#content .xbox-home-step{display:flex;flex:1;align-items:center;gap:16px;min-height:60px;padding:16px;border:1px solid var(--xbox-border);border-radius:12px;font-size:15px}#content .xbox-home-faq{border:1px solid var(--xbox-border);border-radius:16px}#content .xbox-home-faq details+details{border-top:1px solid var(--xbox-border)}#content .xbox-home-faq summary{padding:16px 24px;color:var(--xbox-secondary);font-size:14px;cursor:pointer}#content .xbox-home-faq details>p{padding:0 24px 20px;color:var(--xbox-muted);font-size:14px}#content .xbox-home-faq a{color:var(--xbox-accent);text-decoration:underline;text-underline-offset:3px}#content .xbox-home-card{display:flex;flex-direction:column;gap:16px;min-height:180px;padding:16px;border:1px solid transparent;border-radius:12px;background:var(--xbox-card)}#content .xbox-home-card h3{font-size:16px;font-weight:500;line-height:24px}#content .xbox-home-card :is(p, span[data-as=\"p\"]){margin-top:-12px;color:var(--xbox-muted);font-size:12px;line-height:18px}#content .xbox-home-card-outline{min-height:118px;border-color:var(--xbox-border);background:0 0}#content .xbox-home :is(\n .xbox-home-start-link,\n #content .xbox-home-step,\n #content .xbox-home-card,\n #content .xbox-home-secondary\n ):hover{color:var(--xbox-accent);border-color:var(--xbox-accent)}@media (max-width:900px){#content .xbox-home{padding:48px 24px 64px}#content .xbox-home-hero{gap:32px;margin-bottom:48px}#content .xbox-home h1{max-width:440px;font-size:42px}#content .xbox-home-grid,#content .xbox-home-hero,#content .xbox-home-terms>div{grid-template-columns:minmax(0,1fr)}#content .xbox-home-terms>div{gap:8px}#content .xbox-home-card{min-height:0}#content .xbox-home-step{gap:12px;font-size:14px}}html[data-page-mode=custom][data-current-path=\"/\"] #navbar,html[data-page-mode=custom][data-current-path=\"/\"] #navbar-transition-maple,html[data-page-mode=custom][data-current-path=\"/\"] #sidebar{display:none}html[data-page-mode=custom][data-current-path=\"/\"] #content-container{margin-inline-start:0;padding-top:0}html[data-page-mode=custom][data-current-path=\"/\"] #content-area{margin-top:0}#content .xbox-home-navigation{display:flex;align-items:center;gap:24px;min-height:56px;padding:8px 32px;border-bottom:1px solid #dce3d5;color:#181d14;font-family:var(--font-inter),Inter,\"Segoe UI\",sans-serif;font-size:13px;line-height:20px}html.dark #content .xbox-home-navigation{border-color:#252922;color:#fafafa}#content .xbox-home-navigation a{text-decoration:none;color:inherit}#content .xbox-home-brand{display:flex;align-items:center;gap:8px;flex-shrink:0;font-size:18px}#content .xbox-home-brand img{display:block;margin:0}#content .xbox-home-navigation .xbox-home-nav-links{display:flex;flex:1;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px}#content .xbox-home-navigation .xbox-home-nav-links a{padding:6px 12px;border-radius:999px}#content .xbox-home-navigation a[aria-current=page]{background:#e5eadf}html.dark #content .xbox-home-navigation a[aria-current=page]{background:#34372e}#content .xbox-home-support{padding:6px 14px;border:1px solid #6f7865;border-radius:999px}#content .xbox-home-navigation a:focus-visible{outline:2px solid #7cc400;outline-offset:3px}#content .xbox-home-faq.accordion-group{margin:0}#content .xbox-home-question{margin:0;border:0;border-radius:0;background:0 0}#content .xbox-home-question+.xbox-home-question{border-top:1px solid var(--xbox-border)}#content .xbox-home-question [data-component-part=accordion-title]{color:var(--xbox-secondary);font-family:inherit;font-size:14px;font-weight:400}#content .xbox-home-question [data-component-part=accordion-content] :is(p, span[data-as=\"p\"]){color:var(--xbox-muted);font-size:14px}@media (max-width:1023px){#content .xbox-home-navigation{flex-wrap:wrap;gap:12px;padding:12px 24px}#content .xbox-home-navigation .xbox-home-nav-links{order:3;justify-content:flex-start;flex-basis:100%;gap:0}#content .xbox-home-navigation .xbox-home-nav-links a{padding:6px 10px;font-size:12px}#content .xbox-home-support{margin-inline-start:auto}}#content .xbox-home :is(h1, h2, h3){font-family:var(--font-inter),Inter,\"Segoe UI\",sans-serif}#content .xbox-home .xbox-home-primary img,html:not(.dark) #content .xbox-home :is(.xbox-home-start-link, .xbox-home-step, .xbox-home-card) img{filter:brightness(0)}#content .xbox-home-controls{display:flex;align-items:center;gap:10px;width:356px;max-width:100%;min-height:36px;margin-top:24px}#content .xbox-home-assistant,#content .xbox-home-search{display:flex;align-items:center;height:36px;border:1px solid var(--xbox-border);border-radius:12px;background:0 0;color:var(--xbox-muted);cursor:pointer}#content .xbox-home-search{flex:1;min-width:0;gap:8px;padding:0 12px 0 14px;font-family:inherit;font-size:14px}#content .xbox-home-search kbd{margin-inline-start:auto;padding:0;border:0;background:0 0;color:inherit;font-family:inherit;font-size:12px;font-weight:400}#content .xbox-home-assistant{flex:0 0 36px;justify-content:center}#content .xbox-home-controls button:hover{border-color:var(--xbox-muted)}#content .xbox-home-controls button:focus-visible{outline:2px solid var(--xbox-accent);outline-offset:4px}html:not(.dark) #content .xbox-home-controls img{filter:brightness(0)}"}],"page":{"pagePath":"zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","slug":"/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","pageMetadata":{"title":"使用 IGameInput 建置原生觸控介面","description":"使用 IGameInput 為您的遊戲建置原生觸控介面","sidebarTitle":"使用 IGameInput 為您的遊戲建置原生觸控介面","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"使用 IGameInput 為您的遊戲建置原生觸控介面\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Note}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Note)_missingMdxReference(`Note`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`當玩家將您的遊戲串流到其行動裝置時,提升遊戲樂趣的最佳方式之一,就是讓他們能夠使用觸控控制項與您的遊戲互動。XBOX 遊戲串流支援使用 `,_jsx(_components.a,{href:`/zh-TW/build/core-features/common/game-streaming/game-streaming-touch-touch-adaptation-kit-overview`,children:`Touch Adaptation Kit`}),` 在遊戲上方疊加觸控控制項,對於遊戲中許多以虛擬遊戲手把遊玩是自然方式的畫面而言,這會是很好的選擇。不過,對於遊戲中的選單、地圖、物品欄畫面等部分,直接使用觸控輸入與遊戲互動可能更為自然。`]}),`\n`,_jsx(_components.p,{children:`例如,玩家很自然地會想點選選單選項來與其互動,或想使用手機手勢來放大和捲動地圖。Microsoft Game Development Kit (GDK) 提供的 API 可讓您在遊戲中建置這種原生觸控介面,使其感覺像是真正的行動體驗。`}),`\n`,_jsx(_components.p,{children:`Touch Adaptation Kit 與原生觸控並非互斥:您可以在遊戲中同時使用兩者,在最適合您遊戲的地方使用各種形式的觸控輸入。例如,使用原生觸控選單,同時在主要遊戲迴圈中使用 Touch Adaptation Kit,可能是建構遊戲觸控輸入策略的合理方式。`}),`\n`,_jsx(Note,{children:`如果您正在建置使用原生觸控的遊戲,請通知您的客戶經理。必須設定 XBOX Game Streaming 後端服務,您的遊戲部署到零售環境時才能接收觸控事件。`}),`\n`,_jsxs(_components.p,{children:[`原生觸控是透過 `,_jsx(_components.a,{href:`/zh-TW/reference/input/gameinput/deprecated/interfaces/igameinputreading/methods/igameinputreading_gettouchstate`,children:`IGameInputReading::GetTouchState`}),` API 提供給您的遊戲。此 API 會提供目前的觸控點集合,代表玩家目前用來觸碰螢幕的手指集合。`]}),`\n`,_jsx(_components.p,{children:`若要將這些觸控點轉換為按下、移動和放開事件,在每個畫面之間追蹤其狀態會很有幫助。`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`任何在前一個畫面中不存在、但在目前畫面中存在的觸控點,都是新的觸控按下。`}),`\n`,_jsx(_components.li,{children:`任何在前一個畫面中存在、且在目前畫面中仍然存在的觸控點,若觸控的座標已變更即為移動,否則為無作業。`}),`\n`,_jsx(_components.li,{children:`在前一個畫面中存在、但已不再存在的觸控點,則為觸控放開。`}),`\n`]}),`\n`,_jsx(_components.p,{children:`建置這些按下、移動和放開事件的非常基本輸入迴圈,可能如下所示:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`105`,language:`cpp`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`cpp`,children:_jsxs(_components.code,{language:`cpp`,numberOfLines:`105`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`struct`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` TouchPoint`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // GameInputTouchState.touchId corresponding to this point`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` uint64_t`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Id `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`; `})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // X pixel being touched`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` uint32_t`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` X `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // Y pixel being touched`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` uint32_t`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Y `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // Is this entry in the array of touch points currently being used to track a touch`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` bool`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` IsInUse `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // Is this TouchPoint tracking a finger which is currently touching the screen`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` bool`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` IsTouchActive `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`};`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Touch points currently being tracked`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:`std`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::array`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`\u003c`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`TouchPoint, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`10`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` g_touchPoints `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {};`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`extern`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` IGameInput`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` g_gameInput;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`extern`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` uint32_t`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` g_frameWidth;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`extern`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` uint32_t`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` g_frameHeight;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`void`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` TouchPointPressed`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` TouchPoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`\u0026`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` touchPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`void`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` TouchPointMoved`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` TouchPoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`\u0026`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` touchPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`void`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` TouchPointReleased`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` TouchPoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`\u0026`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` touchPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`void`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` ProcessTouchInput`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // Reset the active touch state from the previous frame`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` for`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (TouchPoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`\u0026`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` touchPoint : g_touchPoints)`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` touchPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`IsTouchActive`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // Process any new touch points for this frame`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` Microsoft`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:`WRL`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::ComPtr`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`\u003c`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`IGameInputReading`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` reading `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` nullptr`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` if`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`SUCCEEDED`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`g_gameInput`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`GetCurrentReading`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(GameInputKindTouch, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`nullptr`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`\u0026`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`reading)))`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` uint32_t`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` touchCount `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` reading`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`GetTouchCount`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` if`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (touchCount `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` std`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::vector`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`\u003c`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`GameInputTouchState`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` touchStates`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(touchCount);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` touchCount `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` reading`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`GetTouchState`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(touchCount, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`touchStates`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`data`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`());`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` for`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` GameInputTouchState`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`\u0026`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` touchState : touchStates)`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` uint32_t`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` x `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` static_cast`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`\u003c`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`uint32_t`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`touchState`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`positionX`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` *`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` g_frameWidth);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` uint32_t`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` y `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` static_cast`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`\u003c`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`uint32_t`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`touchState`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`positionY`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` *`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` g_frameHeight);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // Check to see if we are already tracking this touch point`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` auto`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` existingPoint `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` std`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`find_if`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:`std`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`begin`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(g_touchPoints), `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:`std`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`end`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(g_touchPoints), [`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` touchState`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`touchId`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`](`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` TouchPoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`\u0026`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` point`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` return`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` point`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`IsInUse`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` \u0026\u0026`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` point`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` ==`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` id;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` if`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (existingPoint `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`!=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` g_touchPoints`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`end`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`())`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // We were already tracking the point - it is still alive this frame, but it may have`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // also moved position.`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` existingPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`IsTouchActive`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` if`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`existingPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`X`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` !=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` x `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`||`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` existingPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Y`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` !=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` y)`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` existingPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`X`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` x;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` existingPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Y`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` y;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` TouchPointMoved`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`existingPoint);`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` else`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // This is a new touch point. Start tracking it and treat it as a press`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` auto`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` insertPoint `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` std`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`find_if`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:`std`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`begin`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(g_touchPoints), `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:`std`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`end`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(g_touchPoints), [](`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` TouchPoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`\u0026`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` point`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` return`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` !`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`point`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`IsInUse`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` if`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (insertPoint `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`!=`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` std`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`::`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`end`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(g_touchPoints))`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` insertPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` touchState`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`touchId`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` insertPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`X`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` x;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` insertPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Y`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` y;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` insertPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`IsInUse`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` insertPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`IsTouchActive`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` TouchPointPressed`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`insertPoint);`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // Look for any points which were pressed last frame but are no longer pressed this frame`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // and treat those as touch releases`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` for`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (TouchPoint`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`\u0026`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` touchPoint : g_touchPoints)`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` if`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`touchPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`IsInUse`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` \u0026\u0026`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` !`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`touchPoint`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`IsTouchActive`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` TouchPointReleased`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(touchPoint);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` touchPoint `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` TouchPoint{};`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"使用 IGameInput 建置原生觸控介面","description":"使用 IGameInput 為您的遊戲建置原生觸控介面","sidebarTitle":"使用 IGameInput 為您的遊戲建置原生觸控介面","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"subdomain":"microsoft-4404708b","siteName":"XBOX Game Development Documentation","title":"使用 IGameInput 建置原生觸控介面 - XBOX Game Development Documentation","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"automatic"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","matchLevel":1},"es":{"href":"/es/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","matchLevel":1},"fr-CA":{"href":"/fr-CA/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","matchLevel":1},"fr":{"href":"/fr/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","matchLevel":1},"ja-jp":{"href":"/ja-jp/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","matchLevel":1},"ko":{"href":"/ko/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","matchLevel":1},"pt-BR":{"href":"/pt-BR/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","matchLevel":1},"zh-CN":{"href":"/zh-CN/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","matchLevel":1},"zh-TW":{"href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput","matchLevel":0}}},"lastModified":"2026-10-07T17:23:19.412Z","gitLastModified":"2026-10-20T16:42:48.000Z","originalFileLocation":"zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput.mdx","locale":"zh-TW"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"使用 IGameInput 為您的遊戲建置原生觸控介面\">\u003cmeta data-mint-head name=\"keywords\" content=\"XBOX, GDK, Game Development Kit, XSAPI, PlayFab, Partner Center, PIX, Microsoft Game Development, XBOX Series X, XBOX One, Windows game development, xbox-live, achievements, multiplayer\">\u003cmeta data-mint-head name=\"application-name\" content=\"XBOX Game Development Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026amp;auto=format\u0026amp;n=EGENQIzNH9RmFI5A\u0026amp;q=85\u0026amp;s=78627ddb1e16ee7d1baa7bf50fdd25f5\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026amp;auto=format\u0026amp;n=EGENQIzNH9RmFI5A\u0026amp;q=85\u0026amp;s=78627ddb1e16ee7d1baa7bf50fdd25f5\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026amp;auto=format\u0026amp;n=EGENQIzNH9RmFI5A\u0026amp;q=85\u0026amp;s=78627ddb1e16ee7d1baa7bf50fdd25f5\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/png\" href=\"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026amp;auto=format\u0026amp;n=EGENQIzNH9RmFI5A\u0026amp;q=85\u0026amp;s=78627ddb1e16ee7d1baa7bf50fdd25f5\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026amp;auto=format\u0026amp;n=EGENQIzNH9RmFI5A\u0026amp;q=85\u0026amp;s=78627ddb1e16ee7d1baa7bf50fdd25f5\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026amp;auto=format\u0026amp;n=EGENQIzNH9RmFI5A\u0026amp;q=85\u0026amp;s=78627ddb1e16ee7d1baa7bf50fdd25f5\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/png\" href=\"https://mintcdn.com/microsoft-4404708b/EGENQIzNH9RmFI5A/images/We_Are_Xbox_Email-Signature_200x200.png?fit=max\u0026amp;auto=format\u0026amp;n=EGENQIzNH9RmFI5A\u0026amp;q=85\u0026amp;s=78627ddb1e16ee7d1baa7bf50fdd25f5\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"使用 IGameInput 建置原生觸控介面 - XBOX Game Development Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"使用 IGameInput 為您的遊戲建置原生觸控介面\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"XBOX Game Development Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://microsoft-4404708b.mintlify.app/images/We_Are_Xbox_Email-Signature_200x200.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"使用 IGameInput 建置原生觸控介面 - XBOX Game Development Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"使用 IGameInput 為您的遊戲建置原生觸控介面\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://microsoft-4404708b.mintlify.app/images/We_Are_Xbox_Email-Signature_200x200.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/microsoft-4404708b/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"XBOX Game Development Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#7CC400\">\u003cmeta data-mint-head name=\"author\" content=\"XBOX\">\u003cmeta data-mint-head name=\"category\" content=\"Game Development\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-TW\" href=\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.xbox.com/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.xbox.com/es/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr-CA\" href=\"https://docs.xbox.com/fr-CA/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.xbox.com/fr/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja-JP\" href=\"https://docs.xbox.com/ja-jp/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.xbox.com/ko/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://docs.xbox.com/pt-BR/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-CN\" href=\"https://docs.xbox.com/zh-CN/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.xbox.com/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developer.microsoft.com/en-us/games/#organization\",\"name\":\"Microsoft\",\"url\":\"https://developer.microsoft.com/en-us/games/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://developer.microsoft.com/en-us/games/favicon.ico\"},\"sameAs\":[\"https://github.com/microsoft/Xbox-GDK-Samples\",\"https://www.youtube.com/msftgamedev\",\"https://developer.microsoft.com/en-us/games/\"]},{\"@type\":\"WebSite\",\"@id\":\"https://docs.xbox.com#website\",\"name\":\"XBOX Game Development Documentation\",\"url\":\"https://docs.xbox.com\",\"publisher\":{\"@id\":\"https://developer.microsoft.com/en-us/games/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput#webpage\",\"url\":\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\",\"name\":\"使用 IGameInput 建置原生觸控介面\",\"description\":\"使用 IGameInput 為您的遊戲建置原生觸控介面\",\"dateModified\":\"2026-10-20T16:42:48.000Z\",\"isPartOf\":{\"@id\":\"https://docs.xbox.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Core Features\",\"item\":\"https://docs.xbox.com/zh-TW/build/core-features/common/index\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Game Streaming\",\"item\":\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-overview\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Creating Touch Experiences\",\"item\":\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-getting-started-with-touch\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"使用 IGameInput 建置原生觸控介面\",\"item\":\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput#article\",\"headline\":\"使用 IGameInput 建置原生觸控介面\",\"name\":\"使用 IGameInput 建置原生觸控介面\",\"description\":\"使用 IGameInput 為您的遊戲建置原生觸控介面\",\"url\":\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput\",\"mainEntityOfPage\":{\"@id\":\"https://docs.xbox.com/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput#webpage\"},\"image\":\"https://docs.xbox.com/images/We_Are_Xbox_Email-Signature_200x200.png\",\"dateModified\":\"2026-10-20T16:42:48.000Z\",\"publisher\":{\"@id\":\"https://developer.microsoft.com/en-us/games/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.xbox.com#website\"}}]}\u003c/script>","siteName":"XBOX Game Development Documentation","nav":{"languages":[{"language":"en","pages":[{"title":"en","href":"/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"}]},{"language":"es","pages":[{"title":"es","href":"/es/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"}]},{"language":"fr-CA","pages":[{"title":"fr-CA","href":"/fr-CA/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"}]},{"language":"fr","pages":[{"title":"fr","href":"/fr/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"}]},{"language":"ja-jp","pages":[{"title":"ja-jp","href":"/ja-jp/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"}]},{"language":"ko","pages":[{"title":"ko","href":"/ko/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"}]},{"language":"pt-BR","pages":[{"title":"pt-BR","href":"/pt-BR/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"}]},{"language":"zh-CN","pages":[{"title":"zh-CN","href":"/zh-CN/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"}]},{"language":"zh-TW","tabs":[{"tab":"Home","pages":[{"title":"Home","href":"/zh-TW"}]},{"tab":"Get Started","pages":[{"title":"Get Started","href":"/zh-TW/paths/porting/overview"}]},{"tab":"Build","pages":[{"group":"GDK and Game Engines Integration","icon":"rocket","pages":[{"group":"Unity Development Guide","pages":[{"title":"在 Unity 專案中使用 GDK API 的 C# 包裝函式","sidebarTitle":"在 Unity 專案中使用 GDK API 的 C# 包裝函式","icon":"unity","href":"/zh-TW/build/gdk-and-engines/unity/unity-api-wrappers"}]},{"group":"Unreal Development Guide","pages":[{"title":"使用 Unreal Engine 的新 GDK 外掛程式建置 XBOX 遊戲","sidebarTitle":"使用 Unreal Engine 的新 GDK 外掛程式建置 XBOX 遊戲","icon":"unreal-engine","href":"/zh-TW/build/gdk-and-engines/unreal/unreal-xbox-pc"},{"title":"開始使用 Unreal Engine 進行 PC 開發","sidebarTitle":"開始使用 Unreal Engine 進行 PC 開發","icon":"u","href":"/zh-TW/build/gdk-and-engines/unreal/unreal"},{"title":"PC 的 Unreal 開發:開始使用 (舊版)","sidebarTitle":"PC 的 Unreal 開發:開始使用 (舊版)","icon":"unreal-engine","href":"/zh-TW/build/gdk-and-engines/unreal/unreal-legacy"}]},{"title":"PC 自訂引擎整合:開始使用 (C/C++)","sidebarTitle":"PC 自訂引擎整合:開始使用 (C/C++)","icon":"code-branch","href":"/zh-TW/build/gdk-and-engines/custom-engine"},{"title":"開始使用 GameMaker 進行 PC 開發","sidebarTitle":"開始使用 GameMaker 進行 PC 開發","icon":"dice","href":"/zh-TW/build/gdk-and-engines/gamemaker"},{"group":"Godot development for XBOX","pages":[{"title":"開始使用 Godot 進行 XBOX 開發","sidebarTitle":"開始使用 Godot 進行 XBOX 開發","icon":"robot","href":"/zh-TW/build/gdk-and-engines/godot"},{"group":"Release notes","icon":"clipboard-list","pages":[{"icon":"clipboard-list","title":"XBOX Godot NetRumble 範例 v0.1.0 版本","sidebarTitle":"XBOX Godot NetRumble 範例 v0.1.0 版本","href":"/zh-TW/build/gdk-and-engines/godot-release-notes/godot-netrumble-release-notes-0-1-0"},{"icon":"clipboard-list","title":"XBOX Godot 範例 v0.3.0 版本","sidebarTitle":"XBOX Godot 範例 v0.3.0 版本","href":"/zh-TW/build/gdk-and-engines/godot-release-notes/godot-release-notes-0-3-0"},{"icon":"clipboard-list","title":"XBOX Godot 範例 v0.2.0 版本","sidebarTitle":"XBOX Godot 範例 v0.2.0 版本","href":"/zh-TW/build/gdk-and-engines/godot-release-notes/godot-release-notes-0-2-0"},{"icon":"clipboard-list","title":"XBOX Godot 範例 v0.1.0 版本","sidebarTitle":"XBOX Godot 範例 v0.1.0 版本","href":"/zh-TW/build/gdk-and-engines/godot-release-notes/godot-release-notes-0-1-0"}]}]},{"title":"搭配 Unity、Unreal 和其他引擎使用 GDK","sidebarTitle":"GDK 與引擎","icon":"puzzle-piece","href":"/zh-TW/build/gdk-and-engines/gdk-and-engines"},{"group":"Unity","icon":"cube","pages":[{"title":"開始使用 Unity 進行 PC 開發 (內容)","sidebarTitle":"開始使用 Unity 進行 PC 開發 (內容)","icon":"cube","href":"/zh-TW/build/gdk-and-engines/unity/unity"}]},{"title":"選用服務","sidebarTitle":"選用服務","icon":"plug","href":"/zh-TW/build/gdk-and-engines/optional-services"},{"group":"Handheld devices","icon":"mobile-screen","pages":[{"title":"PC 掌機概觀","sidebarTitle":"概觀","icon":"mobile-screen","href":"/zh-TW/build/gdk-and-engines/handheld/overview"}]}]},{"group":"Steam porting guide","icon":"steam","pages":[{"icon":"circle-info","title":"Steam 移植指南概觀","sidebarTitle":"概觀","href":"/zh-TW/build/steam-porting-guide/overview"},{"group":"Features","pages":[{"icon":"file-lines","title":"統計資料和成就","href":"/zh-TW/build/steam-porting-guide/features/stats-and-achievements"},{"icon":"file-lines","title":"將 Steam Cloud 儲存移植到 XBOX GDK","href":"/zh-TW/build/steam-porting-guide/features/steam-cloud"},{"icon":"file-lines","title":"排行榜","href":"/zh-TW/build/steam-porting-guide/features/steam-leaderboards"},{"icon":"file-lines","title":"使用者驗證與擁有權","href":"/zh-TW/build/steam-porting-guide/features/user-authentication-and-ownership"}]},{"icon":"file-lines","title":"Steamworks 中沒有的 GDK 功能","href":"/zh-TW/build/steam-porting-guide/gdk-features-not-in-steamworks"},{"icon":"file-lines","title":"初始化 GDK","href":"/zh-TW/build/steam-porting-guide/initializing-the-gdk"}]},{"group":"Game Principles","icon":"compass","pages":[{"title":"無障礙概觀","icon":"universal-access","sidebarTitle":"無障礙概觀","href":"/zh-TW/build/game-principles/accessibility/accessibility-overview"},{"group":"Localization and globalization","icon":"globe","pages":[{"title":"主機支援的語言","sidebarTitle":"主機支援的語言","icon":"language","href":"/zh-TW/build/game-principles/localization/console-supported-languages"},{"title":"判斷主機的地區設定與語言","sidebarTitle":"判斷主機地區設定","icon":"map-pin","href":"/zh-TW/build/game-principles/localization/determining-console-locale"},{"title":"判斷主機位置","sidebarTitle":"判斷主機位置","icon":"location-dot","href":"/zh-TW/build/game-principles/localization/determining-console-geolocation"},{"title":"支援的 NLS 函式","sidebarTitle":"支援的 NLS 函式","icon":"list","href":"/zh-TW/build/game-principles/localization/supported-nls-apis"},{"title":"封裝資源的當地語系化","sidebarTitle":"將封裝資源當地語系化","icon":"box","href":"/zh-TW/build/game-principles/localization/localization-of-packaged-resources"},{"title":"遊戲支援與不支援的地區設定","sidebarTitle":"支援與不支援的地區設定","icon":"circle-check","href":"/zh-TW/build/game-principles/localization/game-supported-and-unsupported-locales"},{"title":"Economy v2 當地語系化","icon":"globe","sidebarTitle":"Economy v2 當地語系化","href":"/zh-TW/build/game-principles/localization"}]},{"title":"永續性概觀","sidebarTitle":"永續性概觀","icon":"leaf","href":"/zh-TW/build/game-principles/sustainability/sustainability-overview"},{"title":"Game security concepts","href":"/zh-TW/build/game-principles/security/game-security-concepts"},{"title":"Communication security overview","href":"/zh-TW/build/game-principles/security/communication-security-overview"},{"title":"Secure communication impl","href":"/zh-TW/build/game-principles/security/secure-communication-impl"},{"title":"Secure webrequest impl","href":"/zh-TW/build/game-principles/security/secure-webrequest-impl"},{"title":"Secure game mesh impl","href":"/zh-TW/build/game-principles/security/secure-game-mesh-impl"},{"title":"Secure samples","href":"/zh-TW/build/game-principles/security/secure-samples"},{"title":"General game security","href":"/zh-TW/build/game-principles/security/general-game-security"},{"title":"Game tool security","href":"/zh-TW/build/game-principles/security/game-tool-security"},{"group":"XBOX Game Development Docs","pages":[{"group":"XBOX Sustainability","pages":[{"title":"XBOX 遊戲能源效率基本要點","sidebarTitle":"XBOX 遊戲能源效率基本要點","icon":"bolt","href":"/zh-TW/build/game-principles/sustainability/energy-efficiency-essentials"},{"title":"遊戲永續性實驗室平台基準","sidebarTitle":"遊戲永續性實驗室平台基準","icon":"flask","href":"/zh-TW/build/game-principles/sustainability/lab-platform-baselines"},{"title":"遊戲永續性全球平台基準","sidebarTitle":"遊戲永續性全球平台基準","icon":"globe","href":"/zh-TW/build/game-principles/sustainability/global-platform-baselines"},{"group":"Developer tools","expanded":true,"pages":[{"title":"永續性開發人員簡介","sidebarTitle":"永續性開發人員簡介","icon":"gauge-high","href":"/zh-TW/build/game-principles/sustainability/sustainability-developer-overview"},{"title":"在 PIX 中進行遊戲永續性測試","sidebarTitle":"在 PIX 中進行遊戲永續性測試","icon":"chart-mixed","href":"/zh-TW/build/game-principles/sustainability/sustainability-pix-guide"},{"title":"使用開發套件進行遊戲永續性測試","sidebarTitle":"使用開發套件進行遊戲永續性測試","icon":"microchip","href":"/zh-TW/build/game-principles/sustainability/sustainability-devkit-guide"},{"title":"動態電源狀態","sidebarTitle":"動態電源狀態","icon":"bolt","href":"/zh-TW/build/game-principles/sustainability/dynamic-power-states"}]},{"title":"遊戲永續性認證測試","sidebarTitle":"遊戲永續性認證測試","icon":"clipboard-check","href":"/zh-TW/build/game-principles/sustainability/sustainability-case-studies"},{"title":"在 Partner Center 中檢視永續性資料","sidebarTitle":"在 Partner Center 中檢視永續性資料","icon":"chart-line","href":"/zh-TW/build/game-principles/sustainability/partner-center-sustainability-data"}]}]},{"group":"Security","icon":"shield","pages":[{"title":"GDK 安全性概觀","icon":"shield","href":"/zh-TW/build/game-principles/security/security-overview"}]},{"group":"XBOX Accessibility","icon":"universal-access","pages":[{"title":"無障礙功能標籤","sidebarTitle":"無障礙功能標籤","icon":"tags","href":"/zh-TW/build/game-principles/accessibility/accessibility-feature-tags"},{"title":"遊戲 AI 體驗的協助工具","sidebarTitle":"遊戲 AI 體驗的協助工具","icon":"microchip-ai","href":"/zh-TW/build/game-principles/accessibility/accessibility-of-gaming-ai"},{"title":"開發者無障礙資源","sidebarTitle":"無障礙資源","icon":"graduation-cap","href":"/zh-TW/build/game-principles/accessibility/accessibility-resources"},{"title":"身心障礙禮儀","sidebarTitle":"身心障礙禮儀","icon":"handshake","href":"/zh-TW/build/game-principles/accessibility/etiquette"},{"title":"Gaming Accessibility Fundamentals 學習路徑","sidebarTitle":"Gaming Accessibility Fundamentals 學習路徑","icon":"graduation-cap","href":"/zh-TW/build/game-principles/accessibility/gaf-info"},{"title":"遊戲與身心障礙玩家體驗指南","sidebarTitle":"遊戲與身心障礙玩家體驗指南","icon":"user-group","href":"/zh-TW/build/game-principles/accessibility/gadpeg"},{"title":"遊戲協助工具工作坊工具組","sidebarTitle":"遊戲協助工具工作坊工具組","icon":"chalkboard-user","href":"/zh-TW/build/game-principles/accessibility/accessibility-workshop-toolkit"},{"title":"Xbox 無障礙指南","sidebarTitle":"Xbox 無障礙指南","icon":"universal-access","href":"/zh-TW/build/game-principles/accessibility/xbox-accessibility-guidelines"},{"group":"Guidelines","pages":[{"title":"Xbox 無障礙指南 101","sidebarTitle":"Xbox 無障礙指南 101","icon":"font","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-101-text-display"},{"title":"Xbox 無障礙指南 102","sidebarTitle":"Xbox 無障礙指南 102","icon":"circle-half-stroke","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-102-contrast"},{"title":"Xbox 無障礙指南 103","sidebarTitle":"Xbox 無障礙指南 103","icon":"sitemap","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-103-additional-cues"},{"title":"Xbox 無障礙指南 104","sidebarTitle":"Xbox 無障礙指南 104","icon":"closed-captioning","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-104-subtitles-captions"},{"title":"Xbox 無障礙指南 105","sidebarTitle":"Xbox 無障礙指南 105","icon":"sliders","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-105-audio-accessibility"},{"title":"Xbox 無障礙指南 106","sidebarTitle":"Xbox 無障礙指南 106","icon":"ear-listen","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-106-screen-narration"},{"title":"Xbox 無障礙指南 107","sidebarTitle":"Xbox 無障礙指南 107","icon":"gamepad","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-107-input"},{"title":"Xbox 無障礙指南 108","sidebarTitle":"Xbox 無障礙指南 108","icon":"sliders-up","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-108-difficulty-options"},{"title":"Xbox 無障礙指南 109","sidebarTitle":"Xbox 無障礙指南 109","icon":"list-check","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-109-objective-clarity"},{"title":"Xbox 無障礙指南 110","sidebarTitle":"Xbox 無障礙指南 110","icon":"wave-square","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-110-haptic-feedback"},{"title":"Xbox 無障礙指南 111","sidebarTitle":"Xbox 無障礙指南 111","icon":"audio-description","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-111-audio-descriptions"},{"title":"Xbox 無障礙指南 112","sidebarTitle":"Xbox 無障礙指南 112","icon":"compass","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-112-ui-navigation"},{"title":"Xbox 無障礙指南 113","sidebarTitle":"Xbox 無障礙指南 113","icon":"crosshairs","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-113-ui-focus-handling"},{"title":"Xbox 無障礙指南 114","sidebarTitle":"Xbox 無障礙指南 114","icon":"circle-info","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-114-ui-context"},{"title":"Xbox 無障礙指南 115","sidebarTitle":"Xbox 無障礙指南 115","icon":"triangle-exclamation","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-115-error-messages"},{"title":"Xbox 無障礙指南 116","sidebarTitle":"Xbox 無障礙指南 116","icon":"stopwatch","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-116-time-limits"},{"title":"Xbox 無障礙指南 117","sidebarTitle":"Xbox 無障礙指南 117","icon":"eye-slash","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-117-visual-distractions-motion"},{"title":"Xbox 無障礙指南 118","sidebarTitle":"Xbox 無障礙指南 118","icon":"bolt","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-118-photosensitivity"},{"title":"Xbox 無障礙指南 119","sidebarTitle":"Xbox 無障礙指南 119","icon":"comments","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-119-chat"},{"title":"Xbox 無障礙指南 120","sidebarTitle":"Xbox 無障礙指南 120","icon":"users","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-120-communication-experiences"},{"title":"Xbox 無障礙指南 121","sidebarTitle":"Xbox 無障礙指南 121","icon":"book-open","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-121-accessible-feature-documentation"},{"title":"Xbox 無障礙指南 122","sidebarTitle":"Xbox 無障礙指南 122","icon":"headset","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-122-accessible-customer-support"},{"title":"Xbox 無障礙指南 123","sidebarTitle":"Xbox 無障礙指南 123","icon":"brain","href":"/zh-TW/build/game-principles/accessibility/xag-deep-dives/xag-123-mental-health-best-practices"}]},{"group":"Event guidelines","pages":[{"title":"PAGE 指南 101 - 報名","sidebarTitle":"PAGE 指南 101 - 報名","icon":"clipboard-list","href":"/zh-TW/build/game-principles/accessibility/page/page-101-registration"},{"title":"PAGE 指南 102 - 場地","sidebarTitle":"PAGE 指南 102 - 場地","icon":"building","href":"/zh-TW/build/game-principles/accessibility/page/page-102-venues"},{"title":"PAGE 指南 103 - 社群媒體","sidebarTitle":"PAGE 指南 103 - 社群媒體","icon":"hashtag","href":"/zh-TW/build/game-principles/accessibility/page/page-103-social-media"},{"title":"PAGE 指南 104 - 餐飲","sidebarTitle":"PAGE 指南 104 - 餐飲","icon":"utensils","href":"/zh-TW/build/game-principles/accessibility/page/page-104-catering"},{"title":"PAGE 指南 105 - 演講者、影片與簡報","sidebarTitle":"PAGE 指南 105 - 演講者、影片與簡報","icon":"microphone","href":"/zh-TW/build/game-principles/accessibility/page/page-105-speakers-videos-presentations"},{"title":"PAGE 指南 106 - 網頁內容與應用程式","sidebarTitle":"PAGE 指南 106 - 網頁內容與應用程式","icon":"globe","href":"/zh-TW/build/game-principles/accessibility/page/page-106-web-content-applications"},{"title":"PAGE 指南 107 - 遊戲試玩站","sidebarTitle":"PAGE 指南 107 - 遊戲試玩站","icon":"gamepad","href":"/zh-TW/build/game-principles/accessibility/page/page-107-game-demo-stations"},{"title":"PAGE 指南 108 - 遊樂設施與互動體驗","sidebarTitle":"PAGE 指南 108 - 遊樂設施與互動體驗","icon":"star","href":"/zh-TW/build/game-principles/accessibility/page/page-108-attractions-activations"},{"title":"PAGE 指南 109 - 贈品與周邊商品","sidebarTitle":"PAGE 指南 109 - 贈品與周邊商品","icon":"shirt","href":"/zh-TW/build/game-principles/accessibility/page/page-109-swag-and-merch"},{"title":"PAGE 指南 110 - 工作人員","sidebarTitle":"PAGE 指南 110 - 工作人員","icon":"users","href":"/zh-TW/build/game-principles/accessibility/page/page-110-staff"},{"title":"PAGE 指南 101 - 交通","sidebarTitle":"PAGE 指南 101 - 交通","icon":"car","href":"/zh-TW/build/game-principles/accessibility/page/page-111-transportation"},{"title":"PAGE 指南 112 - 活動後","sidebarTitle":"PAGE 指南 112 - 活動後","icon":"clipboard-check","href":"/zh-TW/build/game-principles/accessibility/page/page-112-post-event"},{"title":"PAGE 指南 - 補充資訊","sidebarTitle":"PAGE 指南 - 補充資訊","icon":"list-check","href":"/zh-TW/build/game-principles/accessibility/page/page-checklists"}]},{"title":"為什麼要讓遊戲具備無障礙性","sidebarTitle":"為什麼要讓遊戲具備無障礙性","icon":"heart","href":"/zh-TW/build/game-principles/accessibility/why-make-games-accessible"},{"title":"語音協助工具使用者設定","icon":"ear-listen","sidebarTitle":"語音協助工具的使用者設定","href":"/zh-TW/build/game-principles/accessibility/speech-accessibility"}]},{"group":"Sustainability","icon":"leaf","pages":[{"group":"Case studies","icon":"book","expanded":true,"pages":[{"title":"遊戲永續性 Halo Infinite 案例研究","sidebarTitle":"遊戲永續性 Halo Infinite 案例研究","icon":"circle","href":"/zh-TW/build/game-principles/sustainability/case-studies/case-studies-halo"},{"title":"遊戲永續性 Fortnite 案例研究","sidebarTitle":"遊戲永續性 Fortnite 案例研究","icon":"gamepad","href":"/zh-TW/build/game-principles/sustainability/case-studies/case-studies-fortnite"},{"title":"遊戲永續性 Call of Duty 案例研究","sidebarTitle":"遊戲永續性 Call of Duty 案例研究","icon":"crosshairs","href":"/zh-TW/build/game-principles/sustainability/case-studies/case-studies-cod"},{"title":"遊戲永續性 The Elder Scrolls Online 案例研究","sidebarTitle":"遊戲永續性 The Elder Scrolls Online 案例研究","icon":"scroll","href":"/zh-TW/build/game-principles/sustainability/case-studies/case-studies-elder-scrolls-online"},{"title":"遊戲永續性 Minecraft 案例研究","sidebarTitle":"遊戲永續性 Minecraft 案例研究","icon":"cube","href":"/zh-TW/build/game-principles/sustainability/case-studies/case-studies-minecraft"},{"title":"遊戲永續性 Gears Of War Reloaded 案例研究","sidebarTitle":"遊戲永續性 Gears Of War Reloaded 案例研究","icon":"gear","href":"/zh-TW/build/game-principles/sustainability/case-studies/case-studies-gears-of-war-reloaded"},{"title":"遊戲永續性 For Honor 案例研究","sidebarTitle":"遊戲永續性 For Honor 案例研究","icon":"shield-halved","href":"/zh-TW/build/game-principles/sustainability/case-studies/case-studies-for-honor"},{"title":"遊戲永續性 Star Wars Outlaws 案例研究","sidebarTitle":"遊戲永續性 Star Wars Outlaws 案例研究","icon":"jedi","href":"/zh-TW/build/game-principles/sustainability/case-studies/case-studies-star-wars-outlaws"},{"title":"永續性案例研究概觀","sidebarTitle":"概觀","icon":"book-open","href":"/zh-TW/build/game-principles/sustainability/case-studies/case-studies-overview"}]}]}]},{"group":"Core Features","tag":"","pages":[{"title":"XBOX 和 PC 作品的通用 GDK 功能","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/index"},{"group":"User and identity","pages":[{"title":"使用者身分識別與 XUser","sidebarTitle":"使用者身分識別與 XUser","icon":"right-to-bracket","href":"/zh-TW/build/core-features/common/user/player-identity-xuser"},{"title":"來賓使用者概觀","sidebarTitle":"來賓使用者","icon":"circle-info","href":"/zh-TW/build/core-features/common/user/users-guest-overview"},{"title":"XUser 的無周邊自動化","sidebarTitle":"XUser 的無周邊自動化","icon":"user","href":"/zh-TW/build/core-features/common/user/users-headless-automation"},{"title":"操作說明:登入使用者的最佳做法","sidebarTitle":"操作說明:登入使用者的最佳做法","icon":"book-open","href":"/zh-TW/build/core-features/common/user/xuser_howto_best_practice_signing_in"},{"title":"使用者與輸入裝置","sidebarTitle":"使用者與輸入裝置","icon":"user","href":"/zh-TW/build/core-features/common/user/users-input-devices"},{"title":"XUser 跨平台支援","sidebarTitle":"XUser 跨平台支援","icon":"user","href":"/zh-TW/build/core-features/common/user/xuser-crossplatform"},{"title":"Microsoft Game Development Kit 使用者模型","sidebarTitle":"Microsoft Game Development Kit 使用者","icon":"user","href":"/zh-TW/build/core-features/common/user/gamecore-user-models"},{"title":"選擇需要預設使用者","sidebarTitle":"選擇需要預設使用者","icon":"user","href":"/zh-TW/build/core-features/common/user/users-opting-into-simplified-model"},{"title":"建立遊戲的預設使用者","sidebarTitle":"建立遊戲的預設使用者","icon":"user","href":"/zh-TW/build/core-features/common/user/users-establishing-default-user"},{"title":"變更遊戲的預設使用者","sidebarTitle":"變更遊戲的預設使用者","icon":"user","href":"/zh-TW/build/core-features/common/user/users-changing-default-user"},{"title":"處理控制器遺失","sidebarTitle":"處理控制器遺失","icon":"gamepad","href":"/zh-TW/build/core-features/common/user/users-dealing-with-controller-loss"},{"title":"使用者與控制器的關聯何時發生?","sidebarTitle":"使用者與控制器的關聯何時發生","icon":"user","href":"/zh-TW/build/core-features/common/user/users-timing-of-user-to-device-association"},{"title":"GDK 中的使用者身分識別與 XUser API","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/user/index"}]},{"group":"Core systems async programming model","pages":[{"title":"XBOX GDK 中的非同步程式設計模型","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/async/index"},{"group":"Async Libraries","pages":[{"group":"XTaskQueue Library","pages":[{"title":"XTaskQueue 程式庫概觀","sidebarTitle":"XTaskQueue 程式庫概觀","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xtaskqueue"},{"title":"建立工作佇列範例","sidebarTitle":"建立工作佇列範例","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xtaskqueue-example-create-task-queue"},{"title":"分派工作佇列範例","sidebarTitle":"分派工作佇列範例","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xtaskqueue-example-dispatch-task-queue"},{"title":"清除工作佇列範例","sidebarTitle":"清除工作佇列範例","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xtaskqueue-example-cleanup-task-queue"}]},{"group":"XAsync Library","pages":[{"title":"XAsync 程式庫概觀","sidebarTitle":"XAsync 程式庫概觀","icon":"toolbox","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xasync"},{"title":"設定非同步工作範例","sidebarTitle":"設定非同步工作範例","icon":"code","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xasync-example-setup-async-task"},{"title":"執行簡單工作範例","sidebarTitle":"執行簡單工作範例","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xasync-example-run-simple-task"},{"title":"執行 Microsoft Game Development Kit (GDK) API 工作","sidebarTitle":"執行 Microsoft Game Development Kit (GDK) API 工作","icon":"cube","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xasync-example-run-gdk-task"}]},{"group":"XAsyncProvider Library","pages":[{"title":"XAsyncProvider 程式庫概觀","sidebarTitle":"XAsyncProvider 程式庫概觀","icon":"circle-info","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xasyncprovider"},{"title":"設定自訂提供者範例","sidebarTitle":"設定自訂提供者範例","icon":"code","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-custom-provider"},{"title":"設定叫用方法範例","sidebarTitle":"設定叫用方法範例","icon":"code","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-invocation-methods"},{"title":"設定傳回資料範例","sidebarTitle":"設定傳回資料範例","icon":"code","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-return-data"},{"title":"設定可取消性範例","sidebarTitle":"設定可取消性範例","icon":"download","href":"/zh-TW/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-cancelability"}]},{"title":"用於非同步工作程式設計的 XAsync 程式庫","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/async/async-libraries/index"}]},{"group":"Async Task Queue","pages":[{"title":"非同步工作佇列設計","sidebarTitle":"非同步工作佇列設計","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-task-queue-design"},{"title":"操作說明:建立執行緒集區工作佇列","sidebarTitle":"操作說明:建立執行緒集區工作","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-task-queue-design-howto/creating-thread-pool-task-queue"},{"title":"操作說明:提交回呼","sidebarTitle":"操作說明:提交回呼","icon":"paper-plane","href":"/zh-TW/build/core-features/common/async/async-task-queue-design-howto/submitting-callbacks"},{"title":"操作說明:複製工作佇列控制代碼","sidebarTitle":"操作說明:複製工作佇列控制代碼","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-task-queue-design-howto/duplicating-task-queue-handle"},{"title":"操作說明:建立手動工作佇列","sidebarTitle":"操作說明:建立手動工作佇列","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-task-queue-design-howto/creating-manual-task-queue"},{"title":"如何:使用事件控制手動佇列分派","sidebarTitle":"如何:使用事件控制手動","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-task-queue-design-howto/control-manual-queue-dispatching"},{"title":"操作說明:搭配 Windows 訊息迴圈使用工作佇列","sidebarTitle":"搭配 Windows 訊息迴圈使用工作佇列","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-task-queue-design-howto/task-queue-windows-msg-loop"},{"title":"操作說明:使用處理序工作佇列","sidebarTitle":"操作說明:使用處理序工作佇列","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-task-queue-design-howto/using-process-task-queue"},{"title":"如何:建立複合工作佇列","sidebarTitle":"如何:建立複合工作佇列","icon":"book-open","href":"/zh-TW/build/core-features/common/async/async-task-queue-design-howto/creating-composite-task-queue"},{"title":"操作說明:使用延遲回呼","sidebarTitle":"操作說明:使用延遲回呼","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-task-queue-design-howto/using-delayed-callbacks"},{"title":"操作說明:使用工作佇列等候程式","sidebarTitle":"操作說明:使用工作佇列等候程式","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-task-queue-design-howto/using-task-queue-waiter"}]}]},{"group":"Graphics and Rendering","pages":[{"group":"Lighting","pages":[{"title":"照明概觀","sidebarTitle":"照明概觀","icon":"circle-info","href":"/zh-TW/build/core-features/common/lighting/gc-lighting-toc"},{"group":"Lighting concepts","pages":[{"title":"LampArray 基本概念","sidebarTitle":"LampArray 基本概念","icon":"note-sticky","href":"/zh-TW/build/core-features/common/lighting/lighting-basics"},{"title":"在 LampArray 上設定色彩","sidebarTitle":"在 LampArray 上設定色彩","icon":"sliders","href":"/zh-TW/build/core-features/common/lighting/lighting-colors"},{"title":"LampArray 效果","sidebarTitle":"LampArray 效果","icon":"compass","href":"/zh-TW/build/core-features/common/lighting/lighting-effects"}]},{"title":"XBOX 和 PC 上的照明 API 與 LampArray","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/lighting/index"}]},{"title":"圖形","sidebarTitle":"圖形","icon":"palette","href":"/zh-TW/build/core-features/graphics/gc-graphics-toc"},{"title":"Atoc d3d12x","href":"/zh-TW/build/core-features/graphics/d3d12x/atoc-d3d12x"},{"title":"D3d12x overview","href":"/zh-TW/build/core-features/graphics/d3d12x/d3d12x-overview"},{"title":"D3d12x differences from pc","href":"/zh-TW/build/core-features/graphics/d3d12x/d3d12x-differences-from-pc"},{"title":"D3d12x xmemalloc objecttypes","href":"/zh-TW/build/core-features/graphics/d3d12x/d3d12x-xmemalloc-objecttypes"},{"title":"Creation flags","href":"/zh-TW/build/core-features/graphics/directx/creation-flags"},{"title":"Native resource management","href":"/zh-TW/build/core-features/graphics/directx/native-resource-management"},{"title":"Suspend and resume","href":"/zh-TW/build/core-features/graphics/directx/suspend-and-resume"},{"title":"Offchip tesselation","href":"/zh-TW/build/core-features/graphics/directx/offchip-tesselation"},{"title":"Frame scheduling and presentation","href":"/zh-TW/build/core-features/graphics/directx/frame-scheduling-and-presentation"},{"title":"Hardware overlays","href":"/zh-TW/build/core-features/graphics/directx/hardware-overlays"},{"title":"Color and depth compression","href":"/zh-TW/build/core-features/graphics/directx/color-and-depth-compression"},{"title":"螢幕區域","sidebarTitle":"螢幕區域","icon":"palette","href":"/zh-TW/build/core-features/graphics/overviews/screen-areas"},{"title":"Hdr support","href":"/zh-TW/build/core-features/graphics/overviews/hdr-support"},{"title":"One twenty hz support","href":"/zh-TW/build/core-features/graphics/overviews/one-twenty-hz-support"},{"title":"Cmask decoding","href":"/zh-TW/build/core-features/graphics/overviews/cmask-decoding"},{"title":"Enhanced barriers","href":"/zh-TW/build/core-features/graphics/overviews/enhanced-barriers"},{"title":"Gpu synchronization scarlett","href":"/zh-TW/build/core-features/graphics/overviews/gpu-synchronization-scarlett"},{"title":"Graphics pso overview","href":"/zh-TW/build/core-features/graphics/graphics-pso-overview"},{"title":"Image processing overview","href":"/zh-TW/build/core-features/graphics/image-processing-overview"},{"title":"Graphics","href":"/zh-TW/build/core-features/graphics/overviews/graphics"},{"title":"Xbox one gpu overview","href":"/zh-TW/build/core-features/graphics/whitepapers/xbox-one-gpu-overview"},{"title":"Xbox one gpu compute units","href":"/zh-TW/build/core-features/graphics/whitepapers/xbox-one-gpu-compute-units"},{"title":"Xbox one gpu memory access","href":"/zh-TW/build/core-features/graphics/whitepapers/xbox-one-gpu-memory-access"},{"title":"Xg memory overview","href":"/zh-TW/build/core-features/graphics/d3d12x/xg-memory-overview"},{"title":"Caches and coherency on xbox one gpu","href":"/zh-TW/build/core-features/graphics/whitepapers/caches-and-coherency-on-xbox-one-gpu"},{"title":"How do vmem instructions work","href":"/zh-TW/build/core-features/graphics/whitepapers/how-do-vmem-instructions-work"},{"title":"Xbox one occupancy quick reference","href":"/zh-TW/build/core-features/graphics/whitepapers/xbox-one-occupancy-quick-reference"},{"title":"Checkerboard rendering on xbox one","href":"/zh-TW/build/core-features/graphics/whitepapers/checkerboard-rendering-on-xbox-one"},{"title":"Automatic shader modification for checkerboard rendering","href":"/zh-TW/build/core-features/graphics/whitepapers/automatic-shader-modification-for-checkerboard-rendering"},{"title":"Xbox one dynamic resolution","href":"/zh-TW/build/core-features/graphics/whitepapers/xbox-one-dynamic-resolution"},{"title":"Xbox one esram manager","href":"/zh-TW/build/core-features/graphics/whitepapers/xbox-one-esram-manager"},{"title":"Graphics newfeatures toc","href":"/zh-TW/build/core-features/graphics/graphics-newfeatures-toc"},{"title":"Sf overview","href":"/zh-TW/build/core-features/graphics/newfeatures/sfs/sf-overview"},{"title":"為什麼要使用取樣器意見反應?","sidebarTitle":"為什麼要使用取樣器回饋?","icon":"palette","href":"/zh-TW/build/core-features/graphics/newfeatures/sfs/why-sf"},{"title":"Sf gpu design","href":"/zh-TW/build/core-features/graphics/newfeatures/sfs/sf-gpu-design"},{"title":"Sf api design","href":"/zh-TW/build/core-features/graphics/newfeatures/sfs/sf-api-design"},{"title":"Sfs usage","href":"/zh-TW/build/core-features/graphics/newfeatures/sfs/sfs-usage"},{"title":"Rt overview","href":"/zh-TW/build/core-features/graphics/newfeatures/raytracing/rt-overview"},{"title":"Rt hardware design","href":"/zh-TW/build/core-features/graphics/newfeatures/raytracing/rt-hardware-design"},{"title":"Rt xdxr","href":"/zh-TW/build/core-features/graphics/newfeatures/raytracing/rt-xdxr"},{"title":"Rt bvhbuilders","href":"/zh-TW/build/core-features/graphics/newfeatures/raytracing/rt-bvhbuilders"},{"title":"Rt standalone","href":"/zh-TW/build/core-features/graphics/newfeatures/raytracing/rt-standalone"},{"title":"Rt compression","href":"/zh-TW/build/core-features/graphics/newfeatures/raytracing/rt-compression"},{"title":"Rt offlinertpso","href":"/zh-TW/build/core-features/graphics/newfeatures/raytracing/rt-offlinertpso"},{"title":"Rt xdxrbestpractices","href":"/zh-TW/build/core-features/graphics/newfeatures/raytracing/rt-xdxrbestpractices"},{"title":"Rt kdop","href":"/zh-TW/build/core-features/graphics/newfeatures/raytracing/rt-kdop"},{"title":"Mesh Shader 管線概觀","sidebarTitle":"Mesh Shader 管線","icon":"circle-info","href":"/zh-TW/build/core-features/graphics/newfeatures/ms/ms-overview"},{"title":"為什麼要使用 Mesh Shader?","sidebarTitle":"為什麼要使用 Mesh Shader?","icon":"palette","href":"/zh-TW/build/core-features/graphics/newfeatures/ms/ms-why"},{"title":"Mesh Shader 管線 API 概觀","sidebarTitle":"Mesh Shader 管線 API","icon":"palette","href":"/zh-TW/build/core-features/graphics/newfeatures/ms/ms-api-design"},{"title":"Ms usage","href":"/zh-TW/build/core-features/graphics/newfeatures/ms/ms-usage"},{"title":"Meshlet","sidebarTitle":"Meshlet","icon":"palette","href":"/zh-TW/build/core-features/graphics/newfeatures/ms/ms-meshlet-render"},{"title":"Meshlet 剔除範例","sidebarTitle":"Meshlet 剔除範例","icon":"code","href":"/zh-TW/build/core-features/graphics/newfeatures/ms/ms-meshlet-culling"},{"title":"Ms scarlett","href":"/zh-TW/build/core-features/graphics/newfeatures/ms/ms-scarlett"},{"title":"Vrs overview","href":"/zh-TW/build/core-features/graphics/newfeatures/vrs/vrs-overview"},{"title":"Why vrs","href":"/zh-TW/build/core-features/graphics/newfeatures/vrs/why-vrs"},{"title":"Vrs api","href":"/zh-TW/build/core-features/graphics/newfeatures/vrs/vrs-api"},{"title":"Xbox texture compressor","href":"/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbox-texture-compressor"},{"title":"Xbtc","href":"/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc"},{"title":"Xbtc archive format","href":"/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc-archive-format"},{"title":"Xbtc json batch configuration","href":"/zh-TW/build/core-features/graphics/newfeatures/xbtc/xbtc-json-batch-configuration"},{"title":"Gpu overview","href":"/zh-TW/build/core-features/graphics/overviews/gpu-overview"},{"title":"Graphics memory overview","href":"/zh-TW/build/core-features/graphics/graphics-memory-overview"},{"title":"Scarlett tex layouts","href":"/zh-TW/build/core-features/graphics/scarlett-tex-layouts"},{"title":"Dolby vision for gaming","href":"/zh-TW/build/core-features/graphics/dolby-vision-for-gaming"},{"title":"Series s optimizations","href":"/zh-TW/build/core-features/graphics/whitepapers/series-s-optimizations"},{"title":"DirectX-Specs","sidebarTitle":"DirectX-specs","icon":"palette","href":"/zh-TW/build/core-features/graphics/directx-specs"},{"title":"Gc graphics presentations","href":"/zh-TW/build/core-features/graphics/overviews/presentations/gc-graphics-presentations"},{"title":"Gc graphics xdd 2024 gr01","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr01"},{"title":"Gc graphics xdd 2024 gr02","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr02"},{"title":"Gc graphics xdd 2024 gr03","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr03"},{"title":"Gc graphics xdd 2024 gr04","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr04"},{"title":"Gc graphics xdd 2024 gr05","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr05"},{"title":"Gc graphics xdd 2024 gr06","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr06"},{"title":"Gc graphics xdd 2024 gr07","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr07"},{"title":"Gc graphics xdd 2024 gr08","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr08"},{"title":"Gc graphics xdd 2024 gr09","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr09"},{"title":"Gc graphics xdd 2024 gr10","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr10"},{"title":"Gc graphics xdd 2024 gr11","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr11"},{"title":"使用 Visual Studio 與 AI 最佳化遊戲開發工作流程","sidebarTitle":"最佳化遊戲開發工作流程","icon":"palette","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr12"},{"title":"Gc graphics xdd 2024 gr13","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gc-graphics-xdd-2024-gr13"},{"title":"Getting the most from xbox shader compiler","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/getting-the-most-from-xbox-shader-compiler"},{"title":"Whats new in pix 2024","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/whats-new-in-pix-2024"},{"title":"Gpu debugging tips and tricks","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gpu-debugging-tips-and-tricks"},{"title":"Optimizing shader performance with pix shader explorer","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/optimizing-shader-performance-with-pix-shader-explorer"},{"title":"Gpu performance tips and tricks","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/gpu-performance-tips-and-tricks"},{"title":"Gc graphics xfest 2022 gr01","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2022/gc-graphics-xfest-2022-gr01"},{"title":"Gc graphics xfest 2022 gr02","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2022/gc-graphics-xfest-2022-gr02"},{"title":"Gc graphics xfest 2022 gr03","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2022/gc-graphics-xfest-2022-gr03"},{"title":"Gc graphics xfest 2022 gr09","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2022/gc-graphics-xfest-2022-gr09"},{"title":"Gc graphics xfest 2019 gr01","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2019/gc-graphics-xfest-2019-gr01"},{"title":"Gc graphics xfest 2019 gr04","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2019/gc-graphics-xfest-2019-gr04"},{"title":"Gc graphics xfest 2019 gr08","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2019/gc-graphics-xfest-2019-gr08"},{"title":"圖形範例","sidebarTitle":"圖形範例","icon":"code","href":"/zh-TW/build/core-features/graphics/graphics-samples"},{"group":"Graphics and rendering","pages":[{"title":"使用 GDK 在 XBOX 和 PC 上處理圖形","sidebarTitle":"概觀","icon":"palette","href":"/zh-TW/build/core-features/graphics/index"},{"group":"XBOX series x|s graphics feature overviews","pages":[{"group":"Sampler feedback introduction","pages":[{"title":"XBOX Series X|S 上的取樣器意見反應與 SFS","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/graphics/newfeatures/sfs/index"}]},{"group":"Raytracing introduction","pages":[{"title":"使用 XDXR 在 XBOX Series X|S 上進行光線追蹤","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/graphics/newfeatures/raytracing/index"}]},{"group":"Mesh shader introduction","pages":[{"title":"XBOX Series X|S 上的 Mesh Shader 與 Meshlet","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/graphics/newfeatures/ms/index"}]},{"group":"Variable rate shading introduction","pages":[{"title":"XBOX Series X|S 上的可變速率著色 (VRS)","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/graphics/newfeatures/vrs/index"},{"group":"Unpublished pages","hidden":true,"pages":[{"title":"Vrs feature","href":"/zh-TW/build/core-features/graphics/newfeatures/vrs/vrs-feature"}]}]},{"group":"XBOX texture compressor overview","pages":[{"title":"XBOX Texture Compressor (XBTC) 工具參考","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/graphics/newfeatures/xbtc/index"}]}]},{"group":"Microsoft graphics presentations","pages":[{"title":"來自 XFest 和 XDD 的 XBOX 圖形簡報","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/graphics/overviews/presentations/index"},{"group":"XBOX dev days 2024","pages":[{"title":"Xdd2024","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xdd2024/index"}]},{"group":"Xfest 2022","pages":[{"title":"Xfest2022","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2022/index"},{"group":"Unpublished pages","hidden":true,"pages":[{"title":"Gc graphics xfest 2022 gr06","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2022/gc-graphics-xfest-2022-gr06"},{"title":"Gc graphics xfest 2022 gr07","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2022/gc-graphics-xfest-2022-gr07"}]}]},{"group":"Xfest 2019","pages":[{"title":"Xfest2019","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/graphics/overviews/presentations/xfest2019/index"}]}]}]}]},{"group":"Input and devices","pages":[{"title":"適用於 XBOX GDK 遊戲的輸入 API 和硬體","sidebarTitle":"概觀","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/index"},{"group":"Overview of GameInput","pages":[{"title":"GameInput 簡介","sidebarTitle":"GameInput 簡介","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/overviews/input-overview"},{"title":"GameInput 常見問題集","sidebarTitle":"GameInput 常見問題集","icon":"circle-info","href":"/zh-TW/build/core-features/common/input/overviews/input-faq"},{"title":"GameInput 基本概念","sidebarTitle":"GameInput 基本概念","icon":"lightbulb","href":"/zh-TW/build/core-features/common/input/overviews/input-fundamentals"},{"title":"GameInput 讀數","sidebarTitle":"GameInput 讀數","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/overviews/input-readings"},{"title":"GameInput 裝置","sidebarTitle":"GameInput 裝置","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/overviews/input-devices"},{"title":"透過 NuGet 在 PC 和主機上使用 GameInput","sidebarTitle":"透過 NuGet 在 PC 和主機上使用 GameInput","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/overviews/input-nuget"},{"title":"GameInput API 版本控制","sidebarTitle":"GameInput API 版本控制","icon":"clock-rotate-left","href":"/zh-TW/build/core-features/common/input/overviews/input-versioning"},{"title":"概觀","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/input/overviews/index"}]},{"group":"Advanced GameInput topics","pages":[{"title":"進階 GameInput 主題","sidebarTitle":"進階 GameInput 主題","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/advanced/input-advanced-topics"},{"title":"GameInput 回呼","sidebarTitle":"GameInput 回呼","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/advanced/input-callbacks"},{"title":"GameInput 工作佇列","sidebarTitle":"GameInput 工作佇列","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/advanced/input-work-queues"},{"title":"GameInput 動態延遲輸入","sidebarTitle":"GameInput 動態延遲輸入","icon":"network-wired","href":"/zh-TW/build/core-features/common/input/advanced/input-synchronization"},{"title":"GameInput 上的力回饋","sidebarTitle":"GameInput 上的力回饋","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/advanced/input-forcefeedback"},{"title":"GameInput 鍵盤和滑鼠","sidebarTitle":"GameInput 鍵盤和滑鼠","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/advanced/input-keyboard-mouse"},{"title":"進階 GameInput 主題:力回饋和回呼","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/input/advanced/index"}]},{"group":"GameInput for hardware developers","pages":[{"title":"適用於硬體開發人員的 GameInput","sidebarTitle":"適用於硬體開發人員的 GameInput","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/hardware/input-hardware-topics"},{"title":"GameInput 裝置對應工具和測試指南","sidebarTitle":"GameInput 裝置對應工具和測試指南","icon":"book-open","href":"/zh-TW/build/core-features/common/input/hardware/input-hardware-mapping"},{"title":"與不同的 GameInput 裝置類型互動","sidebarTitle":"與不同的 GameInput 裝置類型互動","icon":"brackets-curly","href":"/zh-TW/build/core-features/common/input/hardware/input-hardware-interfaces"},{"title":"GameInput 的力回饋","sidebarTitle":"GameInput 的力回饋","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/hardware/input-hardware-force-feedback"},{"title":"GameInput 感應器建立","sidebarTitle":"GameInput 感應器建立","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/hardware/input-hardware-sensors"},{"title":"GameInput 觸覺回饋需求","sidebarTitle":"GameInput 觸覺回饋需求","icon":"server","href":"/zh-TW/build/core-features/common/input/hardware/input-hardware-haptics"},{"title":"GameInput 硬體:力回饋、觸覺回饋和感應器","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/input/hardware/index"}]},{"group":"GameInput porting guide","pages":[{"title":"將 GameInput 與現有的輸入堆疊結合使用","sidebarTitle":"將 GameInput 與現有輸入結合使用","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/porting/input-porting"},{"title":"從 Windows.XBOX.Input 移植到 GameInput","sidebarTitle":"從 Windows.Xbox.Input 移植到 GameInput","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/porting/input-porting-wxi"},{"title":"從 XInput 移植到 GameInput","sidebarTitle":"從 XInput 移植到 GameInput","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/porting/input-porting-xinput"},{"title":"將現有的輸入程式碼移植到 GameInput","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/input/porting/index"}]}]},{"group":"Game Configuration and Packaging","pages":[{"group":"Game configuration","pages":[{"title":"MicrosoftGame.config 概觀","sidebarTitle":"MicrosoftGame.config 概觀","icon":"circle-info","href":"/zh-TW/build/core-features/common/game-config/MicrosoftGameConfig-Overview"},{"title":"MicrosoftGame.config 編輯器","sidebarTitle":"MicrosoftGame.config 編輯器","icon":"clipboard-list","href":"/zh-TW/build/core-features/common/game-config/MicrosoftGameConfig-Editor"},{"title":"MicrosoftGame.config 當地語系化","sidebarTitle":"MicrosoftGame.config 當地語系化","icon":"language","href":"/zh-TW/build/core-features/common/game-config/MicrosoftGameConfig-Localization"},{"title":"MicrosoftGame.config 編輯器與參考","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/game-config/index"}]},{"group":"Packaging","pages":[{"title":"封裝概觀","sidebarTitle":"封裝概觀","icon":"box","href":"/zh-TW/build/core-features/common/packaging/overviews/packaging"},{"title":"XBOX Game Package Manager","sidebarTitle":"XBOX Game Package Manager","icon":"box","href":"/zh-TW/build/core-features/common/packaging/xgpm"},{"title":"自動化套件上傳","sidebarTitle":"自動化套件上傳","icon":"box","href":"/zh-TW/build/core-features/common/packaging/package-uploader"},{"title":"開始為 XBOX 主機封裝遊戲","sidebarTitle":"開始為 XBOX 主機封裝遊戲","icon":"circle-info","href":"/zh-TW/build/core-features/common/packaging/overviews/packaging-getting-started-for-console"},{"title":"開始封裝 PC 遊戲","sidebarTitle":"開始封裝 PC 遊戲","icon":"box","href":"/zh-TW/build/core-features/common/packaging/overviews/packaging-getting-started-for-PC"},{"title":"串流安裝和 Intelligent Delivery:概觀","sidebarTitle":"串流安裝和 Intelligent Delivery:概觀","icon":"video","href":"/zh-TW/build/core-features/common/packaging/overviews/streaming_install-intelligent_delivery"},{"title":"支援遊戲即服務 (GaaS)","sidebarTitle":"支援遊戲即服務 (GaaS)","icon":"box","href":"/zh-TW/build/core-features/common/packaging/supporting-games-as-a-service"},{"group":"MSIXVC2 Packaging","pages":[{"title":"MSIXVC2 封裝概觀","sidebarTitle":"MSIXVC2 封裝概觀","icon":"box","href":"/zh-TW/build/core-features/common/packaging/overviews/packaging-msixvc2-overview"},{"title":"開始使用適用於 PC 的 MSIXVC2 封裝","sidebarTitle":"開始使用適用於 PC 的 MSIXVC2","icon":"box","href":"/zh-TW/build/core-features/common/packaging/overviews/packaging-getting-started-for-PC-msixvc2"},{"title":"使用 MSIXVC2 的內容更新","sidebarTitle":"使用 MSIXVC2 的內容更新","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-updates-msixvc2"},{"title":"MSIXVC2 加密模型","sidebarTitle":"MSIXVC2 加密模型","icon":"lock","href":"/zh-TW/build/core-features/common/packaging/packaging-encryption-msixvc2"}]},{"group":"Common packaging tasks and workflow overview","pages":[{"title":"遊戲封裝、更新與串流安裝測試","sidebarTitle":"遊戲封裝、內容更新與","icon":"video","href":"/zh-TW/build/core-features/common/packaging/title-packaging-streaming-install-testing"},{"group":"Submission Validator (SubmissionValidator.dll)","pages":[{"title":"Submission Validator 簡介","sidebarTitle":"Submission Validator 簡介","icon":"box","href":"/zh-TW/build/core-features/common/packaging/subval/submissionvalidator"},{"icon":"list-check","title":"手動建立符號套件組合","sidebarTitle":"手動建立符號套件組合","href":"/zh-TW/build/core-features/common/packaging/subval/create-symbol-bundle-manually"},{"title":"Submission Validator 品質檢查","sidebarTitle":"Submission Validator 品質檢查","icon":"paper-plane","href":"/zh-TW/build/core-features/common/packaging/subval/submissionvalidator-tests"},{"title":"Submission Validator 訊息","sidebarTitle":"Submission Validator 訊息","icon":"box","href":"/zh-TW/build/core-features/common/packaging/subval/submissionvalidator-messages"},{"title":"Submission Validator (SubVal) 品質檢查參考","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/packaging/subval/index"}]},{"title":"開發期間的應用程式封裝","sidebarTitle":"開發期間的應用程式封裝","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-packaging-during-development"},{"title":"Flat File Install 概觀","sidebarTitle":"Flat File Install","icon":"circle-info","href":"/zh-TW/build/core-features/common/packaging/packaging-flatfileinstall"},{"title":"在開發電腦上測試套件","sidebarTitle":"在開發電腦上測試套件","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-testing-PC-install"},{"title":"建立測試光碟","sidebarTitle":"建立測試光碟","icon":"box","href":"/zh-TW/build/core-features/common/packaging/creating-test-compilation-discs"},{"title":"建立光碟子集","sidebarTitle":"建立光碟子集","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-disc-subset"},{"title":"跨世代測試光碟概觀","sidebarTitle":"跨世代測試光碟","icon":"box","href":"/zh-TW/build/core-features/common/packaging/creating-cross-gen-test-discs"},{"title":"建立光碟","sidebarTitle":"建立光碟","icon":"box","href":"/zh-TW/build/core-features/common/packaging/creating-discs"},{"title":"架構套件 - 自動安裝常見可轉散發軟體的相依性","sidebarTitle":"架構套件 - 自動安裝常見可轉散發軟體的相依性","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-framework-packages"},{"title":"Microsoft Store 中 Win32 遊戲的自訂安裝動作","sidebarTitle":"Microsoft Store 中 Win32 遊戲的自訂安裝動作","icon":"download","href":"/zh-TW/build/core-features/common/packaging/packaging-custom-install-actions"},{"title":"PC GDK 遊戲的模組支援","sidebarTitle":"PC GDK 遊戲的模組支援","icon":"cube","href":"/zh-TW/build/core-features/common/packaging/packaging-mods"},{"title":"GDK 可下載內容 (DLC) 套件","sidebarTitle":"GDK 可下載內容 (DLC) 套件","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-downloadable-content-dlc"},{"title":"Publisher Content 套件","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-publisher-content"},{"title":"建立、檢查和測試內容更新","sidebarTitle":"建立、檢查和測試","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-testing-updates"},{"title":"內容更新最佳做法","sidebarTitle":"內容更新最佳做法","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-updates"}]},{"group":"Intelligent Delivery features","pages":[{"title":"Intelligent Delivery","sidebarTitle":"Intelligent Delivery","icon":"box","href":"/zh-TW/build/core-features/common/packaging/overviews/intelligentdelivery"},{"title":"Intelligent Delivery:功能與配方","sidebarTitle":"Intelligent Delivery:功能與","icon":"box","href":"/zh-TW/build/core-features/common/packaging/intelligentdelivery-features-recipes"},{"title":"Intelligent Delivery:自訂標記指定元","sidebarTitle":"Intelligent Delivery:自訂標記","icon":"box","href":"/zh-TW/build/core-features/common/packaging/intelligentdelivery-custom"},{"title":"Intelligent Delivery:裝置規範","sidebarTitle":"Intelligent Delivery:裝置規範","icon":"box","href":"/zh-TW/build/core-features/common/packaging/intelligentdelivery-device"},{"title":"Intelligent Delivery:語言規範","sidebarTitle":"Intelligent Delivery:語言","icon":"language","href":"/zh-TW/build/core-features/common/packaging/intelligentdelivery-language"},{"title":"Intelligent Delivery:OnDemand 內容","sidebarTitle":"Intelligent Delivery:OnDemand 內容","icon":"box","href":"/zh-TW/build/core-features/common/packaging/intelligentdelivery-ondemand"},{"group":"Intelligent Delivery implementation","pages":[{"title":"動態重新排序區塊","sidebarTitle":"動態重新排序區塊","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-chunkreordering"},{"title":"串流安裝:偵錯","sidebarTitle":"串流安裝:偵錯","icon":"video","href":"/zh-TW/build/core-features/common/packaging/packaging-debugging"},{"title":"串流安裝:狀態","sidebarTitle":"串流安裝:狀態","icon":"chart-line","href":"/zh-TW/build/core-features/common/packaging/packaging-installstatus"},{"title":"多光碟功能","sidebarTitle":"多光碟功能","icon":"box","href":"/zh-TW/build/core-features/common/packaging/packaging-multi-disc"}]}]},{"group":"Tools for Streaming Installation","pages":[{"title":"串流安裝工具","sidebarTitle":"串流安裝工具","icon":"video","href":"/zh-TW/build/core-features/common/packaging/deployment/atoc-deployment-tools"},{"group":"Deployment package schema","pages":[{"title":"部署套件結構描述","sidebarTitle":"結構描述簡介","icon":"box","href":"/zh-TW/build/core-features/common/packaging/deployment/atoc-deployment-schema"},{"title":"\u003cChunk> 元素","sidebarTitle":"\u003cchunk> 元素","icon":"box","href":"/zh-TW/build/core-features/common/packaging/deployment/deployment-element-chunk"},{"title":"\u003cFileGroup> 元素","sidebarTitle":"\u003cfilegroup> 元素","icon":"users","href":"/zh-TW/build/core-features/common/packaging/deployment/deployment-element-filegroup"},{"title":"\u003cPackage> 元素","sidebarTitle":"\u003cpackage> 元素","icon":"box","href":"/zh-TW/build/core-features/common/packaging/deployment/deployment-element-package"}]},{"title":"部署套件結構描述與串流安裝工具","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/packaging/deployment/index"}]},{"title":"XBOX GDK 遊戲的封裝與部署","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/packaging/index"}]}]},{"group":"Game Streaming","pages":[{"title":"遊戲串流簡介","sidebarTitle":"遊戲串流簡介","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-overview"},{"group":"Game Streaming Setup","pages":[{"title":"串流您的遊戲","sidebarTitle":"串流您的遊戲","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-stream-your-game"},{"title":"設定 XBOX 開發套件以進行串流","sidebarTitle":"設定 XBOX 開發套件以進行串流","icon":"download","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-setup-xbox-developer-kit"},{"title":"Android 內容測試應用程式 (CTA) 概觀 (已淘汰)","sidebarTitle":"Android 內容測試應用程式 (CTA) 概觀 (已淘汰)","icon":"circle-info","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-android-content-test-application"},{"title":"Web 內容測試應用程式 (CTA) 概觀","sidebarTitle":"Web 內容測試應用程式 (CTA) 概觀","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-web-content-test-application"},{"title":"Windows PC 內容測試應用程式 (CTA) 概觀 (已淘汰)","sidebarTitle":"Windows PC 內容測試應用程式 (CTA) 概觀 (已淘汰)","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-windows-pc-content-test-application"},{"title":"內容測試應用程式 (CTA) 串流組態","sidebarTitle":"內容測試應用程式 (CTA) 串流組態","icon":"sliders","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-content-test-application-stream-config"}]},{"group":"Game Streaming Basics","pages":[{"title":"雲端感知 API 呼叫","sidebarTitle":"雲端感知 API 呼叫","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-am-i-streaming"},{"title":"XBOX Game Streaming 的開發最佳做法","sidebarTitle":"XBOX Game Streaming 的開發最佳做法","icon":"gauge-high","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-optimizing-your-game"},{"title":"XBOX Game Streaming 與 XBOX 遠端遊玩的比較","sidebarTitle":"XBOX 遊戲串流與 XBOX 遠端遊玩的比較","icon":"bug","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-project-xcloud-vs-console-streaming"},{"title":"在 Xbox 服務安全性權杖 (XSTS) 宣告中參考 Xbox Game Streaming 伺服器","sidebarTitle":"在 Xbox 服務安全性權杖 (XSTS) 宣告中參考 Xbox Game Streaming 伺服器","icon":"right-to-bracket","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-referencing-xcloud-servers-in-xsts-claims"}]},{"group":"Creating Touch Experiences","pages":[{"title":"開始使用觸控","description":"開始使用觸控","sidebarTitle":"開始使用觸控","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-getting-started-with-touch"},{"title":"使用 IGameInput 建置原生觸控介面","sidebarTitle":"使用 IGameInput 為您的遊戲建置原生觸控介面","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-native-touch-igameinput"},{"group":"Touch Adaptation Kit","pages":[{"title":"Game streaming touch touch adaptation bundle","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-touch-touch-adaptation-bundle"},{"group":"Touch Adaptation Kit Editor","pages":[{"title":"適用於 Visual Studio Code 的觸控調整套件編輯器延伸模組","sidebarTitle":"適用於 Visual Studio Code 的觸控調整套件編輯器延伸模組","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/tak-editor/game-streaming-tak-editor"},{"title":"觸控調整套件編輯器:設定","sidebarTitle":"觸控調整套件編輯器:設定","icon":"download","href":"/zh-TW/build/core-features/common/game-streaming/tak-editor/game-streaming-tak-editor-setup"},{"title":"觸控調整套件編輯器:建立組合和配置","sidebarTitle":"觸控調整套件編輯器:建立組合和配置","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/tak-editor/game-streaming-tak-editor-create-bundle"},{"title":"觸控調整套件編輯器:預覽配置","sidebarTitle":"觸控調整套件編輯器:預覽配置","icon":"paper-plane","href":"/zh-TW/build/core-features/common/game-streaming/tak-editor/game-streaming-tak-editor-preview-layouts"},{"title":"觸控調整套件編輯器:自訂預覽","sidebarTitle":"觸控調整套件編輯器:自訂預覽","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/tak-editor/game-streaming-tak-editor-customize-preview"},{"title":"觸控調整套件編輯器:封裝組合","sidebarTitle":"觸控調整套件編輯器:封裝組合","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/tak-editor/game-streaming-tak-editor-pack-bundles"},{"title":"觸控調整套件編輯器:疑難排解和意見反應","sidebarTitle":"觸控調整套件編輯器:疑難排解和意見反應","icon":"triangle-exclamation","href":"/zh-TW/build/core-features/common/game-streaming/tak-editor/game-streaming-tak-editor-troubleshooting"},{"title":"適用於 Visual Studio Code 的觸控調整套件 (TAK) 編輯器","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/game-streaming/tak-editor/index"}]},{"group":"Command Line Tool (tak.exe)","pages":[{"title":"命令列工具概觀 (tak.exe)","sidebarTitle":"命令列工具概觀 (tak.exe)","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line"},{"group":"Create Command","pages":[{"title":"Create 命令概觀","sidebarTitle":"Create 命令概觀","icon":"terminal","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-create-command"},{"title":"範本","sidebarTitle":"範本","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-templates"}]},{"title":"Convert 命令","sidebarTitle":"Convert 命令","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-convert-command"},{"title":"License 命令","sidebarTitle":"License 命令","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-license-command"},{"title":"Notice 命令","sidebarTitle":"Notice 命令","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-notice-command"},{"title":"Pack 命令","sidebarTitle":"Pack 命令","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-pack-command"},{"title":"Serve 命令","sidebarTitle":"Serve 命令","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-serve-command"},{"title":"Settings 命令","sidebarTitle":"Settings 命令","icon":"sliders","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-settings-command"},{"title":"Takx Version 命令","sidebarTitle":"Takx Version 命令","icon":"clock-rotate-left","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-takx-version-command"},{"title":"Unpack 命令","sidebarTitle":"Unpack 命令","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-unpack-command"},{"title":"Verify 命令","sidebarTitle":"Verify 命令","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-verify-command"},{"title":"Version 命令","sidebarTitle":"Version 命令","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line-version-command"},{"title":"觸控調整套件 (TAK) 命令列工具參考","sidebarTitle":"概觀","icon":"screwdriver-wrench","href":"/zh-TW/build/core-features/common/game-streaming/tak-command-line-tool/index"}]},{"title":"當地語系化內容","sidebarTitle":"當地語系化內容","icon":"language","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-tak-localization"},{"title":"觸控調整套件 (TAK) 參考","sidebarTitle":"觸控調整套件 (TAK) 參考","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-touch-touch-adaptation-kit-overview"},{"group":"Building Layouts","pages":[{"title":"建置觸控控制項配置","sidebarTitle":"建置觸控控制項配置","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-touch-building-touch-layout"},{"title":"建置觸控控制項的設計師指南","sidebarTitle":"建置觸控的設計師指南","icon":"book-open","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-tak-designers-guide"},{"title":"使用 GitHub Copilot 建立自訂觸控控制項配置","sidebarTitle":"使用 GitHub Copilot 建立自訂觸控控制項配置","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-build-touch-layout-github-copilot"},{"title":"Game streaming tak custom assets","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-tak-custom-assets"},{"title":"觸控調整配置的高對比模式","sidebarTitle":"觸控調整配置的高對比模式","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-tak-high-contrast-mode"},{"title":"根據遊戲狀態變更觸控控制配置","sidebarTitle":"根據遊戲狀態變更觸控控制配置","icon":"chart-line","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-touch-changing-layouts-game-state"},{"title":"使用 Tak CLI 部署觸控控制配置","sidebarTitle":"使用 Tak CLI 部署觸控控制配置","icon":"box","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-touch-deploying-touch-layout"},{"title":"發佈觸控配置","sidebarTitle":"發佈觸控配置","icon":"rocket","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-touch-publishing-layouts"},{"title":"為 XBOX 遊戲串流建置觸控控制配置","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/index"}]},{"group":"Sample Layouts","pages":[{"title":"開始使用觸控組合配置","sidebarTitle":"開始使用觸控組合","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/samples/game-streaming-touch-getting-started-with-sample-layouts"},{"title":"駕駛觸控控制配置","sidebarTitle":"駕駛觸控控制配置","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/samples/game-streaming-touch-tak-sample-driving"},{"title":"格鬥遊戲觸控控制配置","sidebarTitle":"格鬥遊戲觸控控制配置","icon":"code","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/samples/game-streaming-touch-tak-sample-fighter"},{"title":"第一人稱射擊觸控控制配置","sidebarTitle":"第一人稱射擊觸控控制配置","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/samples/game-streaming-touch-tak-sample-first-person"},{"title":"標準 XBOX 控制器觸控控制配置","sidebarTitle":"標準 XBOX 控制器觸控控制配置","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/samples/game-streaming-touch-tak-sample-full-layout"},{"title":"2D 平台遊戲觸控控制配置","sidebarTitle":"2D 平台遊戲觸控控制配置","icon":"gamepad","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/samples/game-streaming-touch-tak-sample-platformer"},{"title":"範例","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/game-streaming/building-touch-layouts/samples/index"}]}]}]},{"group":"Graphics","pages":[{"title":"DirectCapture 概觀","sidebarTitle":"DirectCapture 概觀","icon":"video","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-directcapture-overview"},{"title":"自訂解析度概觀","sidebarTitle":"自訂解析度概觀","icon":"display","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-custom-resolution-overview"},{"title":"遊戲串流自訂解析度的最佳做法","sidebarTitle":"遊戲串流自訂解析度的最佳做法","icon":"display","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-custom-resolution-best-practices"},{"title":"使用自訂解析度進行測試","sidebarTitle":"使用自訂解析度進行測試","icon":"display","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-testing-custom-resolution"}]},{"group":"Latency Compensation","pages":[{"title":"遊戲串流延遲補償概觀","sidebarTitle":"遊戲串流延遲補償","icon":"network-wired","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-latency-compensation-overview"},{"title":"遊戲串流延遲補償深入探討","sidebarTitle":"遊戲串流延遲補償","icon":"network-wired","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-latency-compensation-deep-dive"},{"title":"遊戲串流延遲測量","sidebarTitle":"遊戲串流延遲測量","icon":"network-wired","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-latency-measurement"},{"title":"在測試遊戲時模擬延遲","sidebarTitle":"在測試遊戲時模擬延遲","icon":"network-wired","href":"/zh-TW/build/core-features/common/game-streaming/game-streaming-simulate-latency-while-testing"}]},{"title":"XBOX Cloud Gaming 觸控與串流支援","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/core-features/common/game-streaming/index"}]},{"group":"Additional pages","pages":[{"group":"Common","pages":[{"title":"所有平台通用的 GDK 功能","sidebarTitle":"所有平台通用的 GDK 功能","icon":"cube","href":"/zh-TW/build/core-features/common/common-features-overview"},{"group":"Game config","pages":[{"title":"MicrosoftGame.config (內容)","sidebarTitle":"MicrosoftGame.config (內容)","icon":"map","href":"/zh-TW/build/core-features/common/game-config/MicrosoftGameConfig-toc"}]},{"group":"Game save","pages":[{"title":"遊戲存檔","sidebarTitle":"概觀","icon":"hard-drive","href":"/zh-TW/build/core-features/common/game-save/index"},{"title":"Game Saves (內容)","sidebarTitle":"Game Saves (內容)","icon":"cloud-arrow-up","href":"/zh-TW/build/core-features/common/game-save/game-saves-toc"}]},{"group":"Packaging","pages":[{"title":"封裝","sidebarTitle":"封裝","icon":"box","href":"/zh-TW/build/core-features/common/packaging/gc-packaging-toc"}]},{"group":"User","pages":[{"title":"使用者","sidebarTitle":"使用者","icon":"user","href":"/zh-TW/build/core-features/common/user/user-toc"}]}]}]}]},{"group":"Console Features","tag":"","pages":[{"title":"XBOX Game Development Kit 的主機功能","sidebarTitle":"概觀","icon":"tv","href":"/zh-TW/build/console-features/index"},{"group":"Memory","pages":[{"title":"XBOX GDK 遊戲的記憶體系統","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/console-features/memory/index"},{"group":"Memory","pages":[{"group":"Unpublished pages","hidden":true,"pages":[{"title":"System memory porting","href":"/zh-TW/build/console-features/memory/system-memory-porting"}]}]}]},{"group":"Audio","pages":[{"title":"文字轉語音","sidebarTitle":"文字轉語音","icon":"comments","href":"/zh-TW/build/console-features/text-to-speech/text-to-speech"},{"title":"音訊","sidebarTitle":"音訊","icon":"volume-high","href":"/zh-TW/build/console-features/audio/gc-audio-toc"},{"title":"音訊概觀","sidebarTitle":"音訊概觀","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/audio"},{"title":"XBOX Series X|S 音訊硬體概觀","sidebarTitle":"XBOX Series X|S 音訊概觀","icon":"server","href":"/zh-TW/build/console-features/audio/overviews/scarlett-audio"},{"title":"XBOX One 中的音訊架構","sidebarTitle":"XBOX one 中的音訊架構","icon":"lightbulb","href":"/zh-TW/build/console-features/audio/overviews/xbox-one-audio-architecture"},{"title":"XDK 與 GDK 音訊 API 比較","sidebarTitle":"XBOX One 軟體比較","icon":"cube","href":"/zh-TW/build/console-features/audio/overviews/comparison-of-xdk-and-gdk-audio-api"},{"title":"XAPU 概觀","sidebarTitle":"Xapu","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xapu-overview"},{"title":"使用 XAPU API 進行單一串流 Opus 音訊解碼","sidebarTitle":"單一串流 Opus 音訊概觀","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xapu-overview-single-stream-audio-decode"},{"title":"XDSP 概觀","sidebarTitle":"Xdsp","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xdsp-overview"},{"title":"使用 XDSP API 進行單一串流摺積概觀","sidebarTitle":"單一串流摺積概觀","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xdsp-overview-single-stream-convolution"},{"title":"使用 XDSP API 進行單一串流 FFT/IFFT 概觀","sidebarTitle":"單一串流 fft/ifft 概觀","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xdsp-overview-single-stream-fft-ifft"},{"title":"XDSP 脈衝回應縮減概觀","sidebarTitle":"Xdsp 脈衝回應縮減","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xdsp-overview-ir-reduction"},{"title":"XDSP 包絡概觀","sidebarTitle":"Xdsp 包絡","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xdsp-overview-enveloping"},{"title":"使用 XDSP API 進行含包絡的單一串流摺積","sidebarTitle":"單一串流摺積概觀","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xdsp-overview-single-stream-convolution-with-envelope"},{"title":"空間音效概觀","sidebarTitle":"空間音效概觀","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/spatial-audio-overview"},{"title":"Xaudio2 overview","href":"/zh-TW/build/console-features/audio/overviews/xaudio2-overview"},{"title":"使用 XAudio2 播放音效","sidebarTitle":"使用 xaudio2 播放音效","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xaudio2-play-sound"},{"title":"ADPCM 概觀","sidebarTitle":"ADPCM 概觀","icon":"circle-info","href":"/zh-TW/build/console-features/audio/overviews/adpcm-overview"},{"title":"ADPCM 命令列編碼器","sidebarTitle":"Adpcm 命令列編碼器","icon":"volume-high","href":"/zh-TW/build/console-features/audio/tools/adpcmencoder-tools"},{"title":"SHAPE 概觀","sidebarTitle":"SHAPE 概觀","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/shape-overview"},{"title":"SHAPE 音訊流程圖建構最佳做法","sidebarTitle":"深入了解 SHAPE:最佳做法","icon":"brackets-curly","href":"/zh-TW/build/console-features/audio/overviews/best-practices-audio-flowgraph-construction"},{"title":"ACP 概觀","sidebarTitle":"ACP","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/acp-overview"},{"title":"XMA2 概觀","sidebarTitle":"xma2 概觀","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xma2-overview"},{"title":"XMA2 編碼器工具","sidebarTitle":"Xma2 編碼器工具","icon":"video","href":"/zh-TW/build/console-features/audio/tools/xma2encodertool"},{"title":"XMA2 編碼器參考資訊","sidebarTitle":"Xma2 編碼器參考資訊","icon":"volume-high","href":"/zh-TW/build/console-features/audio/tools/xma2encoder/atoc-xmaencoder"},{"title":"XMA2encoder 函式","sidebarTitle":"Xma2encoder 函式","icon":"video","href":"/zh-TW/build/console-features/audio/tools/xma2encoder/tech-xmaencoder-funcs"},{"title":"XAudio2XMAEncoder","sidebarTitle":"Xaudio2xmaencoder","icon":"volume-high","href":"/zh-TW/build/console-features/audio/tools/xma2encoder/methods/xaudio2xmaencoder-xmaencoder-xbox-microsoft-m"},{"title":"xWMA 概觀","sidebarTitle":"xwma 概觀","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/xwma-overview"},{"title":"Xwmaencode tools","href":"/zh-TW/build/console-features/audio/tools/xwmaencode-tools"},{"title":"xWMA 編碼器參考資訊","sidebarTitle":"Xwma 編碼器參考資訊","icon":"volume-high","href":"/zh-TW/build/console-features/audio/tools/xwmaencoder/atoc-xwmaencoder"},{"title":"Xwmaencoder 函式","sidebarTitle":"Xwmaencoder 函式","icon":"video","href":"/zh-TW/build/console-features/audio/tools/xwmaencoder/tech-xwmaencoder-nativereference-funcs"},{"title":"XWMAEncoder","sidebarTitle":"Xwmaencoder","icon":"volume-high","href":"/zh-TW/build/console-features/audio/tools/xwmaencoder/methods/xwmaencoder-xwmaencoder-xbox-microsoft-m"},{"title":"WASAPI","sidebarTitle":"Wasapi","icon":"volume-high","href":"/zh-TW/build/console-features/audio/overviews/wasapi-overview"},{"group":"Audio","pages":[{"title":"XBOX GDK 音訊概觀與工具","sidebarTitle":"概觀","icon":"volume-high","href":"/zh-TW/build/console-features/audio/index"},{"group":"Xdsp","pages":[{"title":"概觀","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/console-features/audio/overviews/index"}]},{"group":"Xma2","pages":[{"group":"Xma2 encoder tool","pages":[{"title":"工具","sidebarTitle":"概觀","icon":"screwdriver-wrench","href":"/zh-TW/build/console-features/audio/tools/index"},{"group":"Xma2 encoder reference","pages":[{"title":"XMA2 編碼器程式庫和命令列工具","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/console-features/audio/tools/xma2encoder/index"}]}]}]},{"group":"Xwma","pages":[{"group":"Xwma command-line encoder","pages":[{"group":"Xwma encoder reference","pages":[{"title":"xWMA 編碼器程式庫和命令列工具","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/console-features/audio/tools/xwmaencoder/index"}]}]}]}]}]},{"group":"Player Data, Social Features, Networking, and Multiplayer","pages":[{"group":"Networking","pages":[{"title":"網路","sidebarTitle":"網路","icon":"network-wired","href":"/zh-TW/build/console-features/networking/gc-networking-toc"},{"title":"GDK 網路堆疊與網路 API 概觀","sidebarTitle":"Microsoft Game Development Kit (GDK) 網路簡介","icon":"circle-info","href":"/zh-TW/build/console-features/networking/introduction-networking"},{"title":"偵測網路初始化狀態","sidebarTitle":"偵測網路初始化狀態","icon":"chart-line","href":"/zh-TW/build/console-features/networking/initialization-connectivity-networking"},{"title":"XBOX 主機上的服務品質 (QoS) 封包標記","sidebarTitle":"Xbox 主機上的服務品質 (QoS) 封包標記","icon":"network-wired","href":"/zh-TW/build/console-features/networking/qos-packet-tagging"},{"group":"Web Requests","pages":[{"title":"Web 要求","sidebarTitle":"Web 要求","icon":"network-wired","href":"/zh-TW/build/console-features/networking/web-requests/web-requests-toc"},{"title":"Web 要求概觀","sidebarTitle":"Web 要求","icon":"plug","href":"/zh-TW/build/console-features/networking/web-requests/http-networking"},{"title":"xCurl 概觀","sidebarTitle":"xCurl 概觀","icon":"network-wired","href":"/zh-TW/build/console-features/networking/web-requests/intro-xcurl"},{"title":"WinHTTP 概觀","sidebarTitle":"WinHTTP 概觀","icon":"circle-info","href":"/zh-TW/build/console-features/networking/web-requests/intro-winhttp"},{"title":"偵錯自訂 HTTP 堆疊","sidebarTitle":"偵錯自訂 HTTP 堆疊","icon":"network-wired","href":"/zh-TW/build/console-features/networking/web-requests/debugging-custom-http-stacks"},{"title":"XBOX 上的 Web 要求和 HTTP 堆疊","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/console-features/networking/web-requests/index"}]},{"group":"Game Mesh","pages":[{"title":"遊戲網狀架構 (內容)","sidebarTitle":"遊戲網狀架構 (內容)","icon":"network-wired","href":"/zh-TW/build/console-features/networking/game-mesh/game-mesh-toc"},{"title":"PlayFab Party","sidebarTitle":"PlayFab Party","icon":"people-group","href":"/zh-TW/build/console-features/networking/game-mesh/playfab-party-intro-networking"},{"title":"適用於 Unreal 的 PlayFab Party Online Subsystem","sidebarTitle":"適用於 Unreal 的 PlayFab Party Online Subsystem","icon":"people-group","href":"/zh-TW/build/console-features/networking/game-mesh/party-unreal-online-subsystem"},{"title":"適用於 Unity 的 PlayFab Party SDK","sidebarTitle":"適用於 Unity 的 PlayFab Party SDK","icon":"people-group","href":"/zh-TW/build/console-features/networking/game-mesh/party-unity-plugin"},{"title":"MsQuic","sidebarTitle":"MsQuic","icon":"palette","href":"/zh-TW/build/console-features/networking/game-mesh/msquic-intro-networking"},{"title":"慣用 UDP 多人遊戲連接埠","sidebarTitle":"慣用 UDP 多人遊戲連接埠","icon":"user","href":"/zh-TW/build/console-features/networking/game-mesh/preferred-local-udp-multiplayer-port-networking"},{"group":"Windows Sockets","pages":[{"title":"Windows Sockets 簡介","sidebarTitle":"Windows Sockets 簡介","icon":"circle-info","href":"/zh-TW/build/console-features/networking/game-mesh/winsock-intro-networking"},{"title":"PC 連接埠行為","sidebarTitle":"PC 連接埠行為","icon":"network-wired","href":"/zh-TW/build/console-features/networking/game-mesh/pc-port-behavior"},{"title":"XBOX 主機連接埠行為","sidebarTitle":"XBOX 主機連接埠行為","icon":"network-wired","href":"/zh-TW/build/console-features/networking/game-mesh/xbox-console-port-behavior"}]},{"title":"服務品質測量","sidebarTitle":"服務品質測量","icon":"network-wired","href":"/zh-TW/build/console-features/networking/game-mesh/qos-networking"},{"title":"XBOX 遊戲的遊戲網狀架構網路功能","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/console-features/networking/game-mesh/index"}]},{"group":"Networking tools for the Microsoft Game Development Kit","pages":[{"title":"用於監視和偵錯 GDK 網路流量的工具","sidebarTitle":"Microsoft Game Development Kit 中的網路工具 (內容)","icon":"network-wired","href":"/zh-TW/build/console-features/networking/tools/tools-networking-toc"},{"title":"Fiddler setup networking","href":"/zh-TW/build/console-features/networking/tools/fiddler-setup-networking"},{"title":"Windows PC 上的 Fiddler","sidebarTitle":"Windows PC 上的 Fiddler","icon":"network-wired","href":"/zh-TW/build/console-features/networking/tools/fiddler-pc"},{"title":"Xbox One 網路擷取","sidebarTitle":"Xbox One 網路擷取","icon":"network-wired","href":"/zh-TW/build/console-features/networking/tools/netcap-networking"},{"title":"XBOX 開發套件上的網路壓力測試","sidebarTitle":"XBOX 開發套件上的網路壓力測試","icon":"network-wired","href":"/zh-TW/build/console-features/networking/tools/netstress-networking"},{"title":"工具","sidebarTitle":"概觀","icon":"screwdriver-wrench","href":"/zh-TW/build/console-features/networking/tools/index"}]},{"title":"XBOX 保留連接埠","sidebarTitle":"XBOX 保留連接埠","icon":"network-wired","href":"/zh-TW/build/console-features/networking/reserved-ports-networking"},{"title":"XBOX One Software Development Kit 移轉指南","sidebarTitle":"XBOX One Software Development Kit","icon":"book-open","href":"/zh-TW/build/console-features/networking/xdk-migration/xdk-migration-toc"},{"title":"XBOX One Software Development Kit 移轉概觀","sidebarTitle":"XBOX One Software Development Kit","icon":"circle-info","href":"/zh-TW/build/console-features/networking/xdk-migration/xdk-migration-overview-networking"},{"title":"GDK 與 XDK 之間的 Web 要求差異","sidebarTitle":"Web 要求的差異","icon":"network-wired","href":"/zh-TW/build/console-features/networking/xdk-migration/xdk-migration-web-requests-networking"},{"title":"遊戲網狀通訊:GDK 與 XDK 的差異","sidebarTitle":"遊戲網狀通訊的差異","icon":"network-wired","href":"/zh-TW/build/console-features/networking/xdk-migration/xdk-migration-game-mesh-networking"},{"group":"XDK migration guide","pages":[{"title":"將 XDK 網路功能移轉至 XBOX GDK","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/console-features/networking/xdk-migration/index"}]}]},{"title":"PlayFab Party 概觀","sidebarTitle":"PlayFab Party 概觀","icon":"network-wired","href":"/zh-TW/build/console-features/networking/index"}]},{"group":"Storage and Game Saves","pages":[{"group":"Storage","pages":[{"title":"Xbox 主機上的本機儲存空間","sidebarTitle":"Xbox 主機上的本機儲存空間","icon":"hard-drive","href":"/zh-TW/build/console-features/storage/local-storage"},{"title":"DirectStorage (內容)","sidebarTitle":"DirectStorage (內容)","icon":"hard-drive","href":"/zh-TW/build/console-features/storage/directstorage-toc"},{"title":"DirectStorage 概觀","sidebarTitle":"DirectStorage 概觀","icon":"circle-info","href":"/zh-TW/build/console-features/storage/directstorage/directstorage-overview"},{"title":"Directstorage white paper","href":"/zh-TW/build/console-features/storage/directstorage/directstorage-white-paper"},{"title":"Directstorage compression","href":"/zh-TW/build/console-features/storage/directstorage/directstorage-compression"},{"title":"簡易硬體解壓縮","sidebarTitle":"簡易硬體解壓縮","icon":"download","href":"/zh-TW/build/console-features/storage/directstorage/directstorage-drop-in-decompression"},{"title":"Directstorage shuffles","href":"/zh-TW/build/console-features/storage/directstorage/directstorage-shuffles"}]},{"group":"Game Saves","pages":[{"title":"Game Saves 概觀","sidebarTitle":"Game Saves 概觀","icon":"circle-info","href":"/zh-TW/build/core-features/common/game-save/game-saves-overview"},{"title":"Game Saves 開發人員指南","sidebarTitle":"Game Saves 開發人員指南","icon":"book-open","href":"/zh-TW/build/core-features/common/game-save/game-saves-developer-guide"},{"title":"了解 Game Saves 同步流程","sidebarTitle":"了解 Game Saves 同步流程","icon":"cloud-arrow-up","href":"/zh-TW/build/core-features/common/game-save/game-saves-syncing"},{"title":"Game Saves 儲存系統","sidebarTitle":"Game Saves 儲存系統","icon":"hard-drive","href":"/zh-TW/build/core-features/common/game-save/game-saves-storage-systems"},{"title":"Game Saves 系統對話方塊","sidebarTitle":"Game Saves 系統對話方塊","icon":"cloud-arrow-up","href":"/zh-TW/build/core-features/common/game-save/game-saves-dialogues"},{"title":"Game Saves 逐步解說與範例","sidebarTitle":"Game Saves 逐步解說與範例","icon":"code","href":"/zh-TW/build/core-features/common/game-save/game-saves-walkthroughs-and-samples"},{"title":"Game Saves 偵錯","sidebarTitle":"Game Saves 偵錯","icon":"cloud-arrow-up","href":"/zh-TW/build/core-features/common/game-save/game-saves-debugging"},{"title":"Game Saves 工具","sidebarTitle":"Game Saves 工具","icon":"cloud-arrow-up","href":"/zh-TW/build/core-features/common/game-save/game-saves-tools"},{"title":"XGameSaveFiles API 概觀","sidebarTitle":"XGameSaveFiles API 概觀","icon":"circle-info","href":"/zh-TW/build/core-features/common/game-save/xgamesavefiles"},{"title":"XGameSave API 概觀","sidebarTitle":"XGameSave API 概觀","icon":"circle-info","href":"/zh-TW/build/core-features/common/game-save/xgamesave"}]},{"title":"儲存空間","sidebarTitle":"概觀","icon":"hard-drive","href":"/zh-TW/build/console-features/storage/index"}]},{"group":"Game dvr","pages":[{"title":"XBOX 主機上的 Game DVR 與廣播","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/console-features/game-dvr/index"}]},{"group":"Cross console gen development","pages":[{"title":"使用 XBOX GDK 開發跨世代遊戲","sidebarTitle":"概觀","icon":"folder-open","href":"/zh-TW/build/console-features/cross-gen/index"}]},{"group":"Additional pages","pages":[{"title":"適用於 Xbox 主機的 GDK 功能","sidebarTitle":"適用於 Xbox 主機的 GDK 功能","icon":"cube","href":"/zh-TW/build/console-features/console-features-overview"}]}]},{"group":"ATG engagement","icon":"handshake-angle","hidden":true,"tag":"NDA","pages":[{"title":"Atg engagement","href":"/zh-TW/build/atg-engagement/atg-engagement"}]},{"group":"Build and Develop","pages":[{"group":"Platform-specific Development","pages":[{"group":"PC-first development","pages":[{"title":"PC 端對端指南概觀","sidebarTitle":"PC 端對端指南概觀","icon":"compass","href":"/zh-TW/build/gdk-and-engines/overview"},{"group":"Handheld devices considerations","pages":[{"title":"Xbox 設計的掌機相容性計畫指導方針","sidebarTitle":"Xbox 設計的掌機相容性計畫指導方針","icon":"list-check","href":"/zh-TW/build/gdk-and-engines/handheld/handheld-guidance"},{"title":"掌機相容性指導方針與測試案例","sidebarTitle":"掌機相容性計畫指導方針與測試案例","icon":"clipboard-check","href":"/zh-TW/build/gdk-and-engines/handheld/handheld-guidelines-and-testcases"},{"title":"掌機裝置的其他考量","sidebarTitle":"其他考量","icon":"list","href":"/zh-TW/build/gdk-and-engines/handheld/handheld-considerations"},{"title":"遊戲啟動器與掌機","sidebarTitle":"遊戲啟動器","icon":"rocket","href":"/zh-TW/build/gdk-and-engines/handheld/handheld-launchers"},{"title":"平衡效能與電源效率","sidebarTitle":"平衡效能與電源效率","icon":"battery-half","href":"/zh-TW/build/gdk-and-engines/handheld/handheld-performance"}]},{"group":"Steps that may apply to your game","pages":[{"icon":"file-lines","title":"Advanced Shader Delivery","href":"/zh-TW/build/gdk-and-engines/guides/advanced-shader-delivery"},{"icon":"file-lines","title":"Direct3D 12 程式設計指南","href":"/zh-TW/build/gdk-and-engines/guides/directx-12-programming-guide"}]},{"group":"Additional PC overviews","pages":[{"title":"PC Bootstrapper","sidebarTitle":"PC Bootstrapper","icon":"rocket","href":"/zh-TW/build/gdk-and-engines/guides/pc-bootstrapper"},{"title":"在 PC 上支援高 DPI 顯示器","sidebarTitle":"在 PC 上支援高 DPI 顯示器","icon":"display","href":"/zh-TW/build/gdk-and-engines/guides/high-dpi-displays"},{"title":"使用 GDK 專案範本開始開發新遊戲","sidebarTitle":"使用 GDK 專案範本開始開發新遊戲","icon":"file-code","href":"/zh-TW/build/gdk-and-engines/guides/gdk-project-templates"},{"title":"GDK 標頭和程式庫目錄結構","sidebarTitle":"GDK 標頭和程式庫目錄結構","icon":"folder-tree","href":"/zh-TW/build/gdk-and-engines/guides/gdk-directory-structure"},{"title":"視窗顯示模式與遊戲可呼叫 UI 對話方塊","sidebarTitle":"視窗顯示模式與遊戲可呼叫 UI 對話方塊","icon":"window-restore","href":"/zh-TW/build/gdk-and-engines/guides/window-display-modes-tcui"},{"title":"PC 開發人員常見問題集","sidebarTitle":"PC 開發人員常見問題集","icon":"circle-question","href":"/zh-TW/build/gdk-and-engines/guides/pc-faq"},{"title":"針對 PC 遊戲的 Xbox Services 流量進行疑難排解","sidebarTitle":"針對 PC 遊戲的 Xbox Services 流量進行疑難排解","icon":"network-wired","href":"/zh-TW/build/gdk-and-engines/guides/troubleshoot-xbox-services-traffic"},{"title":"混合式 CPU 環境中的遊戲效能","sidebarTitle":"混合式 CPU 環境中的遊戲效能","icon":"microchip","href":"/zh-TW/build/gdk-and-engines/guides/hybrid-cpu-performance"}]},{"icon":"file-lines","title":"GDK 與 Steamworks 之間的概念差異","href":"/zh-TW/build/steam-porting-guide/conceptual-differences"}]},{"title":"Upgrading xbox one xdk titles on scarlett","href":"/zh-TW/build/console-features/console-workflows/upgrading-xbox-one-xdk-titles-on-scarlett"},{"title":"Using gdk remotely","href":"/zh-TW/build/console-features/console-workflows/using-gdk-remotely"},{"title":"Xbox game life cycle","href":"/zh-TW/build/console-features/console-workflows/xbox-game-life-cycle"},{"title":"Inspecting errors","href":"/zh-TW/build/console-features/debugging-diagnostics/inspecting-errors"},{"title":"Troubleshooting common issues","href":"/zh-TW/build/console-features/debugging-diagnostics/troubleshooting-common-issues"},{"title":"Profiling mode","href":"/zh-TW/build/console-features/debugging-diagnostics/profiling-mode"},{"title":"Retrieving crash dumps","href":"/zh-TW/build/console-features/debugging-diagnostics/retrieving-crash-dumps"},{"title":"Xtf gamepad input testing","href":"/zh-TW/build/console-features/debugging-diagnostics/xtf-gamepad-input-testing"},{"title":"Debugging with overlay folders","href":"/zh-TW/build/console-features/debugging-diagnostics/debugging-with-overlay-folders"},{"title":"Devkit second nic","href":"/zh-TW/build/console-features/debugging-diagnostics/devkit-second-nic"},{"title":"Atg systems engagement","href":"/zh-TW/build/atg-engagement/atg-systems-engagement"},{"title":"Atg graphics engagement","href":"/zh-TW/build/atg-engagement/atg-graphics-engagement"},{"title":"Withoutinstall overview","href":"/zh-TW/build/console-features/build-without-install/withoutinstall-overview"},{"title":"Build environment withoutinstall","href":"/zh-TW/build/console-features/build-without-install/build-environment-withoutinstall"},{"title":"Project configuration withoutinstall","href":"/zh-TW/build/console-features/build-without-install/project-configuration-withoutinstall"},{"title":"Porting guide for existing era","href":"/zh-TW/build/console-features/porting-from-xbox-one-era/porting-guide-for-existing-era"}]},{"group":"Build Tools","pages":[{"group":"Packaging and Deployment Tools","pages":[{"title":"建立套件 (makepkg.exe)","sidebarTitle":"建立套件 (makepkg.exe)","icon":"box","href":"/zh-TW/build/core-features/common/packaging/deployment/makepkg"},{"title":"建立套件資源索引 (MakePRI.exe)","sidebarTitle":"建立套件資源索引","icon":"box","href":"/zh-TW/build/core-features/common/packaging/deployment/makepri"},{"title":"分割套件 (splitpkg.exe)","sidebarTitle":"分割套件 (splitpkg.exe)","icon":"box","href":"/zh-TW/build/core-features/common/packaging/deployment/splitpkg"},{"title":"packageutil.exe","sidebarTitle":"packageutil.exe","icon":"box","href":"/zh-TW/build/core-features/common/packaging/deployment/packageutil"}]}]},{"group":"Async programming model","pages":[{"title":"非同步程式設計概觀 (內容)","sidebarTitle":"非同步程式設計概觀 (內容)","icon":"circle-info","href":"/zh-TW/build/core-features/common/async/async-toc"},{"title":"非同步程式設計的設計目標與改進","sidebarTitle":"非同步程式設計的設計目標","icon":"map","href":"/zh-TW/build/core-features/common/async/async-whitepaper"},{"title":"非同步程式設計模型","sidebarTitle":"非同步程式設計模型","icon":"square-pen","href":"/zh-TW/build/core-features/common/async/async-programming-model"},{"title":"通用非同步工作包裝函式","sidebarTitle":"通用非同步工作包裝函式","icon":"microchip","href":"/zh-TW/build/core-features/common/async/async-task-function-example"}]},{"group":"Player input","pages":[{"title":"輸入","sidebarTitle":"輸入","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/gc-input-toc"},{"title":"虛擬鍵盤支援","sidebarTitle":"虛擬鍵盤支援","icon":"gamepad","href":"/zh-TW/build/core-features/common/input/overviews/virtualkeyboardsupport"}]},{"title":"Game DVR 與廣播","sidebarTitle":"Game DVR 與廣播","icon":"square-pen","href":"/zh-TW/build/console-features/game-dvr/gamedvr-broadcast"},{"title":"System memory overview","href":"/zh-TW/build/console-features/memory/system-memory-overview"},{"title":"System memory details","href":"/zh-TW/build/console-features/memory/system-memory-details"},{"title":"跨核心記憶體成本","sidebarTitle":"跨核心記憶體成本","icon":"memory","href":"/zh-TW/build/console-features/memory/Cross-Core-Memory-Costs"},{"title":"System memory diagnostics","href":"/zh-TW/build/console-features/memory/system-memory-diagnostics"},{"title":"使用 Microsoft GDK Game OS 記憶體管理員","sidebarTitle":"使用 Microsoft GDK Game OS","icon":"cube","href":"/zh-TW/build/console-features/memory/system-memory-working"},{"title":"System memory tooling","href":"/zh-TW/build/console-features/memory/system-memory-tooling"},{"title":"Kernel memory usage","href":"/zh-TW/build/console-features/memory/kernel_memory_usage"},{"title":"Virtual memory allocator","href":"/zh-TW/build/console-features/memory/virtual-memory-allocator"},{"title":"Writeable file mappings","href":"/zh-TW/build/console-features/memory/writeable-file-mappings"},{"title":"跨世代遊戲開發","sidebarTitle":"跨世代遊戲開發","icon":"arrows-left-right","href":"/zh-TW/build/console-features/cross-gen/gc-cross-gen-toc"},{"title":"跨世代遊戲","sidebarTitle":"跨世代遊戲","icon":"circle-info","href":"/zh-TW/build/console-features/cross-gen/cross-gen-overview"},{"title":"雙 SKU 跨世代遊戲","sidebarTitle":"雙 SKU 跨世代遊戲","icon":"tags","href":"/zh-TW/build/console-features/cross-gen/cross-gen-dual-sku"},{"title":"僅透過回溯相容性進行跨世代遊戲","sidebarTitle":"透過回溯相容性進行跨世代遊戲","icon":"arrows-left-right","href":"/zh-TW/build/console-features/cross-gen/cross-gen-backcompat-only"},{"title":"Smart Delivery","sidebarTitle":"Smart Delivery","icon":"box","href":"/zh-TW/build/console-features/cross-gen/cross-gen-smart-delivery"}]}]},{"tab":"Services","pages":[{"title":"Services","href":"/zh-TW/services/xbox-services"}]},{"tab":"Tools","pages":[{"title":"Tools","href":"/zh-TW/tools/additional-tools"}]},{"tab":"Publishing","pages":[{"title":"Publishing","href":"/zh-TW/publishing/game-publishing/publishing-processes/managed-creators/overview"}]},{"tab":"GDK APIs","pages":[{"title":"GDK APIs","href":"/zh-TW/reference/chat/gc-reference-chat-toc"}]},{"tab":"PlayFab APIs","pages":[{"title":"PlayFab APIs","href":"/zh-TW/services/playfab/api-references"}]},{"tab":"Microsoft Store APIs","pages":[{"title":"Microsoft Store APIs","href":"/zh-TW/reference/microsoft-store-apis/xstore-nav"}]},{"tab":"NDA Topics","pages":[{"title":"NDA Topics","href":"/zh-TW/nda/nda-overview"}]}]}]},"basePath":"","title":"使用 IGameInput 建置原生觸控介面 - XBOX Game Development Documentation","buildId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","deploymentId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","dynamics":[],"chunks":[]}