A headless backend. This backend does not actually render anything. This allows apps reliant on Fluid to run outside of graphical environments, provided an alternative method of access exist.
FluidBackend is an interface making it possible to bind Fluid to a library other than Raylib.
To simplify setup in some scenarios, Fluid provides a uniform run function to immediately display UI and start the event loop. This function is provided by the backend using this optional interface.
Image or texture can be rendered by Fluid, for example, a texture stored in VRAM.
Wrapper over Texture that automates destruction via GC or RAII.
Struct that maintains a registry of all allocated textures. It's used to finalize textures once they have been marked for destruction. This makes it possible to mark them from any thread, while the reaper runs only on the main thread, ensuring thread safety in OpenGL backends.
Tombstones are used to ensure textures are freed on the same thread they have been created on.
This module handles input/output facilities Fluid requires to operate. It connects backends like Raylib, exposing them under a common interface so they can be changed at will.
Fluid comes with a built-in interface for Raylib.