User Guide (Version 1.16)

Running the Remote Shader Compiler

This feature is in preview release and is subject to change.

Lumberyard uses a versatile shader system to achieve high quality, realistic graphics. Because the shader compilation pipeline depends on the Windows-specific HLSL optimizer, you must connect to a shader compiler on your PC when running a game on iOS during development. This compiles the subset of shaders required by your game, on demand.


You must connect your PC and iOS device to the same network and configure any firewalls to allow traffic through port 61453.

When a new shader is compiled, the game waits for the binary shader permutation to compile on your PC and be sent back to your device. Once this occurs, the shader is cached on your device until you delete the app. When you are ready to release your game, you must pack up and include all cached binary shaders.

You must also set up the mobile device system CFG file (system_ios_ios.cfg) to connect to the remote shader compiler on the PC.

You can use a whitelist to specify the IP addresses that are allowed to connect to your remote shader compiler. For information, see Creating a Whitelist for the Remote Shader Compiler.

To allow your iOS game to connect to the shader compiler on your PC

  1. On your Windows PC, launch the shader compiler (located in the lumberyard_version\dev\Tools\CrySCompileServer\x64\profile directory).

    • For Visual Studio 2017, launch CrySCompileServer_vc141x64.

    • For Visual Studio 2015, launch CrySCompileServer_vc140x64.

  2. On your Mac, navigate to the lumberyard_version\dev directory.

  3. In a text editor, edit the system_ios_ios.cfg file to set the r_ShaderCompilerServer variable to the IP address of the PC on which you are running the shader compiler. The default value is localhost.

  4. If it is not already running, launch Asset Processor on your PC.