summaryrefslogtreecommitdiff
path: root/engine/src/rendering.rs
diff options
context:
space:
mode:
authorHampusM <hampus@hampusmat.com>2026-07-10 16:02:22 +0200
committerHampusM <hampus@hampusmat.com>2026-07-10 16:02:22 +0200
commit9690e173f06d64d3b992b4217d1665d6cbf29394 (patch)
treebac656490c78569995a84602445d0d8d065837db /engine/src/rendering.rs
parentff97c98808ff930fe8f1d15fd07cf898dc7b411d (diff)
refactor(engine): simplify CreateMesh rendering command
Diffstat (limited to 'engine/src/rendering.rs')
-rw-r--r--engine/src/rendering.rs14
1 files changed, 8 insertions, 6 deletions
diff --git a/engine/src/rendering.rs b/engine/src/rendering.rs
index 46e47e9..9c0e9dd 100644
--- a/engine/src/rendering.rs
+++ b/engine/src/rendering.rs
@@ -241,12 +241,7 @@ pub enum Command
CreateMesh
{
obj_id: ObjectId,
-
- /// Optional mesh data. Must be included if `obj_id` is [`ObjectId::Sequential`].
- /// If `obj_id` is [`ObjectId::Asset`], this mesh data will be used instead of
- /// the mesh data stored in the asset.
- mesh: Option<Mesh>,
-
+ mesh: AssetOrValue<Mesh>,
usage: MeshUsage,
},
UpdateMesh
@@ -260,6 +255,13 @@ pub enum Command
UpdateDrawProperties(DrawProperties, DrawPropertiesUpdateFlags),
}
+#[derive(Debug)]
+pub enum AssetOrValue<T: 'static>
+{
+ Asset(AssetHandle<T>),
+ Value(T),
+}
+
builder! {
#[builder(name = DrawMeshOptionsBuilder, derives = (Debug, Default, Clone))]
#[derive(Debug, Default, Clone)]