Моделювання

Normal Map

Normal Map — це RGB-текстура, яка імітує деталізацію поверхні, змінюючи те, як світло потрапляє на модель: додає опуклості, вм’ятини та заглиблення без додавання полігонів.

Що таке Normal Map?

Нормал-мапа — це текстура, яка зберігає напрям поверхні для кожного пікселя (вектор нормалі) у її каналах RGB. Коли шейдер її зчитує, карта змінює те, як світло відбивається від поверхні. Це створює ілюзію високочастотних деталей, як-от подряпини, пори та лінії панелей, на інакше плоскій геометрії.

Як це працює

Нормал-мапи — робоча конячка пайплайна bake-down. Ви ліпите або моделюєте high-poly ассет, а потім запікаєте його деталі в нормал-мапу, яку застосовуєте до легкого low-poly меша. Фіолетово-синій вигляд з’являється через кодування напрямів X, Y і Z у червоний, зелений та синій канали. Нормал-мапи в tangent space (найпоширеніший тип) дають змогу текстурі деформуватися разом із моделлю — тому вони необхідні для анімованих персонажів.

Варіанти використання

  • Запікання виліплених деталей із high-poly-моделі на low-poly меш, готовий до гри

  • Додавання тканого переплетення, кладки цегли або подряпин без додаткової геометрії

  • Тримайте кількість полігонів низькою для 3D у реальному часі та на мобільних пристроях

Востаннє оновлено 5 вересня 2026 р.

Пов’язані інструменти

Онлайн 3D-переглядач

Переглядайте та перевіряйте будь-які 3D-файли прямо у вашому браузері.

Конвертер 3D-файлів

Перетворюйте між FBX, OBJ, GLB, STL та іншими.

Компресор файлів 3D

Зменшуйте розмір 3D-файлу без втрати видимої якості.

Генератор 3D-тексту

Перетворюйте текстові описи на 3D-текст і фігури.

Часті запитання

Нормальмапа — це RGB-текстура, яка зберігає напрям поверхні для кожного пікселя, або нормаль, моделі. Коли шейдер її зчитує, він змінює те, як відбивається світло, щоб створити ілюзію дрібних деталей на плоскій геометрії — зокрема подряпин, пір і ліній панелей. Вона додає видиму деталізацію без додавання полігонів.

Кожен піксель кодує напрями X, Y, Z у своїх червоному, зеленому та синьому каналах, підказуючи шейдеру, у який бік повернута ця ділянка поверхні. Розрахунок освітлення використовує ці напрями замість реальної пласкої геометрії, тому світло переконливо «вловлює» неіснуючі виступи та заглиблення.

Bump-мапа є чорно-білою (градації сірого) і зберігає лише висоту, зміщуючи сприйняту поверхню вгору або вниз. Нормальмапа є RGB і зберігає повний напрям поверхні в 3D, тож вона набагато точніше реагує на світло з будь-якого кута. У сучасних PBR-пайплайнах нормальмапи значною мірою замінили bump-мапи.

Нормаль-мапа змінює лише те, як світло падає на пласку поверхню, тож силует залишається незмінним. Карта зміщення фізично зсуває геометрію, змінюючи силует і відкидаючи справжні тіні. Нормаль-мапи дешевші; зміщення застосовують, коли контур має бути правильним.

Переважаючий синій колір походить від осі Z — напряму «вгору» поверхні — і зберігається в синьому каналі. Пласкі ділянки спрямовані прямо назовні, тому їх видно як світло-блакитно-пурпурові. Відхилення в бік червоного та зеленого вказують, що поверхня нахиляється вздовж осей X і Y.

Ви створюєте скульпт high-poly, відповідну low-poly сітку з чистими UV, а потім «спікаєте» (bake) деталі поверхні high-poly в нормаль-мапу, використовуючи інструменти на кшталт Blender, Marmoset Toolbag або Substance Painter. Далі low-poly сітка відображає скульптовані деталі за частку вартості полігонів.

Нормаль-мапи в tangent space залежать від поверхні, тож деформуються разом із моделлю та ідеально підходять для анімованих або повторно використовуваних мешів. Нормаль-мапи в object space прив’язані до орієнтації моделі: вони точніші для статичних об’єктів, але не витримують деформації. Tangent space — типове значення за замовчуванням.

Ні. Normal map лише змінює те, як світло взаємодіє з поверхнею, тож силует сітки залишається плоским. Для реальної геометричної деталізації, яка змінює контур, потрібна displacement map або додаткові полігони.

Так. Meshy виводить normal maps як частину свого PBR texture set, тож 3D-моделі, згенеровані ШІ, надходять із чіткими деталями поверхні, які вже «пропечені» (baked). Їх можна одразу імпортувати в вашу engine без ручного проходу baking.