You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Unity中自动创建交替棋盘格瓦片图案?

Unity实现自动黑白交替棋盘格瓦片的方法

方法一:自定义Checkerboard Tile(推荐,支持实时刷绘)

直接创建自定义Tile类,通过瓦片在Grid中的坐标奇偶性自动切换黑白Sprite,刷绘时自动实现交替效果:

  1. 创建C#脚本CheckerboardTile.cs,代码如下:
using UnityEngine;
using UnityEngine.Tilemaps;

[CreateAssetMenu(fileName = "CheckerboardTile", menuName = "Tiles/Checkerboard Tile")]
public class CheckerboardTile : Tile
{
    public Sprite blackSprite;
    public Sprite whiteSprite;

    public override void GetTileData(Vector3Int position, ITilemap tilemap, ref TileData tileData)
    {
        base.GetTileData(position, tilemap, ref tileData);
        // 通过坐标和的奇偶性判断使用哪种Sprite
        tileData.sprite = (position.x + position.y) % 2 == 0 ? whiteSprite : blackSprite;
    }
}
  1. 在Project窗口右键选择Tiles/Checkerboard Tile,创建自定义Tile实例。
  2. 选中该Tile实例,在Inspector面板拖入黑白两种Sprite。
  3. 打开Tile Palette,将自定义Tile拖入面板,之后在Tilemap上刷绘时,会自动根据坐标生成交替棋盘格。

方法二:批量生成棋盘格(适合一次性创建场景)

如果需要一次性生成整个棋盘区域,可使用脚本批量设置瓦片:

  1. 创建C#脚本CheckerboardGenerator.cs:
using UnityEngine;
using UnityEngine.Tilemaps;

public class CheckerboardGenerator : MonoBehaviour
{
    public Tilemap targetTilemap;
    public Tile blackTile;
    public Tile whiteTile;
    public int gridWidth = 10;
    public int gridHeight = 10;

    // 在Inspector右键菜单触发生成
    [ContextMenu("Generate Checkerboard")]
    public void GenerateCheckerboard()
    {
        targetTilemap.ClearAllTiles();
        // 遍历坐标范围,根据奇偶设置瓦片
        for (int x = 0; x < gridWidth; x++)
        {
            for (int y = 0; y < gridHeight; y++)
            {
                Vector3Int tilePos = new Vector3Int(x, y, 0);
                targetTilemap.SetTile(tilePos, (x + y) % 2 == 0 ? whiteTile : blackTile);
            }
        }
    }
}
  1. 将脚本挂载到包含Tilemap的GameObject上,在Inspector面板指定目标Tilemap、黑白Tile,以及棋盘的宽高。
  2. 选中挂载脚本的物体,在Inspector面板点击右上角三点按钮,选择Generate Checkerboard,即可生成完整的交替棋盘格。

补充:关于Rule Tile的替代思路

Rule Tile本身更适合依赖相邻瓦片的规则,棋盘格不需要检测相邻,所以上述两种方法更直接。如果一定要用Rule Tile,可自定义规则脚本将坐标奇偶性作为判断条件,但相比自定义Tile会更繁琐,不推荐。

内容的提问来源于stack exchange,提问作者Phillip Zoghbi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 00:05:04