-
Notifications
You must be signed in to change notification settings - Fork 0
Project Settings
Located on the right panel, provides the user with project-specific configurations, and are only used by the current project.
Its configurations are kept inside the file ngine.project.json
on the project folder.
Contains information that should be set, or things used by some of the modules.
Name
Name that will go inside the rom that identifies your game.
Rom
Name of the rom file that will be generated. Also used by the Run
command and anything that uses the rom file inside the engine.
Save Type
Save type used by the ROM. Save type support may vary based on emulator or flashcart. Make sure to check the N64Brew wiki for more information.
Region Free
If your ROM is not specific for a region (NTSC/PAL).
This is a bash script you can add to the project that will be called at the end of the content pipeline (the pipeline that exports sprites and audio to libdragon's format).
You can use this script for custom imports (usually when you use content that is not known by this engine, such as tiled maps or videos).
You can set the script that will run independently of any screens here.
This script will be used even if the screens module is not used.
Refer to the scripts
documentation for more info.
Global Memory Reserve (KB)
Used by the memory pool
module, is used to set the amount of memory that will be reserved by global objects (objects that will be used throughout the game, independently of screen).
You can access this memory pool through the variable global_memory_pool
that is set inside src/game.gen.h
if the memory pool
module is active.
Scene Memory Reserve (KB)
Used by the memory pool
module, is used to set the amount of memory that will be reserved to be used by the scenes. This memory will be reset whenever the screen changes, so anything that is allocated using this pool does not need to be freed manually.
You can access this memory pool through the variable scene_memory_pool
that is set inside src/game.gen.h
if the memory pool
module is active.
You can manage your libdragon installation that is used for this project.
Update Libdragon
This will run 'libdragon update', which will update your docker container with the latest version available.
Re-Build Libdragon
This will run 'libdragon install', which will build and install the code inside the 'libdragon' folder. This can be used when you modify the libdragon source, or change branches.
Branch
This can be used to change the libdragon branch you are using (eg.: if you want to test functionality that is still in-progress).
For that you can simply type the name of the branch and click 'Update'. After that you should use 'Re-Build Libdragon' to build the version for that branch.
If you want to revert to the standard branch, you can click 'Reset', then click 'Update' and then 'Re-Build Libdragon'.
Remember to also click 'Save' to keep this in-sync when you re-open the project.
You can set which modules will be active on this tab.
Audio
Enables the use of the low level audio library.
Audio Mixer
Enables the use of the higher-level mixer library. You can use this library to easily play sfx and music.
Requires the audio
module.
Display
Enables the use of the graphics_*
functions and to display anything that is not the console.
RDP
Enables the use of the rdp_*
functions.
Requires the display
module.
Console
Enables the use of the console display. You may not want to use this with the display
module, but it is possible to use both.
Controller
Enables the use of the controller pad. This creates three variables inside src/game.gen.h
:
- keys_up
- use this to know which buttons were released on the current frame
- keys_down
- use this to know which buttons were pressed on the current frame
- keys_pressed
- use thise to know which button are still being pressed (more than one frame)
Polling for these are made automatically, so you can simply use the variables as you need.
Debug Is Viewer
Enables the use of the "Is Viewer" (implemented on some emulators).
Debug USB
Enables the use of the USB debug library (requires a flashcart with USB support).
DFS
Enables the use of DFS (dragon file system). This enables imported content to be used inside the game.
Timer
Enables the use of the Timer library on libdragon.
Real-Time Clock (RTC) - new on 1.1.0
Enables the use of the RTC functions on libdragon.
Memory Pool
Enables the use of the Memory Pool library from libdragon-extensions
.
You can set the memory limits on the General
tab. Refer to that to know more about the variables it creates.
Scene Manager
Enables the use of the Scene Manager library from libdragon-extensions
.
This will also enable the usage of scenes inside the engine. Refer to Scenes
documentation for more information.
Here you can set the audio
and mixer
modules configurations.
Refer to the libdragon documentation for more information.
Here you can set the display
module configurations.
Refer to the libdragon documentation for more information.