Made MeshRenderer able to take a matrix transform for each mesh, and we are now able to draw 100 cubes.

Claude OPus helpes with implementation
This commit is contained in:
2026-02-21 23:27:27 -05:00
parent 8e83cd32f6
commit a7947bfa17
16 changed files with 73 additions and 35 deletions

View File

@@ -4,6 +4,7 @@
cbuffer RootConstants : register(b0, space0)
{
row_major float4x4 ViewProjection;
row_major float4x4 Model;
uint BufferIndex;
uint TextureIndex;
uint VertexOffset; // Base vertex for indexed drawing with bindless buffers

View File

@@ -19,7 +19,7 @@ Output main(uint vertexIndex : SV_VertexID)
float4 col = asfloat(buffer.Load4(offset + 12));
//output.Position = float4(pos, 1.0f);
output.Position = mul(ViewProjection, float4(pos, 1.0f));
output.Position = mul(ViewProjection, mul(Model, float4(pos, 1.0f)));
output.Color = col;
return output;
}