02 Nov 2008
Все трехмерщики рендерят сцены по ночам. Кто работает дома, вынуждены спать под гул компьютера, но самое обидное это когда сцена не очень тяжелая и рендерить ее надо не всю ночь, а пару часов, следовательно гудеть оставшееся время комп будет зря. Вот команда, с помощью которой можно отключать компьютер после того как он все отрендерит:
"c:\Program Files\Autodesk\Backburner\cmdjob.exe" -jobname "shutdown"
-jobNameAdjust -manager 192.168.1.2 shutdown.exe -s -m 192.168.1.2 -t 60
Запускать эту строку надо из командной строки или, как делаю я, записать ее в текстовый файл с расширением .bat, получится батник для быстрого запуска.
Параметры:
"shutdown" - это имя задания, которое появится в списке задаче в мониторе backburner-а
"192.168.1.2" это ip адрес компьютера, который является менеджером backburner-а
shutdown.exe -s -m 192.168.1.2 -t 60 - это собственно и есть команда отключающая любой комп в сети.
Она отключает компьютер с указанным адресом через 60 секунд (на всякий случай, чтобы макс успел закрыться после окончания рендеринга). Но есть одно условие - у пользователя, который запускает скрипт, должно быть достаточно прав для отключения удаленного компьютера. Да, и еще одно очевидное условие - рендерить надо с помощью backburner. Хотя, даже не знаю рендерит ли кто нибудь без backburner-а...
Кстати можно не просто отключать компьютер, но и задать любую другую команду, например копирования имидж-файлов в определенное место. Для выполнения команды на всех компьютерах в ренедферме надо использовать опцию -perServer утилиты cmdjob.exe. Без этой опции команда выполнится только один раз на первой освободившейся машинею.
Update для 64-битной Висты:
У меня под 64-битной Вистой команда cmdjob.exe перестала выключать компьютер. Обходной путь такой: запускается на рендер пустая сцена с назначенным post-render скриптом. В скрипте одна команда:
Чтоб задача запускалась после всех рендеров сделал ей низкий приоритет. И из очереди не удаляю, просто перезапускаю каждый раз. Вроде работает.