Словарь игростроения: Что такое "бампмаппинг"?
() translation by (you can also view the original English article)
В этой статье я объясню концепцию бамп маппинга, с практическими и техническими пояснениями. Я также буду сравнивать эту технику с картами смещения и обычными картами.
Что такое бампмаппинг?
Бамп мэппинг — это метод, используемый в компьютерной графике для создания бугристой поверхности и другие текстур на объекте. Это на самом деле фальшивый эффект, потому что техника не изменяет фактическую модель, только способ рассчитать как свет отразится от объекта. Например вы можете иметь карту шероховатости , на которой расположен некоторый текст, и эта модель будет выглядеть так будто на ней отпечатан на ней.
Одно из крупнейших ограничений при использовании этого метода является то, что тень объекта не изменится, поскольку фактически геометрия остается прежней. Это означает, что карта выпуклости лучше всего подходит для добавления к модели больше деталей. С другой стороны, карта смещения, может использовать такую же текстуру для изменения фактической геометрии.
Вот пример двух методов:



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



Карта шероховатостей шума



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



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