From af2af06f7bc145e0661def88861f56ca92dd3d89 Mon Sep 17 00:00:00 2001 From: HampusM Date: Thu, 6 Aug 2026 15:57:29 +0200 Subject: feat(engine): add shader binding texture kind enum --- engine/src/rendering/shader/cursor.rs | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) (limited to 'engine/src/rendering/shader/cursor.rs') diff --git a/engine/src/rendering/shader/cursor.rs b/engine/src/rendering/shader/cursor.rs index c54ffc9..169ad0b 100644 --- a/engine/src/rendering/shader/cursor.rs +++ b/engine/src/rendering/shader/cursor.rs @@ -201,7 +201,7 @@ pub enum BindingValue FVec3(Vec3), Color(Color), FMat4x4(Matrix), - Texture(RenderingObjectId), + Texture(RenderingObjectId, BindingTextureKind), } impl BindingValue @@ -272,9 +272,15 @@ impl BindingValue _, _, ) if ty.row_cnt() == Some(4) && ty.column_cnt() == Some(4) => Ok(()), - (Self::Texture(_), TypeKind::Resource, _, _, _, Some(res_shape)) - if (res_shape & ResourceShape::BASE) - .contains(ResourceShape::TEXTURE_2D) => + ( + Self::Texture(_, BindingTextureKind::Texture2D), + TypeKind::Resource, + _, + _, + _, + Some(res_shape), + ) if (res_shape & ResourceShape::BASE) + .contains(ResourceShape::TEXTURE_2D) => { Ok(()) } @@ -345,6 +351,13 @@ pub struct Binding pub value: BindingValue, } +#[derive(Debug, Clone, Copy, PartialEq, Eq)] +#[non_exhaustive] +pub enum BindingTextureKind +{ + Texture2D, +} + #[derive(Debug, thiserror::Error)] #[non_exhaustive] pub enum BindingError -- cgit v1.2.3-18-g5258