автокаталог

автомобили
продажа автомобилей
автомобили и цены
продажа подержанных автомобилей
Специалист по художественному моделированию автомобилей
купить автомобиль
цены на автомобили
подержанные автомобили
покупка автомобиля
аренда автомобиля
б у автомобили
тюнинг автомобилей
тюнинг японских автомобилей
прокат автомобилей
перевозка опасных грузов автомобильным транспортом
грузовые автомобили
отзывы об автомобилях
китайские автомобили
аренда автомобилей
аренда автомобиля с водителем
б/у автомобили
тонировка автомобиля
японские автомобили
новые автомобили
реферат на тему автомобильные перевозки пассажиров
ремонт автомобилей
автомобильные перевозки
страхование автомобиля
выкуп автомобилей
автомобили из германии
прокат автомобилей с водителем
устройство автомобиля
срочный выкуп автомобилей
аренда автомобиля водитель
автомобили из америки
аренда автомобилей
автомобильные грузоперевозки
эвакуация автомобилей
вождение автомобиля
вскрытие автомобилей
покраска автомобиля
налог на автомобиль
атлас автомобильных дорог
автомобильные весы
фото автомобилей
продать автомобиль
автомобили камаз
автомобильный подъемник
автомобили ваз
каталог автомобилей

 

Полигональное моделирование

В последнее время прослеживается четкая закономерность: при создании большинства динамичных и сетевых ролевых игр разработчики выбирают именно технологию создания трехмерных изображений в реальном времени, которая стремительно вытесняет двухмерную графику и в других типах игр. Все игровые консоли нового поколения обладают достаточной производительностью для обработки трехмерной графики, а графические адаптеры, такие как GeForce компании nVidia, продолжают вести трехмерную графику к новым, доселе не изведанным высотам. В результате, качество персонажей, создаваемых с помощью трехмерной графики в реальном времени, постоянно улучшается (рис. 5.1). Спрос на игры реального времени привлек к созданию соответствующих игровых проектов множество специалистов в этой отрасли.

 Использование трехмерной графики в Internet также возрастает, частично благодаря высокой скорости передачи данных, доступной в широкополосных каналах связи, таких как DSL, кабельные и спутниковые модемы. Содержимое Web-узлов с трехмерной графикой радует разнообразием: от шоу вроде Dilbert и Sister Randy компании Dot Comix до таких проектов, как Superman и Kiss: Immortals компании Brilliant Digital Entertainment. Для отображения содержимого на компьютере пользователя используются Web-броузеры, связанные с проигрывателями трехмерной графики и анимации в реальном времени.

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

Полигональные модели используются и в анимации высокого разрешения. Хотя разрабатываются они не так тщательно, как модели для игр, создание полигональной версии персонажа или автомобиля, а равно как и его последующее применение в анимации, позволяет сэкономить массу времени. Полигональные объекты предоставляют возможность предварительного просмотра анимации в реальном времени (т.к. тестовая визуализация почти не занимает времени). Когда анимация с полигональным объектом достигает максимально возможного качества, объект можно заменить каркасной сеткой с высоким разрешением. Некоторые программы позволяют проводить подобные замены при создании анимации, но при этом автоматически заменяют полигональные объекты на каркасную сетку с высоким разрешением во время процесса визуализации. В ряде случаев полигональный объект заменять вовсе не обязательно: если объект на сцене является небольшим, то можно обойтись и его полигональным вариантом.

В отличие от моделирования объектов с высоким разрешением, ошибки при создании полигональный моделей непростительны. Если сделать что-то не так при разработке проекта с высоким разрешением, то он все равно будет работать, просто его визуализация займет гораздо больше времени. Однако если модели трехмерной игры состоят из большого числа многоугольников, то это может повлиять на технические характеристики игры, вплоть до того, что в нее играть будет вообще невозможно. Немного смещенная вершина, скорее всего, останется незамеченной в модели высокого разрешения, тогда как в полигональной модели, она может, например, стать причиной исчезновения грани при воспроизведении анимации. Кроме того, обычные проблемы моделирования каркасов высокого разрешения, такие как перекрестное наложение объектов или игнорирование удаления задних граней, по отношению к полигональным моделям могут привести к серьезному ухудшению изображения и техническим проблемам.

Полигональные проекты необходимо планировать очень тщательно, особенно когда идет речь об их коммерческом потенциале. Дизайнер должен знать о характеристиках системы воспроизведения, ее возможностях и помнить о границах, за которые нельзя заходить. Перед тем, как приступить к созданию полигонального проекта, следует обязательно определиться со всеми техническими требованиями к моделям — максимальное количество полигонов, бюджет текстур, должен ли каждый модель быть отделенным от других и так далее. Представленный ниже список включает в себя некоторые наиболее распространенные технические требования.

  • Формат файла. Существует очень ограниченное число файловых форматов, которые могут быть обработаны или преобразованы системами воспроизведения трехмерной графики.

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

  • Технические характеристики текстурных карт. Текстурные карты также должны иметь определенный формат, например, . BMP и определенную насыщенность цвета (color depth), например, 8 или 16 бит. Вероятно, они также должны характеризоваться определенным размером. Некоторые графические системы поддерживают прозрачность альфа-канала, что может пригодиться для создания специальных эффектов.

  • Имена файлов и каталогов. Для надлежащего импорта моделей иногда необходимо следовать определенным соглашениям относительно имен файлов и структуры каталогов.

  • Единицы измерения и масштаб. Чтобы модели были совместимыми с другими объектами, импортируемыми в ядро графической системы, они должны быть созданы в заранее обусловленном масштабе.

  • Система внешних координат. В ядре графической системы может поддерживаться система внешних координат (world coordinates), отличная от той, которая используется в программе трехмерного моделирования.

  • Отраженные и дублированные экземпляры объектов. Некоторые графические системы могут иметь проблемы с каркасной сеткой, которая была отражена или продублирована в процессе моделирования.

  • Анимация. Можно ли анимировать объекты, и если да, то каким образом? Например, в игре Half-Life используется скелетная деформация в реальном времени, тогда как в Quake II анимация осуществляется путем преобразования вершин.

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

 

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

Графические системы имеют встроенные ограничения относительно количества многоугольников, которые могут перемещаться в течение определенного периода времени, и эти ограничения обуславливают сложность геометрической структуры, которую можно использовать в трехмерной сцене. Допустим, система имеет фактический предел перемещения, равный 5000 многоугольникам за один кадр анимации. Если для игры достаточным будет наличие только пяти объектов в сцене, то при моделировании каждого из них можно использовать 1000 многоугольников или любое другое количество, не превышающее этот предел. Например, можно создать два объекта, каждый из которых состоит из 1500 многоугольников, а оставшиеся 2000 многоугольников распределить между тремя объектами. Если игровая сцена требует наличия 100 объектов, для моделирования каждого из них можно использовать лишь 50 многоугольников и т.д. Таким образом определяется максимальное количество многоугольников, которое может использоваться при моделировании трехмерных объектов.

 

Стремясь добиться лучшей производительности и скорости отображения сложных сцен, разработчики часто создают две или три версии модели, каждая из которых имеет разное количество многоугольников, или разный уровень детализации (level of detail — LOD). Например, для отображения большого объекта на общем фоне применяется модель с 1000 многоугольников, а затем, когда объект отдаляется от камеры на такое расстояние, при котором пользователь уже не заметит разницы, загружается модель с 300 многоугольников (рис. 5.2). Переход модели на более низкий уровень детализации освобождает ресурсы системы, необходимые для отображения дополнительных объектов и позволяет уложиться в допустимое количество многоугольников.

 

Лучший подход к созданию моделей с разными уровнями детализации состоит в том, что сперва нужно создать модель с самым высоким разрешением, наложить на нее текстуры и провести ряд полноценных тестов, в особенности если клиент предъявил к модели какие-либо определенные требования. После создания модели с самым высоким уровнем детализации можно приступить к разработке ее разновидностей с более низким разрешением. Результат достигается путем удаления граней объекта до тех пор, пока не будет достигнуто желательное количество многоугольников. Если все пройдет нормально, вам даже не придется создавать новую карту текстуры для объекта.

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

 

Хотя текстуры подробно рассматриваются в следующей главе, о некоторых важных моментах, связанных с наложением текстур на полигональные модели, следует упомянуть уже сейчас. Читатели, которые совсем не знакомы с наложением текстур, могут вернуться к этому разделу после прочтения следующей главы.

Подобно параметру количества многоугольников, текстурный бюджет (texture budget) — это максимальное ограничение, которое определяется программистами для количества и размера карт текстур, используемых в конкретной модели. Необходимость в ограничениях важна по той причине, что карты текстур хранятся в оперативной памяти, объем которой в игровых консолях и графических адаптерах, особенно старых, может быть весьма ограниченным.

Отдельные карты текстур для полигональных приложений часто имеют квадратную форму и разрешающую способность, равную числу во второй степени, например, 256x256 пикселей. Такие технические параметры помогают графической системе ускорить обработку и использование карт. Вот наиболее часто применяемые размеры карт текстур: 1024x1024, 512x512 128x128, 64x64, и 32x32.

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

 

Существующие ограничения относятся не только к количеству текстурных карт и их разрешающей способности. Тот факт, что количество карт ограничено, означает, что карты для нескольких различных областей модели нужно размещать в одном и том же изображении. Результат напоминает стеганое одеяло, состоящее из лоскутков, каждый из которых представляет собой текстуру для какой-то отдельной части модели, прикрепленную рядом с другой текстурой только потому, что эти части сочетаются лучше, чем другие (рис. 5.3).

 

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

На заметку

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

 

Методы полигонального моделирования

Хотя для работы с полигональным моделированием, как правило, нет необходимости приобретать новые навыки (некоторые технологии также используются при моделировании объектов с высоким разрешением на уровне вершин), от дизайнера потребуется большая точность разработки и адекватность в принятии решений относительно работы над детализацией, ее упрощения или даже удаления.

Моделирование на основе прямоугольников (box modeling) — это популярный способ знакомства с полигональным моделированием, поскольку он предусматривает массу возможностей по управлению объектами. С помощью подобного моделирования можно довольно быстро создать черновой вариант модели, позволяющий определить количество полигонов и элементов модели, которым не помешает дополнительный уровень детализации.

 

Сохранение планарности

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

Если количество четырехугольников уменьшается по сравнению с количеством треугольников, то некоторые четырехугольники, вероятно, являются неплоскими. Чтобы найти причину проблемы, отмените внесенные в модель изменения или возвратитесь к предыдущей версии модели.

 

Структура каркасной сетки

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

 

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

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

 

Сглаживание

В графических системах реального времени часто используется затушевывание по методу Гуро (Gouraud shading), при котором углы многоугольников становятся гладкими и закругленными. Этот метод прекрасно подходит для создания игровых персонажей и закругленных объектов, но что касается модели танка Abrams, то вряд ли кто захочет видеть его гладеньким и "зализанным". Одним из способов, наиболее часто применяемых с целью устранения этого эффекта, является отсоединение группы многоугольников, которые должны сохранить свою плоскую и угловатую форму. Отделенные группы остаются на своих местах и продолжают быть неотъемлемой частью объекта, однако вершины, расположенные по их периметру, больше не прикреплены к другим элементам каркасной сетки, в результате чего сглаживание для них рассчитывается отдельно (рис. 5.5). Подобную уловку можно использовать и в моделировании объектов высокого разрешения, а также при подсвечивании скошенных граней.

 Совет

Хотя программа Poser компании Curious Labs не предназначена для создания трехмерной графики в режиме реального времени, в ней также используется технология сглаживания абсолютно всех деталей объектов. К счастью, метод отсоединения граней каркаса объекта нашел свое воплощение и в Poser.

 

 

 
Hosted by uCoz