







Покращення текстур за допомогою карт нормалей (Normal maps)

В останній час все частіше і частіше бачу конверти з сучасних ігор, якість конвертів буває різних рівнів – і хороші, і погані. Але незалежно від якості конверта в цілому, в більшості з них є синдром "плоских текстур", про що я, звичайно, і скаржуся в коментарях у файловому архіві. Можливо, конвертери не знають, навіщо ж потрібні ці дивні фіолетові текстури, або ж просто не можуть їх застосувати. І я в цій статті навчусь застосовувати їх при конвертації.
Теорія
Але для початку трохи теорії з Вікіпедії:
Normal mapping — техніка, що дозволяє змінювати нормаль відображуваного пікселя, спираючись на кольорову карту нормалей, в якій ці відхилення зберігаються у вигляді текстури, кольорові складові якої [r,g,b] інтерпретуються в осі вектора [x, y, z], на основі якого обчислюється нормаль, що використовується для розрахунку освітленості пікселя. Завдяки тому, що в карті нормалей задіюються 3 канали текстури, цей метод дає більшу точність, ніж Bump mapping, в якому використовується лише один канал, і нормалі, по суті, всього лише інтерпретуються залежно від «висоти».
Карти нормалей зазвичай бувають двох типів:
object-space — використовується для не деформованих об'єктів, таких як стіни, двері, зброя тощо.
tangent-space — застосовується для можливості деформувати об'єкти, наприклад, персонажів.
Для створення карт нормалей зазвичай використовуються високополігональні та низькополігональні моделі, їх порівняння дає потрібні відхилення нормалей для останньої.
Це означає, що карта нормалей — це своєрідна розгортка високоякісної моделі, яка натягується на низькоякісну модель з низькоякісною текстурою, в результаті якої на поверхні низькоякісної моделі візуально з'являються деталі у вигляді складок/шороховатостей/структури тканин, хоча фактично цього на моделі немає.
Ну якось так, пояснив як міг, своїми словами.
Практика
Ну і власне сам метод позбавлення від площини та надання об'єму текстурі. Нам знадобляться:
• Графічний редактор Paint.net (Непогана програма, важить мало, завжди використовую сам)
Отже, почнемо.
Нам потрібна карта нормалей (normal map, нормал мап, фіолетова текстура) саме від тієї текстури, яку ми хочемо покращити. Зазвичай у файлах гри вона називається точно так само, як і звичайна, але з закінченням "_nor", "_no", "_n". В деяких іграх вона може бути практично прозорою і, одночасно, райдужно-різнокольоровою, як у Battlefield 2. Відкриваємо її в paint.net.
Також можна використовувати трохи інший алгоритм, але по суті нічого не зміниться.
1. Відкриваємо текстуру, створюємо новий шар
2. Вставляємо в новий шар карту нормалей і робимо її чорно-білою, інвертуємо кольори
3. Змінюємо режим змішування у властивостях шару і об'єднуємо шари.
4. Готово.
Рекомендовані файли

Gta_sa.exe v 1.0 us

Mod Loader

HD Universe GTA Vehicles [Update XIII]

PS2 to Mobile + Fixes

Реалістичні пішоходи - Real Peds Overhaul

Updated Classic Uncover - Vice City (Build 23)

Чит-Меню v3.2

Grand Theft Auto: Sindacco Chronicles - PSP Видання

Zombie Andreas Complete Final (Build 80)

Hot Coffee Mobile (Покращений Mobile main.scm)

GTA SA Classic v1.7 - Атмосфера ПК-версії гри в GTA SA Mobile

Vice City: Nextgen Edition Patch v1.2

Вид від першої особи - First Person Mod 3.0 (Fixed)

Пропустити будь-яку місію

Велика збірка CLEO-скриптів
Покращення текстур за допомогою карт нормалей (Normal maps)

В останній час все частіше і частіше бачу конверти з сучасних ігор, якість конвертів буває різних рівнів – і хороші, і погані. Але незалежно від якості конверта в цілому, в більшості з них є синдром "плоских текстур", про що я, звичайно, і скаржуся в коментарях у файловому архіві. Можливо, конвертери не знають, навіщо ж потрібні ці дивні фіолетові текстури, або ж просто не можуть їх застосувати. І я в цій статті навчусь застосовувати їх при конвертації.
Теорія
Але для початку трохи теорії з Вікіпедії:
Normal mapping — техніка, що дозволяє змінювати нормаль відображуваного пікселя, спираючись на кольорову карту нормалей, в якій ці відхилення зберігаються у вигляді текстури, кольорові складові якої [r,g,b] інтерпретуються в осі вектора [x, y, z], на основі якого обчислюється нормаль, що використовується для розрахунку освітленості пікселя. Завдяки тому, що в карті нормалей задіюються 3 канали текстури, цей метод дає більшу точність, ніж Bump mapping, в якому використовується лише один канал, і нормалі, по суті, всього лише інтерпретуються залежно від «висоти».
Карти нормалей зазвичай бувають двох типів:
object-space — використовується для не деформованих об'єктів, таких як стіни, двері, зброя тощо.
tangent-space — застосовується для можливості деформувати об'єкти, наприклад, персонажів.
Для створення карт нормалей зазвичай використовуються високополігональні та низькополігональні моделі, їх порівняння дає потрібні відхилення нормалей для останньої.
Це означає, що карта нормалей — це своєрідна розгортка високоякісної моделі, яка натягується на низькоякісну модель з низькоякісною текстурою, в результаті якої на поверхні низькоякісної моделі візуально з'являються деталі у вигляді складок/шороховатостей/структури тканин, хоча фактично цього на моделі немає.
Ну якось так, пояснив як міг, своїми словами.
Практика
Ну і власне сам метод позбавлення від площини та надання об'єму текстурі. Нам знадобляться:
• Графічний редактор Paint.net (Непогана програма, важить мало, завжди використовую сам)
Отже, почнемо.
Нам потрібна карта нормалей (normal map, нормал мап, фіолетова текстура) саме від тієї текстури, яку ми хочемо покращити. Зазвичай у файлах гри вона називається точно так само, як і звичайна, але з закінченням "_nor", "_no", "_n". В деяких іграх вона може бути практично прозорою і, одночасно, райдужно-різнокольоровою, як у Battlefield 2. Відкриваємо її в paint.net.
Також можна використовувати трохи інший алгоритм, але по суті нічого не зміниться.
1. Відкриваємо текстуру, створюємо новий шар
2. Вставляємо в новий шар карту нормалей і робимо її чорно-білою, інвертуємо кольори
3. Змінюємо режим змішування у властивостях шару і об'єднуємо шари.
4. Готово.
Рекомендовані файли

Gta_sa.exe v 1.0 us

Mod Loader

HD Universe GTA Vehicles [Update XIII]

PS2 to Mobile + Fixes

Реалістичні пішоходи - Real Peds Overhaul

Updated Classic Uncover - Vice City (Build 23)

Чит-Меню v3.2

Grand Theft Auto: Sindacco Chronicles - PSP Видання

Zombie Andreas Complete Final (Build 80)

Hot Coffee Mobile (Покращений Mobile main.scm)

GTA SA Classic v1.7 - Атмосфера ПК-версії гри в GTA SA Mobile

Vice City: Nextgen Edition Patch v1.2

Вид від першої особи - First Person Mod 3.0 (Fixed)

Пропустити будь-яку місію
