Files
Juliet/Assets/source/Debug.vert.hlsl
Patedam bfd042abbf Added:
- Depth buffer
- Debug display basics
- Basic vector + matrix maths
Made partially with gemini + antigravity
2026-01-11 22:07:38 -05:00

28 lines
719 B
HLSL

struct Output
{
float4 Color : TEXCOORD0;
float4 Position : SV_Position;
};
#include "RootConstants.hlsl"
Output main(uint vertexIndex : SV_VertexID)
{
Output output;
// Retrieve the vertex buffer using SM6.6 bindless syntax
ByteAddressBuffer buffer = ResourceDescriptorHeap[BufferIndex];
// Vertex layout: float3 Position (12 bytes) + float4 Color (16 bytes) = 28 bytes stride
uint stride = 28;
uint offset = vertexIndex * stride;
float3 pos = asfloat(buffer.Load3(offset));
float4 col = asfloat(buffer.Load4(offset + 12));
// Standard row-major transformation
output.Position = mul(ViewProjection, float4(pos, 1.0f));
output.Color = col;
return output;
}