包含此页的版本:
不含此页的版本:
IMGUI(即时模式 GUI)是 Unity 基于游戏对象的主要 UI 系统完全独立的功能。IMGUI是一个代码驱动的GUI系统,主要作为程序员的工具。它是由对实现它的任何脚本上的 OnGUI 函数的调用驱动的。例如,以下代码:
void OnGUI() {
if (GUILayout.Button("Press Me")){
Debug.Log("Hello!");
}
}
将导致显示一个按钮,如下所示:
IMGUI 通常用于:
IMGUI 通常不用于玩家可能使用和交互的正常游戏内用户界面。为此,您应该使用 Unity 基于游戏对象的主要 UI 系统,该系统提供了一种基于游戏对象的方法来编辑和定位 UI 元素,并且具有更好的工具来处理 UI 的视觉设计和布局。
“即时模式”是指 IMGUI 的创建和绘制方式。要创建 IMGUI 元素,您必须编写进入名为 OnGUI 的特殊函数的代码。显示界面的代码每帧执行一次,并绘制到屏幕上。没有持久性游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表除了 OnGUI 代码附加到的对象,或层次结构中与视觉元素实例化或派生自 C# 的可视化树的节点VisualElement类。您可以设置外观样式、定义行为并将其作为 UI 的一部分显示在屏幕上。更多信息
请参阅术语表画的。
IMGUI 允许您使用代码创建各种功能性 GUI。只需几行代码即可一次完成所有作,而不是创建游戏对象,手动定位它们,然后编写处理其功能的脚本。该代码生成 GUI 控件,这些控件通过单个函数调用绘制和处理。
本节介绍如何在游戏和 Unity 编辑器的扩展中使用 IMGUI。