Add Uniforms

This commit is contained in:
Hanno Braun 2024-11-04 20:41:18 +01:00
parent 1ca86301af
commit 78a178b710

View File

@ -47,7 +47,7 @@ impl Renderer {
let transform_buffer = let transform_buffer =
device.create_buffer_init(&wgpu::util::BufferInitDescriptor { device.create_buffer_init(&wgpu::util::BufferInitDescriptor {
label: None, label: None,
contents: bytemuck::cast_slice(&[default_transform()]), contents: bytemuck::cast_slice(&[Uniforms::default()]),
usage: wgpu::BufferUsages::UNIFORM, usage: wgpu::BufferUsages::UNIFORM,
}); });
@ -237,6 +237,19 @@ impl Renderer {
} }
} }
#[derive(Clone, Copy, bytemuck::Pod, bytemuck::Zeroable)]
#[repr(C)]
pub struct Uniforms {
pub transform: Mat4,
}
impl Default for Uniforms {
fn default() -> Self {
let transform = default_transform();
Self { transform }
}
}
fn default_transform() -> Mat4 { fn default_transform() -> Mat4 {
let fov_y_radians = std::f32::consts::PI / 2.; let fov_y_radians = std::f32::consts::PI / 2.;
let aspect_ratio = 1.; let aspect_ratio = 1.;