With the following code:
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)
);
struct VertexOutput {
float3 color;
float4 sv_position : SV_Position;
};
[shader("vertex")]
VertexOutput vertMain(uint vid : SV_VertexID) {
VertexOutput output;
output.sv_position = float4(positions[vid], 0.0, 1.0);
output.color = colors[vid];
return output;
}
[shader("fragment")]
float4 fragMain(VertexOutput inVert) : SV_Target
{
float3 color = inVert.color;
return float4(color, 1.0);
}
I get these infos and errors:
1 I> LSP: candidate: static vector<float,2>[3] positions
7 I> LSP: candidate: static vector<float,3>[3] colors
13 I> LSP: candidate: struct VertexOutput
19 E> LSP: ambiguous reference to 'VertexOutput'
20 E> LSP: ambiguous reference to 'VertexOutput'
21 E> LSP: ambiguous reference to 'positions'
22 E> LSP: ambiguous reference to 'colors'
27 E> LSP: ambiguous reference to 'VertexOutput'
u/Content_Economist132 — 16 days ago