Панель Logic (F4) можно условно разбить на четыре части настроек: свойства объекта (рассмотренные на прошлом уроке), сенсоры, контроллеры и активаторы. Сенсоры объекта позволяют ему воспринимать различные внешние «раздражители», такие как нажатие клавиши, движение мыши, касание другого объекта и др. Контроллеры в основном предназначены для связывания определенным образом сенсоров и активаторов. Активаторы могут выполнять различные действия над данным объектом или другими. Некоторые настройки активаторов могут различаться у разных типов объектов.
Для того чтобы добавить очередной сенсор, контроллер и активатор нужно нажать на кнопку ADD. Связь между ними обозначается линиями, которые создаются, если зажав ЛК мыши потянуть ей от одного узелка к другому (линию можно удалить, если навести мышь и нажать клавишу Del). У объекта может быть множество групп сенсоров, контроллеров и активаторов.

На этом уроке будет описано, как управлять объектом Static с помощью клавиатуры. Роль объекта сыграет стрелка, поворачивающаяся по двум осям и двигающаяся указателем вперед.
Сначала создадим объект. Можно использовать любой меш-объект, но желательно, чтобы он был ассиметричен, т.к. в этом случае легче будет наблюдать его повороты.

Такую стрелку можно получить множеством способов. Ниже описан один из них:
Заставим нашу стрелку двигаться указателем вперед при нажатии на клавишу Пробел.
Выделив стрелку (которая должна быть static-объектом), добавьте сенсор, контроллер и активатор и соедините их между собой.

По умолчанию в качестве сенсора выступает Always (всегда). Такой сенсор будет действовать постоянно. Нам это не подходит. В выпадающем списке выбираем Keyboard (клавиатура). Нажимаем в поле Key мышью, затем нажимаем клавишу Пробел (Space).

Теперь настроим активатор. Активаторы бывают разные (это на будущее). По умолчанию стоит Motion (движение). В нижней части есть две строки: Loc (location – положение) и Rot (rotation – вращение). В каждой строке по три поля: в них задаются величины изменений по оси X, Y или Z при воздействии.

Поскольку наша стрелка должна двигаться вперед и для нее это ось Y, то следует изменить значение в первой строке во втором столбце. Щелкните по нулям там и пропишите значение в 0.05.
Теперь при запуске режима игры (P) и нажатии на клавишу пробел стрелка будет двигаться вперед.
Для того, чтобы стрелка при движении могла оказаться в любой точке трехмерного пространства достаточно настроить ее поворот только по двум осям: X (повороты вверх и вниз) и Z (налево и направо). Поворачиваться стрелка будет при нажатии на стрелки на клавиатуре. Требуется добавить еще четыре группы сенсоров, контроллеров и активаторов.

Теперь, запустив режим игры, можно передвинуть стрелку в любое место 3D-окна, предварительно повернув ее с помощью стрелок на клавиатуре.
В конце строк настроек Loc и Rot есть переключатели L. По умолчанию эти кнопки нажаты и обозначают локальную привязку осей. Это означает, что оси X, Y и Z как бы находятся внутри объекта и при его повороте поворачиваются вместе с ним. Поэтому-то у нас стрелка все время двигается указателем вперед, как ее не поверни.
Если выключить кнопку L напротив Loc в блоке, отвечающем за движение по оси Y, то стрелка будет двигаться только в одном направлении (по глобальной оси Y) не зависимо от поворота своего указателя. Глобальные оси в 3D-окне обозначаются красной (X), зеленой (Y) и синей (Z) линиями.
