Скалярное значение - ргб интенсивность

Автор
Сообщение
На сайте c 02.10.2015
Сообщений: 1899
Одесса


Политика

Дата выдачи:
06.08.2024 17:58:08


Пожизненный бан

Кто-то думал как корректно перевести значение из параметров шейдера от 0 до 1 в интенсивность цвета, когда нужна текстура? 0.4 в спекуляре - какой цвет в ргб?

102 написал и понял как обычно

На сайте c 25.10.2011
Сообщений: 952
Пенза
для 8 бит на канал: 0.4*256-1=101.4 округляем до целого 101, значит, в RGB это будет серый 101 101 101
На сайте c 06.08.2013
Сообщений: 1895
Москва
Mo..., про гамму еще не забудь, если она есть.
На сайте c 02.10.2015
Сообщений: 1899
Одесса


Политика

Дата выдачи:
06.08.2024 17:58:08


Пожизненный бан
Цитата red-rimm:
для 8 бит на канал: 0.4*256-1=101.4 округляем до целого 101, значит, в RGB это будет серый 101 101 101

Про минус один также думал, потому что ноль - натуральное число в этой системе

Цитата irishman:
Mo..., про гамму еще не забудь, если она есть.

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

https://3ddd.ru/forum/thread/show/sozdanie_odnotonnykh_tekstur_po_materialu 

На сайте c 06.08.2013
Сообщений: 1895
Москва
Цитата red-rimm:
для 8 бит на канал: 0.4*256-1=101.4 округляем до целого 101, значит, в RGB это будет серый 101 101 101

странная арифметика. 0,4*255 надо, откуда -1? 0 это тоже число. 102 ровно будет.

На сайте c 02.10.2015
Сообщений: 1899
Одесса


Политика

Дата выдачи:
06.08.2024 17:58:08


Пожизненный бан
Цитата irishman:

странная арифметика. 0,4*255 надо, откуда -1? 0 это тоже число. 102 ровно будет.

В западной системе исчислений, ноль - натуральное число. По-этому, счёт идёт с нуля. Цветовой диапазон 0-255, а не 1-256. По-этому, минус 1

На сайте c 06.08.2013
Сообщений: 1895
Москва
Цитата Mo...:
Цитата irishman:

странная арифметика. 0,4*255 надо, откуда -1? 0 это тоже число. 102 ровно будет.

В западной системе исчислений, ноль - натуральное число. По-этому, счёт идёт с нуля. Цветовой диапазон 0-255, а не 1-256. По-этому, минус 1

там скобки нужны и будет 102 ровно, в врайколор мапе проверь.

256 это количество вариантов цвета или символов в 1 байте, включая 0

На сайте c 24.05.2009
Сообщений: 10092
А разве сильно разница будет 101 и 102 или это больше вопрос принципа?
На сайте c 25.10.2011
Сообщений: 952
Пенза
Цитата irishman:
там скобки нужны и будет 102 ровно, в врайколор мапе проверь. 256 это количество вариантов цвета или символов в 1 байте, включая 0

Да, все верно, 256 - это количество вариантов цвета в диапазоне [0..255]

Умножаем именно на 256, ведь именно это - число градаций цвета. Умножив на 256 мы получаем номер нужной нам ступени. А единицу отнимаем уже от произведения, что бы получить числовое значение этой ступени, скобки тут не нужны. Числовое значение ступени №1 = 0 (полностью черный), числовое значение ступени №256 = 255 (полностью белый), т.е. имеет место смещение номера относительно значения на 1, поэтому отнимаем именно единицу.

Но все это не стоит того, и эта единица в данном случае не играет значимой роли. Я и сам всегда на 256 умножаю и не парюсь, или на 255 - куда палец упадет.

upd всё-таки неправ я со своей формулой. Умножать надо на 255. Ведь числовому промежутку от 0 до 1 мы должны поставить в соответствие числовой промежуток от 0 до 255

На сайте c 02.10.2015
Сообщений: 1899
Одесса


Политика

Дата выдачи:
06.08.2024 17:58:08


Пожизненный бан
Цитата grdesigner:
А разве сильно разница будет 101 и 102 или это больше вопрос принципа?

Тут вопрос про то как программы работают

На сайте c 25.02.2009
Сообщений: 2642
Липецк projectbp.ru

Цитата Mo...:
Тут вопрос про то как программы работают

Это кстати куда важнее самих цифр. С немалой долей вероятности РГБ нелинейное в 3Д программах да и браузерах.

Тот же Blender условно нейтрально серый цвет #DDD трактует как RGB (0,723,0,723,0,723), а вовсе  не как (0.128,0.128,0.128) Думаю везде так.

Вот портянка на эту тему. Где-то ещё что-то попадалось. Если найду - дополню

Вот ещё прстыня.
Но, думаю, на глаз правильней. Потому что в итоге воспринимается как нра/ненра, а не какие-то там цифры. Пусть программа сама переваривает.

На сайте c 23.02.2010
Сообщений: 5716
Саракш
Цитата Mo...:
Тут вопрос про то

 У вас столько всяких вопросов было, но не разу не возникло вопроса о правилах создания новой темы и её уместности.

Скоро половина форума, через тему будут ваши, неужели нет соответствующих разделов, где можно задавать вопрос.  

 Там бедный колокольчик уже весь язычок стёр. 

На сайте c 02.10.2015
Сообщений: 1899
Одесса


Политика

Дата выдачи:
06.08.2024 17:58:08


Пожизненный бан

Цитата irishman:
Mo..., про гамму еще не забудь, если она есть.

Твоя правда. При выборе цвета на разных гаммах разная светлость серого. Какую гамму использовать для определения такого цвета?

Пробовал sRGB и RAW . Цвета отличаются

Почему-то созданная текстура отличается от параметра в шейдере. Перемножал (256*значение от 0 до 1) . Гамма не та?

На сайте c 25.02.2009
Сообщений: 2326
Kyiv
Цитата Mo...:
Какую гамму использовать для определения такого цвета?

Если это цвет, то sRGB. Если параметр то Linear.

На сайте c 02.10.2015
Сообщений: 1899
Одесса


Политика

Дата выдачи:
06.08.2024 17:58:08


Пожизненный бан
Цитата Skorpionchik:

Если это цвет, то sRGB. Если параметр то Linear.

Я думал гамма "Raw". Её часто используют на видео

В Майе несколько гамм линеар. Выставляются к каждому изображению отдельно. Про эти виды гамм известно что-то?

На сайте c 15.08.2021
Сообщений: 893

На ютюбе полно роликов.

Raw - это исходное изображение без коррекций, как и в случае с фото.

Rec 709/srgb - это стандарт для мониторов.

По остальным на ютюбе есть (теория цвета, цветовой охват монитора).

На сайте c 06.08.2013
Сообщений: 1895
Москва
Цитата Mo...:
Почему-то созданная текстура отличается от параметра в шейдере. Перемножал (256*значение от 0 до 1) . Гамма не та?

чтобы перевести 102 в цвет без гаммы 2.2, надо сначала перевести 102 во флоат, дальше извлечь из полученного флоата корень степени 0,45 и обратно помножить на 255.

это если ты снимаешь цвет пипеткой, а он в сргб.

На сайте c 02.10.2015
Сообщений: 1899
Одесса


Политика

Дата выдачи:
06.08.2024 17:58:08


Пожизненный бан
Цитата irishman:
это если ты снимаешь цвет пипеткой, а он в сргб.

Пипеткой получается довольно точно. Но скалярные значение (от 0 до 1) надо переводить

На сайте c 25.05.2015
Сообщений: 1083
крск

опять в с этими битмапами, 3 года назад вроде выяснили всё

https://3ddd.ru/forum/thread/show/displacement_1#post1289292 

там помимо гаммы еще S-образная  вместо прямой в разном софте в разных  режимах,  короче точности добиться это надо постараться. Надо проверять всё...

а float 0.5 в 8bit не получить, там аккурат между int 127 и 128.

Цитата CGCat:
Raw - это исходное изображение без коррекций, как и в случае с фото.

вообще не факт, там сжатие бывает и оно бывает  разных видов.

Цитата irishman:
извлечь из полученного флоата корень степени 0,45

0.45454545))

На сайте c 06.08.2013
Сообщений: 1895
Москва
Mo..., какой там цвет во флоате? залей в шопе так

Читают эту тему: