position | 网格单元格位置。 |
Vector3 返回转换为世界空间坐标的单元格中心。
获取 Grid 单元格在世界空间中的逻辑中心坐标。Tilemap 的单元格逻辑中心由 Tilemap 的 Tile Anchor 定义。
在矩形网格布局中,对 GridLayout.CellToWorld 的调用,使用 Vector3Int 参数返回一个 Vector3 坐标,表示单元格的左下角。这在数学上是正确的,但在某些情况下(例如将游戏对象实例化到网格中时),您可能更喜欢单元格的中心。
// Snap the GameObject to parent Tilemap center of cell using UnityEngine; using UnityEngine.Tilemaps;
public class ExampleClass : MonoBehaviour { void Start() { Tilemap tilemap = transform.parent.GetComponent<Tilemap>(); Vector3Int cellPosition = tilemap.WorldToCell(transform.position); transform.position = tilemap.GetCellCenterWorld(cellPosition); } }