HLFX.Ru Forum Страницы (260): « Первая ... « 175 176 177 178 [179] 180 181 182 183 » ... Последняя »
Показать все 3892 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Нубские вопросы от <censored> и других нубов (https://hlfx.ru/forum/showthread.php?threadid=4535)


Отправлено ncuxonaT 08-01-2021 в 13:48:

Crystallize а серый свет откуда светит?
Красно-оранжевое пятно 1 - это из-за пересвета, одна или две компоненты больше 255, тонмаппинг бы это убрал.
Странный переход цвета в зоне 2 - вот тут я без понятия.


Отправлено Дядя Миша 08-01-2021 в 14:49:

Цитата:
Crystallize писал:
И вот здесь ещё, что имелось в виду? Смысл сравнения с нулём?

где ты там увидел сравнение с нулём?

Цитата:
Crystallize писал:
ну она же там с четвертым компонентом отвечающим за возведение в степень.

RGBE это: https://translate.yandex.ru/transla...BE_image_format
четвертый байт - экспонента.

Добавлено 08-01-2021 в 17:49:

Цитата:
ncuxonaT писал:
Странный переход цвета в зоне 2 - вот тут я без понятия.

да гамма это

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 08-01-2021 в 14:51:

Цитата:
Дядя Миша писал:
да гамма это

шта


Отправлено Crystallize 08-01-2021 в 16:14:

Цитата:
ncuxonaT писал:
Crystallize а серый свет откуда светит?

ок там был ещё один лайт, вот без него:

Добавлено 08-01-2021 в 23:13:

Цитата:
ncuxonaT писал:
Красно-оранжевое пятно 1 - это из-за пересвета, одна или две компоненты больше 255, тонмаппинг бы это убрал.

Интересно, как же именно накручивание яркости параллельно задирает насыщенность. Ну то есть правда интересно.
Добавлено 08-01-2021 в 23:14:

Цитата:
Дядя Миша писал:
где ты там увидел сравнение с нулём?

#define Q_rint(x) ((x) < 0 ? итд


Отправлено Дядя Миша 08-01-2021 в 17:43:

Цитата:
Crystallize писал:
#define Q_rint(x) ((x) < 0 ? итд

я повторяю вопрос - где здесь сравнение с нулём?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 08-01-2021 в 20:25:

Цитата:
Crystallize писал:
Интересно, как же именно накручивание яркости параллельно задирает насыщенность. Ну то есть правда интересно.

Но насыщенность не растет. Яркость увеличивается, первым в 255 упирается красный цвет, дальше растут зеленый и синий, из-за этого оттенок сдвигается в желтый. Красный круг вокруг желтого пятна - это оптический обман. Можешь взять пипеткой цвет с круга и замазать им желтое пятно, и внезапно окажется, что снаружи желтого пятна был равномерный градиент одного оттенка. Ну точнее так бы было, если бы не странные сдвиги цветов дальше.
Вот референс из блендера для лампочки твоего цвета. Слева - если переводить цвет в линейное пространство, справа - если оставить как есть.


Отправлено Дядя Миша 08-01-2021 в 21:19:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 08-01-2021 в 22:05:

Дядя Миша ну так не нужны ни нормализация, ни клампинг. Ты объясни, почему цвет плавает там, где нет пересветов. И почему он не соответствует ни одному, ни другому референсу.

Цитата:
Crystallize писал:
И вот здесь ещё, что имелось в виду? Смысл сравнения с нулём?
C++ Source Code:
#define Q_rint(x)		((x) < 0 ? ((int)((x) - 0.5)) : ((int)((x) + 0.5)))

Это округление до ближайшего целого. Каст из флоата в инт просто отбрасывает дробную часть, поэтому, чтобы получить ближайшее целое, нужно сначала прибавить 0,5. А если число отрицательное, то вычесть.


Отправлено Дядя Миша 09-01-2021 в 07:41:

Цитата:
ncuxonaT писал:
Ты объясни, почему цвет плавает там, где нет пересветов

я ж говорю, гамма даёт этот эффект поидее.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 09-01-2021 в 13:35:

Цитата:
Дядя Миша писал:
я ж говорю, гамма даёт этот эффект поидее.

А не должна. И на референсе гамма правильная, а цвет не скачет.


Отправлено Дядя Миша 09-01-2021 в 15:40:

Вообще надо будет в своём лайтмаппере посмотреть, у меня вроде нет этих пятен.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 10-01-2021 в 10:42:

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

C++ Source Code:
1
VectorScale( lb, 1/255.0f, lb );
2
 
3
float Lmnce, tonedowntimes;
4
Lmnce = Luminance( lb );
5
tonedowntimes = ( 1.0f + Lmnce ) / ( 1.0f + ( Lmnce / wpointpow2 ) );
6
VectorScale( lb, 1/tonedowntimes, lb );
7
if( lb[0]>=1 || lb[1]>=1 || lb[2]>=1 )
8
  VectorScale( lb, 1/VectorMax( lb ), lb );
9
 
10
VectorScale( lb, 255.0f, lb );

Тут возникает пара вопросов: значение белой точки считать через люминанс или просто брать максимум от rgb? Если я нашёл отношение люминанса до и после тонмаппинга, можно ли просто отскейлить rgb цвет на него? В статье об этом не уточняют.


Отправлено ncuxonaT 10-01-2021 в 12:25:

Crystallize рейнхард мерзкий, попробуй экспоненциальный
color.rgb = vec3(1.0) - exp(- color.rgb);
И это, тонмаппинг должен идти до гамма-коррекции.


Отправлено Дядя Миша 10-01-2021 в 13:02:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 10-01-2021 в 13:43:

а дот и затухание по дистанции тоже в 24 битах считать?


Временная зона GMT. Текущее время 15:23. Страницы (260): « Первая ... « 175 176 177 178 [179] 180 181 182 183 » ... Последняя »
Показать все 3892 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024