summaryrefslogtreecommitdiff
path: root/engine/src/rendering/backend/opengl.rs
diff options
context:
space:
mode:
Diffstat (limited to 'engine/src/rendering/backend/opengl.rs')
-rw-r--r--engine/src/rendering/backend/opengl.rs28
1 files changed, 7 insertions, 21 deletions
diff --git a/engine/src/rendering/backend/opengl.rs b/engine/src/rendering/backend/opengl.rs
index c545ccc..b5ebd81 100644
--- a/engine/src/rendering/backend/opengl.rs
+++ b/engine/src/rendering/backend/opengl.rs
@@ -100,6 +100,7 @@ use crate::rendering::shader::{
Stage as ShaderStage,
};
use crate::rendering::{
+ AssetOrValue,
BufferClearMask,
Command,
CommandQueue,
@@ -742,34 +743,19 @@ fn handle_commands(
let key = *next_graphics_ctx_object_key;
- let mesh = match mesh_object_id {
- ObjectId::Asset(mesh_asset_id) => match mesh.as_ref() {
- Some(mesh) => mesh,
- None => {
- let Some(mesh) =
- assets.get(&AssetHandle::from_id(mesh_asset_id))
- else {
- tracing::error!(
- asset_id=?mesh_asset_id,
- "Mesh asset does not exist"
- );
- continue;
- };
-
- mesh
- }
- },
- ObjectId::Sequential(_) => {
- let Some(mesh) = mesh.as_ref() else {
+ let mesh = match &mesh {
+ AssetOrValue::Asset(mesh_asset) => {
+ let Some(mesh) = assets.get(&mesh_asset) else {
tracing::error!(
- object_id=?mesh_object_id,
- "Object ID is sequential but no mesh data is given"
+ asset_id=?mesh_asset.id(),
+ "Mesh asset does not exist"
);
continue;
};
mesh
}
+ AssetOrValue::Value(mesh) => mesh,
};
let graphics_mesh = match GraphicsMesh::new(