# mainTextureOffset

> Defines the UV offset for the main texture in the Material. This property adjusts the position of the texture mapping on a Mesh surface relative to its UV coordinates.

## Definition

* **Type:** Property
* **Namespace:** [UnityEngine](/engine/6000.6/script-reference/unityengine.md)
* **Assembly:** UnityEngine.CoreModule

```csharp
public Vector2 mainTextureOffset { get; set; }
```

### Remarks

By default, Unity considers a texture with the property name `"_MainTex"` to be the main texture. Use the `[MainTexture]` [ShaderLab Properties attribute](/engine/6000.6/manual/materials-and-shaders/shaders/reference/sl-reference/sl-shader-object/sl-properties.md) to make Unity consider a texture with a different property name to be the main texture.

This property is equivalent to calling [Material.GetTextureOffset](/engine/6000.6/script-reference/unityengine/material/gettextureoffset.md) or [Material.SetTextureOffset](/engine/6000.6/script-reference/unityengine/material/settextureoffset.md) with main texture name as an argument. To modify the offset of other textures in the Material, use the equivalent methods with their respective property names.

### Examples

```csharp
using UnityEngine;

public class Example : MonoBehaviour
{
    // Scroll the main texture based on time

    float scrollSpeed = 0.5f;
    Renderer rend;

    void Start()
    {
        rend = GetComponent<Renderer> ();
    }

    void Update()
    {
        float offset = Time.time * scrollSpeed;
        rend.material.mainTextureOffset = new Vector2(offset, 0);
    }
}
```
