first commit

This commit is contained in:
2025-12-31 14:22:45 +01:00
commit c78a860098
73 changed files with 30137 additions and 0 deletions

42
shaders/cube_render.wgsl Normal file
View File

@@ -0,0 +1,42 @@
@group(0) @binding(0) var<storage, read> viewProjection : array<f32>;
struct VertexOutput {
@builtin(position) position : vec4<f32>,
@location(0) color : vec3<f32>,
};
fn loadViewProjection( ) -> mat4x4<f32> {
return mat4x4<f32>(
vec4<f32>( viewProjection[ 0 ], viewProjection[ 1 ], viewProjection[ 2 ], viewProjection[ 3 ] ),
vec4<f32>( viewProjection[ 4 ], viewProjection[ 5 ], viewProjection[ 6 ], viewProjection[ 7 ] ),
vec4<f32>( viewProjection[ 8 ], viewProjection[ 9 ], viewProjection[ 10 ], viewProjection[ 11 ] ),
vec4<f32>( viewProjection[ 12 ], viewProjection[ 13 ], viewProjection[ 14 ], viewProjection[ 15 ] )
);
}
@vertex
fn v_main(
@location(0) position : vec3<f32>,
@location(1) color : vec3<f32>
) -> VertexOutput {
var output : VertexOutput;
let vp : mat4x4<f32> = loadViewProjection();
output.position = vp * vec4<f32>( position, 1.0 );
output.color = color;
return output;
}
@fragment
fn f_main( input : VertexOutput ) -> @location(0) vec4<f32> {
return vec4<f32>( input.color, 1.0 );
}