28 lines
683 B
GLSL
28 lines
683 B
GLSL
cbuffer UniformBlockTransform : register(b0, space1) {
|
|
float4x4 Transform : packoffset(c0);
|
|
};
|
|
|
|
cbuffer UniformBlockTranslate : register(b1, space1) {
|
|
float2 Translate : packoffset(c0);
|
|
};
|
|
|
|
struct Input {
|
|
float2 Position : TEXCOORD0;
|
|
float4 InColor : TEXCOORD1;
|
|
float2 TexCoord : TEXCOORD2;
|
|
};
|
|
|
|
struct Output {
|
|
float4 Color : TEXCOORD0;
|
|
float2 TexCoord : TEXCOORD1;
|
|
float4 Position : SV_Position;
|
|
};
|
|
|
|
Output main(Input input) {
|
|
Output output;
|
|
output.TexCoord = input.TexCoord;
|
|
output.Color = input.InColor;
|
|
float4 position = float4(input.Position + Translate, 0, 1);
|
|
output.Position = mul(Transform, position);
|
|
return output;
|
|
} |