texture offset causes stretching

Problem:

This is my texture:
56447-no-offset.png

When I use the offset parameter in the material under the texture, I get a weird stretched look like this:
56448-offset.png

Shader is the default unlit unity shader:

Shader "Unlit/Minimap"
{
	Properties
	{
		_MainTex ("Texture", 2D) = "white" {}
	}
	SubShader
	{
		Tags { "RenderType"="Opaque" }
		LOD 100

		Pass
		{
			CGPROGRAM
			#pragma vertex vert
			#pragma fragment frag
			// make fog work
			#pragma multi_compile_fog
			
			#include "UnityCG.cginc"

			struct appdata
			{
				float4 vertex : POSITION;
				float2 uv : TEXCOORD0;
			};

			struct v2f
			{
				float2 uv : TEXCOORD0;
				UNITY_FOG_COORDS(1)
				float4 vertex : SV_POSITION;
			};

			sampler2D _MainTex;
			float4 _MainTex_ST;
			
			v2f vert (appdata v)
			{
				v2f o;
				o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
				o.uv = TRANSFORM_TEX(v.uv, _MainTex);
				UNITY_TRANSFER_FOG(o,o.vertex);
				return o;
			}
			
			fixed4 frag (v2f i) : SV_Target
			{
				// sample the texture
				fixed4 col = tex2D(_MainTex, i.uv);
				// apply fog
				UNITY_APPLY_FOG(i.fogCoord, col);				
				return col;
			}
			ENDCG
		}
	}
}

Question:
How do I use stretching in a shader? I thought using the TRANSFORM_TEX macro should prevent this?

Of course…

I was searching for an answer for about a full day before posting it here. And 2 minutes later I came up with the answer…

The wrapMode of the Texture2D should be set to TextureWrapMode.Repeat.

I’ll let this question here, in case someone else has the same dumb issue.

Thankkkkkk you So muuuuuuch…U Save My Life

Thank you kindly. Saved me a lot of time. :slight_smile:

thank you so much!

thank you so much!
This still helped me 5 years later!