[a / aa / ad / au / b / bg / bo / c / d / dg / di / ew / f / fa / fd / fg / fi / fl / g / gg / h / ho / hr / ja / k / ls / m / ma / me / mo / mu / n / ne / o / p / pa / ph / pr / r / re / s / sp / t / td / tr / tv / u / vg / w / wh / wm / wp / y] - [Главная]

[Назад]
Ответ
(оставьте это поле пустым)
Имя (оставьте это поле пустым)
E-mail
Тема
Комментарий
Файл
Перейти к
Подтверждение обновить captcha
Пароль (чтобы удалить пост или файл)
  • Разрешённые типы файлов: GIF, JPG, PNG
  • Максимальный размер файла 1536 килобайт и 2048×2048.
  • Изображения размером более 200x200 точек будут уменьшены.

Файл: 1243848312214.gif -(9кб, 219x224) Показана уменьшенная копия, оригинал по клику.
9 №84  

Объясните, пожалуйста, вызываются ли в принципе в MR lens шейдеры для пользовательских фреймбуфферов? В литературе пишут, что lens shaders - атрибут камеры, т. е. по идее должны, но мои экесперименты с render passes в maya 2009 показывают, что этого нифига не происходит (или это автодеск опять наумничал?)

(И дело тут далеко не в гамма-коррекции. Есть, например, фишай, панорамные шейдеры и т. п., такого эффекта в постобработке достичь трудно.)

>> №85  

Бля! Оп, ты мне мозг сломал.

>> №91  

В фреймбуффер пишется опосля линз шейдера. Насколько я понимаю, фишай - получает NDC и параметры камеры, после чего возвращает рендереру вектор луча. Тогда, скорее всего, фишай будет работать только при использовании рейтрейса, а не сканлайна или рапид растерайзера.

>> №92  

Или даже сам шейдер линз стреляет луч и возвращает цвет и прочее. В этом случае возможно что фишайский шейдер тупо забивает на все возвращаемые значения кроме цвета и прозрачности и ничего в фреймбуфферы другие не пишет. Перепиши фишай под себя в этом случае.

>> №93  
>Даже если

fix

>> №95  
>В фреймбуффер пишется опосля линз шейдера.

А почему ж тогда, если в 2009 майке повесить на камеру mia_exposure_simple, то MasterBeauty пасс корректируется, а, например, beauty нет? Вот оператор camera (лишнее вырезано):

camera "perspShape"
    framebuffer "BEAUTY:beauty.persp"
datatype "rgba_h"
filtering on
user on
filetype "png"
filename "images/beauty/s1.0001.png"
    framebuffer "mayaColor"
datatype "rgba"
filtering on
primary on
filetype "png"
filename "images/MasterBeauty/s1.0001.png"
    lens = "mia_exposure_simple1"
lens "adskFrameBufferLens" (
)
end camera

Т.е. beauty от MasterBeauty отличается только тем, что первый user, а второй primary. Или тут дело в этом adskFrameBufferLens? Жаль, что standalone не работает, интересно было бы проверить.

>> №96  

А есть ли способ заставить майский standalone работать? Вроде бы икс-форс выпустил средство от spm для xsi, может и для майки есть?.

>> №98  

Стэнд элон к майке отношения не имеет.
Раньше кряк к нему регулярно выходил.

Ты лучше скачай с ментала исходники ленз шейдера и запости сюда.

>> №99  
>Стэнд элон к майке отношения не имеет.

Имеет - хотя бы потому, что требует от SPM ключ, специфичный для maya. (А standalone для xsi - соответственно специфичный для xsi, и т. п. Так что это разные бинарники, пусть даже чуть-чуть.)

>Ты лучше скачай с ментала исходники ленз шейдера и запости сюда.

Исходники этих шейдеров не публикуются, к сожалению.

>> №100  

Вот только что нашлось (DOF шейдер).

    /******************************************************************************
  • Copyright 1986-2007 by mental images GmbH, Fasanenstr. 81, D-10623 Berlin,

    • Germany. All rights reserved.

    ******************************************************************************

    • Created: 7.4.99
    • Module: physics
    • Purpose: lens depth of field shader

    *

    • Exports:
    •  physical_lens_dof_version
    •  physical_lens_dof

    *

    • Description:
    • Depth of field effect with lens oversampling.

    *
    *****************************************************************************/

#include <stdio.h>
#include <math.h>
#include <shader.h>

static miColor black = {0.0, 0.0, 0.0, 0.0};

/*
* New depth of field shader using low discrepancy sampling for the
* simulation of depth of field. It does supersampling of the lens before
* the ordinary oversampling. A fixed number of four samples is used.
*/

struct dof {

miScalar	plane;		/* distance to focused plane */
miScalar radius; /* size of the lens */

};

#define NO_SAMPLES 4

extern "C" DLLEXPORT int physical_lens_dof_version(void) {return(1);}

extern "C" DLLEXPORT miBoolean physical_lens_dof(

register miColor	*result,
register miState *state,
register struct dof *paras)

{

miScalar	plane = *mi_eval_scalar(&paras->plane);
miScalar rads = *mi_eval_scalar(&paras->radius);
miVector org, dir; /* original state->org, state->dir */
miVector rayorg, raydir; /* ray origin and direction */
miVector dest;
double t, radius, angle;
miColor average;
int i;
double pad[2];
miUint n; /* number of eye rays to shoot */
int dummy[4]; /* for tile size query */
average = black;
mi_point_to_camera (state, &org, &state->org);
mi_vector_to_camera(state, &dir, &state->dir);
t = (plane - org.z) / dir.z;
dest.x = org.x + t * dir.x;
dest.y = org.y + t * dir.y;
dest.z = plane;
i = 0;

/*
* In the finalgather precomputing stage multiple eye rays are
* useless. To detect that shader is called im the finalgather
* precomputing mode, the fact that there are no "tiles" and thus
* mi_query(miQ_TILE_PIXELS) returns miFALSE is used.
*/
if (state->options->finalgather &&
!mi_query(miQ_TILE_PIXELS, state, 0, dummy))
n = 1;
else
n = NO_SAMPLES;
while(mi_sample(pad, &i, state, 2, &n)) {
radius = rads * sqrt(pad[0]);
angle = 2.0 * M_PI * pad[1];
	rayorg.x = org.x + radius * cos(angle);
rayorg.y = org.y + radius * sin(angle);
rayorg.z = org.z;
raydir.x = dest.x - rayorg.x;
raydir.y = dest.y - rayorg.y;
raydir.z = dest.z - rayorg.z;
mi_point_from_camera (state, &rayorg, &rayorg);
mi_vector_from_camera(state, &raydir, &raydir);
	state->pri = NULL;
(void)mi_trace_eye(result, state, &rayorg, &raydir);
	average.r += result->r;
average.g += result->g;
average.b += result->b;
average.a += result->a;
}
result->r = average.r / n;
result->g = average.g / n;
result->b = average.b / n;
result->a = average.a / n;
return(miTRUE);

}

>> №101  

Хм, ну точно, сам стреляет, сам пишет результат. Шейдер плюёт на другие фреймбуфферы кроме ргба. Ну раз ты пишешь что раньше работало, значит автодесковский все правильно делал. Бида-бида.
Может таки известный баг в новой версии? Гугль молчит? Полуркай cgtalk.ru мерзенький какой, у папета поинтересуйся, знает поди.
Когда я последний раз делал ферму на ментале (5 лет назад где-то), ментал был совершенно отдельной сущностью. Не привязаной к другому софту. Ну, был и привязаный и стэнд элон сервер. Может теперь их политика поменялась.
Стэнд элону наплевать что ты ему суешь, главное чтобы шейдера грузились и mi был правильным.

У меня самого проблемы с мтором и рендерманом. Ну совсем этот мтор не гибкий. Была бы моя воля - перешел бы на гудини с майки.

>> №102  

>>101

>Ну раз ты пишешь что раньше работало

Раньше системы passes вообще не было, она появилось только в 2009. Раньше был очень кривой доступ с пользовательским фреймбуфферам ментала, и все. Писать что-либо туда приходилось только вручную (отсюда растут ctrl_buffers и проч.). Как с этим работали lens шейдеры - не знаю.

>Гугль молчит? Полуркай cgtalk.ru мерзенький какой, у папета поинтересуйся, знает поди.

Это дело уже обсудили где только можно. Пишут, что "lens шейдеры не работают с новыми pass'ами", но мне сей ответ кажется неубедительным (всегда ли не работают и почему именно?), а подробно никто не говорит. Эти adsk* шейдеры, которых целая библиотека, абсолютно нигде не документированы (кроме короткого описания, как написать свой шейдер, работающий с passes).

>У меня самого проблемы с мтором и рендерманом. Ну совсем этот мтор не гибкий. Была бы моя воля - перешел бы на гудини с майки.

А что в гудине круче в плане рендермана, чем в мторе? Или ты хочешь слезть с рендермана на мантру?

Вообще, насколько я читал, самый интересный рендерман-плугин сейчас - 3delight for maya. Понимает майские shading networks, хорошо поддерживает те же пассы (aov) и т. п. Можно взять 1 лицензию бесплатно вместе с самим 3delight'ом. Насколько плугин совместим с prman - понятия не имею.

(Сам я рендерманом очень давно не занимался, но с тех времен, когда занимался, у меня остался один вопрос - как для него реализовать быстрые glossy отражения из mia_material, и будут ли они быстрыми. А то Master Zap вон говорит "к черту спекуляры, юзайте эти отражения", и ведь он прав. Но алгоритм свой не раскрывает.)

>> №108  

Я честно говоря не в курсе что там и как в 2009 майке за пассы. Если я помню правильно, раньше были render-layers - что-то вроде гудиневских тейков.

А что в гудине круче в плане рендермана, чем в мторе? Или ты хочешь слезть с рендермана на мантру?

>Вообще, насколько я читал, самый интересный рендерман-плугин сейчас - 3delight for maya.

Вот это понимание майских шейдеров и прочая лабуда как раз не нужны. Нужна возможность писать желанион в риб в нужных местах. Есть задача - присобачить ко-шейдеры. Мтор их в риб писать не умеет, инклудить рибы - не удобно, хотелось бы интерфейсик для навешивания этих кошейдеров. Вобщем в мторе не так мого мест куда можно прицепить свой скриптик. В гудини всё обеспечение рендера написано на пайтоне (SOHO), и влезть туда кривыми ручками и переделать - никаких проблем.

>(Сам я рендерманом очень давно не занимался, но с тех времен, когда занимался, у меня остался один вопрос - как для него реализовать быстрые glossy отражения из mia_material, и будут ли они быстрыми. А то Master Zap вон говорит "к черту спекуляры, юзайте эти отражения", и ведь он прав. Но алгоритм свой не раскрывает.)

Рендерман рейтрейсит довольно медленно, хотя от версии к версии, по заверениям пиксара, скорость растер на 20-100%. Зато сканлайнит - как зверь. Шерсть с моушен блюром - На, нах, епта! Дисплейсемнт с полигончиками в 1/100 пикселя? На, ебать!
Насчет рейтерйсов и прочих глосси:
Приходилось мне как-то фоторильно считать мантрой водичку. Там есть у них pbr рендерер, очень понравилось как выглядит. Но вот для мультиков и кина - такие вещи редко нужны. А вот пиво для рекламы рендерить - наверное самое то. И кстати в мантре очень удобно вольюмы считать.
Да вообще в гудини сложные механизмы удобно собирать. Облака сбацать (Буквально слепить из любой геометрии, да хоть полигонами смоделиные) и отрендерить - дело пары минут.
Молнии бегающие по поверхности объекта? К вечеру будут отрендерены! Ну и в рибы срёт с потрясающей скоростью. На некоторых сценах быстрее мтора раз в 10. Ну и архитектура там наиболее соответствует прману.
Хорошая шутка от рендерильщика из пиксара. "Художники и аниматоры нужны чтобы поместить шейдер с нужными тестурами в нужное место экрана" :)

>> №113  
>Я честно говоря не в курсе что там и как в 2009 майке за пассы. Если я помню правильно, раньше были render-layers

layers никуда не делись, а пассы - это интерфейс к user framebuffers ментала (каждый layer может иметь несколько pass'ов, соответственно, ментал, вызванный для конкретного layer, создаст столькео картинок, сколько в этом layer'е пассов, + MasterBeauty). Автодеск наконец совершил подвиг и переписал менталовую реализацию майских шейдеров, чтобы те могли выводить компоненты в разные буферы. Из родных менталовых шейдеров это поддерживают только mia_material, carpaint и sss шейдеры, к тому же с ограничениями. (Хотя есть адаптеры, пишущие указанный выход шейдера в указанный буфер, типа ctrl_buffers.) Много глюков и недоработок (будем надеяться, что это изменится к лучшему, хотя автодеск уже взял за традицию плодить в майке глюки и не фиксить их).

>Вот это понимание майских шейдеров и прочая лабуда как раз не нужны. Нужна возможность писать желанион в риб в нужных местах.

Странно, мне казалось, что там можно пихать TCL в любое место.

>Рендерман рейтрейсит довольно медленно, хотя от версии к версии, по заверениям пиксара, скорость растер на 20-100%. Зато сканлайнит - как зверь. Шерсть с моушен блюром - На, нах, епта! Дисплейсемнт с полигончиками в 1/100 пикселя? На, ебать!

Ну да, плюс намного более простая разработка шейдеров относительно ментала, хотя далеко не такая гибкая. Минус - отсутствие параллелизма в самом рендерере (только шейдинг работает параллельно), это при том, что ментал отлично параллелизован, и даже должен скоро начать поддерживать CUDA.

>И кстати в мантре очень удобно вольюмы считать.

Интересно, не знал. Мне казалось, что renderman-подобные в этом плане совсем не блещут. Где бы про это почитать/посмотреть?

>Да вообще в гудини сложные механизмы удобно собирать. Облака сбацать (Буквально слепить из любой геометрии, да хоть полигонами смоделиные) и отрендерить - дело пары минут.

Кстати про облака. Меня давно уже преследует идея сделать пролет через облака, причем должны быть слои разных типов (перистые, слоистые, кучевые) разной толщины на разной высоте, с 3д освещением и тенями, и не за 12 часов на кадр. (И реалистично.) Судя по The Day After Tomorrow, это не так уж и невозможно, но в какую сторону мне смотреть?

А насколько хорош гудини для обычного моделирования, uv маппинга, шейдинга и т. п.? Другими словами, годится ли он для "полного производственного цикла", как майка? SideFX, как выясняется, продает версию Escape без динамики и симуляции за $2k ( = maya complete), значит ли это, что гудини для моделирования и рендеринга не хуже майки?



Удалить пост []
Пароль
[a / aa / ad / au / b / bg / bo / c / d / dg / di / ew / f / fa / fd / fg / fi / fl / g / gg / h / ho / hr / ja / k / ls / m / ma / me / mo / mu / n / ne / o / p / pa / ph / pr / r / re / s / sp / t / td / tr / tv / u / vg / w / wh / wm / wp / y] - [Главная]