Предисловие, или Конструирование подмостков — это только начало

В ближайшие годы компьютерный мир ожидает как количественных, так и качественных изменений в трехмерном содержании Internet. Российский сегмент Всемирной сети пока живет в двух измерениях и зачастую не выдерживает критики по скорости и качеству, поэтому рассуждения о трехмерных интерактивных узлах, населенных персонажами, могут показаться фантастикой. Но ситуация быстро меняется. В скором времени, может быть даже в этом году, в Москве будет создана телекоммуникационная сеть, которая позволит подключить к WWW весь город, включая «спальные» районы. Что нового сможет предложить Internet своим многочисленным пользователям?*

Компания Parallel Graphics (прежнее название «ПараГраф») разрабатывает сегодня линию продуктов, которая может представить альтернативу потребительскому подходу к Сети. Эти программы предназначены для создания трехмерных миров в Internet. Работа с ними похожа на полный цикл создания живого интерактивного театра: от конструирования подмостков до проведения спектакля.

Первый продукт серии — редактор виртуальных миров Internet Space Builder (ISB) 3.0 выпущен на российский рынок в феврале 1998 г. Он позволяет строить дома, создавать различные интерьеры и ландшафты, т. е. сцену для действия. Второй продукт линии — аниматор VRML-сцен Internet Scene Assembler — планируется к выпуску весной текущего года. Если первая программа позволяет выстраивать статические сцены с объектами, то аниматор вносит в них интерактивность: двери хлопают, окна открываются, бытовая техника работает. Выход третьего продукта, предназначенного для создания и анимирования трехмерных персонажей, ожидается осенью. Совместное использование всех трех программ даст возможность не только создавать «живые», динамичные трехмерные миры в Internet, но и населять их действующими персонажами.

Кроме того, в этом году Parallel Graphics выпустила VRML-клиент Cortona для просмотра готовых трехмерных сцен в Internet. Благодаря ему пользователь не только получает доступ к многообразным трехмерным сценам, но и, идентифицируя себя с выбранным персонажем, может взаимодействовать с другими любителями трехмерного действа в World Wide Web.

Новая линия Parallel Graphics предназначена и для новичков, и для профессионалов в области трехмерного искусства. С одной стороны, работа с продуктами не требует специальных знаний в области компьютерной графики, языка VRML или навыков программирования, с другой — благодаря тому, что программы созданы на базе открытой технологии, профессионал имеет возможность строить разнообразные собственные VRML-приложения, а также создавать свои библиотеки образов и сцен.

Новое поколение выбирает Builder?

Internet Space Builder — это средство создания трехмерных сцен в формате языка VRML, ориентированное на IBM-совместимые компьютеры. Продукт соединяет богатые возможности и простоту использования, характерную для ранее разработанного Parallel Graphics первого в мире VRML-редактора под названием конструктор виртуальных миров (Virtual Home Space Builder — VHSB). ISB позволяет строить виртуальный мир как «с чистого листа», так и используя готовые трехмерные сцены и объекты. Можно украсить создаваемый мир графикой из галерей текстур, картин и видеофильмов или изготовить собственные изображения.

В 1996 г. первая версия программы была признана журналом ZD Internet Magazine лучшим («Net Best») VRML-редактором. В 1997 г. Internet Space Builder завоевал первое место в номинации «Инструментальные средства» на российском конкурсе мультимедийных программ для образования и досуга «Multimedia Edutainment?97». Проверка возможностей продукта в рамках Московской компьютерной детской сети (www.mkids.ru), проведенная в 1998 г., показала эффективность его применения в образовательных и развлекательных целях.

Программа Internet Space Builder полностью совместима со стандартом VRML 2.0 и обладает интуитивно понятной концепцией строительства и просмотра сцен. Продукт обеспечивает такой уровень сложности создаваемых трехмерных объектов и сцен, который ранее был доступен только при использовании профессиональных инструментов, и позволяет разрабатывать, редактировать и просматривать трехмерные виртуальные сцены в рамках единой и хорошо продуманной среды разработки. ISB обладает богатым набором библиотек, он включает наращиваемые и редактируемые библиотеки готовых трехмерных сцен и объектов (домов, предметов интерьера, деревьев и пр.), форм (базовые трехмерные элементы для строительства), картин, анимированных роликов и текстур. При подготовке версии 3.0 разработчики внесли ряд значительных усовершенствований по сравнению с предыдущей версией 2.1.

ISB 3.0 допускает редактирование сцены непосредственно в трехмерном окне: можно изменить размер, положение и ориентацию формы или объекта с помощью специальных манипуляторов. Объем описания создаваемой сцены в новой версии может быть существенно уменьшен за счет использования базовых геометрических примитивов языка VRML 2.0, таких как Box (Куб), Cone (Конус), Cylinder (Цилиндр), Sphere (Сфера). Их описание, в отличие от применявшейся ранее имитации с помощью набора граней, занимает значительно меньше места в файле сцены. Кроме того, объект типа «простой текст», соответствующий узлу Text языка VRML, позволяет создать в сцене надписи из символов латинского алфавита и в дальнейшем редактировать и форматировать их, как обычные текстовые строки. Если нет необходимости использовать в текстовых элементах сцены объемные буквы или символы нелатинского алфавита, то, применяя «простой текст», можно существенно уменьшить объем описания заголовка по сравнению с его имитацией.

В ISB 3.0 реализована поддержка форматов BMP, GIF, JPG и PNG для файлов изображений, включая все взаимные преобразования форматов. Теперь у пользователя есть возможность изменить формат файлов, на которые имеются ссылки в файле сцены, и переименовать их. Например, можно изменить используемые в описании сцены ссылки на файлы изображений и звуков. Кроме того, введена возможность импорта объектов из файлов в форматах программ AutoCAD (DXF), 3D Studio (3DS) и экспорта в формате DXF. Ссылки из описания сцены можно удалить, а все операции производятся в одном диалоговом окне.

В новой версии реализована возможность выбора панорамного изображения, цвета фона и рельефа из библиотек программы. Добавление к этому поддержки узла Background (Пейзаж) языка VRML 2.0 позволяет ввести в сцену удаленный задний план. Схемы пейзажей включают такие элементы, как распределение цвета фона по высоте угла наблюдения и изображение на бесконечном удалении от камеры — Panorama (Панорама). Выбранную панораму и цвет фона можно отредактировать. Опция «Рельеф» дает возможность задать рельеф местности и соответствует Elevation grid языка VRML. ISB 3.0 позволяет переопределять команды клавиатуры для навигации камеры в окне трехмерного вида, имеется также возможность изменить скорость движения камеры в пространстве и коэффициент ее ускорения.

И наконец, в последней версии программы существенно переработана документация. При первом запуске ISB включается режим просмотра руководства пользователя, которое выполнено на русском языке в формате HTML. В процессе работы над сценой этот режим постоянно доступен.

Что нам стоит дом построить?

Форма, сцена и объект Для освоения приемов построения трехмерных сцен необходимо познакомиться с тремя основными понятиями, используемыми в ISB: формами, сценой и объектом.

Формы представляют собой объемные выпуклые геометрические фигуры, для которых определены операции добавления к уже присутствующим в виртуальном мире объемным телам и вычитания из них. Операция добавления формы создает в пустом пространстве сплошное тело, соответствующее внесенной форме. Части добавляемой формы, попадающие в уже занятый объем пространства, не создают в нем новых граней или границ. Например, при добавлении длинного цилиндра к сплошному шару часть цилиндра, находящаяся внутри шара, «растворяется» в нем, а изменения в виртуальном мире происходят только вне занятого шаром пространства. При вычитании, наоборот, из тела удаляются части, соответствующие вычитаемой форме. В рассмотренном выше примере вычитание цилиндра из шара приводит к появлению в нем отверстия с окраской стенок, соответствующей окраске стенок вычтенного. Таким образом, формы играют роль элементов конструкции при построении виртуального мира.

Сценой называется создаваемое трехмерное пространство. Любая сцена в ISB может включать две различные части: «замороженную» и «мобильную». «Замороженная» часть сцены образуется при добавлении объемных фигур из галереи форм или удалением частей объема уже имеющихся в сцене фигур при операциях вычитания форм. «Замороженная» часть сцены представляется в виде набора отдельных граней, причем каждая грань принадлежит самой сцене, а не какому-либо телу в ней. Поэтому никакие фрагменты «замороженной» части сцены не могут быть перемещены или изменены в размерах независимо от других. Передвижение или деформирование всего виртуального мира целиком также не допускается программой в полном соответствии с законами реального мира.

Мобильная часть сцены образована объектами. Они также могут содержать «замороженную» часть, взаимное положение фрагментов которой нельзя изменить. Однако положение, ориентация, пропорции и размеры всего объекта в сцене могут быть изменены. Объект представляет собой как бы сцену в сцене, построенную в своей собственной системе координат, с другим, изменяемым пользователем, началом отсчета, направлением и масштабом осей. Объекты могут включать в себя объекты-потомки, положение которых по отношению к «замороженной» части родительского объекта может изменяться. Операции изменения ориентации, размеров, положения, вырезания и удаления родительского объекта исполняются одновременно и для его потомков.

Совокупность объектов и их взаимную подчиненность в сцене можно наглядно отобразить в виде иерархической древовидной структуры, которая демонстрируется пользователю в окне дерева сцены. Все узлы дерева, за исключением узла сцены — корня, образуют ее мобильную часть, размеры и структура которой могут изменяться независимо от геометрических фигур «замороженной» части сцены.

Текстуры и материалы Каждая грань тела в виртуальном мире имеет набор свойств, описывающих ее материал. Можно, например, задать материал стен комнаты, имитируя обои или доски, «развесить» на стенах картины или поместить анимированные ролики (видеофильмы). В ISB могут быть заданы следующие свойства материала.

  • Цвет. Пользователь может задать цвет любой грани. При этом вся грань будет окрашена в выбранный цвет равномерно. Цвет грани, как и в реальном мире, зависит от ее ориентации по отношению к источнику света в сцене, поэтому в зависимости от расположения грани, окрашенные в одинаковый цвет, могут выглядеть по-разному.
  • Текстура. На грань можно наложить изображение. Текстура будет «наклеена» на всю грань, подобно обоям, с автоматическим повтором рисунка, если размеры грани больше размеров элемента изображения текстуры. Например, при наложении на грань текстуры с рисунком одного кирпича вся грань будет выглядеть как кирпичная стена. При наложении текстуры цвет грани не виден.
  • Прозрачность. Можно установить коэффициент прозрачности материала грани. Например, если прозрачность материала 50%, то грань станет полупрозрачной, и в окне трехмерного вида будут видны как ее материал, так и предметы, расположенные позади нее. Установка параметра прозрачности в 100% сделает грань невидимой. Подбором прозрачности грани можно имитировать поверхности типа стекол в окнах и тому подобные элементы сцены.
  • Способ наклеивания текстуры. При создании стены может понадобиться изменить период повторения рисунка или его ориентацию. Кроме того, иногда желательно подобрать период и расположение рисунка текстуры таким образом, чтобы стена состояла из целого количества строительных элементов по вертикали и по горизонтали. Указанные настройки, а также некоторые более сложные трансформации рисунка текстуры при ее наклеивании на грани сходны с операциями, выполняемыми при наклеивании карты мира на глобус.
  • Движение текстуры. Можно сделать рисунок текстуры движущимся и установить скорость и направление движения. Движущиеся (текущие) текстуры весьма полезны, если, например, требуется воспроизвести в сцене поверхность текущей воды или показать небо с плывущими по нему облаками.

Редактирование изображений В ISB есть возможность создавать и редактировать собственные изображения, при этом используются обычные операции рисования в графическом редакторе. В режиме редактирования изображения можно писать и рисовать на рабочей поверхности рисунка различными инструментами, закрашивать части рисунка разными цветами и производить некоторые преобразования выделенных частей изображения. Результат редактирования рисунка текстуры или картины отображается в окне трехмерного вида синхронно с осуществлением операции в окне редактора изображений.

В пакете имеются следующие операции редактирования изображений:

  • создание линий — линии произвольной формы рисуют, передвигая указатель мыши с нажатой левой кнопкой по полю рисунка; используются такие инструменты, как карандаш, перо или кисть;
  • создание отрезков прямой и прямоугольников — это делается с помощью опций «Линия» или «Прямоугольник»;
  • заливка области рисунка цветом;
  • выбор цвета из редактируемого изображения — цвет можно выбрать непосредственно из рисунка;
  • увеличение изображения — можно увеличить размер любой части рисунка на экране, выбрав опцию «Увеличить» в секции инструментов;
  • изменение размеров поля изображения — осуществляется с помощью захватов в углах рисунка и в середине правой и нижней границ. При увеличении поля изображения его размер в пикселах увеличивается, имеющееся в окне изображение картины или текстуры сохраняется, а дополнительное свободное пространство окрашивается в белый цвет. При уменьшении размеров поля изображение обрезается по новым границам;
  • сохранение изображений в одном из графических форматов BMP, GIF, JPG или PNG;
  • установка цвета как прозрачного — при последующем показе изображения в сцене любой цвет можно задать как прозрачный (только для форматов GIF и PNG).

Использование объемных шрифтов Создаваемый виртуальный мир можно украсить поздравлениями, объявлениями, указателями, напоминаниями и другими надписями, выполненными шрифтом из объемных букв. IBS 3.0 позволяет включить в сцену в качестве объекта надпись объемными буквами любого шрифта True Type, установленного в системе Windows, отредактировать текст надписи, выбрать шрифт, установить цвет букв и качество их исполнения. Кроме того, при строительстве виртуального мира допустимо использование объемных текстов, созданных в формате VRML 2.0 с помощью программного продукта Internet3D Font Magic компании Parallel Graphics.

Панорама и рельеф местности В ISB 3.0 существует возможность выбора цвета неба, пейзажа и ландшафта местности из набора готовых схем. В числе ландшафтов летний и зимний лес, пустыня, берег озера, горная местность и некоторые другие. Выбранную схему фона можно в любой момент изменить. Если в используемой схеме присутствует ландшафт, то дом всегда, независимо от рельефа, будет располагаться на земле. Такая особенность ISB полезна в случае, если пользователь позднее примет решение изменить рельеф.

Что дальше?

Компания Parallel Graphics уже разработала новый VRML-клиент Cortona для просмотра трехмерных VRML-сцен в Internet. Это ПО работает с Netscape Navigator версии 3.01 и выше и с Microsoft Internet Explorer, начиная с версии 3.02. Клиент имеет небольшой объем, а использование технологии Active Setup позволяет ускорить процесс его установки и обновления. Cortona обладает программными средствами для быстрой визуализации (rendering), обеспечивающими высокую скорость и качество изображения на машинах без 3D-ускорителей. С помощью Cortona можно добиться синхронизации взаимодействия объектов в VRML-сценах по сети, так что изменение, произведенное в сцене одним из пользователей, немедленно становится доступно всем остальным пользователям, наблюдающим данную сцену.

Cortona поддерживает:

  • DirectX и Direct3D;
  • язык Java;
  • форматы VRML 97, VRML 2.0, VRML 1.0, D96, MUS;
  • геометрические расширения — воксели (voxel) и спрайты (sprite);
  • внешний интерфейс EAI (External Authoring Interface).

Кроме того, клиент обладает собственным интерфейсом CAI (Cortona Automation Interface), основанным на технологии ActiveX Automation.

Отслеживая развитие аппаратных технологий, компания Parallel Graphics оптимизировала VRML-клиент Cortona для новейшего процессора Pentium III компании Intel.

На презентации Pentium III Preview Day, прошедшей 17 февраля 1999 г., директор по маркетингу и развитию бизнеса компании Intel Салли Фундаковски (Sally Fundakowski) сказала: «Parallel Graphics принадлежит к числу компаний, развивающих трехмерные Internet-приложения. Их простые в обращении, динамично развивающиеся технологии в сочетании с преимуществами процессора Pentium III дают пользователям новый опыт интерактивного общения». Российские пользователи могут загрузить клиента Cortona с узлов Parallel Graphics (www. paragraph.ru и www.parallelgraphics.com) и лично убедиться в его возможностях.

Выпустив продукты, с помощью которых можно конструировать сцены и смотреть виртуальные миры в Internet, Parallel Graphics начала бета-тестирование аниматора VRML-сцен Internet Scene Assembler 1.0 (ISA) для трехмерных изображений в Internet. Результат работы ISA сохраняется в формате VRML, он предназначен для размещения в Internet и может просматриваться любым стандартным VRML-браузером. Подготовленные в ISA сцены могут быть впоследствии использованы при создании мультимедийных демонстраций в различных областях деятельности, таких как торговля недвижимостью, создание дистанционных обучающих программ, организация развлекательных и иных многопользовательских Internet-сервисов.

Как и Cortona, Internet Scene Assembler оптимизирован для работы на компьютерах с процессорами Pentium III, что обеспечивает высокую эффективность при создании детальных динамических VRML-сцен. С помощью ISA пользователь имеет возможность выбрать исходную VRML-сцену, разместить в ней нужные объекты и указать события, которые могут происходить в этой сцене в зависимости от возникновения тех или иных условий. Internet Scene Assembler позволяет задавать взаимодействие анимированных и неподвижных объектов, размещать источники света, воспроизводить звук, отображать на экране пояснительный текст, в том числе трехмерные надписи, прокладывать и воспроизводить маршрут движения камеры. Поддерживается работа с трехмерным изображением сцены и ее планом, предусмотрена возможность переключения между различными режимами представления сцены. Кроме того, ISA позволяет создавать и редактировать библиотеки объектов, задавать иерархии объектов в сцене и формировать граф (визуальное дерево) сцены в соответствии с требованиями пользователя или заказчика.

ISA 1.0 поддерживает:

  • импорт/экспорт сцен в формате VRML 2.0;
  • анимирование объектов;
  • расстановку точек привязки для задания способа склеивания объектов;
  • сетку и направляющие линии для точного позиционирования объектов в сцене;
  • множество режимов визуализации, включая поддержку технологий MMX и DirectX.

Для презентации возможностей новых продуктов компанией Parallel Graphics создана программа Distant Learning Demo. Эта демонстрационная версия учебного пособия позволяет дистанционно обучить технический персонал ремонту одного из элементов нового копировального аппарата. На каждом шаге пользователю объясняется, что и как ему следует делать с трехмерной интерактивной моделью машины. В конце обучения пользователь проходит тест у виртуального учителя и получает оценку. Подробная модель копировального аппарата для Distant Learning Demo была создана с помощью программ Internet Space Builder 3.0 и Internet Scene Assembler 1.0. А работать с ней можно через клиент Cortona или иной VRML-клиент.

Но это лишь начало. Осенью должен появиться конструктор и аниматор персонажей Internet Character Animator, что позволит буквально переселиться в трехмерный Internet-театр. Кто сказал, что фраза «Весь мир — театр и люди в нем актеры» — метафора? В 2000 г. это уже станет реальностью.

ОБ АВТОРЕ

Наталья Петрова — менеджер по связям с общественностью компании Parallel Graphics, www.visualtech.ru, тел.: (095) 122-72-60

* Речь идет о содержательной информации, а не о бесконечном серфинге по западному Internet в поиске порноузлов или с целью изучения английского языка.

1730