Нужна выпуклая или впуклая поверхность с помощью карты нормалей?
В Blender инвертировать карту нормалей очень просто. К обычной связке текстур достаточно добавить три новых нода (Invert, Combine RGB, Separate RGB):
Видео об этом:
299
просмотров
1) invert избыточна, достаточно сделать 1-G
2) а что за нормальки с перевёрнутым красным каналом? Обычно directX и у них только зелёный перевёрнут
В мыслях был ещё и красный канал... По факту да, инвертировать нужно только зелёный. Статья подправлена. За уточнения спасибо!
Так… похоже, у нас путаница. И ты не понимаешь, как работать с векторами.
1. Конверсия directX ←→ openGL делается через переворот только зелёного канала.
2. А вот инверсия выпуклого на вогнутое чисто по карте нормалей делается как RGB→XYZ, а потом XYZ*(-1 -1 1) и обратно → RGB
Инверсия — это не то же самое, что разворот вектора. Инверсия 0,8 это 0,2. Разворот вектора 0,8 это -0,8
3. Инверсия нормалей уже в векторах (например после бампа) делается поворотом векторов на 180° вокруг нормалей поверхности.
1. Я просто вчера встретил ноду инверсии и с красным тоже, но хз, где такие применяются
2. Так-то блендер позволяет печь нормали с любой ориентацией осей
Есть ещё два варианта, но я вот честно не знаю, что ресурсозатратнее, делать линейную интерполяцию, или делать сначала separate потом combine
Сейчас будет немного тупой вопрос: а если инвертировать цвета карты нормалей, то она не инвертируется?
Нет, конечно)
Хмм, тогда надо будет попробовать и посмотреть что ломается
Информация о поверхности хранится именно в этих цветах
Это я знаю. Каждый канал - одна из осей. Просто хочу попробовать на практике это
я сразу же об этом подумал. в Максе инвертнул и готово
Чтобы поменять выпуклое на вогнутое, нужно повернуть вектор из карты нормали на 180° вокруг нормали поверхности
Вот это костыль. "Очень просто" это power\scale поставить на -1, вместо 1.
Ты сейчас вычитание и возведение в степень с умножением перепутал…
Я сейчас рассказал как я это делаю не в блендере.
Математика одна, независимо от софта.
Или power/scale имеется в виду ползунок силы нормальки? Это другое.
В Блендере отрицательный скейл не прокатывает
Да, ползунок. Просто называется так сила нормали в софте, где я работаю.
Тогда стоит уточнять софт. Ползунки по-разному могут работать.
А вот это не подойдет?
https://victorkarp.com/inverting-a-normal-map-in-blender/
работает, но несколько избыточно
ну тут вроде как 1 нод всего надо вставить, поидее быстрее)
Затратность определяется не количеством нодов, а количеством и сложностью операций итоговых. Суммирование и вычитание проще умножения. Разделение и слияние вектора хз… Наверное простое
Ну тогда проще в фотошопе заранее инвертировать если так боритесь за затратность)
Да. Но фотошоп не умеет в отрицательные цвета, насколько я знаю. Так что dx→ogl сделать можно, а вот вогнутое на выпуклое сменить нет.
ебать простота то какая, вместо нормальной подготовки текстуры к проекту и открытия фш, инверта зеленого канала и закрытия его
Хватает инвертирования зеленого канала в RGB Curves.)
Вогнутая! Впуклая, блин!