Render.ru

undo для масок ?

#1
Есть ли возможность делать undo когда режешь маски ? После нажатия , маска пропадает - жутко неудобно ! Может есть какое-нибудь средство против этого ?
 

dfuzion

Активный участник
Рейтинг
11
#3
не могу полностью с wpiggy. Отсутствие undo справедливо лишь для Rotoshape. При работе с Qiuckshape нет никаких проблем с отменой последних изменений.
Для меня Rotoshape, практически, не существует. За исключением редких ситуаций в которых необходимы специфические возможности этого нода.

keep on shaking!
 
#4
ну не знаю....
я в основном ротошейпом маски и режу - очень уж хороши специфические возможности этого нода :)
я в других программах ничего подобного не видал (может на инферно какой-нибудь надо посмотреть)

приходится конечно левую руку к спинке стула привязывать чтобы случайно ктрл-з не нажать :)
 
#5
Да, точно, такое только на инферно и в шэйке есть. Но на инферно все таки не так криво реализовано, насколько я видел.
Вопрос в тему, может кто знает:
бывает при включенном автокее маска (ротошейп) замирает в одном положении и подвинуть ее просто невозможно - ни всю ни отдельные узлы. Как это лечить или хотя бы когда это появляется (чтоб не доводить до такого)?
 
#6
Ротошейпы и Quickshape завязаны на встроенный в Shake GLRender, то есть, имхо, часть глюков связана с видеокартой.
DFuzion, ты тоже не совсем прав :). Quickshape тоже "подглюкивают" на некоторых тачках - не перерисовываются, глючат на undo. И еще они реально тормозят, особенно при добавлении узлов.

>бывает при включенном автокее маска (ротошейп) замирает в одном положении и подвинуть ее просто невозможно

Логику в проявлении этого эффекта я так отловить и не смог. Иногда помогает перезагрузка Shake.
Иногда доходит до того, что такой ротошейп "роняет" Shake так, что этот скрипт загрузить уже невозможно (приходит Доктор Ватсон). В этой ситуевине выходов два. Первое достать autosave, второе открыть скрипт в текстовом редакторе, найти этот чертов ротошейп и аккуратно его удалить.

Да еще, всем, кто еще про это не знает, рекомендую для работы с Shake-скриптами FAR с установленным плагином Colorer (полная нирвана :)))).
 

dfuzion

Активный участник
Рейтинг
11
#7
И снова я не могу согласиться с wpiggy! ;))) Как правильно подмечено автором: "имхо, часть глюков связана с видеокартой".
И, вот ведь, какая ситуёвина получается -- проблема-то не в шейке, но в карте.
Как я писал, некоректной работы Quickshape не наблюдаю. И других нодов тоже. О Rotoshape уже говорено.
И пусть денег на сертифицированные карты не у каждого шейкера найдётся, но на хороший игровой девайс от "неё родной" -- лёгко!

keep on shaking!
 
#8
я замечал подобное на пересечениях нескольких масок
побеждал временнім передвиганием той которая двигается
 
#9
С ротошейпами замечен еще один неприятный баг. Допустим у тебя в ротошейпе грань под очень малым углом к горизонтали. А весь ротошейп двигается горизонтально. Motion blur на этой грани обрабатывается с глюками (идет "шум"), у Quickshape такого нет. Похоже что-то с GL-render связано. А вот у QuickShape motion blur работает корректно, но "дискретно" (видны "ступеньки"), приходится потом еще сверху обычный блюр вешать.
Короче, что бы там DFuzion не говорил, надо юзать и то и то "it depends" :))
 
#10
абсолутли эгри со всеми тезисами оратора :)
а насчёт частой "корявости" GL-рендера есть показательный пример со скриптом Ramp2D от peter warner. Если ось, назовём так для простоты, градиента немного отличается от вертикали, то градиент отрисовывается с такими дреками... :( что не наблюдается с горизонтальными вариантами.

кстати, может кто знает как его переделать в 16-бит? добавление "int bytes" не помогает -- он всегда остаётся 8-bit BWA :( или, может быть, у кого есть "более" другой способ работы с градиентами?
вэлкам поделится опытом :)

неплохая тема для новой ветки?

--
keep on shaking!
 
#11
Раскрой макрос путем нажатия на выбранной ноде Ramp2D волшебной буквы "b", и выставь нужную тебе битность у ноды NGLRender. :)
 
#12
Я знаю обо всех волшебных, и не очёнь, кнопках в шейке :)
Это не выход, так как трик работает только в интерфейсе, и только в данной сессии. Но если считать скрипт из консоли, то он всё равно берёт инфу из макроса. А в нём 8-бит. Вопрос был серьёзный и для меня насущный. Повторюсь, что добавление в скрипте в раздел image Ramp2D параметра int bytes = ..., тоже не решает вопроса :(

2wpiggy: есть мысли на эту тему?

или писать Питеру? :)))
 
#13
Угу, напиши, напиши Питеру :)

image Ramp2D(
int width = GetDefaultWidth(),
int height = GetDefaultHeight(),
int wedgeSize = width/10 (вот тут порылась собака),
float alpha1 =0,
float alpha2 = 1,
float pos1X = width/3,
float pos1Y = height/3,
float pos2X = width*.66,
float pos2Y = height*.66
)

Сравни с
image Ramp2D(
int width = GetDefaultWidth(),
int height = GetDefaultHeight(),
int wedgeSize = width/100,
float alpha1 =0,
float alpha2 = 1,
float pos1X = width/3,
float pos1Y = height/3,
float pos2X = width*.66,
float pos2Y = height*.66
)

Валентин, да хоть float тут не спасёт, дело не в битности, а в математике. Ну дискретный он, сабака, ДИСКРЕТНЫЙ. Можно было бы Питеру коэффициент дискретности вывести отдельным контролом, наверное это было бы правильно.

Костя, спасибо, что заставил немного пошевелить мозгами, а то я совсем скоро "съеду" маски резамши :)))
 
#15
Ну, дык, мы ж тут не "погулять вышли" :)
Есть ощущение, что похожая ошибка есть и в обработке Ротошейпов. Но в них так просто, как в скрипт, не влезть :(
Если у кого есть мысли на эту тему, пишите.

Валентин, где сейчас трудишься?
Пиши wpiggy@postproduction.ru
 
#16
Ок, я попробую на досуге что-нибудь придумать на эту тему. Момент действительно интересный!

Работаю у Веникова...
 
#17
2wpiggy: спасибо и тебе за мозги хорошие :) и твоим маме с папой :)

одну траблему порешали, но "...хочу быть дворянкой столбовою" :)
с битностью быб...
 
#18
Это совсем просто

Замени в скрипте

{
return Crop(Reorder(NGLRender(
width, height, 1 (вот это и есть битность 1-8бит, 2-16б 4-float),
"
// initial calculations

На

{
return Crop(Reorder(NGLRender(
width, height, 4,
"
// initial calculations

Кстати по предыдущему вопросу... параметр wedgeSize есть в UI !!!! :)))))
Хе, хе надо было мне сначала в интерфейсе скрипта поковыряться, а потом уже сам скрипт хакать, вот идиот :)))
 
#19
спасибо, за подсказку :)

я поступил более гибко, добавив в скрипт параметр:
image Ramp2D(
int bytes = 2,
int width = GetDefaultWidth(),
....
return Crop(Reorder(NGLRender(
width, height, bytes,
....

Конечно, прямой совместимости со своими старыми скриптами лишился, но, как известно, они далеко не бинарные :)
 
#20
Почту то проверь, я тебе отрихтованный скрипт послал, кнопку "bytes" добавил
 
Сверху