summaryrefslogtreecommitdiff
path: root/engine/src/rendering.rs
diff options
context:
space:
mode:
authorHampusM <hampus@hampusmat.com>2026-07-17 16:34:50 +0200
committerHampusM <hampus@hampusmat.com>2026-07-17 16:35:07 +0200
commit6a608c1791d39857b9894462643dc925dbd39067 (patch)
tree97705a63d49e9395f3565d41fd71fde612ad3ab4 /engine/src/rendering.rs
parentd95b28c8f173a87e162e3cb4195c30e0815a5dc6 (diff)
feat(engine): validate shader binding valuesHEADmaster
Diffstat (limited to 'engine/src/rendering.rs')
-rw-r--r--engine/src/rendering.rs22
1 files changed, 3 insertions, 19 deletions
diff --git a/engine/src/rendering.rs b/engine/src/rendering.rs
index 87c3b6f..4871f08 100644
--- a/engine/src/rendering.rs
+++ b/engine/src/rendering.rs
@@ -24,9 +24,9 @@ use crate::mesh::Mesh;
use crate::rendering::blending::Config as BlendingConfig;
use crate::rendering::object::{Id as ObjectId, Store as ObjectStore};
use crate::rendering::shader::cursor::{
+ Binding as ShaderBinding,
BindingLocation as ShaderBindingLocation,
BindingValue as ShaderBindingValue,
- Cursor as ShaderCursor,
};
use crate::rendering::shader::Program as ShaderProgram;
use crate::texture::Texture;
@@ -548,24 +548,8 @@ fn handle_window_removed(
#[derive(Default, Clone, Component)]
pub struct PendingShaderBindings
{
- pub bindings: Vec<(ShaderBindingLocation, ShaderBindingValue)>,
- pub surface_specific_bindings:
- Vec<(SurfaceId, ShaderBindingLocation, ShaderBindingValue)>,
-}
-
-impl<'a> Extend<(ShaderCursor<'a>, ShaderBindingValue)> for PendingShaderBindings
-{
- fn extend<Iter: IntoIterator<Item = (ShaderCursor<'a>, ShaderBindingValue)>>(
- &mut self,
- iter: Iter,
- )
- {
- self.bindings.extend(iter.into_iter().map(
- |(shader_cursor, shader_binding_val)| {
- (shader_cursor.into_binding_location(), shader_binding_val)
- },
- ))
- }
+ pub bindings: Vec<ShaderBinding>,
+ pub surface_specific_bindings: Vec<(SurfaceId, ShaderBinding)>,
}
#[derive(Debug, Default, Clone, Component)]