所以我有一个网格组件,对于它的孩子,我有 3 层 tilemaps。我正在尝试使用我的鼠标位置从特定图层获取 tilebase 的位置。
var mousePos = Camera.main.ScreenToWorldPoint(Input.mousePosition);
var mousePosTranslated = groundLayer.WorldToCell(mousePos);`
TileBase tile = groundLayer.GetTile(mousePosTranslated);
Debug.Log(tile.GetType());
在没有 mousePosTranslated 的情况下尝试了 Input.mouseposition,但尽管如此,我还是从 GetTile 中得到了一个空值。通过我从 GetTile 获得的 tilebase,我计划使用 GetTileData 来获取它的位置。
检查持有对象变换的 tilemap 组件,并确保它们的 scale.z 为 0,现在我可以通过鼠标与 tilemap 交互。