mirror of
https://github.com/libretro/RetroArch
synced 2025-04-01 04:20:27 +00:00
46 lines
1.0 KiB
GLSL
46 lines
1.0 KiB
GLSL
struct InstanceData
|
|
{
|
|
column_major float4x4 MATRIX_MVP;
|
|
float4 Color;
|
|
};
|
|
|
|
cbuffer gInstanceData : register(b0)
|
|
{
|
|
InstanceData gInstanceData_1_data[32] : packoffset(c0);
|
|
};
|
|
|
|
|
|
static float4 gl_Position;
|
|
static int gl_InstanceIndex;
|
|
static float3 PosL;
|
|
static float4 _entryPointOutput_Color;
|
|
|
|
struct SPIRV_Cross_Input
|
|
{
|
|
float3 PosL : TEXCOORD0;
|
|
uint gl_InstanceIndex : SV_InstanceID;
|
|
};
|
|
|
|
struct SPIRV_Cross_Output
|
|
{
|
|
float4 _entryPointOutput_Color : TEXCOORD0;
|
|
float4 gl_Position : SV_Position;
|
|
};
|
|
|
|
void vert_main()
|
|
{
|
|
gl_Position = mul(float4(PosL, 1.0f), gInstanceData_1_data[uint(gl_InstanceIndex)].MATRIX_MVP);
|
|
_entryPointOutput_Color = gInstanceData_1_data[uint(gl_InstanceIndex)].Color;
|
|
}
|
|
|
|
SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
|
|
{
|
|
gl_InstanceIndex = int(stage_input.gl_InstanceIndex);
|
|
PosL = stage_input.PosL;
|
|
vert_main();
|
|
SPIRV_Cross_Output stage_output;
|
|
stage_output.gl_Position = gl_Position;
|
|
stage_output._entryPointOutput_Color = _entryPointOutput_Color;
|
|
return stage_output;
|
|
}
|