Guest3d.ru
некоммерческий проект, цель которого объединить профессионалов для обмена опытом и знаниями в области real-time рендеринга
guest3d
1.06: Введение: Каналы (Channels)

Программы Quest3D состоят из строительных блоков. Эти строительные блоки называются каналами (channels). Каждый канал имеет определенную функцию.

В Quest3D каналами являются прямоугольные блоки. Канал на изображении ниже называется Value. Он может хранить число.

Маленькие черные квадраты выше и ниже канала называются квадратами связи (link squares). Каналы могут быть соединены друг с другом, между верхними и нижними квадратами связи.

На изображении выше, верхний канал называется Родительским (Parent). Нижний канал называется Потомком (Child). Потомки обычно используются, как входящие или выходящие данные для Родителей.

Входящий квадрат связи, без присоединенного к нему Потомка данных не получает. Обычно, пустые квадраты связи устанавливаются на 0.

Группы Каналов (Channel Groups)
Структура соединенных каналов называется Группой Каналов (Channel Group). Проект Quest3D состоит из одной или более Групп Каналов. Например, одна группа может отображать на экране комнату, в то время, как другая может отображать персонаж. Две Группы Каналов могут быть совмещены для отображения персонажа в комнате.

Информация Канала (Channel information)
Информация по каналу может быть просмотрена с помощью наведения на него указателя мыши. Через некоторое время появится всплывающее окно.

Канал на изображении выше называется ‘My Value’. В дополнение к имени, каждый канал обладает Базовым Типом (Basetype) и Типом (Type). Канал Value имеет Базовый Тип (Basetype) Value, но также имеет Тип (Type) Value.

Канал на изображении ниже называется ‘Clear Screen’.

Этот канал используется для смены цвета фона проекта. Цвета компьютерных программ обычно состоят из красного (red), зеленого (green) и синего (blue) компонентов. Поэтому, цвета обычно хранятся, как набор значений RGB.

Канал ClearScreen принимает три потомка типа Value: по одному для каждого из цветовых компонентов RGB.

Информация квадрата связи может быть просмотрена тем же способом, что и информация канала. Всплывающее окно отобразит название квадрата связи Базовый Тип (Basetype).

Первый квадрат связи канала ‘Clear Screen’ на изображении ниже, называется ‘R’. Он представляет красный компонент цвета канала.

Информационное окно также показывает, что квадрат связи поддерживает только каналы Базового Типа Value. Поэтому канал ‘My Value’ поддерживается, как потомок. На изображении ниже, канал, ‘My Value’ имеет значение 0. Второй и третий квадраты связи канала ‘Clear Screen’ пусты и поэтому также имеют значение 0. Цвет канала ‘Clear Screen’ приравнивается (0, 0, 0), что значит черный.

Обратите внимание, что решетка видима только в самом редакторе Quest3D но не в созданных программах. Эта решетка является вспомогательным элементом Quest3D.

Изображение ниже показывает результат канала ‘My Value’ со значением 0.5. Фон окрашен темно красным.

Пользовательский ввод (User input)
Изображение ниже отображает информацию для канала с названием ‘My Spacebar Value’.

Этот канал также имеет Базовый Тип Value. Тем не менее, его Тип User Input. Канал User Input может конвертировать множество различных типов активности пользователя, таких, как клавиатурный, с помощью мыши или джойстика в значение.

Так как канал ‘My Spacebar Value’ имеет Базовый Тип Value, он также поддерживается в качестве потомка каналом Clear Screen.

На изображениях ниже и выше, канал ‘Clear Screen’ изменяет цвет с черного на красный, опираясь на пользовательский ввод. При нажатии пробела фоновый цвет меняется на ярко-красный.

Квадраты множественных связей (Multi-link squares)
Изображение ниже показывает четыре различных канала: два Channel Callers, Value и Clear Screen.

Различные каналы могут иметь разное количество и Типы квадратов связи. Например, канал Clear Screen поддерживает три потомка, а канал Value поддерживает одного.

Символ ‘+’ внутри желтого квадрата связи отображает, что к каналу может быть привязано множество потомков. После того, как к каналу привязан потомок, символ ‘+’ переместится вправо, создавая новую ячейку для другого потомка.

Связывание (Linking)
Наведение мыши на верхний квадрат связи канала ‘Channnel caller’ делает его оранжевым.

На изображении ниже начато связывание от канала ‘Channel Caller’ к другому каналу, с помощью нажатия и удерживания левой клавиши мыши.

Во время связывания все квадраты связи изменяют цвет на красный или зеленый. Связи могут быть выполнены с зелеными квадратами связи, но не с красными.

На изображении выше, связь начата от канала Типа Channel Caller (он также имеет название ‘Channel Caller’). Канал ‘Project start’ (также Типа Channel Caller) поддерживает эту связь, как может быть видно по зеленому квадрату связи.

Каналы Типов Clear Screen и Value поддерживают только Values. Поэтому их квадраты связи красные.

Отпустив левую клавишу мыши на квадрате связи, вы создадите связь, если связь поддерживается.

Вместо нацеливания связи на целевой квадрат связи, вы можете
также отпустить ее на самом канале.
Quest3D попытается связать канал с одним из доступных квадратов
связи целевого канала.


Быстрое связывание:
1. Выделите потомка.
2. Нажмите клавишу ‘L’ на клавиатуре.
3. Нажмите на родителя.

Удаление связей (Deleting links)
Наведение мыши на стрелку связи между каналами и нажатие левой клавиши мыши приводит к выделению связи. Теперь вы можете удалить связь нажатием клавиши ‘Delete’ на вашей клавиатуре.

Если связь удалена из канала, создавшего новые ‘квадраты связи’, ‘пустые’ квадраты связи останутся. Этот квадрат связи имеет синий цвет. Каналы будут игнорировать эти пустые места. Если вы привяжете канал потомка к синему ‘квадрату связи’, ‘пустая’ позиция будет заполнена первой.

Окно Настроек Канала (Channel Properties window)
Двойное нажатие на канал откроет окно Channel Properties, специфическое для этого канала. Изображение ниже показывает настройки или окно диалога, принадлежащее каналу Value.

В этом окне настроек вы можете ввести новое значение. Обратите внимание, что программа Quest3D не делает паузы на открытие диалога. Вы можете изменять значения во время запуска вашей программы и сразу же наблюдать за результатом.

Контекстное Меню (Context Menu)
Нажатие правой клавиши мыши на канале вызывает Контекстное Меню.

Имя канала может быть изменено с помощью команды ‘General Properties’ (’Основные Настройки’). Выбор опции ‘Channel Properties’ вызывает то же окно, что и двойное нажатие мыши на канале.

Ярлыки (Shortcuts)
Ярлыки каналов работают так же, как и ярлыки к программам или папкам в Windows. В Quest3D могут быть созданы только ярлыки к каналам, не к папкам.

Ярлыки каналов могут быть созданы с помощью Контекстного Меню канала. Ярлыки также могут быть созданы с помощью нажатия правой кнопки мыши на ‘стрелке’ связи между двумя каналами. Появится меню с одной опцией.


Изображение снизу показывает результат операции.

Ярлыки являются ссылками на оригинальный канал. Их целью является придание Групп Каналов (Channel Groups) более высокой удобочитаемости.

Используйте папки и ярлыки, чтобы ваш проект сохранял чистоту и аккуратность.

Урок
Следующее упражнение описывает настройки каналов. После его завершения вы должны будете понять Типы (Types) и Базовые Типы (Basetypes) каналов и квадратов связи.

Шаг за шагом:

  • Запустите Quest3D. По умолчанию, Quest3D открывается в секции Channels.
  • Перетяните следующий канал из списка Template List в Граф Каналов (Channel Graph). System \ Clear Screen

Как вы можете видеть, канал Clear Screen уже укомплектован тремя потомками Value. Для практики этого урока мы удалим их. Растяните прямоугольник выделения вокруг трех каналов Value, нажмите клавишу Delete и ответьте Yes на вопрос уведомления.

  • Добавьте следующий канал. Variables \ Value \ Value

  • Наведите указатель мыши на канал ‘Value’ и подождите, пока не появится всплывающее окно с информацией.

  • Наведите указатель мыши на маленький черный квадрат на вершине канала ‘Value’. Обратите внимание на то, что квадрат стал оранжевым.
  • Нажмите и удержите левую клавишу мыши и переместите мышь на центр канала ‘Clear Screen’. Пока не отпускайте кнопку мыши. Обратите внимание на черную линию, протянувшуюся от вершины канала ‘Value’ к текущей позиции курсора мыши.
  • Отпустите левую клавишу мыши. Обратите внимание на черную линию, соединившую вершину канала ‘Value’ с нижней частью канала ‘Clear Screen’. Два канала теперь соединены.

  • Наведите указатель мыши на канал ‘Clear Screen’ и кликните правой кнопкой для открытия его Контекстного Меню (Context Menu). Выберите опцию ‘Set as start channel’ (’Задать канал, как стартовый’).

Изображение справа показывает большой символ стрелки над вершиной канала ‘Clear Screen’. Он показывает, что канал является стартовым.

  • Убедитесь, что окно Animation 3D View отображается, нажав на закладку ‘Animation 3D View’ в нижнем левом углу экрана.
  • Дважды кликните на канал ‘Value’ для открытия окна его настроек.

  • Введите в боксе редактирования новое значение от 0 до 1.0. Обратите внимание, что изменение значения в диалоговом окне изменяет цвет в окне Animation 3D View.
  • Нажмите кнопку ‘OK’, чтобы согласиться и закрыть окно диалога.
  • Из Меню Приложения, выберите опцию ‘File’ и затем опцию ‘Save Group As…’ (’Сохранить Группу Как…’).

  • Найдите подходящее место для хранения ваших файлов проекта, например следующую директорию:

C:\Program Files\Act-3D\Quest3D 3.x\Projects\

  • Введите имя, например, ‘Introduction to channels’.

  • Нажмите кнопку ‘Save’ для сохранения.

Пример того, какой должна быть ваша программа, доступен в папке программы Quest3D. Его директория и имя приведены ниже. Как упоминалось в Разделе 1.2, ‘Как пользоваться этой книгой, ‘..\’ – аббревиатура следующей папки:

C:\Program Files\Act-3D\Quest3D 3.x\

  • Для загрузки проекта Quest3D, из Меню Приложения выберите опцию ‘File’ и затем опцию ‘Open Project...’.
  • Войдите в директорию ‘Законченной сцены’. Полный путь:

C:\Program Files\Act-3D\Quest3D 3.x\Tutorials\1.6 –Channels\

  • Откройте файл ‘Channels – Complete.cgr’.
  • Проанализируйте законченную сцену, если вы поняли этот урок.

Законченная сцена:
..\Tutorials\1.6 –Channels\Channels – Complete.cgr

Если у вас есть материалы, или вы хотите дополнить существующие, если вы хотите писать новости относящиеся к технологиям реалтайм рендеринга, или имеете полезные файлы, вы можете стать резидентом Guest3D.ru. Для этого нужно написать письмо в свободной форме на admin@guest3d.ru, с указанием вашей мотивации. Кроме того, каждый резидент получает возможность создать свою страницу, ссылка на которую будет прикреплена к каждому опубликованному вами материалу.
вход