快捷键管理器允许您查看和管理 Unity 中的键盘快捷键。
快捷键是任何键或键组合,绑定到 Unity 命令。命令是在编辑器中执行的操作。例如,R 键绑定到在场景场景包含游戏环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,您放置环境、障碍物和装饰,本质上是逐块设计和构建您的游戏。 更多信息
参见术语表视图中激活缩放工具的命令。
您可以从 Unity 的主菜单访问快捷键管理器
A | 配置文件下拉菜单:允许您管理和切换不同的快捷键配置文件。有关详细信息,请参见快捷键配置文件。 |
B | 键映射:显示哪些键分配给命令以及它们分配到的命令。有关详细信息,请参见键映射。您还可以使用键映射来管理快捷键。 |
C | 类别列表:命令按类别排序,这些类别显示在类别列表中。选择一个类别后,其命令将显示在右侧的命令列表中。 |
D | 命令和快捷键列表:列出所选类别中的所有命令及其分配的快捷键。有关详细信息,请参见命令列表。您还可以使用命令列表来管理快捷键。 |
Unity 命令可以是全局的或上下文的。
全局命令始终可用。例如,默认情况下,撤消操作的命令分配给Ctrl/Cmd + Z快捷键。使用该快捷键始终撤消上一步操作,无论打开哪些窗口以及激活哪些工具。
上下文命令仅在使用特定视图或工具集时有效。例如,默认情况下,方括号键[和]在地形场景中的地形。地形游戏对象在您的场景中添加一个大的平面,您可以使用地形的面板窗口来创建详细的地形。 更多信息
参见术语表工具中分配给一组命令,而在网格绘制工具中分配给另一组命令。按下这些键中的任何一个时,Unity 将执行针对当前活动工具的命令。
通常,您将快捷键分配给一个全局命令,或来自不同上下文的一个或多个上下文命令。其他多命令组合(例如,两个全局命令,或来自相同上下文的两个上下文命令)会创建需要管理的冲突。有关快捷键冲突及其管理方法的信息,请参见快捷键冲突。
Unity 还有一些特殊的全局命令,这些命令可以与其他全局命令共享快捷键,而不会创建冲突。例如,Q、W和E键分别分配给视图、移动和旋转工具,但在激活穿梭模式时,这些键用于向下、向前和向上移动。
本节介绍如何使用键映射来查看快捷键分配。有关使用键映射添加、删除和修改快捷键的信息,请参见管理快捷键。
键映射显示哪些键和键组合分配给命令。
粉红色键分配给全局命令。 | |
蓝色键分配给上下文命令。 | |
白色键未分配给任何命令。 | |
灰色键是特殊键,无法分配给命令。 例如,Shift和Ctrl/Cmd之类的修饰键,或Return和Esc之类的实用程序键。 |
选择Shift、Ctrl/Cmd和Alt等修饰键会更新键映射,以显示哪些快捷键和修饰符组合分配给命令。活动修饰键在键映射中变为蓝色。
提示:要在键映射中暂时激活修饰键,请按住键盘上的修饰键。
要查看特定键分配到的命令,请将鼠标指针悬停在快捷键上。工具提示列出了该键分配到的命令。
对于键组合,请通过按住键盘上的修饰键或在键映射上单击它们来激活修饰键,然后将鼠标指针悬停在快捷键上。
您可以将单个快捷键分配给多个命令。只要 Unity 无法同时执行命令,快捷键就能透明地工作。但是,如果您将快捷键映射到可以同时执行的多个命令,就会创建冲突。要了解有关冲突及其管理方法的信息,请参见下面的快捷键冲突。
本节介绍如何使用命令列表来查看快捷键分配。有关使用命令列表添加、删除和修改快捷键的信息,请参见管理快捷键。
命令列表显示哪些快捷键分配给特定命令。从类别列表中选择一个类别,以在命令列表中显示其命令和快捷键。
您还可以使用搜索框搜索命令列表。在您键入搜索词时,命令列表会自动将范围缩小到与搜索词匹配的命令。
如果您搜索特定类别,则可以通过在搜索行中设置范围来在所选类别中的结果和所有 Unity 命令类别中的结果之间切换。
快捷键管理器提供了几种分配、修改、取消分配和重置快捷键的方法。
您可以通过以下任一操作来分配或修改快捷键
您可以通过以下任一操作来取消分配或重置快捷键
您可以使用键映射或命令列表将快捷键分配给命令。
单击您想要包含在快捷键中的任何修饰键(例如,Shift或Ctrl/Cmd)。
将命令从命令列表拖放到主快捷键上。
当您将鼠标悬停在键映射上时,光标会更改以指示哪些分配是可能的。
双击列表中的命令以编辑其快捷键字段。
在快捷键字段中,像平常一样按键盘上的快捷键。
确保按住您想要包含在快捷键中的任何修饰键(例如,Shift或Alt/Option)。
如果快捷键已分配给命令,则新的分配会创建冲突。有关管理冲突的信息,请参见快捷键冲突。
使用键映射或命令列表来删除命令分配的快捷键或将修改后的快捷键重置为其默认映射。
注意:Unity 将默认快捷键分配存储在默认配置文件中。有关详细信息,请参见快捷键配置文件。
右键单击您要取消分配或重置的快捷键。
如果您要取消分配/重置键组合,请在右键单击快捷键之前单击任何包含的修饰键(例如,Shift或Ctrl/Cmd)。
从上下文菜单中
选择[命令] > 重置为默认,将默认快捷键重新分配给命令。
选择[命令] > 删除快捷键,取消分配命令的快捷键。
右键单击您要取消分配或重置的快捷键的命令。
从上下文菜单中
或者
您可以将相同的快捷键分配给多个命令,前提是这些命令不能同时执行。例如,单个快捷键可以分配给场景视图对您正在创建的世界进行交互式查看。使用场景视图选择和放置场景、角色、摄像机、灯光以及所有其他类型的游戏对象。 更多信息
参见术语表中的一个命令,以及动画窗口中的另一个命令。由于这两个窗口不能同时拥有焦点,因此 Unity 在您使用快捷键时,不会对执行哪个命令感到困惑。
将快捷键分配给可以同时执行的两个命令会创建冲突。例如,当您将单个快捷键分配给以下内容时,就会创建冲突
来自相同上下文的一个或多个上下文命令。
多个全局命令。
全局命令和上下文命令的组合。
快捷键管理器提供了一些选项,用于在您创建新的快捷键分配时以及在您使用分配给冲突命令的快捷键时处理冲突。
在命令列表中,具有快捷键冲突的命令将显示为带有“警告”图标。
您可以通过在类别列表中选择绑定冲突类别来获取具有快捷键冲突的命令的完整列表。
将快捷键分配给两个冲突命令会打开绑定冲突对话框。
选择创建冲突,将快捷键分配给命令,并附加到任何现有的命令分配。
Unity 将所有分配给快捷键的命令添加到绑定冲突类别的快捷键中。
选择重新分配,将快捷键重新分配给冲突命令。这将清除所有其他命令分配。
选择 **取消** 退出而不执行任何操作。
在 Unity 中工作时,使用分配给冲突命令的快捷键会打开快捷键冲突对话框。
从列表中选择一个命令,然后单击 **执行所选** 按钮执行该命令。
在执行命令之前启用 **重新绑定到所选命令** 选项,以清除所有其他分配,使快捷键仅分配给所选命令。这等效于删除其他分配。
选择 **解决冲突** 打开快捷键管理器,您可以在其中修改快捷键以消除冲突。
选择 **取消** 退出而不执行任何操作。
快捷键存储在配置文件中。每个配置文件是一组完整的 Unity 快捷键,您可以根据需要修改它们。您可以创建任意数量的配置文件,并在需要时在它们之间切换。您可以在任何活动配置文件(默认配置文件除外,见下文)中添加、删除或修改快捷键。对活动配置文件的更改会立即生效。Unity 会自动保存它们,不会提示您接受或拒绝它们。
Unity 将快捷键配置文件存储在项目之外的 Unity 首选项目录中。
在 Windows 上:%APPDATA%/Unity\Editor-5.x\Preferences\shortcuts
在 macOS 上:~/Library/Preferences/Unity/Editor-5.x/shortcuts
在 Linux 上:~/.config/unity3d/Preferences/Editor-5.x/shortcuts
这意味着您创建的任何配置文件都可以在所有项目中使用。
**升级:** 当您从旧版本的 Unity 升级时,Unity 会将您在首选项中配置的任何快捷键迁移到名为 UserProfile 的新快捷键配置文件中。
您可以在快捷键管理器顶部的配置文件下拉菜单中管理配置文件。
A | **配置文件列表:** 列出所有可用的配置文件。选择一个配置文件将其设为活动配置文件。 |
B | **配置文件选项:** 创建新配置文件、重命名或删除活动配置文件的选项。 |
Unity 具有一个具有“出厂”快捷键设置的默认配置文件。当您创建新配置文件时,Unity 会复制默认配置文件。
您不能修改默认配置文件。如果您尝试修改它,Unity 会自动创建一个副本(称为 *默认副本*),使副本成为活动配置文件,并将您的更改应用到该副本。
当您在键盘上选择一个键或键组合时,Unity 会生成一个键盘事件并将该事件发送到活动视图。如果活动视图可以使用该事件(例如,触发一个动作),它就会执行。否则,该事件将发送到快捷键管理器,Unity 将执行分配给该快捷键的命令。
在开发自定义工具时,您可以在键盘事件到达快捷键管理器之前以编程方式拦截它们。例如,您可能希望自定义工具以比使用快捷键管理器配置的方式更复杂的方式对按键做出反应。
您如何拦截键盘事件取决于您用来为自定义工具创建界面的系统。
如果您使用的是 IMGUI 系统,请参阅以下脚本参考主题。
如果您使用的是 UI 元素 系统,请参阅以下脚本参考主题。
除了从快捷键管理器修改快捷键之外,您还可以使用 UnityEditor.ShortcutManagement 命名空间中的类在其他地方定义自定义快捷键,例如 脚本一段代码,允许您创建自己的组件,触发游戏事件,随着时间的推移修改组件属性,并以您喜欢的任何方式响应用户输入。 更多信息
请参阅 词汇表 和包。例如,您可以使用 ShortcutAttribute 和 ClutchShortcutAttribute 属性来创建新的快捷键。
当 Unity 从其他来源加载命令和快捷键时,它会
在 **命令** 列表中将 **所有 Unity 命令** 类别中的主菜单中的任何新命令添加,这样您就可以使用快捷键管理器为它们创建快捷键。
在 **类别** 列表中添加自定义命令类别。
将自定义键盘快捷键添加到快捷键数据库,以便它们显示在所有快捷键配置文件中。
在 **命令** 列表中的 **快捷键冲突** 类别中显示自定义快捷键与当前配置文件中的快捷键之间的任何 冲突。