use std::collections::HashMap;
use std::sync::Arc;
#[derive(Default)]
pub struct MeshletAssets {
assets: HashMap<u64, Arc<crate::render::meshlet::asset::MeshletMesh>>,
next_asset_id: u64,
}
impl MeshletAssets {
pub fn register(&mut self, mesh: crate::render::meshlet::asset::MeshletMesh) -> u64 {
let asset_id = self.next_asset_id;
self.next_asset_id += 1;
self.assets.insert(asset_id, Arc::new(mesh));
asset_id
}
pub fn get(&self, asset_id: u64) -> Option<&Arc<crate::render::meshlet::asset::MeshletMesh>> {
self.assets.get(&asset_id)
}
}