Render.ru

Скрипт на MEL

KlimD

Пользователь сайта
Рейтинг
2
#1
Добрый день. Написал скрипт для спекания текстуры. Сейчас занимаюсь оформлением. Столкнулся с вопросом - когда идет процесс Batch Bake (mental ray), информация о процессе рендера выводится самой майкой внизу слева. А хотелось бы выводить ее через свой прогресс бар (процесс идет довольно долго и сидеть за компом просто скучно. А прогресс бар хорошо читается во время пробегания мимо компа). Так вот собственно и сам вопрос - как получить информацию о том самом прогрессе?
 

KlimD

Пользователь сайта
Рейтинг
2
#3
Ну да, именно так. Сейчас просто выводится название рендера и в начале идет 1%, по окончании 100%. Удобно, что хоть видно что именно рендерится. Но все-таки хотелось бы иметь визуальный прогресс.
 

Andots

Знаток
Рейтинг
66
#4
Ну да, именно так. Сейчас просто выводится название рендера и в начале идет 1%, по окончании 100%. Удобно, что хоть видно что именно рендерится. Но все-таки хотелось бы иметь визуальный прогресс.
Не Mel но поробуй так

Код:
import maya.cmds as cmds




amount = 0

cmds.progressWindow(    title='Doing Nothing',
                                        progress=amount,
                                        status='Sleeping: 0%',
                                        isInterruptable=True )
while True :
        # Check if the dialog has been cancelled
        if cmds.progressWindow( query=True, isCancelled=True ) :
                break

        # Check if end condition has been reached
        if cmds.progressWindow( query=True, progress=True ) >= 100 :
                break

        amount += 5

        cmds.progressWindow( edit=True, progress=amount, status=('Sleeping: ' + `amount` + '%' ) )

        cmds.pause( seconds=1 )

cmds.progressWindow(endProgress=1)
 

Andots

Знаток
Рейтинг
66
#5
Ну думаю разберешься как прикрутить к этому то что тебе надо, просто надо на каждом цикле чекнуть свой прогресс "amount"(приравнять к своему прогрессу вместо "amount +=5" ну и тот что 0 тоже), ну и паузу поболе поставить. Чтоб каждую секунду не проверял
 
Последнее редактирование:

KlimD

Пользователь сайта
Рейтинг
2
#6
Спасибо, этот пример я уже видел. Это не то. Мне надо получать данные о прогрессе, который идет в течении самого рендера. Т.е. во время спечения одной текстуры (майка это видит и показывает прогресс самого рендера в левом нижнем углу), так вот мне надо практически сдублировать это, только уже на мой ProgressWindow. У меня рендерится 8 разных вариантов и я хочу в реальном времени это наблюдать (прогресс каждого рендера в отдельности). Т.е. из МЕЛа отправляется комманда на рендер, в это время сам скрипт ничего не делает, т.к. ждет конца рендера, но майка данные о прогрессе получает, вот хочется их перехватить и отобразить своим скриптом.
 

4i4ikov

Знаток
Рейтинг
37
#7
когда идет процесс Batch Bake (mental ray), информация о процессе рендера выводится самой майкой внизу слева. А хотелось бы выводить ее через свой прогресс бар (процесс идет довольно долго и сидеть за компом просто скучно. А прогресс бар хорошо читается во время пробегания мимо компа)
Экранная лупа от микрософт спасёт инвалида пробегающего мимо монитора))
 
Сверху