vulkan/shader/font.hlsl

33 lines
636 B
HLSL

// set 1: constant
[[vk::binding(0, 0)]] SamplerState ClosestSampler;
[[vk::binding(1, 0)]] Texture2D FontTexture;
struct VSInput
{
float2 Position : POSITION0;
float2 Texture : TEXCOORD0;
};
struct VSOutput
{
float4 Position : SV_POSITION;
float2 Texture : NORMAL0;
};
[shader("vertex")]
VSOutput VSMain(VSInput input)
{
VSOutput output = (VSOutput)0;
output.Position = float4(input.Position, 0, 1);
output.Texture = input.Texture;
return output;
}
[shader("pixel")]
float4 PSMain(VSOutput input) : SV_TARGET
{
float4 color = FontTexture.Sample(ClosestSampler, input.Texture);
return float4(color.xxx, 1.0);
}