#include "ShaderConstantsGNM.h" struct PS_Input { float4 position : S_POSITION; float4 color : COLOR; float2 uv : TEXCOORD_0; }; float4 main(in PS_Input PSInput) : S_TARGET_OUTPUT { float4 diffuse = TEXTURE_0.Sample(TextureSampler0, PSInput.uv); #ifdef SMOOTH const float center = 0.4f; const float radius = 0.1f; diffuse = smoothstep(center - radius, center + radius, diffuse); #endif #ifdef ALPHA_TEST if (diffuse.a < 0.5) { discard; } #endif return diffuse * PSInput.color * DARKEN; }