Compilación de sombreadores para juegos Android
Lumberyard utiliza un sistema de sombreadores versátil para conseguir gráficos realistas y de alta calidad. Dado que la canalización de la compilación del sombreador depende del optimizador de HLSL específico para Windows, es preciso que conecte el compilador de sombreadores a su equipo cuando ejecute un juego en un dispositivo Android durante la fase de desarrollo. Esto compila el subconjunto de sombreadores que requiere el juego bajo demanda.
nota
Debe conectar su equipo y el dispositivo Android a la misma red y configurar los cortafuegos necesarios para permitir el tráfico a través del puerto 61453.
Cuando se compila un nuevo sombreador, el juego espera a que la permutación de sombreador binaria realice la compilación en su equipo PC y se envíe de vuelta al dispositivo. Una vez que esto se realiza, el sombreador se almacena en la memoria caché del dispositivo hasta que elimine el juego. Cuando esté listo para lanzar el juego, debe empaquetar e incluir todos los sombreadores binarios almacenados en la memoria caché.
Puede utilizar una lista blanca para especificar las direcciones IP que tienen permitido conectarse a su compilador remoto de sombreadores.
Para obtener información, consulte Creación de una lista blanca para el compilador remoto de sombreadores.
Compilación del compilador de sombreadores
Al compilar Lumberyard Editor también se compilará el compilador de sombreadores.
De lo contrario, puede crear el compilador de sombreadores si cambia al directorio
en una ventana de línea de comandos y escribe el comando siguiente para su versión
de Visual Studio:
lumberyard_version
\dev
lmbr_waf build_win_x64_vs
2015
_profile -p all --targets=CrySCompileServer
El ejecutable del compilador de sombreadores se crea en el directorio
.
lumberyard_version
\dev\Tools\CrySCompileServer\x64\profile
Asimismo, debe configurar el archivo CFG del sistema del dispositivo móvil (system_android_es3.cfg
) para que se conecte al compilador de sombreadores en el equipo.
Ejecución del compilador de sombreadores
Puede ejecutar el compilador de sombreadores en su equipo.
Para ejecutar el compilador de sombreadores en su equipo PC
-
Vaya al directorio
.lumberyard_version
\dev -
Edite el archivo
system_android_es3.cfg
con el fin de establecer ellocalhost
parar_ShaderCompilerServer
en la dirección IP del equipo en el que va a ejecutar el compilador de sombreadores. -
Vaya al directorio
.lumberyard_version
\dev\Tools\CrySCompileServer\x64\profile -
Haga doble clic en el archivo
CrySCompileServer.exe
.
Generación de sombreadores
Puede generar sombreadores para el juego de Android.
Para generar sombreadores
-
Compile, implemente y ejecute su juego en un dispositivo Android. Para obtener información, consulte Compilación de juegos Android
-
En el juego, explore todas las áreas de cada nivel para garantizar que se generan todas las permutaciones de sombreador para el juego. Salga del juego cuando haya terminado.
Compilación de archivos .pak de sombreador
El archivo .pak de sombreadores se genera automáticamente e implementa al crear la
versión. Si desea crear manualmente el archivo, puede abrir una ventana de línea de
comando y el archivo de procesamiento por lotes para crear un archivo .pak
que incluya sus sombreadores.
Para compilar un archivo .pak de sombreador
-
Ejecute el Remote Shader Compiler (Compilador de sombreador remoto). Para obtener más información, consulte Compilador de sombreador remoto.
-
En una ventana de línea de comando, vaya al directorio
dev
de la compilación y busque el archivolmbr_pak_shaders.bat
. Con macOS, el archivo tiene la extensión.sh
. -
Para utilizar el archivo
lmbr_pak_shaders.bat
, escriba un comando que indique el nombre del proyecto de juego para el cual se van a compilar los sombreadores como un argumento:lmbr_pak_shaders.bat
game_project_name
GLES3 es3
Por ejemplo, para compilar los sombreadores del proyecto de ejemplos, escriba el siguiente comando:
lmbr_pak_shaders.bat SamplesProject GLES3 es3
Implementación de archivos .pak de sombreador
Cuando el archivo de lotes termine de compilar el archivo PAK del sombreador para
el proyecto de juego, encontrará lo siguiente en el directorio
:
lumberyard_version
\dev\Build\es3\game_project_name
\
-
ShaderCache.pak
: contiene todos los sombreadores compilados que se utilizan solamente cuando el sombreador no puede localizarse en la memoria caché de sombreadores del nivel actual. -
ShaderCacheStartup.pak
: contiene un subconjunto de sombreadores compilados que se utilizan para acelerar el tiempo de inicio del motor.
Para habilitar el juego para que ejecute los sombreadores desde los archivos PAK
-
Copie los archivos
shaders*.pak
en el directorio
.lumberyard_version
\dev\Cache\game_project_name
\es3\user -
Cuando los archivos PAK de sombreadores se encuentren en la ubicación correcta de la memoria caché, podrá implementar los activos en el dispositivo. El juego utilizará los sombreadores y solo se conectará al compilador de sombreadores si no puede encontrar un sombreador.