Перейти к контенту

KD87

Рекомендуемые сообщения

Научил игру использовать обычные карты нормалей изменив код в файле шейдера sload.h 

	S.normal	= Nu.xyz; //Nu.wzy + (NuE.xyz - 1.0h);	//	(Nu.wzyx - .5h) + (E-.5)
	S.gloss		= (NuE.x+NuE.y+NuE.z)/3*2; //Nu.x*Nu.x;//Nu.x*Nu.x;					//	S.gloss = Nu.x*Nu.x;
	S.height	= NuE.w;

а теперь задумался, как реализовать возможность использовать одновременно и такую схему и оригинальную, что бы не нужно было перелопачивать все оригинальные бампы, но при этом была возможность назначить текстуре и обычные карты нормалей  что бы игра их корректно отображала 

  • Полезно 1

Поделиться этим сообщением


Ссылка на сообщение

@lafugix, что бы можно было использовать обычные карты нормалей, на прямую, без конвертации через сдк 

Поделиться этим сообщением


Ссылка на сообщение

@Silver Raven, да, но сейчас есть идея и по лучше, но с реализацией пока что никак 

А пока что вот такие успехи, заметных отличий от оригинала нет, чего собственно и добивался

ss_arkan_01_22_16_21_39_28_l05_bar.jpgss_arkan_01_23_16_16_50_38_l05_bar.jpg 

Детальный рельеф так же переведен на использование карт нормалей, что позволило избавится у деталных текстур от bump#.

Изменено пользователем gridgt
  • Нравится 1

Поделиться этим сообщением


Ссылка на сообщение

Именно, но ведь этого никто не сделал, хотя ещё в 2007 об этом говорили, тот же argus, а Sky4CE сказал что это невозможно, хотя он был тогда лучший в шейдерах. 


Хотя нет, просто поменять местами не достаточно, я ещё строк 4-5 менял 

Поделиться этим сообщением


Ссылка на сообщение

Да и если бы это было реализовано ещё в те времена, то не пришлось бы писать кучу статей по теме правильной конвертации бампов, придумывания утилит для этого, коих было много и все не особо удачные, а всего то надо было пару строк изменить, и можно было бы использовать всем привычные карты нормалей.

Поделиться этим сообщением


Ссылка на сообщение
Сколько раз сталкиваюсь с этим зверем, но никто так и не объяснил толком, что это, и каким боком тут bump#

У детальных текстур в ЗП, как и у любых других текстур есть бамп и бамп#(работает точно также как и обычных бампов), так вот от туда используеться только нормал мапа, а спекуляр используется с альфа канала дифузной текстуры(та что детаил текстура)  так вот я хочу для начала просто оставить у детаил текстур только нормали, в одной текстуре, всё просто.

 

 

Есть один. Вместо получения красного канала нормалмапы в идеальном сохране, мы получаем в идеальном сохране спекуляр. В итоге, в bump# нужно сохранять больше данных => больше ошибок. Ну или сохранять все в 8:8:8:8, правда тогда и смысла особого нет.
А над этим я сам ещё думаю, каким способом лучше всего это реализовать.

Пока что есть вот такая идея реализации, bump#(RGB=specular A=height map) bump(normal map в 3dc без альфа канала) итого: все карты(спек,нормал,высот) в идеальном качестве и тот же вес что у оригинала

Изменено пользователем gridgt

Поделиться этим сообщением


Ссылка на сообщение
Цветной спекуляр, что ли? А какой от него толк? Ты все три компонента все равно на стадию освещения передать не сможешь, все каналы в G-буфере забиты. Разве что лезть в движок и добавлять еще один слой.

Цветовой спекуляр это конечно хорошая идея,но у меня была другая идея, при сохранение спекуляра во всём ргб канале он не портится от сжатия, а использоваться он будет также из одного канала как и раньше.

 

 

Дак ведь карту ошибок пускаешь под спекуляр. Как же будет тот же вес в идеальном качестве?

а карта нормалей будет сжата в dxt5_nm он сжимает нормали без потери качества, только придется в шейдере выполнять ренормализацию для восстановления оси z карты нормалей. 

но это опять же не конечный вариант, кстати, ты не знаешь как заставить движок понимать dds 3dc формат сжатия?

Ещё придумал такую штуку для оружейных паков, так как там не использую чаще всего бамп#( пример тому STCOP WP) из за того что комплект дифуз 2к + бамп и бамп# весит 13мб, сделать для оружейного шейдера свою схему работы с текстурой дифуз с спекуляром в альфа канале(дхт5)+ карта нормалей одним файлом(дхт5_нм) итого 10мб что всего на 2мб больше чем дифуз2к(dxt1)+бамп это 8мб

Но при этом сапекуляр будет в полной сохранности и карта нормалей тоже. 

Изменено пользователем gridgt

Поделиться этим сообщением


Ссылка на сообщение

@KD87, нет, я проверял, с 3dc возникают странные проблемы.


3dcss_arkan_01_25_16_18_02_18_l05_bar.jpgss_arkan_01_23_16_16_50_38_l05_bar.jpgdxt5

Поделиться этим сообщением


Ссылка на сообщение

@KristinaS95, Думаю да, я так понял что тебе дифуз детальной текстуры не нужен? Тогда сделай новую детальную текстуру в СДК со всеми правильными настройками, пропиши бамп ей, саму детальную текстуру сделай размером 1х1 пиксель и сделай серой, цвет 128.128.128 и всё, у тебя будет только детальный бамп.

Изменено пользователем gridgt
  • Нравится 1

Поделиться этим сообщением


Ссылка на сообщение

@KristinaS95, Напиши мне в лс подробнее и скинь нужные текстуры, я попробую сделать и если всё получиться расскажу как делать. 

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...