Improve dummy shader vertex stage

This commit is contained in:
ds5678 2025-07-15 13:48:55 -07:00
parent f26c4b99a9
commit ab7d9b59cf
4 changed files with 26 additions and 14 deletions

View File

@ -8,11 +8,12 @@
#pragma vertex vert
#pragma fragment frag
float4x4 unity_MatrixMVP;
float4x4 unity_ObjectToWorld;
float4x4 unity_MatrixVP;
struct Vertex_Stage_Input
{
float3 pos : POSITION;
float4 pos : POSITION;
};
struct Vertex_Stage_Output
@ -23,7 +24,7 @@
Vertex_Stage_Output vert(Vertex_Stage_Input input)
{
Vertex_Stage_Output output;
output.pos = mul(unity_MatrixMVP, float4(input.pos, 1.0));
output.pos = mul(unity_MatrixVP, mul(unity_ObjectToWorld, input.pos));
return output;
}

View File

@ -8,11 +8,12 @@
#pragma vertex vert
#pragma fragment frag
float4x4 unity_MatrixMVP;
float4x4 unity_ObjectToWorld;
float4x4 unity_MatrixVP;
struct Vertex_Stage_Input
{
float3 pos : POSITION;
float4 pos : POSITION;
};
struct Vertex_Stage_Output
@ -23,7 +24,7 @@
Vertex_Stage_Output vert(Vertex_Stage_Input input)
{
Vertex_Stage_Output output;
output.pos = mul(unity_MatrixMVP, float4(input.pos, 1.0));
output.pos = mul(unity_MatrixVP, mul(unity_ObjectToWorld, input.pos));
return output;
}

View File

@ -8,22 +8,27 @@
#pragma vertex vert
#pragma fragment frag
float4x4 unity_MatrixMVP;
float4x4 unity_ObjectToWorld;
float4x4 unity_MatrixVP;
float4 _MainTex_ST;
struct Vertex_Stage_Input
{
float3 pos : POSITION;
float4 pos : POSITION;
float2 uv : TEXCOORD0;
};
struct Vertex_Stage_Output
{
float2 uv : TEXCOORD0;
float4 pos : SV_POSITION;
};
Vertex_Stage_Output vert(Vertex_Stage_Input input)
{
Vertex_Stage_Output output;
output.pos = mul(unity_MatrixMVP, float4(input.pos, 1.0));
output.uv = (input.uv.xy * _MainTex_ST.xy) + _MainTex_ST.zw;
output.pos = mul(unity_MatrixVP, mul(unity_ObjectToWorld, input.pos));
return output;
}
@ -37,7 +42,7 @@
float4 frag(Fragment_Stage_Input input) : SV_TARGET
{
return _MainTex.Sample(sampler_MainTex, float2(input.uv.x, input.uv.y));
return _MainTex.Sample(sampler_MainTex, input.uv.xy);
}
ENDHLSL

View File

@ -8,22 +8,27 @@
#pragma vertex vert
#pragma fragment frag
float4x4 unity_MatrixMVP;
float4x4 unity_ObjectToWorld;
float4x4 unity_MatrixVP;
float4 _MainTex_ST;
struct Vertex_Stage_Input
{
float3 pos : POSITION;
float4 pos : POSITION;
float2 uv : TEXCOORD0;
};
struct Vertex_Stage_Output
{
float2 uv : TEXCOORD0;
float4 pos : SV_POSITION;
};
Vertex_Stage_Output vert(Vertex_Stage_Input input)
{
Vertex_Stage_Output output;
output.pos = mul(unity_MatrixMVP, float4(input.pos, 1.0));
output.uv = (input.uv.xy * _MainTex_ST.xy) + _MainTex_ST.zw;
output.pos = mul(unity_MatrixVP, mul(unity_ObjectToWorld, input.pos));
return output;
}
@ -38,7 +43,7 @@
float4 frag(Fragment_Stage_Input input) : SV_TARGET
{
return _MainTex.Sample(sampler_MainTex, float2(input.uv.x, input.uv.y)) * _Color;
return _MainTex.Sample(sampler_MainTex, input.uv.xy) * _Color;
}
ENDHLSL