2 FiEctro:
У разных текстур разные порядки, например. Там выше правильная мораль: делайте все нормалки сами специально для данной игры одним и тем же инструментом.
Особенно краны нормально. На нормалмапе для раковины единственное что должно выделяться это вот те зубчики для мыла. Остальные нормали должны быть идентичные.
На кранах другая текстура должна быть.
Что будет выделяться на нормалмапе зависит от направления нормалей на лоуполи модели при запекании. На этой раковине нормали сглаженные, поэтому нормалмапа такая. Почему-то, в твоём представлении нормалмаппинг - это только бугорки и неровности.
Половина нормалмап не туда смотрит, половина сделана из диффузок через фильтры в котошопе.
2 FiEctro:
У разных текстур разные порядки, например. Там выше правильная мораль: делайте все нормалки сами специально для данной игры одним и тем же инструментом.
Потому что порядок должен устанавливать движок, а не художник. Художник не должен вообще ничего об этом знать, именно из-за того что свалили все на плечи художников, они нафиговертили кучу нормалей с разным порядком.
Предложенный мной метод как раз и должен решить эту бяку. Ну как решить, это лучше чем каждый раз лазить в котошоп и двигать каналы вручную.
2 FiEctro: если это делать при загрузке - пропускаем DDS. Если это делать в шейдере - еще сильнее вырастает кол-во уников, а там и так уже комбинаторный взрыв.
2 FiEctro: если это делать при загрузке - пропускаем DDS. Если это делать в шейдере - еще сильнее вырастает кол-во уников, а там и так уже комбинаторный взрыв.
Так ты же на WAD если не ошибаюсь хотел перейти? Ну тогда надо трясти Элбера чтобы он вручную через котошоп правил каналы, я уже представляю как у него взорвется пукан
Самые правильные и эталонные нормали это в движке Source ИМХО. Остальное - зло.
Вооот. Художнику надо сказать: делай вот этой тулзой вот с такими настройками и не выёжуйся.
И всё становится правильным, как моя рука. (с) Агата Кристи
2 Cavador: я же показывал нормалку, она содержит в себе избыточную информацию - форму раковины. Нормалмапа нужна для того чтобы задавать виртуальные неровности, те которых нет в геометрии, в этом её смысл. Просто чтобы уменьшить поликаунт моделей. Если у тебя в такой раковине будет 25 килополиков, тебе уже не понадобится нормалмапа, ты все эти неровности сделаешь полигонами. А здесь нормалмапа зачем-то пытается повторить форму самой раковины вот и получается хрень.
Post automatically merged:
Могу заметить, что если не ставить с бампом никаких экспериментов по ремаппингу значений, увеличению контрастности, итд, эта хрень просто меньше бросается в глаза, только и всего.
2 Дядя Миша: ты не прав. Там нет избыточной информации. Нормалмапа нужна, чтобы изменить нормали модели. Не имеет значения, для добавления неровностей или, наоборот, для сглаживания.
Post automatically merged:
2 Дядя Миша: ты привык накладывать нормалмапы на плоские мировые полигоны с нормалями, перпендикулярными плоскости. Но с моделями не так же. Раковина без нормалмапы выглядит не как слева, а как справа. И нормалмапа запечена под правую раковину со сглаженными нормалями.
Изменить? Тебя не сумщает что TBN для этих нормалей в нормалмапе (например в случае с DS), строится как раз из нормалей самой модели. Т.е. нормали заданные в модели служат матрицей перехода из тангент в ворлдспейс и обратно.
Раковина без нормалмапы выглядит не как слева, а как справа
Ты точно здоров сегодня? И левая и правая раковина может быть без нормалмапы. Причём тут вообще нормалмапа?
Я тебе еще раз русским языком говорю - нормалмапа находится в локальном пространстве и нужна для иммитации микрорельефа, а не для дублирования нормалей в модели. Где ты такой ерунды вообще понахватался.
Покажи мне пейпер где и для чего используют нормали, подобные той что я привёл. Потому что для такой нормали надо использовать не тангент-спейс матрицу, а ворлд-спейс судя по всему. Т.е. это два принципиально разных подхода.
Post automatically merged:
Еще раз, чтобы дошло: там где нет микрорельефа, мы используем идентичную нормаль, которая будучи умноженная на матрицу тангентспейса (ну для форварда обратное преобразование выполняется для вектора направления на свет, но смысл тот же), уже поворачивается согласно нормалям того полигона на котором она наложена. А здесь мы имеем дело с ЗАРАНЕЕ ПОВЕРНУТОЙ нормалмапой. А теперь угадай с трёх раз куда она повернётся.
2 Дядя Миша: видимо, ты не поймешь, пока сам не попробуешь запечь нормали с хайполи на лоуполи.
Ты понимаешь, что TBN зависит от нормалей самой модели? Видишь 2 раковины на картинке? У них разный TBN. Нормалмапа запечена для правого варианта. Нормали не дублируются, наоборот, они направлены в другую сторону, чтобы компенсировать сглаженные нормали на исходной модели и получить четкую выемку на раковине.
Это вот то самое "покоцанные нормали". Мне не надо таких хитрых трюков.
Алсо, ты никогда не задумывался, почему у нормалмап в третьем дууме приставка local?
2 ncuxonaT: она неправильная в том смысле, что она в другом пространстве, не в тангент-спейсе. И кои-кто мне подсунул адскую мешанину из тех и других видов нормалмап. Вот, те, которые "синенькие", это локальные нормалмапы. А эти в ворлдспейсе скорее всего.
Что значит "я привык". Я бамп изначально делал и там и тут. И нормали мне давали и такие и эдакие. Если модельку у вальвы попятили, там понятно тангент-спейс, если сами снимали с хайполи, там ворлдспейс. Коварство этой трансформации в том, что нормаль только вращается, её не надо трансформировать, к тому же в некоторых кейсах тангентспейс вообще идентичный и освещение правильное. Вот оно и не бросалось в глаза явным образом, пока я был занят другими важными проблемами. И каждый раз видя эту фигню с освещением я себе говорил - у меня просто кривой сэмплинг, я чего-то не доделал. Но теперь, когда сэмплинг безусловно правильный это уже не конает. И я начал разбираться с этим дерьмом. И впервые в жизни посмотрел как выглядит это долбанная нормалмапа у раковины. И охренел.