Текстурирование Скорая помощь.
#1 Гость_MaZoFaKo_*
Отправлено 21 Ноябрь 2008 - 20:29
#2
Отправлено 21 Ноябрь 2008 - 20:56
Там в нужном месте "обугливаешь" область. Теперь, справа выбираешь закладку "Каналы" и жмешь нижний. Здесь нужно сделать черной область, где должна быть дырка. Сохраняешь это дело в DXT3.
Теперь ещё нужно сделать карту нормалей с аналогичной дыркой. Можно сконвертить новую основную текстуру ковра (фильтр->NVidia Tools->NormalMapFilter), а можно сделать дырку в старом файле карты нормали. Мне проще первое. Сохранить тоже в DXT3.
Теперь открываем ковер в НифСкопе и меняем путь к текстуре. Дальше нужно выбрать ту часть модели, текстуру которой мы меняли, ткнуть ПКМ на NiTriStrips->Node->Attach Property->NiAlphaProperty
Сохраняем ниф.
Теоретически, в КС некоторые текстуры с DXT3 могут не отображаться, т.е. полностью черная текстура вместо нормальной. У меня так было пару раз. В игре при этом всё отображалось нормально. Почему это - не знаю.
#3 Гость_MaZoFaKo_*
Отправлено 21 Ноябрь 2008 - 22:54
M@D (21.11.2008, 19:56) писал:
Вот видимо тут я и засыпаюсь... Расскажи подробнее плиз, что нужно отмечать при сохранении карты нормалей после того, как нажимаем NormalMapFilter? У меня вместо обычных карт:
<--- вот таких
получается какая-то ересь:
<--- вот такая...
И ещё - альфа не делает дыру "прозрачной" почему-то. Сейчас взорвусь...
ЗЫ: ну и :drunk: естественно...
#4
Отправлено 22 Ноябрь 2008 - 01:56
А нормали делаются примерно так: берем карту высот (или текстуру, которая за таковую может сойти), применяем NormalMapFilter с такими параметрами:
http://img152.imageshack.us/img152/3870/clipboard01rr0.png
Здесь Filter type отвечает за итоговую четкость изображения, верхний - самый четкий. Height Source - источник высот (чаще всего нужен Average RGB). Ну и в Alpha Field - Set to 1, чтобы не было дыр в результате (Unchanged удобен для сборки сложной карты, например с разнородными орнаментами\гравировками и т.д. - послойно).
Сохранять, кстати, лучше в DXT5 - движок полностью его понимает, а алюфа при этом лучше, чем в DXT3. В альфа-канале будет отражаемость\глянец - для ковра можно и черным все залить. Он не железный, чай. :drunk:
#5 Гость_MaZoFaKo_*
Отправлено 22 Ноябрь 2008 - 03:50
Вот архив с моделью и PSD'шником текстуры, только без альфы.
gemorroy.7z (452,77К)
Количество загрузок:: 228
Если кто может, сделайте в этом проклятом ковре дырку и расскажите пошагово, что и как делали, с помощью какого софта и в каком порядке. Короче, как первокласснику...
В сети инфу искал, чего там только не говорят: и в tga перегнать, а потом уже в dds, и альфу в bmp делать, и цвета индексировать, и двухканальную текстуру делать и ещё кучу всякого... Заранее спасибо за помощь :drunk:
#6
Отправлено 22 Ноябрь 2008 - 14:52
Поковырялся в этом деле... Выводы:
1. Делаем-таки альфу: создаем новый канал (чтобы назывался Alpha 1).
http://img81.imageshack.us/img81/4994/clipboard01bz1.th.pnghttp://img81.imageshack.us/images/thpix.gif
2. Сохраняем все это как .dds в DXT5. Кстати, мои настройки, с которыми получаются четкие мипмапы - тип фильтра Sinc, плюс слабенький Unsharp Mask для восстановления четкости. Артефактов еще нет, четкость уже есть... :drunk:
http://img340.imageshack.us/img340/8990/clipboard01qg9.th.pnghttp://img340.imageshack.us/images/thpix.gif
3. Делаем нормали. Как - уже описывал. Только (для большей выраженности орнаментов) я здесь использовал не Average RGB, а Max (R, G, B). Заливаем альфу черным - ковер бликовать не должен!
4. Сохраняем в DXT5 и это, уже как текстура_n.dds.
Теперь модель... Добавляем центральному куску (который и есть ковер) NiAlphaProperty (см. выше как), причем стоит убедиться, что Flags=237. Добавляем тем же макаром NiStencilProperty (чтобы был ковер двусторонний), причем проверяем, чтобы Draw Mode=DRAW_BOTH.
И маленький совет... стоит в названиях избегать подчеркиваний. Никогда не знаешь, как движок себя поведет. То карту нормалей не подцепит, то еще что... А у вас тут "Shadows_war".
Вроде все.
Как это должно выглядеть в игре:
http://img444.imageshack.us/img444/4706/clipboard01aq2.th.jpghttp://img444.imageshack.us/images/thpix.gif
#7
Отправлено 22 Ноябрь 2008 - 15:05
Немного заострю внимание на паре моментов.
Во-первых, вместо создания нового канала для альфа, лично я просто сохранял текстуру в DXT3 (5), полностью белый альфа-канал при этом появляется автоматически.
Во-вотрых, ключевым местом является NiAlphaProperty. Без него прозрачной текстуры на модели не будет, даже если с текстурой всё хоккей. Как аттачить пропертю:
#8
Отправлено 22 Ноябрь 2008 - 15:15
Цитата
В таком случае можно уж сразу в DXT1 без альфы. Тогда движок выставит белую альфу по умолчанию, а объем текстуры уменьшитвя в два раза. Всегда так для текстур без прозрачности делаю.
А вообще... для карты нормалей однородных материалов и для непрозрачных объектов - сгодится. А вот скажем, делаю щит с орнаментами. Щит матовый (дерево, кожа), орнаменты полированные и блестят (серебрение). Тут такой метод даст отвратительный результат. Нужно все-таки вручную орнаменты выделять светлым (белым, сероватым - в зависимости от требуемой яркости бликов), а все остальное - черным.
Цитата
Ну, думаю тут люди за два раза уже поняли, что куда. Три раза - уже лишнее. :drunk:
#9 Гость_MaZoFaKo_*
Отправлено 22 Ноябрь 2008 - 15:51
EuGENIUS агрооооомныыый :drunk: за настройки плагина
M@D таааааакоооооой же :laugh: за скрин с пришиванием NiAlphaProperty.
И просто за помощь. :)
ЗЫ: ща все ковры в Сиродииле прохреначу на радостях.
#10
Отправлено 30 Декабрь 2008 - 08:25
#11
Отправлено 30 Декабрь 2008 - 12:10
#12
Отправлено 30 Декабрь 2008 - 14:21
#13
Отправлено 21 Февраль 2009 - 21:40
#14
Отправлено 21 Февраль 2009 - 23:51
Для текстуры - можно DXT1 без альфы (в два рза меньше объем). Для нормалей - DXT5. Альфа при этом - яркость бликов в этой точке. Кстати, это ко всем текстурам относится. не только кожа, и об этом я писал в других ветках не раз, не два и не три. Только для кожи еще название материала Skin в модели прописывается, чтобы движок нужный шейдер подцеплял.
#15
Отправлено 19 Июнь 2009 - 14:12
В Ниф-файле мы указываем путь к текстуре таким образом
textures\Mymod\и так далее...
Прочитал на cs.elderscrolls.com, что перед textures нельзя ставить - \ иначе текстура не будет найдена, но я раньше ставил и все было нормально... Так вот, действительно ли нельзя так делать?
#16
Отправлено 20 Июнь 2009 - 18:48
Вообще, главное - писать относительные пути от textures, а не абсолютные от диска (типа c:\Games\Oblivion\Data...). Ну и слэши обратные не ставить.
Хотя с Морром, вроде, была подобная закавыка. И еще со старыми версиями Нифскопа были проблемы, т.к. он сочетания \n и \r воспринимал как служебные (перевод строки) и портил путь.
#17
Отправлено 20 Июнь 2009 - 19:05
Но лучше уже буду делать вначале без слеша, мало ли что)
#18
Отправлено 13 Август 2009 - 18:42
http://i031.radikal.ru/0908/1a/c2bf255da5f5t.jpg
Вопрос не сложно угадать - как можно это исправить?
#19
Отправлено 14 Август 2009 - 00:09
#20
Отправлено 19 Январь 2010 - 00:26
Я помещаю модель с новой текстурой в любой интерьер, но текстура отображается совсем не так, каковой она является (словно она затуманена), причем если модель с этой же текстурой поместить в экстерьер, то все в порядке. Как можно решить эту проблему?