Войти
ПрограммированиеФорумГрафика

Непонятки с нормал мапой во фрагментном шейдере

Страницы: 1 2 Следующая »
#0
(Правка: 11 июля 2018, 13:01) 23:46, 10 июля 2018

Используемые текстуры:

+ Диффузионная
+ Нормалей

Нормали созданы из плоской поверхности, правая система координат.
+ Видео

Почему-то в шейдере некорректно отображаются нормали. Всю голову сломал, что я делаю не так. По идее дракон должен быть выпуклым, а он при вращении сферы то вогнутый, то выпуклый.

В шейдер подаются углы поворота в направлении осей X, Y, и Z (CoronaVertexUserData.x,CoronaVertexUserData.y и CoronaVertexUserData.z), а также две текстуры диффузионная (CoronaSampler0) и нормалей (CoronaSampler1)

В вертексном шейдере расчитывается матрица поворота вокруг осей.

+ Вертексный
+ Фрагментный

Вот. А в результате фигня какая-то получается. Помогите пожалуйста разобраться.


#1
9:02, 11 июля 2018

metal?

#2
(Правка: 9:20) 9:19, 11 июля 2018

Канал Green инвертируй :) он у D3D и OGL противоположный )))

#3
(Правка: 9:30) 9:29, 11 июля 2018

Daniil Petrov
>Канал Green инвертируй :) он у D3D и OGL противоположный )))

>Нормали созданы из плоской поверхности, ПРАВАЯ система координат

#4
(Правка: 9:43) 9:40, 11 июля 2018

iKest
> Нормали созданы из плоской поверхности, ПРАВАЯ система координат
Ну так есть же изображение карты нормалей, его што ле открыть в Фотошопе и инвертировать правый канал не судьба?
Ну исправь тогда код, чтоб он обрабатывал его в другую сторону, ну!
В 3D Максе, например, при запекании карты нормалей можно сразу выбирать направление изображения в зелёном канале.

#5
9:54, 11 июля 2018

Daniil Petrov
Менял уже. У меня нормали плавают при кручении. Что-то не так я перемножаю....

#6
10:05, 11 июля 2018

iKest
> Менял уже. У меня нормали плавают при кручении. Что-то не так я перемножаю....
Ну тогда действительно что-то намудрил :)

#7
12:23, 11 июля 2018

Изолируй каждое значение и выводи его как цветовой компонент, а потом смотри что считается не так, как надо.

Разбираться в твоем коде не хочется

#8
(Правка: 12:55) 12:46, 11 июля 2018

>Разбираться в твоем коде не хочется
Вот $#ть спасибо! Как же я раньше-то жил без твоего высера?

2All: Фактически мне надо запечь геометрию единичной сферы в плоскую нормал-мапу. Для этого я нахожу кватернион поворота между нормалью к плоскости (0, 0, 1) и нормалью к поверхности сферы. Потом вращаю этим кватернионом нормаль, взятую из текстуры... И что-то идет не так..

#9
13:49, 11 июля 2018
iKest
> Вот $#ть спасибо! Как же я раньше-то жил без твоего высера?
Ты так пишешь, словно тебе тут кто-то хоть чего-то должен.
#10
14:49, 11 июля 2018

ArchiDevil

Всегда присутствует олень,
Чей смысл постов предельно ясен:
"Мне в коде разбираться лень,
но в теме пёрнуть я обязан"...

#11
15:45, 11 июля 2018

iKest
то есть нормали  у тебя в пространстве камеры а источник света в мировых?

#12
15:47, 11 июля 2018

iKest
> Всегда присутствует олень,
> Чей смысл постов предельно ясен:
> "Мне в коде разбираться лень,
> но в теме пёрнуть я обязан"...
самокритично, уважаю

#13
15:48, 11 июля 2018
kas

как дела на новых конзолях ? сколько зашипил ?

#14
16:36, 11 июля 2018

И тут посраться успевают )))

Изображение удалено
Страницы: 1 2 Следующая »
ПрограммированиеФорумГрафика