Приветствую всех друзья! В прошлой статье мы познакомились с пресетами (предустановками) в Unity. Сегодня я хочу рассказать о недавно появившемся в Unity менеджере горячих клавиш. Данный менеджер доступен в Unity версий 2019.1 и выше.
Менеджер горячих клавиш позволяет вам настраивать горячие клавиши под себя. Горячие клавиши – это любая клавиша или их сочетание на клавиатуре привязанная к какому-либо действию в Unity. Например, по умолчанию клавиша R привязана к команде активации инструмента Scale tool в окне сцены. Для открытия менеджера горячих клавиш воспользуйтесь верхним контекстным меню и пройдите по пути Edit\Shortcuts для Windows и Unity\ Shortcuts для MacOS.
Выше на картинке я обозначил по пунктам области менеджера, рассмотрим их чуть подробнее:
A Выпадающее меню профилей – позволяет выбирать и создавать профили для менеджера.
B Карта клавиш – показывает какие клавиши назначены на действия, и при наведении курсора на клавишу, показывает какая команда назначена для этой клавиши.
C Список категорий команд – все команды (действия) сортируются по категориям и отображаются в этом списке.
D Список команд и назначенных на них горячих клавиш – выводит список всех команд в выбранной категории и горячие клавиши к которым привязаны эти команды.
В Unity поддерживается два вида горячих клавиш: глобальные и контекстные. Глобальные работают во всем Unity, а контекстные включаются при активации определенных инструментов. Обычно вы можете назначить горячую клавишу на глобальную команду, или на одну или больше контекстных команд. Остальные комбинации назначения команд (например, назначение двух глобальных или двух контекстных команд из одного контекста на одну горячую клавишу) приведет к конфликтам, которые необходимо будет решить. Также есть несколько специальных глобальных команд, которые могут совместно использовать горячие клавиши с другими глобальными командами, не создавая конфликтов. Например, клавиши Q, W и E назначаются инструментам просмотра, перемещения и поворота соответственно, но при активации режима Flythrough эти же клавиши используются для перемещения вниз, вперед и вверх.
Карта горячих клавиш.
Если вы выберите на карте горячих клавиш клавиши модификаторы – такие как Shift, Ctrl/Cmd или Alt то остальные клавиши на карте обновятся, и покажут комбинации команд уже с этими выбранными модификаторами.
Небольшой лайфхак – чтобы не нажимать вручную модификаторы – нажмите их на клавиатуре, пока модификатор зажат – на карте горячих клавиш будет отображаться актуальная информация по применению клавиш в сочетании с ним.
Список команд.
Как я уже писал выше список команд показывает нам категории команд, а также команды из категории с назначенными на них горячими клавишами.
Также есть возможность поиска необходимых команд в строке поиска (верхний правый угол). При поиске лист команд автоматически сужается до искомых значений. Также если мы находимся в выбранной категории, можно переключаться между этой категорией и поиском по всем командам.
Управление горячими клавишами.
Менеджер горячих клавиш предоставляет несколько способов назначения, изменения, отмены назначения и сброса горячих клавиш.
Можно назначить или изменить горячие клавиши с помощью следующих действий:
- Перетаскивание команд из листа команд на карту клавиш. Просто перетащите мышкой из списка команд нужную вам команду на клавишу на карте клавиш.
- Ввод горячих клавиш в списке команд. Для этого выберите нужную вам команду в списке и нажав на нее дважды мышкой введите новую горячую клавишу.
Также вы можете отменить назначение или сбросить горячую клавишу выполнив одно из следующих действий:
- Используйте контекстное меню на карте клавиш или в списке команд. Для этого всего лишь необходимо нажать правой кнопкой мыши по клавише/пункту из списка команд выбрать интересующую вас команду (если нажимали на клавишу и на нее назначено несколько команд) и выбрать один из двух пунктов Reset to default или Remove shortcut. Первый сбросит на значение по умолчанию, второй удалит горячую клавишу на это действие.
- Удаление горячих клавиш непосредственно в списке команд. Делается либо вышеописанным способом, либо выберите нужную горячую клавишу в списке команд двойным кликом мыши и нажмите Return/Enter на клавиатуре для удаления горячей клавиши с команды.
Конфликты горячих клавиш.
Иногда при назначении горячих клавиш могут возникать конфликты, так вот в этом случае менеджер подскажет вам что конфликт произошел.
Еще раз кратко напомню из-за чего они могут происходить:
- Одна или более контекстных команд из одного контекста назначены на горячую клавишу
- Более чем одна глобальная команда назначена на одну клавишу (есть исключения я писал о них в начале статьи)
- Сочетание глобальных и контекстных команд, назначенных на одну клавишу
Вы можете отфильтровать список команд для получения конфликтов в списке команд, выбрав категорию Binding Conflicts.
При назначении одинаковой горячей клавиши двум командам открывается окно решения конфликтов.
- Выберите создать конфликт (Create conflict), чтобы назначить горячую клавишу команде в дополнение к любым существующим назначениям команд. Такие команды попадут в категорию Binding Conflicts.
- Выберите переназначить (Reassign), чтобы переназначить горячую клавишу для этой команды. Для всех других команд где уже была назначена эта клавиша произойдет очищение.
- Кнопка Cancel отменяет ваши действия и закрывает окно конфликтов.
Когда вы работаете в Unity, использование горячих клавиш (которые на данный момент имеют конфликты) откроет окно Shortcut Conflict.
- Выберите команду из списка и нажмите на кнопку Perform Selected чтобы выполнить ее. Если перед выполнением вы поставите галочку напротив пункта Rebind to selected command, то Unity назначит горячую клавишу выбранной команде, а всем остальным командам назначение будет удалено.
- Нажмите на кнопку Resolve Conflict чтобы открыть менеджер горячих клавиш и изменить назначения для устранения конфликта.
- Кнопка Cancel закроет окно и отменит все действия.
Профили горячих клавиш.
Профили хранят в себе горячие клавиши. Каждый профиль представляет собой полный набор горячих клавиш, которые вы можете менять в соответствии со своими потребностями. Можно создавать сколько угодно профилей и переключаться между ними. Профили, которые вы создаете доступны для всех проектов. При обновлении Unity на новую версию переносятся все горячие клавиши, настроенные в настройках, в новый профиль, который называется UserProfile.
Управлять профилями можно через выпадающее меню в верхней части менеджера горячих клавиш:
A Список профилей: тут отображаются все созданные вами профили
B Опции профиля: хранит в себе опции создания нового профиля или удаления или переименования активного профиля
Стоит знать, что по умолчанию Unity использует «заводской» профиль, называемый Default. Его нельзя изменить. Если вы попытаетесь это сделать Unity автоматически создаст копию профиля по умолчанию, которую в итоге вы и будете менять.
Существуют возможности для программного перехвата нажатия горячих клавиш в своих скриптах, но об этом я буду писать более подробно в отдельных статьях.
На сегодня это все. Начиная со следующей статьи, я начну рассматривать настройки проекта, так как их много – я разобью эти статьи на несколько тематических. Спасибо всем, кто дочитал эту статью до конца, подписывайтесь на канал, ставьте лайки, а для тех, у кого появились вопросы - спрашивайте в комментариях! А если вы хотите помочь данному каналу в развитии – делитесь этой статьей с друзьями в социальных сетях!