Bring your advanced games to Mac, iPad, and iPhone

The Game Porting Toolkit  makes it easier than ever to bring games to the unified gaming platform across Mac, iPad, and iPhone. Take advantage of improved compatibility, expanded guidance, and updated tools.

Download Game Porting Toolkit 4

Download the Metal Developer Tools for Windows

What’s new

Game Porting Toolkit 4 dramatically cuts the time, effort, and cost of bringing your game to Apple platforms.

  • A new companion repository on Apple's GitHub brings together open-source agent skills and sample code to help you leverage AI coding agents throughout the porting process, so you can produce higher-quality ports and ship on Apple platforms faster.
  • New agent skills provide best practices and deep Metal knowledge for every step of the porting experience, helping your agents meaningfully speed up your time to first playable. And with new command-line access for Metal tools, agents can now capture, debug, and profile Metal workloads directly.
  • The evaluation environment now supports Metal 4, allowing you to test compatibility and performance against the latest API from the very start of your porting process.

Get started easily

  • Use new game porting skills to bring best practices and deep Metal knowledge to every stage of the porting process, greatly reducing the time it takes to you to bring your game to the unified gaming platform. And with command-line access for Metal tools, agents can now capture and debug Metal workloads directly.
  • Run your Windows binary on the evaluation environment for Windows games to get a baseline estimate for performance, and verify that your shaders convert correctly. You can now take your game evaluation even further by using Metal tools such as Metal Performance HUD, Metal debugger, and Metal System Trace.
  • Review the Human Interface Guidelines to learn how to deliver an outstanding experience across Mac, iPhone, and iPad.
  • Leverage the Mac Remote Developer Tools for Windows to build and debug your game on macOS remotely from within Microsoft Visual Studio on PC.
  • Use the game porting example code to learn how to map your game subsystems to Apple frameworks. Metal shader converter helps you bring your HLSL shaders to Metal. If you’re experienced in C++, Metal-cpp provides a familiar interface to get started with the Metal framework.

Learn what you can do with the toolkit

Whether you’re making a new cross-platform game or porting an existing one, the Game Porting Toolkit 3 is the best way to bring your game to Apple devices.

Leverage game porting agent skills

A companion repository on Apple’s GitHub brings together open-source agent skills and sample code to help you work with AI coding agents throughout the porting process — so you can produce higher-quality ports and ship on Apple platforms faster. Use these skills to port from DirectX to Metal, debug directly with Metal command-line tools, add game controller support, polish the player experience, and optimize your game.

Evaluate your Windows executable on Apple silicon

To find out how your game performs on Apple silicon or if your graphics are portable, evaluate your unmodified Windows executable on Apple silicon using the evaluation environment for Windows games. You can test your game, understand its performance, and validate your shaders.

In addition to existing features such as, sparse buffers and textures, performance insights, HDR, upscaling, denoising, and frame generation, the latest version brings full Metal 4 support.

You can even start debugging and profiling your game while in evaluation using Metal tools, such as Metal HUD, Metal GPU capture, and Metal System Trace. And there are even more ways to get started with this evaluation environment when you use community projects (like Homebrew) and products (like CrossOver from CodeWeavers). To learn more, watch Port advanced games to Apple platforms.

Design your game for Apple devices

Players expect your game to feel right at home on their devices. An expanded set of Human Interface Guidelines focuses on designing for games to help you delight your players and keep them coming back for more. Get details on key topics, from how to best support fullscreen gaming content to designing great on-screen virtual controls gamers will love.

Learn from game porting code examples

These examples are based on our learnings from working with developers that simultaneously shipped their high-end games on Mac, iPad, and iPhone. You’ll learn essential steps, like how to convert your Windows display, input, and audio APIs, and how to build your shaders once and deploy everywhere.

Build and run on Mac, then iPad and iPhone

Now it’s even easier to deploy from Mac to iPad and iPhone, and the game porting code examples guide you through targeting and building your game for these devices.

Convert shader code to Metal

As you port your game assets, save time by using the Metal shader converter to convert DirectX Intermediate Language (DXIL) into a Metal library that’s ready to use on Mac with Apple silicon, iPad, and iPhone. The latest version of the tool adds support for multiple Metal features, including frame buffer fetch, function constants, and the new intersection function buffers. With support for debug information, you can use Metal tools in Xcode to debug, profile, and validate your converted shaders.

Use C++ with Metal

Leverage your rendering team’s expertise in C++ when adopting Metal. Metal-cpp lets you access the full Metal and MetalFX APIs from C++ with no measurable overhead compared to calling Metal Objective-C headers.

Use your existing build infrastructure

If you have Windows asset creation pipelines, Metal Developer Tools for Windows let you use your existing infrastructure to build assets for Apple devices. Use the Metal compiler and offline binary generator to compile and tailor graphics and compute shaders for Apple GPUs, and the Metal texture converter to convert textures to formats that Metal supports.

Build remotely from within Visual Studio

Save time and simplify cross-platform development with the Mac Remote Developer Tools for Windows to set up a Mac for remote project building and debugging. This tool enables you to build a CMake-based project from within Microsoft Visual Studio on a target Mac, helping you bootstrap your game port and catch porting mistakes early in cross-platform projects targeting Apple platforms.