Giglavy.com / Публикации / Вновь я - по сети...

Рис. 1

   Многострадальный редактор виртуальной реальности Internet3D Space Builder 3.0 наконец-то вышел на российский рынок. История его началась еще в середине 1996 года. К тому времени имеющая богатый опыт работы с виртуальной реальностью фирма Paragraph International выпустила вторую версию этого пакета. И уже тогда начались всевозможные споры относительно третьей версии. Главным предметом споров стало поведение объектов, обитающих в VRML-пространстве (VRML - Virtual Reality Modeling Language - язык моделирования виртуальной реальности). Пройдя тернистый путь (Virtual Home Museum - в 1994 году, Virtual Home Space Builder - в 1995 году), программисты "Параграфа" убедились, что коммерческий успех графического пакета никак не зависит от сложности его функций. Для того чтобы задавать характер движения объекта, пользователь должен хорошо ориентироваться
Рис. 2

Рис. 3

Рис. 4

в таблице ключевых кадров анимации. Анимирование животных или людей требует немалых знаний. Необходимо разбираться в структуре мышц и костей анимируемого персонажа (в "Параграфе" виртуальный облик посетителя VRML-пространства назвали аватаром). Естественно, после добавления в редактор анимационных операций цена его увеличится. Моделирование аватаров также потребует усовершенствования инструментов редактора. Короче, продвижение новой версии продукта на рынке требует популярности его предыдущего варианта. Дело с добавлением в редактор анимационных операций потихоньку замяли, решив выпустить на рынок вторую версию ISB в качестве моделлера. И уже в конце 1997 года ISB 2.1 завоевал призовое место на конкурсе "Multimedia - Edutainment 97", который был проведен издательством "КомпьютерПресс" и фирмой "РУСС". Журнал ZD Internet признал вторую версию ISB лучшей программой-конструктором VRML.
   Виртуальная реальность еще в 1996 году заинтересовала работников журнала "Аурамедиа", которые не могли тогда виртуализовать COMTEK'96. В 1997 году ISB появился в Российском Государственном Гуманитарном Университете на кафедре истории науки, где позднее сделали виртуальный музей. Немалый интерес к новым технологиям "Параграфа" проявили организаторы выставок (ООО Компания СИМ). Виртуальные выставки привлекли к себе внимание читателей журнала "САПР и графика", о чем свидетельствуют итоги конкурса статей, проведенного на выставке COMTEK'98.
Рис. 5
   Разработка ISB продолжалась и после присоединения "Параграфа" к Silicon Graphics в апреле 1997 года. Вместе с новым названием (в феврале продукт называется Cosmo HomeSpace Designer 3.0) пакет приобрел ряд новых функций. Безусловно, в новом варианте чувствовалось влияние SGI. Но летом 1998 года, после окончательного развода с SGI (Степан Пачиков сейчас возглавляет компанию Vadem, а Георгий Пачиков - президент фирмы Parallel Graphics) к пакету возвращается старое, всеми любимое название Internet3D Space Builder 3.0. Параллельно с добавлением к ISB новых функций в компании ведется разработка различных аниматоров аватаров. В этой статье я расскажу о результатах двухлетней работы над новой версией ISB.


   Моделирование в ISB 3.0

   Создание объектов осуществляется с помощью компоновки стандартных объемных форм (рисунок №2, панель форм), выпуклых и замкнутых полигонов (рисунок №3) и замкнутых сплайнов, вписанных в полигоны (рисунок №4). Существует три основных режима моделирования: Build Mode - режим построения объектов, Polygon Mode - режим построения полигонов , Spline Mode - режим построения сплайнов.
   В третьей версии целиком реализовано drag-and-drop-моделирование. Это значит, что создание объектов можно осуществлять непосредственно в окне визуализации, перетаскивая необходимые примитивы из галереи. На рисунке №5 таким образом устанавливается крыша. Редактируемая заготовка формы в окне визуализации прозрачна, а в рабочих окнах серый каркас заготовки отличает ее от остальных. В случае необходимости примитив можно вырезать из остальных составляющих текущего объекта.
Рис. 6
Рис. 7
   Объекты из стандартной библиотеки перетаскиваются так же, как и примитивы. Объект строго перпендикулярно становится на указанный в окне визуализации полигон "нижней гранью". Так что люстру для потолка нужно сохранять вверх дном. Объекты сцены представлены в виде иерархии (рисунок №6), во главе которой стоит объект с неизменным именем Scene. Процесс построения сцены начинается с редактирования именно этого объекта. В процессе работы его нельзя перемещать, поворачивать и масштабировать. Работу лучше всего начинать с операции падающего меню Object/New/Empty Object. Тогда сцена будет состоять из иерархии объектов, каждый из которых можно двигать, поворачивать и масштабировать. Имя Scene может измениться лишь тогда, когда вы измените расширение сохраненной сцены .WRL на расширение объекта .VCD и перепишите переименованный файл в галерею объектов. В данном случае имя объекта Scene автоматически заменится на имя файла и вставленный из галереи объект можно будет "переподчинить", изменив таким образом, его свойства.
   Логические операции типа Union (объединение) и Substraction (вычитание) выполняются автоматически. Для удобства можно создавать пользовательские примитивы. Для этого в ISB есть специальный режим записи производимых действий Tools/Record Shape. В памяти сохраняются все производимые действия, а затем операцией Tools/Stop Recording в один из подкаталогов директории SHAPES записывается пользовательский примитив и запись останавливается. Важно учитывать, что если в процессе создания пользовательской формы какие-либо примитивы стирались, то при фиксировании этой формы они также удалятся (ведь повторятся абсолютно все действия).
   Моделлер предоставляет четыре способа выдавливания полигонов и сплайнов: преобразование основания (полигона или сплайна) в призму с заданной высотой (высота определяется двумя воображаемыми гранями Guides) - Solid , выдавливание основания в комнату без пола и потолка с заданной высотой - Walls и в комнату с полом и потолком - Room , преобразование основания в пирамиду - Pyramid . Параметры комнаты, величина шага и сетки, степень сглаженности сплайна, высота и положение граней Guides определяются в окне, которое вызывается командой Tools/Options (вкладка Plan показана на рисунке №7).
   Используя системные шрифты TrueType, ISB дает возможность создавать плоский (команда Object/New/Plain Text) и трехмерный текст (команда Object/3D Text). Для особо привередливых предусмотрен импорт 3DS-файлов (Object/Import). Сцены с большим количеством граней иногда слетают и ISB виснет, что вполне естественно.

   Редактирование материалов и украшение VRML-сцены в ISB 3.0

Рис. 8
Рис. 9
   Самая главная отличительная черта новой версии - встроенный редактор материалов (рисунок №8). В предыдущих вариантах программы понятия материала просто не было. С помощью этого редактора можно регулировать прозрачность текстуры, задавать направление ее движения и изменять ее цвет на грани, редактировать пропорции и частоту текстуры на полигоне. Кстати, на диске ISB есть богатейший набор текстур (1158 графических файлов с расширениями .GIF). Прозрачные текстуры окон позволяют существенно сократить количество граней в сцене. Оптимальный уровень прозрачности - 50 условных единиц. Сложные текстуры также могут сократить число граней (пример - виртуальная Красная Площадь фирмы "Параграф").
   В ISB есть понятие картинки и видеофрагмента. Картинка - плоский объект с изображением, которому можно присвоить URL-ссылку. Масштаб картинки можно изменять, вытягивая ее правый верхний угол. Для пропорционального масштабирования картинки необходимо удерживать клавишу Shift. В памяти картинка хранится, как обыкновенный графический файл (расширения - .JPG, .GIF и .BMP). Right-click-меню картинки в окне визуализации позволяет "приколоть " ее к полигону (операция Pin). Картинка "прикалывается" для того, чтобы в процессе навигации посетитель пространства не двигал ее на полигоне. Видеофрагмент - это также плоский объект со всеми свойствами картинки, состоящий из совокупности кадров, каждый из которых хранится в памяти как отдельный графический файл (например, Film1.gif, Film2.gif и т. д.). Для создания таких фрагментов в программе анимации и моделирования достаточно лишь включить покадровый рендеринг.
Рис. 10
Рис. 11
Рис. 12
   Для редактирования картинок и текстур в ISB есть модуль Painter (рисунок №9), положительно отличающийся от печально известного майкрософтовского редактора Paint. Параметры наложения текстуры на полигон задаются командой Tools/Options (вкладка Texture Mapper, рисунок №10). Размер текстуры задается в метрах (условная единица ISB). Так что при определении размеров текстуры необходимо учитывать ее пропорции.

   Навигация и ландшафты

   Перемещение по сцене осуществляется в окне визуализации. Режимы рендеринга устанавливаются командой Tools/Options (вкладка Camera, рисунок №11). Режим Collider определяет твердость граней. Если режим отключен, то камера проходит сквозь стены. В противном случае она упирается в стену и плавно скользит вдоль нее. Совместно с режимом Collider может работать режим гравитации Gravity, при котором камера притягивается к виртуальным глазам посетителя сцены. В окне визуализации курсор различает грани объектов и пустое пространство. Операция Set Default Height в Right-click-меню грани позволяет установить положение Guides соответственно ее высоте, что лишний раз доказывает функциональность окна визуализации как рабочего пространства. Камеру можно выравнивать по горизонтали (операция падающего меню Camera/Align Horizontal) и по вертикали (операция Camera/Align Vertical). Для автоматического выравнивания камеры относительно определенной грани существует операция из Right-click-меню грани Go to, которую неоднократно приходится использовать в процессе моделирования и украшения сцены.
   Отличительной особенностью третьей версии является возможность работать с библиотекой ландшафтов. Операция падающего меню File/Set Background... вызывает диалоговое окно для выбора ландшафта (рисунок №12). "Параграф" предоставляет достаточно богатый выбор всевозможных ландшафтов (зимний пейзаж с ёлочками, осенний лес, пляж и так далее) в формате .WGR (VRML-ландшафт). Несмотря на то, что каркасная модель ландшафта не видна в рабочих окнах, текстуры ландшафта можно изменять. На рисунке №13 изображена модель дома, стоящего на зимнем ландшафте. На земную поверхность можно перетаскивать примитивы и объекты. Ландшафты создают иллюзию бесконечного заполненного пространства, что крайне важно для виртуальной реальности.
Рис. 13
   Команда падающего меню File/Publish... позволяет опубликовать сцену. Процедура публикации отличается от обыкновенного сохранения тем, что дает возможность поместить все внешние составляющие проекта (текстуры, картинки и кадры анимации), наличие которых необходимо, в один каталог, существенно сокращая затраты времени на поиск нужных составляющих в различных директориях. Ведь при отсутствии используемой текстуры в заданном каталоге она просто не будет прорисовываться на гранях. То же самое относится в анимации и картинкам.
   Опыт применения IVR-технологий (Internet Virtual Reality) показал, что далеко не у всякого рядового пользователя получается эффективно компоновать сцены для сайтов. Трехмерная графика всегда, вне зависимости от функциональности технологий, будет сложным направлением в Web-дизайне. У многих людей, овладевших тонкостями ISB, но не имеющих художественных навыков, иногда просто не хватает фантазии. ISB рассчитан не на профессионалов-графиков, а на обыкновенных пользователей. Это игрушка, полезное средство обучения, качественный виртуализатор, но никак не система художественного моделирования. Масса составляющих (сложные текстуры, анимационные фрагменты, картинки и изысканные трехмерные детали) создается в других, более крутых и дорогих программах. Так что, несмотря на все прелести нового отечественного редактора, одного ISB для оформления 3D-сайта мало.

   Аниматор аватаров Internet3D Dancer

Рис. 14
Рис. 15
Рис. 16
Для увеличения кликните на картинку
Рис. 17
Для увеличения кликните на картинку
Рис. 18
   Недавно в АО "Параграф" появился новый аниматор. Называется он Internet3D Dancer (рисунок №14). Одну из первых его версий закончили к августу 1998 года. Редактор предназначен для анимирования персонажей. В начале 1997 года в "Параграфе" разрабатывался пакет MatchMan для редактирования сложных движений фигур. В таблице кадров анимации задавались специальные ключи, определяющие характер движения объекта. Работать с этой программой могли только опытные аниматоры, знающие 3D Studio. Спустя полтора года пакет был усовершенствован для обыкновенных пользователей.
   В начале работы вы выбираете из стандартной галереи интересующего вас аватара (облик). Галерея состоит из пяти категорий: в категории аватаров выбирается внешний вид (Heads, рисунок №15), Chests - стандартный набор верхней одежды, Legs - брюки и юбки, виды анимации в окнах предварительного просмотра (Animations, рисунок №16) и библиотека различных звуков (Sounds). Некоторые элементы категорий специально заблокированы во избежание казусов (например, бородатый мужчина с пышным девичьим телом и в юбке или юная красавица с атлетическим торсом в тренировочной майке).
   Существует три режима навигации в окне визуализации (режим поворота вокруг модели - Rotation mode, режим передвижения перед моделью - Moving mode и режим приближения камеры к модели - Zooming mode). Можно заставить модель двигаться вокруг собственной оси в разных направлениях (команды падающего меню 3D View/Autorotate left и 3D View/Autorotate right).
   В редакторе реализована специальная технология смешивания (blending) анимаций. Она заключается в том, что интерполяторы действуют на узлы аватара (на его суставы, например) не напрямую, а через смешивающий фильтр. Через фильтр может проходить как одна, так и несколько анимаций. Настройки анимации меняются в окне, которое активизируется командой View/TimeLine (рисунок № 17). Меняя положение и длину разноцветных линий (сегментов анимации, каждый из которых отвечает за повторяемость и длительность определенного движения), вы можете создавать самые причудливые анимационные фрагменты. Скажем, модель может одновременно махать рукой, бежать, подпрыгивать и причесываться. Или, например, модель может сначала бежать, затем махать рукой и после этого голосовать на дороге.
   Для более детальной настройки можно открыть окно MatchMan (команда падающего меню View/MatchMan, рисунок № 18). Окно предназначено для управления ключевыми кадрами анимации. Здесь можно менять характер поворота и перемещения определенной части тела аватара. Для того, чтобы изменять настройки MatchMan, нужно быть профессиональным аниматором.
   Для просмотра созданных WRL-файлов можно использовать программу Babylon компании "Параграф"
(http://www.paragraph.ru/babylon). При опубликовании (команда File/Publish) файл в формате VRML размещается в заданном каталоге вместе со всеми необходимыми дополнительными файлами из галерей. Также в него записываются реализованные на Java узлы (и необходимые Java-классы), обеспечивающие "оживление" аватара в программе просмотра Babylon в соответствии с разработанным сценарием. Файл впоследствии может быть открыт программой Dancer, но не может быть отредактирован.
   Безусловно, Dancer не доведен до конца. В качестве моделлера он подходит лишь как компоновщик. Функций создания каркасной модели просто нет. Необходимо соединить возможности редактора анимации Internet3D Dancer и пакета для создания трехмерных VRML-сцен Internet3D Space Builder 3.0.
   Буйству весны 1998 года вполне соответствовали душераздирающие восторги посетителей нового виртуального мира "Параграфа". "Парк имени Кожухаря" - одно из последних достижений сплоченной команды параграфовцев, первых отечественных разработчиков мультимедиа-приложений. После загрузки вы попадаете в светлый парк, окруженный зеленым лесом. Первое, что вы видите - это крутящиеся качели. На парк можно смотреть глазами человечка, который качается на качелях. Для этого надо нажать круглую кнопку с изображением этого человечка. Помимо глаз человечка, у вас, естественно, есть собственные глаза. Для того, чтобы переключиться на обозрение парка своими глазами, надо щелкнуть по кружку с изображением кинокамеры. Кнопка со знаком вопроса выводит на экран окно помощи. Рядом с вращающейся кабинкой стоит маленький светофор, по которому можно щелкнуть два раза для того, чтобы кабинка начала вращаться. Рядом с качелями стоит несколько табличек с надписями типа "Батискаф", "Осьминог", "Избушка", "Колесо чудес". Двойной щелчок по любой из табличек обеспечивает переход в соответствующую надписи область парка. И тут начинается самое интересное!
Рис. 19
   Меня особенно порадовал "Батискаф". Длинная стена коридора - это огромный океанариум, в котором среди морских водорослей плавают акулы, пираньи, электрические скаты, одинокий тюлень и прочие гады морские. Для того, чтобы поплавать внутри батискафа, надо щелкнуть на круглую кнопку с изображением одного из трех человечков. Один конец узкого коридора позволяет перейти обратно к качелям ("Качели"), а другой - на американские горки ("Виражи"). На "виражах" можно хорошо повеселиться, созерцая окрестности парка глазами катающегося человечка. "Колесо чудес" впечатляет не меньше, чем "Батискаф". Вокруг поля, центр которого занимает высокое "чертово колесо" (обозревать лучше из его кабинки, как на рисунке №19), собраны модели самых известных архитектурных шедевров мира. Здесь есть и знаменитый барселонский Собор Саграда Фамилия (архитектор Антонио Гауди), и Статуя Свободы, Эйфелева и Пизанская башни. Естественно, все области парка ограничены - рано или поздно вы упираетесь в невидимую стену. Но в целом создается иллюзия бесконечно простирающегося ландшафта.
   Очередной шаг освоения новой реальности сделан! Пространство ожило и взаимодействует с его посетителями, которые раньше могли только лениво посматривать на монитор, наслаждаясь экранными красотами. Рыбы плавают, осьминоги шевелят щупальцами, избушки выпендриваются. Не за горами и следующий шаг - концептуальное присоединение таких парков ко всемирному информационному пространству Интернет. Пользователи смогут встречаться, взаимодействовать и обмениваться информацией не на плоских страничках, а в таких парках. Необходимо постоянно пополнять библиотеку обликов посетителей (аватаров).
   "Да здравствует виртуальная реальность и URL-связи всего прогрессивного человечества! Ура, товарищи! А теперь приглашаем всех желающих на страничку www.paragraph.com"...

Copyright © 1997—2005 Дмитрий Гиглавый | E-mail: giglavy@rambler.ru