![]() |
Raven Engine v0.1
|
Central registry for loading, creating, and managing material assets. More...
#include "FileWatch.hpp"#include "Raven/Raven.h"#include "Renderer/Material.h"#include <glaze/glaze.hpp>Classes | |
| struct | Raven::MaterialHandle |
| Opaque handle referencing a material in the registry. More... | |
| struct | Raven::TextureSlot |
| Lightweight descriptor of a texture binding inside a material. More... | |
| struct | Raven::MaterialAsset |
| Serializable description of a material. More... | |
| struct | glz::meta< Raven::MaterialAsset > |
| class | Raven::MaterialRegistry |
| Central manager for material lifetimes and asset persistence. More... | |
Namespaces | |
| namespace | Raven |
Central registry for loading, creating, and managing material assets.
The MaterialRegistry provides an indirection layer between engine systems and actual Material instances. It maintains versioned handles to materials, handles persistence (serialize/deserialize via JSON with Glaze), and ensures safe reuse of GPU indices and slot entries.
Key responsibilities:
Integration notes: