«Компьютерные игры, использование 3D технологий»



бет3/6
Дата08.03.2016
өлшемі374.5 Kb.
#46521
1   2   3   4   5   6



    1. Игровая графика и примеры ее применения


Создание игровой графики, художественное оформление игры – один из важнейших моментов процесса разработки. На это уходит львиная доля бюджета игры, а сама графика в значительной степени определяет то, что называется «атмосферой игры». Кроме того, хорошая графика – это еще и одно из условий успешных продаж: вспомните броскую рекламу в журналах, построенную на реальной внутриигровой графике, скриншоты в Интернете и на коробках с играми.

Вообще говоря, понятие «игровая графика» включает в себя так называемый концепт-арт, то есть эскизы и наброски, во многом определяющие то, как игра будет выглядеть, и собственно компьютерную – внутриигровую – графику. Как правило, художники, занимающиеся эскизами, работают в тесном сотрудничестве с дизайнерами игры. Они помогают конкретизировать замысел, создавая наброски героев и декораций. Иногда при этом выполняется и трехмерное моделирование. Далее в дело вступают компьютерные художники, непосредственно занимающиеся созданием персонажей (точнее говоря, текстурами, как для двухмерных спрайтов, так и для полигонов, из которых состоят 3D-объекты) и прорисовку задних планов (так называемого окружения), и художники-аниматоры (о них речь пойдет в следующей главе). В некоторых компаниях на помощь к ним приходят еще и специалисты, отвечающие за встраивание графики в движок игры.


1.3.Пространства


Трехмерное пространство в играх имеет координаты и соответствующие оси. Все, что мы видим или не видим: объекты стены источники света, основные элементы (спрайты, воксели, полигоны) - обладает координатами разного рода.

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




Письменная экзаменационная работа

Лист

19




Поскольку игровые объекты могут находиться в любой точке трехмерного пространства, вычислительная машина определяет, что, собственно, видно наблюдателю. Здесь определяется направление камеры и угол обзора. Для того чтобы не прорисовывать все, что находится в направлении взгляда (для повышения производительности и во избежание исчерпания ресурсов Z-буфера) задаются передняя и задняя отсекающие плоскости. Не выводится на экран то, что находится к виртуальной камере ближе передней отсекающей плоскости и дальше задней отсекающей плоскости. С этим явлением все встречались не раз. В старых коридорных войнах времен Doom это делалось при помощи тьмы. Устанавливалась граница, дальше которой все было погружено в кромешный мрак. Присутствует это и сейчас. Например, в Star Wars: Rogue Squadron наличествует туман. В дневных миссиях прекрасно видно, как, во время полета, ландшафт выступает из бежевой пелены нам навстречу.

Таким образом, на экране появляется только то, что находится в зоне, подобной пирамиде. Эта зона определяется четырьмя прямыми и двумя плоскостями. Из углов экрана в глубь сцены уходят прямые, которые по мере удаления от его поверхности расходятся в разные стороны. Так определяется, до какой отметки вправо, влево, вниз и вверх "видит" виртуальная камера. Задняя отсекающая плоскость есть строго установленное расстояние, далее которого объекты не выводятся на экран. Она определяет пределы "видимости" в глубину. Наш взгляд перпендикулярен этой плоскости.

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



Письменная экзаменационная работа

Лист

20




Компания AMD разработала технологию 3Dnow!, суть которой в том, что процессор может выполнять команды матричной математики, производя вычисления с плавающей точкой по принципу SIMD (Single Instruction Multiple Data, одна команда много данных), что существенно увеличило скорость преобразований в программах, использующих эти команды. Такие игры "взметнулись" на новый уровень производительности в расчетах с 3D. Вспомним Unreal! "Программка" бегала на AMD K6-II побыстрее, чем на "втором пне" с той же частотой. Для точности надо заметить, что не намного быстрее, поскольку операции с плавающей точкой из набора x86 у этого "камня" от Advanced Micro Devices исполнялись существенно медленнее, чем у Intel'овских "мыслящих кристаллов". Ответным шагом Intel, стало создание аналога 3Dnow! - 50 команд в составе Streaming SIMD Extentions от Intel, примененных в Pentium III, которые подняли производительность программных преобразований на более высокий уровень, поскольку Intel, в отличии от AMD, не стала торопиться и сделала куда более "мощную" технологию, "обгоняющую" 3Dnow! По всем возможностям. Жаль, что команды SSE пока еще не где не реализованы в играх, если не считать графических тестов, имитирующих реальную игру. Но, это все - программные расчеты. На них ориентировались до тех пор, пока корпорация nVIDIA не разработала графический процессор GeForce 256, выполняющий такие преобразования на аппаратном уровне. Это - наиболее эффективный способ на сегодняшний день, оставляющий позади все "софтверные" вычисления. Надо просто поиграть в Q3 на "карточке" с таким "камушком", и тогда быстро и без лишних слов "доходит" насколько хороша аппаратная трансформация.

Преобразования не происходят сами по себе. Для этого, а также для управления объектами почти всегда используются фреймы. Фрейм - это управляющие границы объекта с преобразованием, применяемым ко всем его потомкам (несколько заумно, но проще, извините, не получается). Если он представляется наглядно, то это "делается" в форме параллелепипеда. Куб, как известно, тоже является параллелепипедом, но с равными сторонами. Впрочем, многие из вас, наверное, видели изображение фрейма. Те, кто пользовался программами для рисования 3D (3D Studio Max, Ray Dream STUDIO, Light Wave и т.п.) видели наглядное представление этого "явления". Оно выполняется для упрощения работы художника с объектом и изображается всякий раз,




Письменная экзаменационная работа

Лист

21


Достарыңызбен бөлісу:
1   2   3   4   5   6




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет