Advertisement
  1. Game Development

Словарь игростроения: Что такое "бампмаппинг"?

Scroll to top
Read Time: 3 min

() translation by (you can also view the original English article)

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


Что такое бампмаппинг?

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

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

Вот пример двух методов:

Bump mapping And Displacement ComparisonBump mapping And Displacement ComparisonBump mapping And Displacement Comparison
Сфера слева использует карту шероховатости; а правая использует карту смещения.

Что такое Карта шероховатостей?

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

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

Ниже приведены два примера  карт шероховатостей:

Noise Bump MapNoise Bump MapNoise Bump Map
Карта шероховатостей шума
Photoshop Bump MapPhotoshop Bump MapPhotoshop Bump Map
Карта шероховатостей Photoshop

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


Технически

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

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

Эта картина поможет объяснить процесс расчета:

Lighting CalculationLighting CalculationLighting Calculation
Расчет направления света

Первое изображение показывает две вертикали( углы), каждый с нормалью ( красные линии). Черные линии отражают отверстия объекта.  Когда луч света ударяется об отверстие, он отражается под определенным углом и рассчитывается с нормалью.

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

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

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Game Development tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.