cbuffer fsConstants : register(b0) { float _25_shadowOpacity : packoffset(c0); }; Texture2D tex : register(t0); SamplerState _tex_sampler : register(s0); static float2 vUV; static float4 fragColor; struct SPIRV_Cross_Input { float2 vUV : TEXCOORD0; }; struct SPIRV_Cross_Output { float4 fragColor : SV_Target0; }; void frag_main() { float shadow = tex.Sample(_tex_sampler, vUV).w * _25_shadowOpacity; fragColor = float4(0.0f, 0.0f, 0.0f, shadow); } SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input) { vUV = stage_input.vUV; frag_main(); SPIRV_Cross_Output stage_output; stage_output.fragColor = fragColor; return stage_output; }