This commit is contained in:
reo 2025-08-30 12:55:42 +03:00
parent cc7921a5fe
commit 3692736a61
22 changed files with 447 additions and 44 deletions

View file

@ -4,14 +4,14 @@ use std::path::{Path, PathBuf};
use std::rc::Rc;
pub type ModelManagerRef = Rc<RefCell<Box<dyn ModelManager>>>;
pub type ModelID = PathBuf;
pub type ModelID = &'static str;
/// The asset manager trait of Raidillon.
pub trait ModelManager: Any {
/// Loads a gltf model to VRAM.
fn load_gltf(&mut self, path: &Path);
fn load_gltf(&mut self, id: ModelID, path: &Path);
/// Unloads the loaded model from VRAM.
fn unload_model(&mut self, path: &Path);
fn unload_model(&mut self, id: ModelID);
fn get_model(&self, id: &ModelID) -> Option<&dyn Any>;
}