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

камрады, где в рендере MR можно выставить поля?

Тема в разделе "Maya", создана пользователем solovjoff, 31 окт 2008.

Модераторы: Dark™, Skif
  1. solovjoff

    solovjoff Знаток

    С нами с:
    13.04.2006
    Сообщения:
    229
    Симпатии:
    0
    Баллы:
    22
    а то кинулся - не могу найти, раньше без них считал, а тут понадобились...
    уточню - поля те, которые Odd or Even
     
  2. alex_alv

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

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    Я тоже пытался найти, но поискав несколько минут, забил на это, и просто поменял скорость на 50 к/с (Time: PAL Fields 50 fps) и порендерил обычным способом.
    Формирование полей (выборку перемежающихся четных и нечетных строк из каждой пары кадров) можно сделать в любом композере (я делал в AE, но можно и в других).
     
  3. tadpole

    tadpole Знаток

    С нами с:
    12.08.2005
    Сообщения:
    712
    Симпатии:
    1
    Баллы:
    24
    ты в AVI чтоли считаешь из ментала?
     
  4. alex_alv

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

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    Нет, в сиквенцию IFF. Скорость меняю в настройках майки, чтобы ключи и динамика пересчитались на новое количество кадров в секунду. Т. е. в результате рендерится в 2 раза больше кадров, чем надо, но там есть все нужные поля, которые можно вытащить в композере
     
  5. tadpole

    tadpole Знаток

    С нами с:
    12.08.2005
    Сообщения:
    712
    Симпатии:
    1
    Баллы:
    24
    да я Соловьева спрашивал...)
     
  6. mazzza

    mazzza Знаток

    С нами с:
    08.02.2006
    Сообщения:
    870
    Симпатии:
    10
    Баллы:
    23
    поскольку тот же вопрос появился на менталовском форуме вроде уже после того как тут на него ответили - дополню предыдущие посты:

    цитирую:
    действительно, беда с полями... единственный выход - рендерить в два раза больше полноценных ( а не половинной высоты, как может показаться) кадров, а потом сводить их в полевую последовательность...
    Владимир Забелин
    http://www.cgtalk.ru/forum/archive/index.php/t-17031.html

    и еще там же:
    "есть мнение что в MentalRay идущем с XSI настройка полей есть чуть ли не в командной строке"

    "Установок для майки использовать поля под ментал рэй нет. В XSI есть, но этим никто не пользуется :). "

    ------------
    Хотя , ковыряя менталловские доки - мне попалась строчка:
    float frame_field 0: frame, 1: even field, 2: odd field

    но куда вставлять эти 0 1 2- сори - без понятия:)
     
  7. alex_alv

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

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    float frame_field - это поле (часть) структуры (переменной) state, которую получает каждый шейдер MR при рендере. Попробую пояснить.
    Работа MR основана на шейдерах, которые представляют собой внешние подключаемые программы - для windows это - DLL библиотеки. Вычисляя цвет (и/или другие хараектеристики) каждого пикселя конечного изображения, MR ничего не делает, кроме как по-очереди вызывает функции каждого задействованного шейдера (т. е. DLL-ки), передавая им параметры и прося посчитать какую-нибудь величину. Т. е. MR - это не рендерилка, а некая операционная система, которая позволяет в ней работать шейдерам, которые и рендерят Вашу сцену. Шейдер либо считает (например, цвет пикселя), либо пользуется функциями MR для выполнения другого действия (напрмер, отбрасывает луч отражения, что приводит к вызову других шейдеров или этого же шейдера, но с другими входными параметрами), либо делает и то и другое.
    Короче, в процессе рендера, MR вызывает функции внешних DLL-ек-шейдеров и передает им параметры.
    Самый главный параметр, который описывает, что и как сейчас конкретно рендерится и который передается ВСЕМ шейдерам одинаково - это переменная state.
    Поле frame_field - это ее часть. С его помощью MR сообщает каждому шейдеру, какое конкретно поле сейчас рендерится: целый кадр, четное поле или нечетное поле.
    Это значение нигде нельзя задать. Его задает сам MR внутри себя и передает всем шейдерам в числе других данных (которых не мало).

    Задать рендер полей пользователь MR может через mi-файл.
    На всякий случай скажу, что изначально, MR принимает на входе сцену в виде mi-файла и рендерит ее.
    mi файл описывает всю сцену (геометрию, камеры, освещение, шейдеры и т. д.) в текстовом виде с помощью специального языка Scene Description Language (кстати, этот язык полностью описан в документации Maya).
    Кстати, MR-шейдеры в Maya представляют собой пару файлов - DLL-ка, которая выполняет всю работу, и mi-файл, который описывает шейдер (название, параметры и т. д.)

    Когда Вы рендерите с помощью MR из Maya, она конвертирует свою сцену в mi-файл (используя для представления шейдеров mi-файлы описания шейдеров, о которых я сказал в предыдущем предложении, т. е. эти маленькие mi-файлы включаются как часть большого mi-файла, описывающего сцену). После этого, вызывается MR и ему передается mi-файл описания сцены. Исходная сцена майки не передается MR-ю вообще никак.

    В этом файле в описании камеры есть например парметр:
    frame frameint [ time ] [ field fieldint ]

    который указывает, к какому кадру (и какому полю) относится данный кадр сцены.

    Т. е. MR действительно может считать поля. Но майка врядли обеспечивает эту возможность, так как она должна это обеспечивать на уровне создания mi-файла. Вероятно, установка этой опции могла бы быть в разделе Translation настроек MR (так как это - логичное место для всего, что экспортируется в mi-файл), но это очень нелогичное место для данной настройки в принципе. Видимо, поэтому ее там и нет. Скорее всего, ее нигде нет (хотя точно этого сказать нельзя). Но если очень хочется отрендерить именно с полями, можно конвертировать сцену в mi, а затем внести некоторые правки либо вручную, либо написав свою программку (правда, думаю, что врыдли удастся сэкономить достаточное количество времени по сравнению с тем способом, который я предложил выше). В любом случае, перед экспортированием придется все равно перестроить сцену на удвоенное количество кадров в секунду (это боюсь нужно делать при любом варианте).
     
  8. mazzza

    mazzza Знаток

    С нами с:
    08.02.2006
    Сообщения:
    870
    Симпатии:
    10
    Баллы:
    23
    Алекс! это круто!
    лимит моей к тебе кнопки спасибо на ближайшие 2 недели (или сколько там у них...) исчерпан, поэтому просто большое человеческое спасибо!:))
     
  9. solovjoff

    solovjoff Знаток

    С нами с:
    13.04.2006
    Сообщения:
    229
    Симпатии:
    0
    Баллы:
    22
    с чего это ты так решил? в таргу считал всю жизнь
    2alex_alv
    много буков)) но по люому спасибо за развернутый ответ, замечу что в максе поля MR считаются без проблем, а Майка заточенная под кино, не имеющая просчета в AVI (за что отдельное спасибо Alas-у, видимо чтобы пользователи автоматом учились этот AVI собирать и в будующем композить) в которой отсутствует возможность просчитать с полями меня посто убивает, думал мож у меня глаза не на том месте?
     
  10. alex_alv

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

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    Ответа, в котором буков было мало, народу не хватило. Пришлось количество буков увеличить.
    На счет макса-маи - в полне возможно, но я не вижу проблем в моем способе решиния проблемы. Недостаток - только один. Информации считается в 2 раза больше, чем нужно, т. е. время рендера увеличивается до 2-х раз. Если это напрягает, то несложно написать шейдер линзы камеры, который будет блокировать просчет половины строк.
     
  11. solovjoff

    solovjoff Знаток

    С нами с:
    13.04.2006
    Сообщения:
    229
    Симпатии:
    0
    Баллы:
    22
    2alex_alv
    блин, шейдер.... да и не умею я этого пока, видимо буду считать не 25 а 50 кадров в сек тогда, хотя еще думаю у Puppet-a спросить, мож он че подскажет, ну дико это - в майке нет полей...((
     
  12. alex_alv

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

    С нами с:
    23.04.2008
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    14
    В майке есть поля, их нет в связке майка+MR. И то, как я говорил, это точно сказать не могу. Просто я не нашел этого.
    Но париться этой проблемой по-моему стоит только тогда, когда рендер кадра занимает минут 30 и более. А как говорил упомянутый выше Забелин, все, что считается дольше 15-ти минут на кадр - неправильно, и вероятно, что-то неправильное мы просим от рендера.

    Будет время - напишу такой шейдер :)

    P.S. Кстати, при заточке под кино, как раз поля то и не нужны, так как в кино (на кинопленке) полей в принципе не существует.
     
Модераторы: Dark™, Skif

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