Чтобы у вас создалось ощущение, что вы
на самом деле попали в виртуальный мир, каждая отдельная сцена и каждый
его отдельный предмет должны быть соответствующим образом продуманы и
спроектированы. Чем больше составляющих предмет элементов, тем выше
требования, предъявляемые к скорости вычисления компьютера.
Создание всего лишь одной комнаты,
такой, например, как на рисунке, — с окнами, шторами, мебелью, люстрой и
кафельным полом, — дело кропотливое.
Прежде всего программист-дизайнер
определяет, что и где будет находиться в помещении, а затем начинает
конструировать на компьютере каждую отдельную деталь, работая скорее как
столяр, чем как чертежник. Так, чтобы «построить» стол, он сначала
отдельно «изготовит» столешницу, потом ножки и боковины, а затем соберет
все вместе. Так же, деталь за деталью, обозначая их пока контурными
линиями, он создаст и другие предметы мебели (выполненная контурными
линиями модель называется сеточной).
Только теперь, когда все готово, он обставит виртуальную комнату на экране.
На следующем этапе дизайнер определяет,
какого цвета будут комната (ее стены, пол, потолок, двери и т. д.) и
мебель и из каких материалов будут сделаны все предметы. Он выбирает
бумажные обои, шелковую ткань для штор, желтый металл и матовое стекло
для люстры, рисунок древесины — ему нужно решить, из чего будет стол —
из дуба или березы, покрытие пола — линолеум, паркет, скажем, из дуба
или бука либо кафель. На основе этих данных компьютер раскрасит и
сделает «настоящим» все, что было прежде обозначено контурными линиями.
Специалисты называют эту стадию визуализацией (еще они употребляют такие слова, как рендеринг, заполнение, оживление, фактуризация). Далее переходят к освещению. Прежде
всего нужно уточнить, где находится источник света, как далеко и в
каком направлении распространяются его лучи. Например, свет настольной
лампы расходится широким конусом, а всю комнату освещают лучи солнца,
проникающие через окна.
Чем более реальным должно быть
изображение, тем больше времени уйдет у компьютера на обработку данных.
Особенно долго рассчитываются световые эффекты вроде бликов на
поверхностях и прозрачность элементов. Один из наиболее часто
применяемых методов — трассировка лучей. При этом компьютер обсчитывает
каждый отдельный световой луч: как он проходит через комнату, отражается
от поверхности, поглощается, преломляется или насыщается другими
цветами и, наконец, попадает в глаза наблюдателя. Высокопроизводительный
компьютер рассчитывает детали одной комнаты не меньше четырех дней. И
это только один неподвижный кадр! А для того, чтобы у человека создалась
иллюзия движения, перед его глазами за одну секунду должно
последовательно пройти по крайней мере 25 кадров. Это означает, что при
проектировании виртуального мира, в котором при любом движении головы
изменяется угол зрения, компьютеру на расчет каждого кадра остается лишь
0,04 секунды.
Тем не менее, если в новых моделях
компьютеров скорость вычислений и далее будет увеличиваться вдвое каждые
18 месяцев, как это происходит в последние годы, нам не придется долго
ждать, когда появятся системы, способные создавать виртуальную
реальность в полном смысле слова. Фильм
«Кто подставил кролика Роджера?» — пример комбинирования анимации и
играющих «вживую» артистов. Это стало возможным благодаря средствам
мультимедиа. Динозавров из фильма «Парк юрского периода» компьютер сначала трехмерно смоделировал, а затем скопировал в фильм.
|