d49594d3fb900d1c55e4a077686ab6a0bad228a3
audioMixerPlay()/audioMixerPlayLooped()/audioMixerStop() now just queue a command per channel instead of taking effect immediately: - audioMixerUpdateLate() (end of frame) locks and begins loading any newly queued PLAY command's asset, giving it until the start of the next frame to finish. - audioMixerUpdateEarly() (start of the next frame) applies the queued command - blocking (assetRequireLoaded()) if that load hasn't finished yet - actually starting/stopping playback and setting volume, directionality and looping (reusing this session's new audioStreamSetLoopLimit()) on a real audiostream_t acquired from the shared stream pool. Previously this was an unwired stub (never initialized/updated/disposed from audio.c, and audioMixerUpdateLate() only printf'd). Built and verified on Linux, PSP (Docker) and GameCube (Docker). Co-Authored-By: Claude Sonnet 5 <[email protected]>
Dusk
RPG Game Project, small and able to run on a PSP.
Building
Each build target has different requirements. You can take a look at the git workflow to see how the builds are done for each target. In addition, for accessing the editor and building the game on your host system, install the following packages, depending on your system;
Fedora;
sudo dnf install git make gcc cmake python python-polib python3-pillow python3-dotenv python3-numpy python-qt5 python3-pyopengl SDL2-devel zlib-devel libzip-devel bzip2-devel openssl-devel lzma-sdk-devel xz xz-devel lua-devel
Ubuntu;
sudo apt-get install git build-essential gcc python python-polib python3-pillow python3-dotenv python3-numpy python3-pyqt5 python3-opengl
Arch Linux;
sudo pacman -S git base-devel gcc python python-polib python-pillow python-dotenv python-numpy python-pyqt5 python-opengl
Languages
C
89.7%
JavaScript
3.5%
CMake
3.1%
Python
2.1%
HTML
0.8%
Other
0.7%