Test drawing triangle

This commit is contained in:
abdelrahman committed 2026-10-24 04:49:15 +01:00
1 parent d654c7d999
commit f7dfdd9666
2 files changed
+286 -270

No files matched your search

+4 -41
View File
@@ -1,59 +1,22 @@
struct VSInput {
float3 Pos;
float3 Normal;
float2 UV;
float3 Color;
};
static float2 positions[3] = float2[](
float2( 0.0, -0.5),
float2( 0.5, 0.5),
float2(-0.5, 0.5),
);
static float3 colors[3] = float3[](
float3(1.0, 0.0, 0.0),
float3(0.0, 1.0, 0.0),
float3(0.0, 0.0, 1.0),
);
[[vk::binding(0, 0)]]
StructuredBuffer<float> a;
[[vk::binding(1, 0)]]
StructuredBuffer<float> b;
[[vk::binding(2, 0)]]
RWStructuredBuffer<float> result;
[[vk::push_constant]]
uniform uint count;
struct VertexOutput {
float3 color;
float3 Color;
float4 sv_position : SV_Position;
float3 Normal;
float2 UV;
};
[shader("vertex")]
VertexOutput vertMain(VSInput input, uint vid : SV_VertexID) {
VertexOutput output;
output.color = colors[vid];
output.Color = input.Color;
output.sv_position = float4(input.Pos, 1.0);
output.Normal = input.Normal;
output.UV = input.UV;
return output;
}
[shader("fragment")]
float4 fragMain(VertexOutput inVert) : SV_Target {
return float4(inVert.color, 1.0);
}
[shader("compute")]
[numthreads(64, 1, 1)]
void compMain(uint tid : SV_DispatchThreadID) {
if (tid < count) {
result[tid] = a[tid] + b[tid];
}
return float4(inVert.Color, 1.0);
}