27 lines
519 B
Plaintext
27 lines
519 B
Plaintext
struct VSInput {
|
|
float3 Pos;
|
|
float3 Color;
|
|
};
|
|
|
|
struct ShaderData {
|
|
float4x4 mvp;
|
|
};
|
|
|
|
struct VertexOutput {
|
|
float3 Color;
|
|
float4 sv_position : SV_Position;
|
|
};
|
|
|
|
[shader("vertex")]
|
|
VertexOutput vertMain(VSInput input, uniform ShaderData *data, uint vid : SV_VertexID) {
|
|
VertexOutput output;
|
|
output.Color = input.Color;
|
|
output.sv_position = mul(data->mvp, float4(input.Pos, 1.0));
|
|
return output;
|
|
}
|
|
|
|
[shader("fragment")]
|
|
float4 fragMain(VertexOutput inVert) : SV_Target {
|
|
return float4(inVert.Color, 1.0);
|
|
}
|