Хотел создать текстуры, но они при повороте камеры почему-то блестят.
http://img406.imageshack.us/my.php?image=texture1yw3.jpg
http://img168.imageshack.us/my.php?image=textureen9.jpg
Добавление и удаление альфа канал в фотошопе не помогло. Может что не так делаю?
Забыл, что речь идёт о террейне.
Да, там нормали и не нужны.
Значит, альфа все-таки определяет спекуляр.
Кстати, игр с хейтмапной моделью террейна я вообще считанные единицы помню, где поддерживалась бы прозрачность текстур террейна.
Спасибо за разъяснения. Фотошоп, вообще-то, запустил в первый раз.
Решить до конца проблему не удается. Пока.
Вот пример текстуры в tga.
http://img299.imageshack.us/my.php?image=adobebp2.jpg
Отмечаю альфа канал и пересохраняю.
http://img182.imageshack.us/my.php?image=alpharv4.jpg
В опциях сохранения альфа-канал отмечен галочкой. Эффект, за исключением, одной текстуры нулевой, даже у той где показан монохромный альфа-канал. Вот пока одна нормально работающая текстура (с повышением уровня земли на 2 метра).
http://img222.imageshack.us/my.php?image=alpha1zf1.jpg
Зато нашел интересную вещь - если залить всю локацию одной из новых текстур, то блики пропадают. Зато тестуры Обсидиана начинают блестеть.
Гриффон. Альфа-канал текстуры не должен быть белым. Проще всего в него скопировать саму текстуру и затемнить у получившегося результата белые участки.
Белый альфа-канал = его отсутствие
Ну.. во-первых и главных теория: - как бы ни пинали НВН2 движок хоть и далеко не придел совершенства, но всё таки новый и построен но "новым" теперь уже шейдерным правилам. Отсюда и требование к разширению текструкной связки RGBA (то-есть три цвета + альфа для прозрачности). А тут у нас ещё и нормали и спекуляр, отсюда и вывод - "НЕ ТАМ ИЩЕТЕ !" , - карта нормалей записывается в три канала (цвета) значит в выделеной для неё TGA/DDS -ске есть еще один приютившийся канал - т.е и он есть спекуляр, скорее всего если он отсутствует (т.е отсутсвует чёрный альфа в файле или вообще сам файл с нормалями), то двигун заливает его белым - т.е делает максимум спекуляра, отсюда и блеск.
Вывод - к текстурке земли обязательно нужно прикладывать файл с нормалями и спекуляром в альфе, короче говоря - рассуждали правильно (helvene).
Все. Разобрался, даже мануал читать не пришлось. Я так и думал, что брожу где-то рядом. Вот примеры нескольких получившихся текстур. Остальные проверю после.
http://img183.imageshack.us/my.php?image=successdt5.jpg
http://img170.imageshack.us/my.php?image=succhx5.jpg
http://img174.imageshack.us/my.php?image=succ1ax4.jpg
Текстуры ландшафта у Обсидиана состоят из трех dds файлов:
http://img297.imageshack.us/my.php?image=obswz7.jpg
http://img180.imageshack.us/my.php?image=obs1rp6.jpg
http://img297.imageshack.us/my.php?image=obs2vj1.jpg
Я же стал создавать свои текстуры по подобию тех, что видел на волте и они были сделаны одним tga файлом с "белым" альфа каналом.
http://img222.imageshack.us/my.php?image=texture2ov3.jpg
Это и ввело меня в заблуждение. Надо было сразу посмотреть как разработчики делали свои текстуры.
За помощь спасибо. Теперь буду разбираться с цветами и домиками.
Ясно... в таком случае каждый материал состоит из трех файлов:
1. текстура с нанесенным поверх нее "рельефом"
2. текстура без "рельефа" (только цветовая часть)
3. карта нормалей к текстуре (спекуляр + бамп)
Три разных файла, как я понимаю, потому что если используются высокие настройки графики, рельеф текстуры террейна создается шейдером с использованием второй и третьей текстуры (на вторую "наносятся искажения", описанные в третьей).
При низких настройках графики используется первая, на которую "рельеф" нанесен заранее.
Остается открытым вопрос как ТМЕ создали свои текстуры с "белым" альфа каналом. У них всего два файла на текстуру - tga (собственно сама текстура) и bmp (картинка для отображения текстуры в редакторе).
Некоторые поправки ко всему вышесказанному (сегодня наконец раздобыл нормальный(целый) НВН2 )
Короче говоря покапался маленько в текстурах и моделях, могу сказать следующее:
- Во-первых, мы работаем теперь с шейдерами, а значит какой канал текстуры, где используется определяется самим шейдером, так что нечего удивсяться что земля текстурится совсем по-другому нежели перс или плейсибл. Более того многое по использованию текстур теперь определяет файл самой модели.
- для справки,- шейдера у НВН разные, как по версиям, так и по назначению, более того сам шейдер содержит ветки по обработке - к примеру как оказалось игра и тулсет использует разные ветки одного и того же шейдера - проще говоря тулсет имеет другой механизм шейдинга, несколько отличный от игрового - что в общем-то заметно и неудивительно. Так же есть ветки шейдинга и по разным опциям графики.
- Само собой для многих вещей требуется более чем одна четрехканальная текстура
В случае со стандартными текстурами это два файла формата DDS (не будем вспоминать пережиток прошлого TGA, нынешний DDS гораздо лучше НВН-шного, просто потому что обычный )
Вид у них примерно такой:
ХХХ.dds ,где R: канал красного G: канал зелёного B: канал голубого и A: канал прозрачности (условно прозрачности)
XXX_n.dds , где R: X G: Y и B: Z вектора нормали, а А: это не совсем спекуляр, скорее что-то среднее между ним и самосвечением (Self-ilumination) - эдакий Spec-Glow Map.
Замечу что "_n" - далеко не обязательно значит карту нормалей, т.к в *.mdb-шнике название текстуры можно указать как угодно. Но в случае со вшитой в движок землёй - это карта нормалей.
Что до третьего XXX_c.dds - то он отображет землю с выключенной опцией графики по отображению нормалей земли, более того кодирован в подвид DXT1 формата dds, в то время как все остальные в DXT5 - короче говоря сделанно для скорости и совместимости. Ну и ещё раз напомню, что обработка теперь контролируется шейдером, а значит канал прозрачности земли в случае с DXT1 может использовать скажем для отображения спекуляра или вообще о нём забыть, ибо нет теперь чётких правил "для всех",- движок сам выбирает что и как ему cделать, в том или ином случае, просто случаев теперь довольно много и легко запутаться.
PS
Мля.. опять нет времени, опять завалили работой, опять пристаёт моя девчёнка, а так хочется покопаться в НВН2 ... жуть... так что звиняйте, если вовремя не успею чего умного подсказать.
Что до ТМЕ - хм... надо стянуть посмотреть, а то так одни догадки.
А куда, собственно, засовывать эти текстуры?
Если я правильно поянл фотошоп в формате "ддс" сохранять не может. Какую прогу тогда юзать?
У NVIDIA есть плагин, который можно скачать бесплатно.
Э... извини, не мог бы дать ссылку? Заранее благодарен!
почти на каждом сайте есть поиск http://www.nvidia.com/page/search.html?keywords=dds
Кто-нибудь может мне помочь?
У меня текстуры не отображаются в редакторе, может я их не туда запихнул? Вроде все правильно: в Terrain – > Overaid, в формате dds, на всякий случай даже сделал иконку в папке D:\…\NWN2Toolset\Terrain.
Может у меня все неправильно? Помогите, пожалуйста!!
Заранее благодарен!
Если ты все сделал так, как описал Грифон, и у тебя не работает, то ты не перегрузил тулсет.
Ну... Грифон толком ничего и не объяснял... А тексур-то все равно не видно!
А перегрузил - это значит - вошел заново? Не помогло.
Т.е. все три файла запихнуть в Оверайд? И кстати, не нужно в оверайде создавать отдельную папку "Textures".
Кхе... кхе... Люди, ну помогите, плиз!!!
Ice Blade, вы почти правы… но… как я уже сказал – почти.
Что бы таки точно выяснить что куда и как я провел небольшой тест.
Итак, тестовая площадка:
http://img136.imageshack.us/my.php?image=testlokoz0.jpg
Как вы (почти) видите, это 3 стандартных одинаковых текстуры. Каждая из них вписана 2да файл под именами tex1, tex2, tex3 соответственно. Кроме того, каждая текстура была лишена того или иного файла
Текстура №1 – наличествует tex1.dds, tex1_c.dds, tex1_n.dds;
Текстура №2 - наличествует tex2.dds, tex2_c.dds; отсутствует tex2_n.dds;
Текстура №3 - отсутствует tex3.dds; наличествует tex3_c.dds, tex3_n.dds;
Поскольку в тулсете кнопочка Normal Mapped Terrain почему-то до сих пор не работает, пришлось лезть в игру.
Normal Mapped Terrain отключен.
http://img136.imageshack.us/my.php?image=testnormaloffrv5.jpg
Как видите, крайняя правая текстура отсутствует, т.к. у нее нет основного файла tex3.dds
Normal Mapped Terrain включен.
http://img136.imageshack.us/my.php?image=testnormalonwf8.jpg
Для тех кто не понял – у текстуры по середине нет карты нормалей, потому она нам об этом сообщает черными квадратами. У крайней правой нет основного файла tex3.dds, но есть tex3_c.dds. Я думаю, что все уже поняли зачем нужен файл tex3_c.dds. Вот только одного не могу понять – если посмотреть стандартные текстуры, то не сложно заметить что файлы без приставок куда более детализированы в отличии от таких же файлов с приставкой _c. Зачем нужно было это делать? Очередной кирпич в огород Обсидианов. Хотя возможно это я чего-то недопонимаю...
Потом меня заинтересовала еще одна штука – альфа канал в карте нормалей (_n). Та же тестовая "площадка".
Текстура №1 – альфа канал полностью белый.
Текстура №2 – не обращайте внимания…
Текстура №3 – альфа канал полностью черный.
Результат:
http://img136.imageshack.us/my.php?image=testnormawhiteht6.jpg
http://img136.imageshack.us/my.php?image=testnormablackqa8.jpg
При включенном Normal Mapped Terrain первая текстура светится, а вторая – нет. Так что здесь Ice Blade абсолютно прав =)
Кроме того, не верьте тому что текстуру нужно сохранять в формате 32 бита, иначе размер ваших текстур будет в 4 раза больше, а качество при этом будет ничуть не лучше. Какой же стандартный формат? Смотрите ниже =) Хотя вообще на самом деле вы можете сохранять текстуру в каком угодно формате dds – NWN 2 кушает все их без особых проблем.
Сводная информация по текстурам:
*.dds
Используется только когда Normal Mapped Terrain отключен.
Альфа-канал используется под спекулар. Проще говоря – он обозначает места, которые будут как бы отражать солнце
Формат dds: DXT5 (~342кб)
*_c.dds
Используется только когда Normal Mapped Terrain включен
Альфа-канал не используется в любом случае – хоть он есть, хоть его нет.
Формат dds: DXT1 (No Alpha) (~171кб)
*_n.dds
Карта нормалей. Используется только когда Normal Mapped Terrain включен
Красный канал отвечает за ось X (горизонтальный вектор)
Зеленый – за ось Y (вертикальный вектор, тобишь высота)
Синий – ось Z (глубина)
Альфа канал отвечает, как правильно сказал Ice Blade, за самосвечение. По-сути имеет вид альфа канала файла *.dds, тобишь спекуляра.
Формат dds: DXT5 (~342кб)
Размер текстур - 512х512
Делать больше или меньше бесполезно - НвН 2 все равно уменьшит или увеличит текстуру до размера 512х512. Очередной кирпич в огород Обсидианов...
Чем открыть dds?
Плагин для Photoshop’а берем на сайте Nvidia, здеся:
http://developer.nvidia.com/object/photoshop_dds_plugins.html
Как сделать карту нормалей?
Качаем то, что лежит по выше данной ссылке. Там, как вы можете заметить, 2 плагина – один открывает dds, другое позволяет делать в Фотошопе карты нормалей.
Краткая инструкция:
1. Берем нужную текстуру, открываем ее в Фотожопе Фотошопе. Я, к примеру, взял эту:
http://img136.imageshack.us/my.php?image=cliffer4.jpg
2. Лезем Filter --> NVIDIA Tools (в самом низу) ---> NormalMapFilter
3. Тут поиграйте с настройками, попытайтесь найти оптимальные для вашей текстуры. Как эталоном пользуйтесь, к примеру, картой нормалей из НВН 2. Из настроек тут самые главные это Scale и параметры Height Source+Alternative Conversations. Первая за интенсивность карты нормалей, а вторая – за способы получения карт нормалей. По последней стоит пройтись, попытаться найти наиболее оптимальный способ образования карты нормалей.
После применения фильтра:
http://img136.imageshack.us/my.php?image=cliffncg9.jpg
4. Если вам кажется что этого мало, перейдите на вкладку Channels и, выбирая и используя Adjustments ---> Brightness\Contrast, выделите или приглушите то, что вам нужно (за что отвечает каждый канал - смотрите выше). Как второй вариант – можно повысить контрастность еще до того как примените фильтр.
Кстати, взятая мной текстура – не самый лучший пример. В принципе конечный результат выглядит не плохо, но по идее она должна быть не такой четкой, куда более выпуклой. Желающие, думаю, смогут добиться этого с помощью Фотошопа. Хотя бы тем же Bas Relief…
Кроме того, карту нормалей так же можно создать и с помощью какого-нибудь 3д-редактора – 3д Макса или Майа, но это уже отдельная история…
Как сделать спекуляр для альфа-канала?
Самый простой способ, это использовать Brightness\Contrast на текстуре, но перед этим обязательно нужно обесцветить ее – так будет наглядней. Так же, естественно, можно использовать различные фильтры, но тут уже все зависит от случая. Если вы делает спекуляр с помощью Brightness\Contrast, то я бы порекомендовал полученный результат потом слегка подразмыть блуром.
Куда ложить текстуры?
{папка NwN2}\Override\Data\NWN2_Materials\Terrains\
Как добавить текстуры в тулсет?
1. Идем сюда: {папка NwN2}\Data\
2. Откройте 2DA.zip
3. Найдите файл terrainmaterials.2da и скопируйте его сюда: {папка NwN2}\Override\Data\2DA
4. Откройте свежескопированый файл, к примеру, блокнотом и в самом конце допишите ваши текстуры:
{номер строки} {имя вашей текстуры (без .dds) {количество красного} {количество зеленого} {количество синего} {тип материала} ****
Все пишется, естественно, без скобок.
Типы материалов, как я понял, задают звук шагов. Бывают такие:
Grass
Dirt
Mud
Stone
Wood
Там где цвета – эти параметры задают цвет спекуляра (видно только когда Normal Mapped Terrain отключен). Чем светлее – тем лучше его видно, естественно, чем темнее – тем хуже. То есть не подумайте что поставив цветом спекуларя черный вы закрасите отмеченные в альфа-канале места соответствующим цветом – нет. Просто текстура не будет блестеть вообще.
5. Теперь осталось добавить иконку вашей текстуры в тулсет. Для этого возьмите вашу текстуру, уменьшите ее до размеров 64х64 и сохраните в формате .bmp сюда: {папка NwN2}\NWN2Toolset\Terrain
Собственно говоря, все =) Удачи. Прошу прощения за повторения и в случае если я где-то не прав – больно не бить, я не специально =) Надеюсь это небольшой туториал поможет тем, кто еще не разобрался, но хочет разобраться. Спасибо за внимание.
Огромнейшее спасибо! Прими мое уважение! Молодец!! Может у меня теперь все получится?... ))
Еще раз спасибо!!
А что такое спикуляр? Он обязателен? А то у меня текстуры в редакторе закрыты каким-то мутно-белым слоем(может дело в спекуляре? Или в 2ДА? Для моих текстур я поставил:
A_TT_ROCKWALL_0001 236 224 198 Stone ****, это так, на заметку ).
В игре текстуры отображаются без этого слоя! Кто-нить сталкивался? А еще у меня текстуры блестят, несмотря на то, что альфа черный. Я специально сделал два варианта одной текстуры – один с белым альфа, другой с черным. Обе ничем ни отличаются (((
И еще, в 2ДА таблице как задавать значения? Где их брать. Я по крайне мере поставил наугад, вышло нормально.
"*.dds
Альфа-канал используется под спекулар. Проще говоря – он обозначает места на текстуре, которые будут как бы отражать солнце" черный - не отражает, белый - отражает полностью. Альфа-канал подписывается как Alpha 1 (пример можете увидеть в стандартных текстурах НВН 2). В Фотошопе создается на вкладке Channels (именно там). У меня почему-то такие подозрения что вся загвоздка именно в том, что вы наверное куда-то не туда впихнули альфа-канал, если честно =)
236 224 198 - я бы сказал что это через чур светлый цвет. Попробуйте примерно в радиусе 120 120 120. Берется из фотошопа - сначала открываем текстуру, потом выбираем пипетку и подбираем нужный цвет. Потом клацаете на палитре с выбраным цветом и смотрите там значения R G B (красный, зеленый, синий соответственно)
Кто-нибудь может мне сказать, для чего используются *_t.dds текстуры? Я так понял каждый спектр отвечает за освещение. Так какой за какое?
Это Tint map, для перекрашивания объектов в тулсете.
В тулсете, в свойствах объекта, пункты Tint -> Color1-3
Color1 окрашивает модель в выбранный цвет
по красному каналу этой текстуры, Color2 по зеленому, и Color3 по синему
Для наглядности:
От стандартных НВН2 текстур уже тошнит, приходится изворачиватся чтобы добится нужного результата, но все равно выходит совсем не то, что хочется. Если в Маске не введут нормальные, придется юзать только собственные. Решил научится этому делу
Oranj, карту нормалей можно создать используя Photoshop + NVIDIA Normal Map Plug-in.
Альфа канал, кстати, легче делать все в том же Photoshop. Для создания .DDS файлов я бы рекомендовал Compressenator.
Подскажите, как справиться с таким затыком:
Я пытаюсь как-то своими силами разнообразить ассортимент лиц, представленных в игре. Дял начала просто чуть-чуть перерисовала уже имеющиеся, выглядит это приблезитльно так:
http://img138.imageshack.us/my.php?image=retexths0.jpg
Я хочу, чтобы эти текстуры не просто заменяли уже имеющиеся, а добалвлялись к ним. За образец взяла контент с волта. Для одной головы получается нужен 1мдб файл, и 3 ддс. МДБ нагло копируем с уже имеющегося, обзывает другим номером, и под теми же номерами у нас чуть правленый (ренаа соответствовавший той модели) ддс. Всё это богатство бросаю в оверрайд. Никаких 2да нетути, но ведь волтовские головы без них работают.
А вот в чём затык: При создании нпс в тулсете мой номер хоть и появляется в общем списке, на персонаже выглядит как пустое место. Не могу понять, что не так. Замена работает вполне нормально.
Называется всё абсолютно одинаково (конкретно P_HHF_Head85.mdb , P_HHF_Head85.dds, P_HHF_Head85_n.dds, P_HHF_Head85_t.dds). И ведь волтовские головы нормально работают безо всяких 2да. Мне пришлось его (appereance.2da волтовский) спецаильно удалить, т.к. у меня Маска, а головы прописаны для оригинала. В общем убивает он полностью родной масковский контент.
Для возможного решения проблемы мне хотелось бы увидеть P_HHF_Head85.mdb, P_HHF_Head85.dds, P_HHF_Head85_n.dds и P_HHF_Head85_t.dds.
Друзья, я понимаю разницу между хаменой и добавлением. Он ИМЕННо добавляется. Если не верите - можете скачать архивчик по этому адресу http://nwvault.ign.com/View.php?view=NWN2HakpaksCombined.Detail&id=3
(ЭТО он который рабоает), впихнуть его в оверрад и удалить appereance.2da. У меня и у Серхио оно так и работает.
А вот они мои 85: http://ifolder.ru/4052582
Почему не появлялась модель:
НВН2 очень требователен к правилам именования объектов модели почти везде. Если они не будут выполнены - ничего не заработает.
В данном случае необходимо чтобы номер модели соответствовал номеру объекта головы.
Почему даже если бы модель появилась, мы бы не видели текстуру:
Копирование и переименование не меняет текстуру, которую использует модель. Значит... ее нужно поменять самому.
Внимание! Текстура глаз - другая.
Все это делается через макс. А вот работающий вариант:
http://ifolder.ru/4054209
appearance.2da ни при чем.
как я и предполагал.
Спасибо, Vhall Только можно вот это перевести:
Ежик, поищи на волте программу для ретекстура нвн2. Там все очень просто делает, без 3д макса)
Что то не густо тут посление пару лет с сообщениями =)
Друзья, у кого-нибудь получилось сделать прозрачный плейс? Не могу побороть альфа канал. Вроде прозрачный. Все как надо. Сохраняю в DDS(DXT5). Конечный результат - в тулсете синий цвет на месте прозрачности в Photoshop.
Попробовал расковырять занавесочки прозрачные из стандартной палитры. Но так и не вкурил как оно там сделано и чем отличается от того, что делаю я.
Возможно, синий цвет там содержится в самой модельке. Атрибут а-ля selfillumcolor.
Кстати, тулсет - не показатель, нужно в игре тестить.
Ilerien, не совсем понял ход твоих мыслей. У занавесок прозрачных имена текстур имеют префиксы _D и _i. В максе _D устанавливается в качестве основной текстуры, _i в SelfIlum. Где тут прозрачность, убей не пойму, и как она относится к Self Illumination. Но результат - занавески прозрачные и в тулсете и в игре. Попытался сделать тоже самое у себя. Сделал текстуры _D и _i - ноль реакции.
Модельки всегда редактировал блокнотом
Названия текстур точно не влияют на прозрачность, специальные префиксы - это, видимо, фича макса.
Выложи хак, попробую разобраться деревенскими методами.
Доброго времени суток. У меня вот такой вопрос. Можно ли из wow в nwn2 перенести текстуры и модели нпс. Да, я понимаю, что wow и nwn совсем разные вещи. НО я хочу сделать модуль с сюжетом warcraft 3. Если кто-то знает ссылки или уже готовые хаки, буду очень благодарен.
Думаю нет никаких сложностей выдрать меши и текстуры из варкрафта, достаточно достать распаковщик mpq-архивов, а там смотреть по ситуации. Текстуры там уже должны быть в чём-то удобоваримом типа tga или dds, для мешей нужно будет искать плагин импорта в любимый 3д-редактор. К примеру, в блендере есть какой-то импортер близзардовских моделей. Потом эти меши надо будет экспортить в нвновский mdl, такие плагины на волте есть.
Лично видел на волте модели мечей из варкрафта, вряд ли кто-то нарисовал меши и текстуры с нуля настолько точно.
Но я вижу тут одну проблему - анимация, раз разговор про нпс был. С этим всегда большой геморрой, большинство импортеров/экспортеров (для многих игр) анимацию просто не поддерживают.
Если ищешь готового решения, то его нет. Никто не рискнул конвертнуть гигов 20 закопирайченного контента "просто так"
Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)