【发布时间】:2021-04-03 20:15:09
【问题描述】:
我正在创建一个数字棋盘游戏,它由多个棋盘组成,玩家在棋盘之间移动棋子。
游戏板的脚本需要一个 2D 位置数组,以便在收到一个游戏棋子时知道将棋子移动到哪里。
目前为了在游戏板上标记位置,我将占位符游戏对象添加到预制件中并将它们命名为“spawnpoint\d”。在Awake() 方法中,我使用Transform.Find() 来搜索这些游戏对象。然后,在我保存他们的位置后,我对他们调用Destroy(),因此他们不会出现在游戏中。
我看到两个问题:
- 这适用于所有实例化的游戏板,尽管它们的位置都相同。
- 我了解到社区专家强烈反对使用
Transform.Find()。
我希望将生成点位置存储在静态数组中,因此所有实例都引用相同的数据。此外,我希望借助视觉帮助轻松修改编辑器中的这些位置。
我尝试序列化静态成员,但那些没有显示在编辑器中以便能够修改。
[SerializeField]
public static int TestNumber;
TLDR: 如何在 Unity 编辑器中使静态成员在视觉上可变?
【问题讨论】:
标签: unity3d