68 lines
1.4 KiB
Plaintext
68 lines
1.4 KiB
Plaintext
////////////////////////////////////////////////////////////
|
|
//~ Quad shader types
|
|
|
|
Struct(V_DQuadPSInput)
|
|
{
|
|
Semantic(Vec4, sv_position);
|
|
Semantic(nointerpolation u32, quad_idx);
|
|
};
|
|
|
|
Struct(V_DQuadPSOutput)
|
|
{
|
|
Semantic(Vec4, sv_target0);
|
|
};
|
|
|
|
////////////////////////////////////////////////////////////
|
|
//~ Shape shader types
|
|
|
|
Struct(V_DVertPSInput)
|
|
{
|
|
Semantic(Vec4, sv_position);
|
|
Semantic(Vec4, color_lin);
|
|
};
|
|
|
|
Struct(V_DVertPSOutput)
|
|
{
|
|
Semantic(Vec4, sv_target0);
|
|
};
|
|
|
|
////////////////////////////////////////////////////////////
|
|
//~ Overlay shader types
|
|
|
|
Struct(V_OverlayPSInput)
|
|
{
|
|
|
|
Semantic(Vec4, sv_position);
|
|
};
|
|
|
|
Struct(V_OverlayPSOutput)
|
|
{
|
|
Semantic(Vec4, sv_target0);
|
|
};
|
|
|
|
////////////////////////////////////////////////////////////
|
|
//~ Shaders
|
|
|
|
//- Utility shaders
|
|
ComputeShader2D(V_ClearCellsCS, 8, 8);
|
|
ComputeShader(V_ClearParticlesCS, 64);
|
|
|
|
//- Backdrop shader
|
|
ComputeShader2D(V_BackdropCS, 8, 8);
|
|
|
|
//- Quad shader
|
|
VertexShader(V_DQuadVS, V_DQuadPSInput);
|
|
PixelShader(V_DQuadPS, V_DQuadPSOutput, V_DQuadPSInput input);
|
|
|
|
//- Particle simulation shaders
|
|
ComputeShader(V_EmitParticlesCS, 64);
|
|
ComputeShader(V_SimParticlesCS, 64);
|
|
|
|
//- Shape shader
|
|
VertexShader(V_DVertVS, V_DVertPSInput);
|
|
PixelShader(V_DVertPS, V_DVertPSOutput, V_DVertPSInput input);
|
|
|
|
//- Overlay shader
|
|
VertexShader(V_OverlayVS, V_OverlayPSInput);
|
|
PixelShader(V_OverlayPS, V_OverlayPSOutput, V_OverlayPSInput input);
|