# SetTilesBlock(BoundsInt, TileBase[])

> Fills bounds with array of Tile s.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine.Tilemaps](/engine/6000.0/script-reference/unityengine/tilemaps.md)
* **Assembly:** UnityEngine.TilemapModule

```csharp
public void SetTilesBlock(BoundsInt position, TileBase[] tileArray)
```

### Parameters

**** (\[BoundsInt]\(/engine/6000.0/script-reference/unityengine/boundsint)): Bounds to be filled.**** (\[TileBase\[]]\(/engine/6000.0/script-reference/unityengine/tilemaps/tilebase)): An array of [Tile](/engine/6000.0/script-reference/unityengine/wsa/tile.md)s to be placed.

### Remarks

This is meant for a more performant way to set Tiles as a batch, when compared to calling SetTile for every single Tile. The bounds size must match the array size. For example bounds of 1x2x3 needs an array length of 6.

```csharp
// Fill area on Tilemap with checkerboard pattern of tileA and tileB
using UnityEngine;
using UnityEngine.Tilemaps;

public class ExampleClass : MonoBehaviour
{
    public TileBase tileA;
    public TileBase tileB;
    public BoundsInt area;

    void Start()
    {
        TileBase[] tileArray = new TileBase[area.size.x * area.size.y * area.size.z];
        for (int index = 0; index < tileArray.Length; index++)
        {
            tileArray[index] = index % 2 == 0 ? tileA : tileB;
        }
        Tilemap tilemap = GetComponent<Tilemap>();
        tilemap.SetTilesBlock(area, tileArray);
    }
}
```

Refer to Scriptable Tiles and Tilemap for more information.
