Subsystem Ownership
I learned why engine systems need clear ownership, especially for setup, shutdown, and resource management.
A C++ engine subsystem built inside the Xcube2D framework, focused on separating audio logic from gameplay code and making sound playback easier to manage.
My role was to design and implement the audio subsystem as an engine-level service, keeping playback control separate from gameplay code.
I built a modular audio subsystem for a C++ game engine project. The system sits at engine level, rather than being written directly into gameplay code, so sounds and music can be triggered through cleaner, reusable methods.
I learned why engine systems need clear ownership, especially for setup, shutdown, and resource management.
Gameplay code should request audio, not directly manage low level audio behaviour.
The system checks for missing layers, invalid resources, and volume issues before attempting playback.