help.ExportExecutables - tooll3/t3 GitHub Wiki
Exporting content as stand alone executables
Video tutorial here.
Introduction
Exporting as executable is an automatic process the most of the time works out of the box. This page provides more detail information on how this works. When exporting an operator, Tooll will gather all depending operators types and the link file resources like textures, soundtrack etc. and copy these into a folder called Export
. It will then add the Player.exe
executable that will look for the main-operator listed in ProjectSettings.json
.
How to export
To export an executable you first make sure that...
- You're running t3 in release mode.
- That you correctly rebuild the complete solution (including Player)
If you want to export as an executable, then you first have to create a Symbol as well.
Then...
- For this your operator needs an Texture2d output.
- Select the operator (you can try this with [Demo_There]
- Right click → Export as Executable
- Tooll will create a new directory called "Export" (⚠if it already exists it will remove it first) and copy all required resources, the soundtrack, the libraries and the Player.exe there).
Running the executable
The executable Player.exe
is a stand alone application that handles operator loading, pre-initialization and audio playback. It comes with a number of command line arguments:
c:\Users\pixtur\dev\tooll\t3\Export>player.exe --help
Debug: still::partial - v0.1
Copyright (c) 2021 lucid & pixtur
--novsync (Default: false) Disable vsync
--width (Default: 1920) Defines the width
--height (Default: 1080) Defines the height
--windowed (Default: false) Run in windowed mode
--loop (Default: false) Loops the demo
--logging (Default: true) Show log messages.
--help Display this help screen.
You can use this to create a batch file to enforce a certain resolution or run in windowed mode:
player-windowed.bat
:
Player.exe --width 1280 --height 720 --windowed true
You can rename the executable (e.g. to a Demo title). It will also use the ProjectSettings.json
to determine the correct soundtrack or audio input source.
Advanced inputs / customization
For advanced use cases you could use the lib.io.file ReadFile operator to read your own settings and parse them within your demo-operator on startup. (e.g. to customize texts).
Some caveats
Missing resources
Tooll will scan your project operators for string parameters with FilePath property. Note that this will not work if you...
- dynamically create paths by combining strings and connect them to a filepath parameter.
- use the [FilesInDirectories] operator
- Add custom fonts
- Your resources are not located in the
./Resources/
folder or use absolute filepaths likec:/myfile.mp3
.
In these cases you have to add the files manually to the Export/Resources/
folder. When exporting, Tooll will warn you about these issues.
Looking for problems
Here are some things you can try when starting the player.exe
doesn't yield the expected results.
Look into the Log/
directory and scan the log files for problems.