Separate handling for hlsl and fx files

This commit is contained in:
Simon Lübeß
2025-02-11 23:07:04 +01:00
parent 06b981e88a
commit 7a306cac69
52 changed files with 155 additions and 194 deletions
@@ -0,0 +1,50 @@
#define EDITOR
#include "GlitchyEngine2D.hlsl"
#include "ShaderHelpers.hlsl"
Texture2D Texture : register(t0);
SamplerState Sampler : register(s0);
VS_Output VS(VS_Input input)
{
VS_Output output;
output.Position = mul(ViewProjection, mul(input.Transform, float4(input.Position, 0.0f, 1.0f)));
output.Texcoord = TransformTexcoords(input.Texcoord, input.UVTransform);
output.Color = input.Color;
// Premultiply Alpha
output.Color.rgb *= output.Color.a;
#ifdef EDITOR
output.EntityId = input.EntityId;
#endif
return output;
}
struct PS_Output
{
float4 Color : SV_Target0;
#ifdef EDITOR
uint EntityId : SV_TARGET1;
#endif
};
PS_Output PS(PS_Input input)
{
PS_Output output;
output.Color = Texture.Sample(Sampler, input.Texcoord) * input.Color;
clip(output.Color.a - 0.001f);
#ifdef EDITOR
output.EntityId = input.EntityId;
#endif
return output;
}
#pragma Effect[VS = VS; PS = PS]