summaryrefslogtreecommitdiff
path: root/engine/src/rendering/shader.rs
diff options
context:
space:
mode:
authorHampusM <hampus@hampusmat.com>2026-07-10 15:37:09 +0200
committerHampusM <hampus@hampusmat.com>2026-07-10 15:37:09 +0200
commit62771c4e3714e068a85427e40f33b279afa49c17 (patch)
treed9149df74c62d518a130f7413b6ba0d7888ea288 /engine/src/rendering/shader.rs
parentd91156a08ea9f65d1e2660c50581a10603f29f58 (diff)
refactor(engine): use new Single get* fns
Diffstat (limited to 'engine/src/rendering/shader.rs')
-rw-r--r--engine/src/rendering/shader.rs19
1 files changed, 17 insertions, 2 deletions
diff --git a/engine/src/rendering/shader.rs b/engine/src/rendering/shader.rs
index 961bea2..6b68e1e 100644
--- a/engine/src/rendering/shader.rs
+++ b/engine/src/rendering/shader.rs
@@ -1016,14 +1016,27 @@ pub(super) fn prepare(collector: &mut crate::ecs::extension::Collector<'_>)
);
}
-fn initialize(mut assets: Single<Assets>)
+fn initialize(mut assets: Single<Assets>) -> Result<(), crate::Error>
{
+ let assets = assets.get_mut()?;
+
assets.set_importer::<_, _>(["slang"], import_slang_asset);
+
+ Ok(())
}
#[tracing::instrument(skip_all)]
-fn load_modules(mut context: Single<Context>, assets: Single<Assets>)
+fn load_modules(
+ mut context: Single<Context>,
+ assets: Single<Assets>,
+) -> Result<(), crate::Error>
{
+ let Ok(context) = context.get_mut() else {
+ unreachable!();
+ };
+
+ let assets = assets.get()?;
+
for AssetEvent::Stored(asset_id, asset_label) in assets.events().last_tick_events() {
let asset_handle = AssetHandle::<ModuleSource>::from_id(*asset_id);
@@ -1124,6 +1137,8 @@ fn load_modules(mut context: Single<Context>, assets: Single<Assets>)
);
}
}
+
+ Ok(())
}
fn load_module(