Cerberus X Documentation

App config settings

App config settings are settings that affect how a project is built.

These are used for features that are highly target specific, or that somehow affect the build process in some way and can't be implemented using plain Cerberus X code.

There are 3 ways to specify app config settings:

The following app config settings are currently supported:

'Data file filters, examples shown, actual allowable values depend on target
'
#TEXT_FILES="*.txt|*.xml|*.json"
#IMAGE_FILES="*.png|*.jpg"
#SOUND_FILES="*.wav|*.ogg"
#MUSIC_FILES="*.wav|*.ogg"
#BINARY_FILES="*.bin|*.dat"
#FAST_SYNC_PROJECT_DATA=True 'Set to True to enable 'fast syncing' of project data when building - warning: has problems with xcode, False by default.

'Mojo settings, defaults shown
'
#MOJO_AUTO_SUSPEND_ENABLED=True 'Set to True to cause app to suspend when desktop window loses focus.
#MOJO_HICOLOR_TEXTURES=True
#MOJO_IMAGE_FILTERING_ENABLED=True

'Html5 settings, defaults shown
'
#HTML5_APP_FILENAME="CerberusGame.html" 'Set the default name for the html outfile.
#HTML5_APP_ICON="" 'set the name of a ico/png file which will be used as a favicon. If not provided, Trans will use the standard favicon.
'PNG files will be converted to ICO files. Without a filepath, Trans will look in the folder where your .cxs source file is located at.
#HTML5_APP_TITLE="CerberusGame" 'Set the title inside the browser tab.
#HTML5_CANVAS_WIDTH=640 'Set the width of the canvas.
#HTML5_CANVAS_HEIGHT=480 'Set the height of the canvas.
#HTML5_CANVAS_RESIZE_MODE=1 '0=locked, 1=stretch, 2=resize
#HTML5_CONSOLE_SHOW=True 'Set it to False to hide the splitter and console DIV in your file.
#HTML5_WEBAUDIO_ENABLED=True 'Set to false to disable webaudio support for mojo audio, and to use older multimedia audio system instead.

'GLFW settings, defaults shown
'
#GLFW_USE_MINGW=True 'Set to false on Windows to use MSVC instead of MinGW to build glfw apps. Needs at least VS 2015 installed.
#GLFW_GCC_MSIZE_WINNT="64" 'When building glfw apps with mingw/gcc, controls whether 32 or 64 bit apps are generated.
'Set to "64" to force 64 bit builds on Windows (needs mingw64), or "" to use compiler default.
#GLFW_GCC_MSIZE_LINUX="" 'Ditto for Linux.
#GLFW_GCC_CC_OPTS="" 'Pass compiler options to GCC type compilers
#GLFW_GCC_LD_OPTS="" 'Pass linker options to GCC type compilers
#GLFW_GCC_LIB_OPTS="" 'Pass additional libraries to link against for GCC type compilers.
#GLFW_COPY_LIBS="" 'Copy 64bit external libraries to build directory. Windows GCC only for now!
#GLFW_COPY_LIBS_32="" 'Copy 32bit external libraries to build directory. Windows GCC only for now!

#GLFW_WINDOW_TITLE="Cerberus X Game"
#GLFW_WINDOW_WIDTH=640
#GLFW_WINDOW_HEIGHT=480
#GLFW_WINDOW_RESIZABLE=False
#GLFW_WINDOW_FULLSCREEN=False
#GLFW_WINDOW_SAMPLES=0 'Set to number of samples for multisampling (glfw3 only).
#GLFW_WINDOW_DECORATED=True 'Set to false to create a broderless window (glfw3 only).

#GLFW_MACOS_RETINA_ENABLED=False 'Set to True to make use of the whole resolution of the Retina display. Only recommended if content is scaled accordingly and no absolute pixel coordinates are used.

#GLFW_APP_ICON="" 'Set the name of a ico/png file which will be used as th apps icon. If not provided, Trans will use the standard icon file.
'PNG files will be converted to ICO files. Without a filepath, Trans will look in the folder where your .cxs source file is located at.

#GLFW_APP_LABEL="My App" 'Human readable label for app.
'Must be set for cerberus://internal to map to 'per user' app data dir.
'If not set (the default), cerberus://internal is shared by all users of app.
'cerberus://external is ALWAYS shared by all users of app.
'Must contain filesystem friendly chars only - generally, [A-Z], [a-z], [0-9],
'<space>, <underscore> <minus>, <dot> should be OK.
#GLFW_APP_PUBLISHER="My Company" 'Optional human readable publisher name for app. Must be filesystem friendly.
'Not defined by default.

'FLASH settings, defaults shown
#FLASH_APP_ICON=""
#FLASH_RENDER_WHILE_SUSPENDED=False

'IOS settings, defaults shown
'
#IOS_RETINA_ENABLED=True
#IOS_ACCELEROMETER_ENABLED=True
#IOS_DISPLAY_LINK_ENABLED=True
#IOS_APP_ICON=""

'Android settings, defaults shown
'
#ANDROID_APP_LABEL="Cerberus X Game"
#ANDROID_APP_PACKAGE="com.Cerberus_X.cxgame"
#ANDROID_APP_ICON=""
#ANDROID_SCREEN_ORIENTATION="user" '"user", "portrait", "landscape"
#ANDROID_GAMEPAD_ENABLED=False

#ANDROID_MIN_SDK_VERSION="16"
#ANDROID_TARGET_SDK_VERSION="28"
#ANDROID_BUILD_TOOLS_VERSION="28.0.3"
#ANDROID_GRADLE_VERSION="3.2.1"
#ANDROID_GRADLE_DISTRIBUTION="gradle-4.6-all.zip"
#ANDROID_REPOSITORIES=""
#ANDROID_JAVA_SOURCE_VERSION="VERSION_1_8"
#ANDROID_JAVA_TARGET_VERSION="VERSION_1_8"
#ANDROID_APPLICATION_EXTRAS=""

#ANDROID_VERSION_CODE="1"
#ANDROID_VERSION_NAME="1.0"
#ANDROID_NATIVE_GL_ENABLED=False 'for use with the opengl modules
#ANDROID_KEY_STORE="../../release-key.keystore"
#ANDROID_KEY_ALIAS="release-key-alias"
#ANDROID_KEY_STORE_PASSWORD="password"
#ANDROID_KEY_ALIAS_PASSWORD="password"
#ANDROID_SIGN_APP=False

'OpenGL settings. To override, set these in your code BEFORE importing opengl.gles11 or opengl.gles20
'
#OPENGL_DEPTH_BUFFER_ENABLED=True

'Reflection settings
'
#REFLECTION_FILTER=""

'Admob settings, defaults shown
'
#ADMOB_PUBLISHER_ID="abcdabcdabcdabc" 'from your admob account
#ADMOB_ANDROID_TEST_DEVICE1="TEST_EMULATOR"
#ADMOB_ANDROID_TEST_DEVICE2="ABCDABCDABCDABCDABCDABCDABCDABCD" 'your device's admob ID for test mode
#ADMOB_ANDROID_TEST_DEVICE3=""
#ADMOB_ANDROID_TEST_DEVICE4=""

'C++ settings, defaults shown
'
#CPP_DOUBLE_PRECISION_FLOATS=False 'Set to True to enable 64 bit floats.
#CPP_GC_MODE=1 '0 disable GC, 1=incremental collect after every OnWhatever, 2=Incremental collect every GC allocation
#CPP_GC_TRIGGER=8388608 'Allocated memory (in bytes) before a GC 'sweep' occurs. Defaults to 8 MiB
#CPP_GC_MAX_LOCALS=8192 'This is used with GC_MODE 2 to track local object vars and defaults to 8192

'Misc
'
#CC_OPTS="" 'additional gcc options for stdcpp target, eg: #CC_OPTS+="-DMyDefine"
#CC_LIBS="" 'Pass additional libraries to link against for GCC type compilers.

Not all settings are supported by all targets, and when not supported they will silently fail.