1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

LinearWorkflow

Тема в разделе "Blender3D", создана пользователем iNOD, 17 апр 2016.

Модераторы: logosman
  1. iNOD

    iNOD Активный участник

    С нами с:
    10.11.2009
    Сообщения:
    631
    Симпатии:
    2
    Баллы:
    19
    Какой правильный алгоритм? Искал так и не нашел. Методом научного тыка добавил гамма ноду между текстурой и материалом, и поковырялся в колор менеджере. На первом скрине результат +- похож, но по логике это не правильно, текстура не гаммо коректна и экспосорсе крутить пришлось. На втором скрине текстура гаммо коректна но при гамме 2.2 картинка темная. На третем скрине текстура гаммо коректна гамма 2.2 экспосорсе 2.2 картинка сильно контрастна. В чем прикол?
     

    Вложения:

    • screen_01.png
      screen_01.png
      Размер файла:
      1 МБ
      Просмотров:
      89
    • screen_02.png
      screen_02.png
      Размер файла:
      959,4 КБ
      Просмотров:
      82
    • screen_03.png
      screen_03.png
      Размер файла:
      997,7 КБ
      Просмотров:
      76
  2. M.O.Z.G

    M.O.Z.G Знаток

    С нами с:
    27.04.2009
    Сообщения:
    655
    Симпатии:
    124
    Баллы:
    42
    Не понял, а что Вы делаете? Судя по скриншоту, Вы «выправляете» PNG файл, у которого никакого линейного пространства физический быть не может.
     
  3. M.O.Z.G

    M.O.Z.G Знаток

    С нами с:
    27.04.2009
    Сообщения:
    655
    Симпатии:
    124
    Баллы:
    42
    Ещё раз посмотрел скриншоты - теперь совсем не понял, что и зачем Вы делаете. Почему Вы расчитываете, что дифузная карта в сцене должна совпадать по яркости с оригинальной текстурой? Ведь в сцене своё освещение. И если действительно должна, ну, например, это какой-нибудь фон, почему не использовать Emission шейдер? По крайней мере, это избавит Вас от сомнений. И самое главное - причём здесь LinerWorkflow, в конкретном случае?
     
    Последнее редактирование: 17 апр 2016
  4. iNOD

    iNOD Активный участник

    С нами с:
    10.11.2009
    Сообщения:
    631
    Симпатии:
    2
    Баллы:
    19
    Вот об этом и вопрос. Как правильно настроить колор менеджер и нужно ли дегамить нелинейные текстуры?

    linearTexture->linearRender->sRGBDisplay
    sRGBTexture->degamma->linearRender->sRGBDisplay
     
  5. iNOD

    iNOD Активный участник

    С нами с:
    10.11.2009
    Сообщения:
    631
    Симпатии:
    2
    Баллы:
    19
    Да и еще нужно ли дегамить освещение и цвет?
     
  6. M.O.Z.G

    M.O.Z.G Знаток

    С нами с:
    27.04.2009
    Сообщения:
    655
    Симпатии:
    124
    Баллы:
    42
    Для чего? Cycles рендерит в линейном пространстве сразу, а дальше уже интерполирует гамму или не интерполирует, в зависимости от формата.
    Текстуры, так же, проходят преобразования автоматически. То-есть, если Вы вешаете sRGB текстуру, рендерите в sRGB, то для Вас ничего не меняется. Если же рендерите в 32-битный формат, тогда всё линеаризируется.

    Собственно говоря, вопрос "что Вы делаете и зачем", остаётся открытым.

    Если освещение в сцене недостаточное для того, чтобы текстура на поверхности была правильно освещена, и она не должна "светиться", то это проблема освещения, а не цветового пространства. Опять-таки, если текстура не должна освещаться и затеняться другими объектами и источниками света, используйте Emission.
     
    Последнее редактирование: 18 апр 2016
  7. iNOD

    iNOD Активный участник

    С нами с:
    10.11.2009
    Сообщения:
    631
    Симпатии:
    2
    Баллы:
    19
    В других рендерах приходилось дегамить текстуры sRGB или же настраивать колор менеджер. К примеру в Arnold рендере в колор менеджере 4 пукта.
    https://support.solidangle.com/display/AFMUG/Gamma Correction and Linear Workflow
    В первом пункте указываеться в каком пространстве выводить изображение. Втором и третем в каком пространстве использовать шейдеры и свет, ну а последний в каком пространстве использовать текстуры.

    Так вот меня интересует как нужно правильно настраивать свет, шейдеры, текстуры и колор менеджер для правильной передачи цвета? Насчет текстур, я проверил и как понял они автоматически дегамяться если нужно, а что насчет освещения и шейдеров? Проверял я на шейдере амбиант оклюжен.
     
  8. M.O.Z.G

    M.O.Z.G Знаток

    С нами с:
    27.04.2009
    Сообщения:
    655
    Симпатии:
    124
    Баллы:
    42
    Там же объяснено зачем указывать разную гамму для шейдеров, света и текстур под Maya ниже 2015-ой версии. Я не работал с Анольдом, но знаю, что например, в MODO аналогичная заморочка с цветовым пространством текстур, но ещё более не интиутивно. Там народ даже скрипты писал, которые меняют гамму текстур в материале делением на 2.2, потому что не удобно это руками делать. У всех свои заморочки.

    Почему Вы уверены, что это надо делать как-то по-особенному? И на что Вы ровняетесь в плане эталонной «правильности»?

    AO шейдер не реагирует на свет, считает только контактные тени, его нужно миксить с другими шейдерами, как и почти любой шейдер в Блендере, чтобы получить необходимый эффект.

    В Cycles всегда линейное пространство с гаммой 1.0 для всего. Color Management влияет только на вывод в просмотрщик и на рендеринг в 8-битный файл. А на самом деле, всё определяется параметрами файла при сохранении. Ниже я приложил примеры одного и того же рендера с настройками по-умолчанию и выводом в три разных формата (линейный EXR 32-bit, логорифмический DPX 16-bit и PNG sRGB 8-bit), которые настроены во Fusion под вывод в sRGB (кроме PNG) - нет никакой разницы. Так вот, если бы Вы в Color Management применили, например Film, покрутили гамма кривые, экспозицию и т.п., то это всё отрендерилось бы только в PNG. Поэтому, если рендерите EXR для последующего композа в другом приложении, то Color Management ни на что не влияет.
    [​IMG]
     
    Последнее редактирование: 20 апр 2016
Модераторы: logosman

Поделиться этой страницей