• Добро пожаловать на Quest3D - Русскоязычное сообщество.
 

"Крутизна и реализьм" - тема про шейдеры

Автор KBECT0MAH, 25 декабря 2007, 04:18:22

« назад - далее »

→|๖ۣۜDen|←

 :D :D Просто обидно, что чел старался, выводил код шейдера под квест... и обламывает так в конце.. шейдер то классный..
Не тупи, Denil!ツ Quest3D v4.3.2

Den_ya

обидно,а что сделаеш(не зделать конечно можно - самому ;D),покрайней мере уже что то есть

→|๖ۣۜDen|←

Не тупи, Denil!ツ Quest3D v4.3.2

Viik

Кстати в 4.2.2 шадоумапы и так есть, чего их не юзать.

Переделывать под споты смысла не вижу, ну выложу их, заюзает 1-2 человека, будут просить переделать то и это...уже проходили эту историю.

http://forum.quest3d.com/index.php?topic=62961.0
http://forum.quest3d.com/index.php?topic=64300.0

Можно и еще нарыть если хорошо поискать.

→|๖ۣۜDen|←

Не тупи, Denil!ツ Quest3D v4.3.2

Const_47


IYV

Цитата: dfx от 13 июня 2008, 20:53:13
To Glow

Вот пример блока кода, в котором берутся данные о модели из приложения:

   half4 position      : POSITION;
   half3 tangent      : TANGENT;
   half3 binormal      : BINORMAL;
   half3 normal      : NORMAL;
   float2 texCrd      : TEXCOORD0; //Это первый текстурный канал, float2 - двумерный вектор(UV)


В вертексном блоке, обычно просто переносят эти данные во фрагментный блок без изменений:

   Out.texCrd = In.texCrd;

Но, что бы изменять масштаб координат, например в первом канале, надо в код внести такие изменения:

Out.texCrd.x = In.texCrd.x*Ваша_преременная_для_U;
Out.texCrd.y = In.texCrd.y*Ваша_преременная_для_V;
или
Out.texCrd = float2(In.texCrd.x*Ваша_преременная_для_U, In.texCrd.y*Ваша_преременная_для_V);
// Так при умножении на 1 координаты не изменятся, при *0,5 - тайловая текстура увеличится в 2 раза, при *2 - уменьшится в 2 раза и т.д.

Если же требуется просто смещать координаты по какой либо из осей, то значения надо прибавлять, наприамер In.texCrd0.x+Ваша_преременная_для_U и т.д.

Надеюсь, что понятно объяснил. :)

А можно ли подобным образом сделать поворот текстур от переменной?
Если кто знает,помогите плз.Заранее спасибо.

Sqwer

Найди в программе ShaderFX метод UV ROTATOR и подсоедини его к текстурному методу на канал UV  8)

redis

Люди добрые, скорей всего я плохо искал, но искал честно))), существует ли исходник с динамическим тенями без (stencil shadow) что бы можно было только свою текстуру тени прикрутить ну и ещё что нибудь какие нибудь параметры чтобы работало ))), просто с шейдерами у меня пока туго, времени нету, я планирую графикой в самом конце заняться когда вся игровая механика готова будет

хотя бы ткныте меня носом в исходник, один я нашёл но там тень дёргается

redis

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

Viik

Для персонажа со скинингом при рендере в шадоумапу нужен свой шейдер.

redis

А  в Квесте есть этот шейдер ? И где его взять ?

Viik

На офф форуме, в разделе Демос есть ветка про ССАО, я там выкладывал примеры ССАО с VSM тенями, в одном из примеров есть анимированный монстр.

redis

Ого здоровская демка, спасибо огромное :)

VIVID

Интересно, а можно ли сделать с помощью пиксельного шейдора живую текстуру.. ну к примеру чтобы он рисовал часы на плоскости а стрелка двигалась с течением времени..?)