Сегодня 19 февраля 2025
18+
MWC 2018 2018 Computex IFA 2018
реклама
Видеокарты

Пиксельное затенение и вершинные эффекты на GeForce3

⇣ Содержание

4. Преимущества вершинного программирования

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

 Пример вершинного шейдера
"Мембрана" - этот пример вершинного шейдера
изменяет цвет объекта при удалении точек поверхности
от наблюдателя

Обтягивание текстурами с использованием палитры (paletted skinning)

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

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

 Использование вершинных шейдеров в стиле мультфильма

Сейчас возможно использование вершинных шейдеров в стиле мультфильма (cartoon style)

Наложение карт окружающей среды и трансформация

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

Процедурные геометрические деформации (procedural geometry deformations)

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

Геометрический морфинг (Geometry Morphing)

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

Непостоянная трансформация (irregular transform)

Один из некоторых менее значительных эффектов – это эффект линзы или "рыбьего глаза". nVidia также реализовала несколько эффектов, впервые анонсированных в Voodoo5, например, размазывание движущихся объектов (Motion Blur). Также разработчики игр могут произвольно применять различные варианты освещенности. До сих пор, такие эффекты были невозможны без значительных вычислительных затрат. Характерным примером является двустороннее освещение. Раньше, если вы имели плоскую поверхность и желали осветить ее с двух сторон различным образом, вам бы пришлось удвоить количество треугольников, снижая скорость. Но сейчас вершинные шейдеры позволяют управлять освещением с обеих сторон без задействования двойной модели.

 Плохой пример, но преимущества размазывания движущихся объектов увидеть можно

Плохой пример, но преимущества размазывания движущихся объектов увидеть можно

Ускорение поверхностей высокого порядка (high-order surfaces)

 Попиксельное наложение карт среды
Попиксельное наложение карт среды

Поверхности высокого порядка можно представить как поверхности, основанные на кривых линиях. Примером линейной формулы может быть y=m*x+b или прямая линия. Множество прямых линий можно использовать для создания иллюзии кривой линии, но необходимо просто огромное число прямых поверхностей для создания одной кривой поверхности. nVidia улучшила ускорение поверхностей высокого порядка в GeForce3. Примером формулы высокого порядка может быть y=mx^2+b, где x возводится в степень. Конечно, показатель степени не обязательно всегда равняется двум, но для реальных поверхностей такой степени вполне достаточно.

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

И к чему же мы пришли?

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

Заключение

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

Главная цель этой статьи – объяснить преимущества пиксельного и вершинного затенения (pixel shading/vertex shading). Эти две технологии являются основой движка nVidia nfiniteFX. Так как обе технологии опираются на возможность программирования, движок может реализовывать практически бесконечное число вариантов. Разработчики игр могут меньше концентрировать свое внимание на особенностях программных движков и реализовывать более подробную физическую модель мира.

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

Глоссарий

mipmapping (мипмаппинг) - множественное отображение (последовательность текстур одного и того же изображения с уменьшающимся разрешением по мере удаления отображаемого объекта от наблюдателя)

Environment Mapped Bump Mapping (EMBM) — поддержка аппаратного ускорения рельефного текстурирования с использованием карт окружающей среды

Pixel Shading – пиксельное затенение, способ применения специальных эффектов к отдельному пикселю.

Pixel Shader – пиксельный шейдер, способ программирования попиксельного затенения.

Vertex Shader – вершинный шейдер, способ программирования вершинных эффектов.



 
← Предыдущая страница
⇣ Содержание
Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.

window-new
Soft
Hard
Тренды 🔥
Nintendo прекратит выдавать золотые очки за покупку игр незадолго до новой презентации Switch 2 3 ч.
Epic Games засудила киберспортсмена-читера по Fortnite, отняла его призовые, навечно забанила и заставила перед всеми извиниться 4 ч.
«Корпоративный Telegram» с ГОСТ-шифрованием: «Иридиум» представил защищённый мессенджер DMTChat 5 ч.
Разработчики Company of Heroes и Warhammer 40,000: Dawn of War анонсировали пошаговую стратегию Earth vs Mars про вторжение марсиан на Землю 5 ч.
До конца февраля в Game Pass добавят всего три игры, но среди них есть Warhammer 40,000: Rogue Trader и Watch Dogs: Legion 6 ч.
Инсайдер раскрыл количество предзаказов Assassin’s Creed Shadows и дату выхода первых обзоров игры 7 ч.
WhatsApp стал слишком популярен в Европе и теперь попадёт под более жёсткое регулирование 8 ч.
Пошаговое ролевое приключение Dead Weight отправит игроков в стимпанковый мир летучих кораблей и Древних Богов 8 ч.
«Лаборатория Касперского» усовершенствовала защиту для виртуальных и облачных сред 8 ч.
Microsoft отменила автоматический вход в учётные записи, о котором сообщалось ранее 9 ч.
Новая статья: Обзор realme C75: неубиваемый смартфон, недорого 2 ч.
В связи с ростом цен расходы госкомпаний на закупки коммуникационного оборудования выросли в 2024 году на 15 % 3 ч.
Acer анонсировала скорое повышение цен на ноутбуки, но только в одной стране 6 ч.
Учёные не нашли препятствий для течения времени вспять, но путешествовать в прошлое это не поможет 6 ч.
Представлены SSD для потребительских компьютеров Micron 4600 — до 4 Тбайт и 14 500 Мбайт/с 6 ч.
Благодаря ИИ мировое производство полупроводников показало уверенный рост в четвёртом квартале 2024 года 6 ч.
DJI представила стабилизаторы Osmo Mobile 7 для смартфонов для плавной кинематографической съёмки 7 ч.
Ведущие производители DRAM полностью прекратят выпуск DDR3 и DDR4 к концу 2025 года, но это не точно 7 ч.
Представлены умные часы OnePlus Watch 3 с автономностью на пять дней и ценой $329 7 ч.
Nothing показала превосходство грядущих Phone (3a) и (3a) Pro над iPhone 16 Pro Max по части возможностей камеры 8 ч.