Direct3D app development for Windows Phone 8

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

This section contains information on implementing Direct3D apps for Windows Phone 8. “Direct3D app” is a term that refers to a special type of app that only uses native code. There are other types of apps that use Direct3D to render graphics, referred to as “managed apps”. As the name implies, these apps can use managed code as well as a number of other features that are not available to Direct3D apps. It is important that you decide which type of app you want to make and choose the correct project template before you start coding because the application frameworks of managed and Direct3D apps are quite different. To help decide which type of app you will create, be sure to read the topic Choosing the right project template for your game for Windows Phone 8.

If you decide that a Direct3D app is right for your scenario, the topics in this section will walk you through the Direct3D app framework and show you how to implement some of the features that many apps and games will need. Note that this section is focused on tasks that are not directly related to Direct3D graphics or the native sound APIs. For information on implementing the graphics and sound for your app, see Games for Windows Phone 8.

Launchers and choosers

Windows Phone offers a set of managed APIs called Launchers and Choosers that allow apps to easily implement some common scenarios like launching the web browser or choosing a picture from the phone’s media library. While these managed APIs are not available for Direct3D apps, there are other ways to perform these tasks from native code. For more information, see Launchers and choosers for Direct3D apps for Windows Phone 8.

Text input

Many games need to allow the user to provide text input, such as entering the player’s name. Direct3D apps do not have access to XAML controls like the TextBox. Windows Phone 8 provides APIs that allow your app to receive text input from the phone’s Software Input Panel (SIP) keyboard which allows you to create your own text boxes from scratch. For detailed instructions for doing this, see How to handle keyboard input in a Direct3D app for Windows Phone 8.

Other common tasks

The following topics provide guidance for implementing other common tasks in a Direct3D app.

How to determine the user-preferred UI language from a Direct3D app for Windows Phone 8

How to determine theme colors from a Direct3D app for Windows Phone 8

How to disable the lock screen from a Direct3D app for Windows Phone 8

How to detect screen orientation from a Direct3D app for Windows Phone 8

How to detect screen resolution from a Direct3D app for Windows Phone 8

How to detect Back button presses from a Direct3D app for Windows Phone 8

Direct3D App Model

The app model for Direct3D apps on Windows Phone is very similar to the app model for Windows Store apps. There are just a few notable areas where the phone app model is different. For more info, see Direct3D app model for Windows Phone 8.