Search public documentation:


Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 Home > Mobile Home > Getting Started: Developing Mobile Projects
UE3 Home > Getting Started: Unreal Engine 3 > Getting Started: Developing Mobile Projects

Getting Started: Developing Mobile Projects


This document explains how to set up your development environment for compiling for mobile devices, as well as general workflows for deploying and debugging an Unreal project that runs on a mobile platform.

iOS Development

For system requirements and information specific to getting started developing games for Apple's iOS platform, see the Getting Started: iOS Development page.


You need to have a Windows PC to develop for mobile devices. See UE3 Min Specs for information on PC hardware. You will of course also need mobile devices to test on, depending on what you are targeting!

Multi-platform development

While our mobile development efforts have been inside of UDKGame, there is nothing stopping you from making a game that supports mobile and PC/consoles. Mobile devices do need some extra attention (especially with materials) these are in addition to the functionality used on other platforms.

If you make content for more powerful platforms, when you cook for a mobile device, a lot of things will be automatically processed for you to help them run on the device. Huge textures will be reduced in size, unused audio will be thrown away, etc. There are memory limitations, however, that are impossible to overcome if you make your content assuming PC-levels of memory. Level streaming is one way to combat having too much in memory, but you will need to at some point just limit the amount of stuff in your levels.

One other solution could be to make two pretty different styles of game, but using the same assets and script code. This way, you could have huge, detailed outdoor vistas running on a PC with dozens of baddies, but then on a mobile device you could have smaller indoor areas with a few guys, or maybe an overhead game, etc.

Mobile rendering emulation

Because mobile platforms use different lighting arithmetic than on PC, UE3 includes a feature that when enabled, forces lighting to appear more consistent with mobile. Currently, the main cause of lighting differences between mobile and other platforms is gamma and post processing. Gamma-correct lighting is currently disabled on mobile for performance reasons. Obviously, this will significantly affect how your world is lit. Also, mobile currently doesn't perform any post processing, but color grading and bloom can drastically change the way your game appears.

Enabling the following Engine.ini setting for your game will allow the editor to render more consistently with mobile. (e.g. gamma-correct lighting will be disabled.)


Mobile Previewer (ES2 renderer)

You can use the Mobile Previewer mode to view your game on PC just how it would look on a mobile device! When running your PC game, just pass the -es2 parameter on the command-line to activate the OpenGL ES2 RHI instead of the usual DirectX-based rendering. This uses nearly the exact same code path as your mobile game uses when running on device, so the graphics will appear very similar.

Additionally, you can use the -simmobile parameter to activate the ES2 renderer along with other mobile-related features, such as touch-based input emulation. -es2 is implied when using -simmobile.

Also note that Unreal Editor includes a button on the main tool bar that will launch Mobile Previewer for your currently-loaded map.

Configuring the Engine for Mobile

There are many configuration settings (located in .ini files) which allow you to configure the engine for mobile usage. These are already set up by default for mobile usage however, you may want to tweak the settings for your game.

For more information on the structure and syntax of Unreal's configuration files consult the Configuration Files page.

System Setting Configuration

Many of the settings you can configure are system settings located in BaseEngine.ini in the Engine\Config directory. You can also override these settings in your project by adding them to DefaultEngine.ini in your GameName\Config directory.

Consult the Mobile System Settings page for a list of mobile system settings.

Input Configuration

Input configuration for mobile can be found in DefaultGame.ini in the UDKGame\Config folder.

Mobile Input is a large topic by itself. Details on the input system as well as configuration settings can be found on the Mobile Input System page.