В этом учебнике мы рассмотрим два новых тега. В рабочих материалах вы найдете наш общий исходный файл «PSD_C4D_R16_Interaktivitaet_start.c4d».
Перед хорошо известным объектом фигуры находятся три цветных поля, каждое из которых заполнено одним из базовых инструментов редактирования повернуть, переместить и масштабировать в качестве простого 3D-объекта. С помощью тега взаимодействия мы научим эти поля выполнять эти задачи для объекта фигуры.
Чтобы только три цветных поля реагировали на наши изменения, у находящихся на них моноблоков 3D-объектов есть тег защиты, который предотвращает случайные изменения.
Интерактивное управление с тегом взаимодействия
Начнем с синего поля повернуть. Для того чтобы этот объект реагировал на наш ввод, мы назначаем ему тег взаимодействия из меню теги CINEMA 4D через контекстное меню с помощью правой кнопки мыши.
В диалоговом окне настроек тега взаимодействия нас в первую очередь интересуют разделы тег и прокси. Мы убеждаемся, что опция Настроить отключена, иначе при любых изменениях произойдет также и смещение синего поля. Наше интерактивное управление также будет работать только при условии, что объект не выбран. Благодаря автоматическому режиму коррекции этого и не требуется.
На вкладке Прокси мы определяем, какой объект будет принимать команды управления. В нашем случае это объект фигура, поэтому мы перетаскиваем его из менеджера объектов в поле Объект Прокси.
На вкладках вывод и инфо о полигоне собираются информация о введенных данных, позициях и т.д. для последующей обработки. Поскольку мы направляем наши управляющие вводы напрямую и без фильтрации объекту прокси, здесь не требуются никакие настройки.
Для передачи информации управления требуется небольшой скрипт, который мы устанавливаем в поле Скрипт. В качестве языка сценариев мы выбираем Python.
После ввода появляется поле под названием Скрипт, в котором мы находим обычные команды мыши, с которыми мы, например, сталкиваемся при программировании в Интернете. Чтобы перейти от диалогового окна настроек к редактору скриптов, мы нажимаем внизу на кнопку Редактировать скрипт.
Открывается редактор выражений и скриптов, предлагающий нам гораздо больше возможностей для ввода и проверки сценария. Большинство петлей ввода здесь отключены с помощью решетки # в начале, и для нашего примера нам нужны только активированные строки событий mouseDown().
При событии mouseDown() вместо строк-заполнителей необходим вызов и выполнение инструмента поворота. Для этого мы сначала удаляем не нужные нам строки 8 и 9 в скрипте.
Чтобы определить правильный код для инструмента поворота, мы вызываем дополнительно менеджер команд через меню Окно>Настроить>Настроить команды ... .
Там, вводя первые несколько букв слова «Поворот» как фильтр: имя, мы найдем инструмент поворота как запись. Теперь нам нужно просто перетащить строку операции поворота из менеджера команд в строку 8 нашего редактора скриптов через перетащить и отпустить.
Теперь вызов инструмента поворота с соответствующим идентификатором команды добавлен в наше событие mouseDown(). Для того чтобы удостовериться, что сценарий составлен правильно, мы нажимаем на кнопку Компилировать ...
...и через зеленую отметку в строке нам сигнализируют, что в нашем сценарии нет ошибок. Теперь не только сценарий, но и тег взаимодействия готов к использованию. Мы можем сразу же использовать его для двух других управляемых объектов, так как теги отличаются только в этом одном идентификаторе команды при событии mouseDown().
Таким образом, мы можем закрыть редактор выражений и дублировать тег взаимодействия в менеджере объектов, перетащив его с зажатой клавишей Ctrl на другие два управляемых объекта.
Теперь мы применим оба тега взаимодействия к другим объектам управления. В менеджере команд быстро находим инструмент перемещения.
Теперь мы можем либо удалить и вставить строку в скрипт заново, либо просто вписать другой идентификатор команды в код. Он появится, когда соответствующая команда будет выбрана, в нижней части менеджера команд. Затрагиваются последние две цифры, так что идентификатор команды инструмента перемещения заканчивается на "88".
То же самое относится к инструменту масштабирования. В его случае идентификатор команды заканчивается на "89", поэтому нам нужно изменить последние цифры на это число в скрипте тега взаимодействия. При настройке тегов взаимодействия для объектов управления необходимо учитывать больше ничего.
Теперь мы можем, наконец, протестировать нашу интерактивную сцену. Обратите внимание, что ни один объект сцены не выбран, и поставьте указатель на одно из трех цветных полей. Удерживая кнопку мыши нажатой и перемещая указатель, вы изменяете объект фигуры с помощью соответствующих инструментов базового редактирования вращения, перемещения или масштабирования.
Теперь наша готовая интерактивная сцена не обязательно само собой разъяснима. С помощью новых тегов комментариев из выпуска 16, однако, мы быстро можем встроить небольшую справку.
Примечания в редакторе с использованием тегов комментариев
Также теги комментариев находятся среди тегов CINEMA 4D в контекстном меню с помощью правой кнопки мыши. Мы сразу же присваиваем его объекту, который должен нести заметку.
В диалоговом окне настроек тега комментария мы можем указать текст и даже ссылку через URL на странице комментариев. Длинный текст можно либо разрывать вручную в текстовом поле, либо сворачивать на странице отображения с помощью опции Свернуть. Там мы также найдем некоторые параметры для оформления и параметры отображения для тега комментария. Я изменил цвет тега комментария для нашего объекта управления поворотом.
Тег комментария для синего объекта управления поворотом мы используем теперь как основу для двух других объектов управления. Мы дублируем его, удерживая клавишу Ctrl при перетаскивании в менеджере объектов и подстраиваем текст и цвет аналогичным образом для объекта управления перемещением…
… а также для объекта управления масштабированием.
Теперь наша сцена оборудована необходимыми пометками, так что управление объектом фигуры через соответствующие поля должно быть понятным.
Подсказки в тегах комментариев тесно привязаны к объектам и всегда четко читаемы при изменении вида или перспективы.