📅  最后修改于: 2023-12-03 15:05:45.394000             🧑  作者: Mango
在 Unity 中,可以通过代码来获取当前正在被选中的对象。这些对象可以是场景中的任何对象(例如游戏物体、组件、场景等)。
要获取当前选中的对象,可以使用 Selection 类中的静态方法:
GameObject selectedObject = Selection.activeGameObject;
此代码将获取当前选中的游戏物体(如果有选中的游戏物体)。如果没有选中的对象,则此代码将返回 null。
有时您可能需要检查当前选中的对象的类型,以获得更好的控制。您可以使用以下代码来检查对象是否为特定的类型:
if (Selection.activeGameObject.GetComponent<MyComponent>() != null) {
Debug.Log("当前选中的对象是 MyComponent 类型的组件。");
}
此代码检查当前选中的对象是否具有 MyComponent 类型的组件。如果是,则在控制台中输出一条消息。
要获取在场景视图中选中的对象,请使用以下代码:
GameObject selectedObject = Selection.activeTransform.gameObject;
此代码将返回当前在场景视图中选中的游戏物体。
要获取在检查器视图中选中的对象,请使用以下代码:
GameObject selectedObject = (GameObject)Selection.activeObject;
此代码将返回当前在检查器视图中选中的对象。如果当前选中的对象不是游戏物体,则此代码将返回 null。
以上是获取当前对象的一些基本方法,您可以根据自己的需求来使用这些方法。祝您编写愉快!