> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Porting guides to the XBOX GDK

> Index of porting guidance for bringing existing titles to the XBOX GDK from XBOX One ERA, FXC, Steamworks, and other source platforms and engines.

Use this page as the technical reference index for GDK porting topics. For a guided, source-platform-first path, start with the Get Started porting overview.

<Card title="Guided porting paths (Get Started)" icon="compass" href="/paths/porting/overview">
  Select your source platform (Steam, prior XBOX generation, other consoles, or PC) and follow the curated path.
</Card>

## Jump to your source platform

<CardGroup cols={2}>
  <Card title="From Steam" icon="steam" href="/paths/porting/from-steam">
    Steamworks to GDK feature mapping.
  </Card>

  <Card title="From a prior XBOX generation" icon="xbox" href="/paths/porting/from-xbox-era">
    XBOX One ERA and XDK to GDK.
  </Card>

  <Card title="From other platforms" icon="gamepad" href="/paths/porting/from-console">
    Another console or platform to XBOX Series X|S consoles.
  </Card>

  <Card title="From PC (non-Steam)" icon="desktop" href="/paths/porting/from-pc">
    Win32 or storefront-agnostic PC to XBOX and the Microsoft Store.
  </Card>
</CardGroup>

## Technical topics

### XBOX One ERA to GDK

Covers WinRT-style API replacements, async pattern migration (`IAsyncOperation` to `XAsyncBlock` or `XTaskQueue`), memory model changes (ERA memory manager to `XMemAlloc`), and packaging migration to MSIXVC.

* [Porting guide for existing ERA titles](/build/console-features/porting-from-xbox-one-era/porting-guide-for-existing-era): Step-by-step migration from XBOX One ERA to the GDK, including memory model changes and API replacements.

### Shaders: FXC to DXC

The DirectX Shader Compiler (DXC) is the modern HLSL compiler. The FXC to DXC port guide covers new command-line flags, updated HLSL language semantics, and tooling integration in Visual Studio.

### GameInput porting

Migrate from `Windows.XBOX.Input` and XInput to the unified [GameInput](/build/core-features/common/input/overviews/input-overview) API. Covers device enumeration, reading state, vibration, and PIX integration. See also [Input porting: XInput and WGI](/build/core-features/common/input/porting/input-porting-xinput).

### Steamworks to GDK and Microsoft Store

Feature mapping for PC titles shipping on Steam:

* Achievements to XSAPI achievements.
* Cloud saves to Connected Storage (`XGameSave`).
* Friends and presence to XSAPI social.
* Multiplayer to MPSD or PlayFab Multiplayer Lobby.
* In-app purchases to `XStore`.

Full guide: [Port from Steam](/paths/porting/from-steam).

### Engines

For middleware, start with the engine-specific PC end-to-end guides:

* [Unity](/build/gdk-and-engines/unity/unity)
* [Unreal](/build/gdk-and-engines/unreal/unreal)
* [GameMaker](/build/gdk-and-engines/gamemaker)
* [Godot](/build/gdk-and-engines/godot)
* [Custom C and C++ engines](/build/gdk-and-engines/custom-engine)
* [Overview: GDK and game engines](/build/gdk-and-engines/gdk-and-engines)

## See also

* [Develop a new GDK title](/home/build-first-title/developing-new-titles)
* [Cross-gen development](/build/console-features/cross-gen/cross-gen-overview)
* [Packaging](/build/core-features/common/packaging/overviews/packaging)


## Related topics

- [General porting guides](/paths/porting/guides.md)
- [Steam porting guide overview](/build/steam-porting-guide/overview.md)
- [Porting from Windows.XBOX.Input to GameInput](/build/core-features/common/input/porting/input-porting-wxi.md)
- [Porting existing input code to GameInput](/build/core-features/common/input/porting/index.md)
- [Initializing the GDK](/build/steam-porting-guide/initializing-the-gdk.md)
