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

Z-композитинг

Тема в разделе "Eyeon Fusion & Generation", создана пользователем Сергей Комелов, 28 сен 2006.

Модераторы: Григорий Чаленко
  1. Сергей Комелов

    Сергей Комелов Активный участник

    С нами с:
    29.09.2003
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    11
    При композе по Z-каналу на пересечении одного слоя с другим по большей части очень резкие границы. Также если объект был на фоне неба (например дом) а потом другой объект (например дерево) ставится за домом (в соответствии с Z-каналом), то на месте стыка - просвечивает небо (в один-два пикселя, пример с деревом и домом приложил). Как можно с этими проблемами бороться? Заранее благодарен за любой ответ... Например только открыв Шейк почти наугад нашел какую-то ноду, что сгладила границы... значит и здесь что-то должно быть - не могу найти...
     

    Вложения:

    • 53431.jpg
      53431.jpg
      Размер файла:
      4 КБ
      Просмотров:
      55
  2. mentor

    mentor Мастер

    С нами с:
    24.09.2004
    Сообщения:
    24
    Симпатии:
    0
    Баллы:
    112
    Есть такая штука, как Coverage - это канал антиалиасинга для Z-буфера. Когда рендеришь Z, то считай коверадж тоже и сохраняй в RPF, EXR и тп. А в ноде merge включай depth merge. Если есть канал coverage он его будет использовать. А ещё лучше - рендери Z с нормальным антиалиасингом ;)
     
  3. Сергей Комелов

    Сергей Комелов Активный участник

    С нами с:
    29.09.2003
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    11
    Увы, не нашел ничего подобного (вообще никаких настроек для Z-канала - он просто включен или выключен) в Майке и настройках её рендра (Mental и Soft)... Потом может чего не понимаю, но как у Z может быть антиалисинг? Ведь любое сглаживание- это изменение глубины будет, а глубина меняться не должна... Т.е. понятен механизм Coverage (точнее могу предполагать) - это анализ границ и соотв. информация об этом. Но в самом канале как может быть антиализинг?
    Других идей нет?
     
  4. Григорий Чаленко

    Григорий Чаленко Moderator Команда форума

    С нами с:
    23.04.2005
    Сообщения:
    1.997
    Симпатии:
    13
    Баллы:
    1.254
    Coverage - это отдельный канал, считается в дополнение к Z.

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

    Сергей Комелов Активный участник

    С нами с:
    29.09.2003
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    11
    Да, насчет отдельных пассов полностью согласен... просто это был первый подобный проект у нас - и расчитывали многое по Z-каналу сложить... но как правило не очень то выходит. В результате всё равно половину пересчитывали по слоям... Чесно говоря больше надежд возлагал на канал глубины. Но он имеет (как и все) ограниченное применение - нет на белом свете палочки-выручалочки :) ех-хо..... :( Ещё и Тартилла выдает несколько отличающийся канал от ментала и софтварного рендеринга (в Maya).
    Вот, ещё, краем уха слышал, что в Нюке каналы хорошо обрабатываются -может там есть какие-то инструмены на тему обработки краев при Z-композе (на будущее)?
     
  6. svet

    svet Мастер

    С нами с:
    07.05.2005
    Сообщения:
    548
    Симпатии:
    0
    Баллы:
    215
    антиалиазинг толк дает, невзирая на "это изменение глубины будет" проверено на практике:)
    еще лучше отсчитать Z с большей битностью например 16 или 32 бита на канал
    а вообще хорошо с двойным размером и с 32 бита на канал

    конечно, увы, чем лучше результат - тем больше времени на просчет

    ПС. Z буфер хорош только в теории, на деле удобнее просчитать маски для всех объектов или прямо в Ф5 достовать 3д
     
  7. kIRr 15085

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

    С нами с:
    25.04.2006
    Сообщения:
    153
    Симпатии:
    0
    Баллы:
    11
    Отсчитываю в майке сглаженный канал глубины. При наложении Fog`a во Фьюжене, в местах пересечения объектов четко заметен рваный край. Тоже самое происходит при наложении fog`a на 3Д рендереное самим фуджиком. Coverage не дает никаких изменений.
     
  8. Григорий Чаленко

    Григорий Чаленко Moderator Команда форума

    С нами с:
    23.04.2005
    Сообщения:
    1.997
    Симпатии:
    13
    Баллы:
    1.254
    Возможно, у основного пасса и канала глубины разные настройки антиальясинга.
    Вообще-то нодой Fog не обязательно пользоваться. Проще положить поверх картинки Background цвета тумана с маской Bitmap, взятой из Z.
     
  9. kIRr 15085

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

    С нами с:
    25.04.2006
    Сообщения:
    153
    Симпатии:
    0
    Баллы:
    11
    Антиалиасинг одинаковый. А вот с наложением по маске стоит попробовать.
     
  10. kIRr 15085

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

    С нами с:
    25.04.2006
    Сообщения:
    153
    Симпатии:
    0
    Баллы:
    11
    интересный момент - когда смотришь канал глубины во фьюжене, он выглядет несколько по другому чем в файле из которого его взяли. Различия именно по краям объектов. В файле Z depth хранится в RGB каналах как обычный пасс, а во фьюжене я его присоединяю через chanell boolean.
     
  11. AMIR

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

    С нами с:
    04.08.2006
    Сообщения:
    35
    Симпатии:
    0
    Баллы:
    5
    То kIRr - depth канал не хранится в rgb каналах!!! Это просто канал -z. Майка его всегда рендерит в 32 бита.
    а fcheck его просто тебе в наглядной форме отображает в виде градаций серого. А ведь он (z-канал) может быть и отрицательный. Это такая адаптация для зрителя чтоб понятно было что ближе что дальше ( а то представляешь какими цветами нужно было бы отрицательные значения передавать?) А Фу использует свой способ отображения этих данных - только и всего. И почему ты Chanell booleans присоединяешь данные z канала? Если рендерить в Iff то они будут поумочанию в файле присутствовать там же определено наличие каналов rgbaz. А по поводу антиалайзинга? Народ, какой антиалайзинг? это же глубина точки. Если у соседней эта глубина другая, то понятное дело при композе будет рваный край.
     
  12. Григорий Чаленко

    Григорий Чаленко Moderator Команда форума

    С нами с:
    23.04.2005
    Сообщения:
    1.997
    Симпатии:
    13
    Баллы:
    1.254
    Есть разные варианты. Глубина может рендериться и в цветные каналы, отдельным пассом. В этом случае битность можно задавать произвольную.
    А антиалайзинг работает с глубиной точки так же, как и с цветом. Если речь идет о тумане, то цвет пикселей на границах объектов получается усредненный, то же самое должно и с туманом происходить.
     
  13. AMIR

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

    С нами с:
    04.08.2006
    Сообщения:
    35
    Симпатии:
    0
    Баллы:
    5
    Спору нет, если рендерить отдельным пассом ( как я его обычно делаю ренедерманом, правда не в rgb а во float) то его можно и антиалайзным получить. Но насколько я понял kiRr ренедерит майкой и несовсем понятно зачем в принципе делать отдельные пасссы, когда канал глубины присутствует всегда(правда несглаженный), его остается только вывести в iff.
     
  14. AMIR

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

    С нами с:
    04.08.2006
    Сообщения:
    35
    Симпатии:
    0
    Баллы:
    5
    Хотя я наверное неправ потому ка криво выразился. конечно каждый рендерит так как ему хочется. Ктото по умолчанию получает канал глубины, ктото его получает другим способом - через шейдер, через предустановленный пасс, как это сделано в майке. но помоему просто те кто начал только работать с z каналом часто недопонимают его смысл. а вот SkyFly помоему правильно его понимает
     
  15. kIRr 15085

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

    С нами с:
    25.04.2006
    Сообщения:
    153
    Симпатии:
    0
    Баллы:
    11
    AMIR - я наверное не правильно выразился. В RGB сохраняю не z канал, а информацию о глубине пикселей. =)).
     
  16. AMIR

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

    С нами с:
    04.08.2006
    Сообщения:
    35
    Симпатии:
    0
    Баллы:
    5
    :) ну тогда все друг друга поняли..... Интересно вот только помогло это SkyFly? :)
     
Модераторы: Григорий Чаленко

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