Генераторы ландшафтов

Ах, эти скоростные красавцы Pentium`ы! Каждые 3-4 месяца тактовая частота повышается, а цена приобретает нормальный вид даже для нашего пользователя. То, что еще 5 лет назад было уделом профессионалов с их дорогостоящими рабочими станциями, сейчас вполне доступно домашнему юзеру, причем на машине не слишком "крутой" конфигурации. Можно довольно долго перечислять задания, с которыми по плечу справиться персоналке, проще задуматься о том, чего на ней сделать нельзя. В домашних условиях, в одиночку или взаимодействуя через сеть с другим пользователем, теперь можно создавать программные продукты, графику и дизайн, мультимедиа-презентации, компьютерные игры и многое-многое другое.

Одним из направлений деятельности, ставших доступными персональному компьютеру, является создание собственных виртуальных миров, воплощение своих самых заветных фантазий в виде предельно реалистичных компьютерных изображений. В наше время любой человек, немного знакомый с технологией 3D-моделирования, может разработать свой имидж, создать неповторимый дизайн, стиль, почувствовать себя режиссером, снимая свои компьютерные ролики и фильмы, актеров для них можно сделать своими руками. Одним словом, нам с вами посчастливилось жить в тот промежуток времени, в котором каждый имеет возможность выразить свой внутренний мир посредством ПК.

Мы поговорим лишь об одном направлении компьютерной 3D-графики - создании реалистичных ландшафтов с помощью мощных графических пакетов, называемых генераторами ландшафтов. Тема эта очень интересна и достаточно объемна, именно поэтому данная статья начинает серию обзоров, в которых мы расскажем о существующих на сегодняшний день средствах генерации ландшафтов, их возможностях, методике работы с ними и принципах их интеграции с другими пакетами 3D-моделирования. Некоторые считают эту область малоинтересной и узкоспециализированной и утверждают, что она не так важна, как сам трехмерный объект в сцене.

Достаточно привести один-единственный контр-аргумент: ФОН. Как бы смотрелся объект в кадре, если бы у него не было фона? От качества фона, окружения главного "действующего лица" зависит и восприятие картинки в целом, будь то компьютерный ролик, статическое изображение или ваша фотография "на Марсе". Чаще всего в роли "окружения" выступает природный ландшафт (неважно, выбран ли реальный ландшафт земли с ее лесами, пустынями и морями или какая-нибудь футуристическая авангардная композиция, рожденная вашим воображением). Сфера применения генераторов ландшафтов чрезвычайно обширна. Ключевой областью науки, в которой они задействованы и, собственно, для которой разработаны, является картография. Это и понятно, ученым-картографам гораздо удобнее манипулировать имеющимися у них массивами информации о координатах земной поверхности, если она предоставляется в легковоспринимаемом, объемном виде. Эта специфика наложила определенные ограничения на ранние версии генераторов ландшафтов, например, Vista Pro не поддерживает импорт 3D-объектов (по мнению разработчиков, для создания реалистичного изображения Гранд Каньона вполне достаточно естественных сред, и здесь ни к чему всякие инородные тела). Однако с бурным ростом технологий сфера ландшафтного моделирования значительно расширилась, дав значительный крен в сторону компьютерного искусства. Современные пакеты включают в себя все необходимое для создания полноценных роликов, статических картинок, фонов и реалистичных фильмов. Кроме того, почти все генераторы ландшафтов очень тесно интегрированы с другими 3D пакетами (вплоть до рендеринга теней и отражений в сцене).

Итак, давайте рассмотрим основные принципы, заложенные в фундамент многих генераторов ландшафтов. Уже давно в картографии для описания земной поверхности применяется понятие "карта высот". Суть метода состоит в использовании концентрических областей разного цвета, где каждому оттенку соответствует какая-либо высота относительно некоего базового уровня (обычно уровня моря). На этом поприще базируется большинство генераторов ландшафтов, только здесь карты высот генерируются автоматически - не по принятым ГОСТ-ам, а в зависимости от настроек пользователя. Кроме того, в любом растровом редакторе можно самому нарисовать карту высот, учитывая соответствующие каждому цвету соглашения программы, а затем импортировать ее в пакет.

По определению карта высот является плоской, и представить ее самому в трехмерном виде довольно сложно, поэтому в некоторые пакеты встроен механизм преобразования 2D-карты в 3D-объект. К таким пакетам относится Bryce, в него даже включен модуль, позволяющий автоматически (или вручную) генерировать карту высот.

Другой подход к представлению высот на местности - векторный (реализован в пакете Animatek's World Builder). Он состоит в следующем: каркас будущей местности строится из набора векторных "хребтов" - линий, которые могут быть как замкнутыми, так и в виде кривой линии. Затем полученная система "фрактализуется" (зашумляется путем добавления в нее случайных элементов по некоему фрактальному закону) и просчитывается положение всех элементов относительно уровня моря. В результате этих действий получается пространственный каркас моделируемой местности, который в дальнейшем можно модифицировать.

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

В.ПРЫГИН,
А.КИЛАДЗЕ

Версия для печатиВерсия для печати

Номер: 

22 за 1999 год

Рубрика: 

Графика
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!