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

Clipping Plane

Тема в разделе "RenderMan", создана пользователем Narvi, 10 дек 2001.

Модераторы: Moderator.
  1. Narvi

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

    С нами с:
    19.11.2001
    Сообщения:
    180
    Симпатии:
    0
    Баллы:
    11
    А как с помощью Майамана и Entropy сделать сабж?
     
  2. Narvi

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

    С нами с:
    19.11.2001
    Сообщения:
    180
    Симпатии:
    0
    Баллы:
    11
    Т. е поверхность, с одной стороны которой рендерим, с другой не рендерим. Не ориентированная нормально к камере, естественно
     
  3. Guest

    Теоретически наверно можно применить булевы операции (SolidBegin - SolidEnd), но как это реально сделать - туман. К тому же неясно, подойдет тебе это или нет...
     
  4. Narvi

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

    С нами с:
    19.11.2001
    Сообщения:
    180
    Симпатии:
    0
    Баллы:
    11
    В смысле булевы операции? Поясни? Мне вообще надо что-то аля ground plane, выше которого сцена бы не рендерилась.
     
  5. Guest

    Не совсем понимаю, зачем ground plane должен отсекать сцену, но вкратце суть в том, что в рибе можно всю сцену описать как булеву операцию (SolidBegin "intersection"), потом идет SolidBegin "primitive" и все твои объекты, затем SolidEnd, потом снова SolidBegin "primitive", в котором должно идти описание бокса (я думаю из билинеаров будет оптимальнее всего), ограничивающего нужную тебе часть сцены... Ну и два SolidEnd в конце. Если Opacity бокса нулевая, вполне возможно, что получится то, что тебе нужно... Подробнее смотри в РиСпеке3.2
    Сам делать не пробовал, все это - чистая "сухомятка" :)
     
  6. Narvi

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

    С нами с:
    19.11.2001
    Сообщения:
    180
    Симпатии:
    0
    Баллы:
    11
    Все эти извраты вообщем-то нужны для того чтобы тяжелые полсцены рендерить ПРманом, а то что полегче и находиться под водой, ентропией. Вся проблема в том, что самый тяжелый обьект сцены находиться частично на одной из половин, а частично на другой.
     
  7. Guest

    ИМХО возможно, что будет проще разбить сцену на две части врукопашную. Неэстетично, зато дешево, удобно и практично (с) :)
     
  8. Narvi

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

    С нами с:
    19.11.2001
    Сообщения:
    180
    Симпатии:
    0
    Баллы:
    11
    Побить-то конечно можно... Но хочеться сделать красиво.
     
  9. Guest

    Кстати, в доке к PRMan'у написано, что на данный момент бульоны релизованы безо всяких оптимизаций, как там сказано "brute force method"....то есть никакого реального уменьшения рендертаймов не будет(проверено - вроде действительно - что с бульонами, что без них - пофик...)

    А arbitrary clip planes будут вроде только в PRMan 10.
     
  10. Guest

    А Matte не поможет ? Типа Use Backgound назначить поочереди на разные половины сцены, а потом скомпозитить?
    (Сам не пробовал, поэтому спрашиваю ;-)
     
  11. Guest

    Назначь объектам свойство Matte, через custom rib, ну то есть

    Matte 1

    и он ни фига не будет рендериться. И даже более того, будет правильная альфа. По-моему, самый красивый вариант.
     
  12. Narvi

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

    С нами с:
    19.11.2001
    Сообщения:
    180
    Симпатии:
    0
    Баллы:
    11
    А как можно назначить это половине обьекта? И кстати что такое этот кастом риб? Где его ищут?

    ЗЫ Я еще народ вопросами не задалбал?:)
     
  13. Guest

    Половине (если это цельный нурбс, или какой другой примитив) - никак. Вручную пилить придется :(
     
  14. Guest

    А обычным путем почему не хочешь -

    Clipping hither yon

    где hither - ближний план, а yon - дальний,
    и он порежет сцену по этим двум планам
     
  15. Guest

    Если бы камера смотрела строго вниз, перпендикулярно поверхности воды - это было вполне возможно :)
     
  16. Guest

    RiClippingPlane ( RtFloat x, RtFloat y, RtFloat z, RtFloat nx, RtFloat ny, RtFloat nz)
    Adds a user-specified clipping plane. The plane is specified by giving any point on
    its surface, (x, y, z), and the plane normal, (nx, ny, nz). All geometry on the positive
    side of the plane (that is, in the direction that the normal points) will be clipped from
    the scene. The point and normal parameters are interpreted as being in the active
    local coordinate system at the time that the RiClippingPlane statement is issued.
    27
    Multiple calls to RiClippingPlane will establish multiple clipping planes.
    RIB BINDING
    ClippingPlane x y z nx ny nz
    EXAMPLE
    ClippingPlane 3 0 0 0 0 -1
    SEE ALSO
    RiClipping
    1.Create a clipping plane.
    2.Export Selected.
    3.Feed in MayaMan "User Defined ... Options" by hands
    4.Render.
    5.Take congratulations.
     
  17. Narvi

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

    С нами с:
    19.11.2001
    Сообщения:
    180
    Симпатии:
    0
    Баллы:
    11
    Похоже самый правильный вариант. А слабо более подробно рассказать, как это сделать без ручного редактирование рибов? Ну это уже опционально, это я и сам раскопать вообщем могу...
     
  18. Sergei Nevshupov

    Sergei Nevshupov Мастер

    С нами с:
    11.01.2001
    Сообщения:
    456
    Симпатии:
    0
    Баллы:
    99
    выдери clipping plane из работающего риба и сделай rib-archive:

    attribute begin
    /* описание твоего clipping plane*/
    attribute end

    его присобачь к объекту в сцене - как это конкретно реализовано в Maya man-е я не знаю, надо посмотреть в доке. при изменении трансформации объекта к которому приаттачен rib-archive, clipping plane будет наследовать трансформацию.
     
  19. Sergei Nevshupov

    Sergei Nevshupov Мастер

    С нами с:
    11.01.2001
    Сообщения:
    456
    Симпатии:
    0
    Баллы:
    99
    сдается мне что все вышенаписанное мною можно считать гоном. проверить сейчас времени нет :(...
     
  20. Guest

    Братцы, по-моему, все-таки пока в прмане это все не работает, хотя я могу и ошибаться...
     
Модераторы: Moderator.

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