Wolfram
13:59 12-12-2013 О шкафах и скриптах
Пока жду согласования с клиентом по поводу цен и сроков решил упростить себе жизнь, написав скрипт. Общая задача — создать модели для каталога и отрендерить их.
Скрипт, по моей задумке, из списка слоев, по одному открывает слой, рендерит объекты, сохраняет файл в папку с именем файла = имени слоя. И так со всеми слоями. Мебели довольно много: порядка 160 моделей, рендер вручную меня как-то не соблазнял, поэтому я и решил писать скрипт.

Пример шкафчика и Layer Manager со слоями:

[изображение]
Скрин готового скрипта с комментариями:

[изображение]
Довольно быстро я вспомнил программирование и, вооружившись справкой, набросал код. В общем, все работает как надо. Эх, давно я не программил
Скрипт рендера каждого слоя отдельно. (Script batch render by layers)
(
local outputPath = "W:\!Common_Shared_Folder\3d\Render" --change this to where your renderings should be placed
local fileExt = ".png" --change this to any image file type
renderSceneDialog.close() --close render scene dialog to make changes have an effect
for i = 0 to LayerManager.count-1 do --loop through selection
(
ilayer = layerManager.getLayer i; --get layer object in var
if ilayer.on == false then --if current layer is hidden
(
ilayer.on = true; --unhide layer
rendSaveFile = true; --make sure image is saved to disk
rendOutputFileName = outputPath + "\\" + ilayer.name + fileExt --create filename
max quick render --render using the settings from the render scene dialog
ilayer.on = false; --hide layer again
)
)--end for
)