Подробнее
koshelev_justr
Активность: 0
20
февраля
2020
Автоматический запуск скрипта с применением параметров для Material Editor
Я в принципе сделал то, что мне было нужно и начало сейчас выглядит так( for i = 1 to 24 do getMeditMaterial(i) mtl = getMeditMaterial(1) mtl = getMeditMaterial(2) mtl = getMeditMaterial(3) mtl = getMeditMaterial(4) mtl = getMeditMaterial(5) if classof Mtl != Multimaterial then Mtl = #(Mtl) for m in Mtl where classof m == Standardmaterial do if not (xrToolsUtil.HasShadersCA m) then custAttributes.add m xrShadersDataCA ) Но он не добавляет атрибут на материал. Если заменить первую строчку на Mtl = getMeditMaterial (5), то работает, но добавляет только для пятого материала соответственно. Что я упустил в этот раз?
20
февраля
2020
Автоматический запуск скрипта с применением параметров для Material Editor
Здравствуйте! Нужна помощь. Имеется вот такой скрипт.  ( Mtl = medit.getcurmtl() if classof Mtl != Multimaterial then Mtl = #(Mtl) for m in Mtl where classof m == Standardmaterial do if not (xrToolsUtil.HasShadersCA m) then custAttributes.add m xrShadersDataCA ) fn HasShadersCA Mtl = ----------------------------------------------------------------------------- ( if Mtl != undefined then ( local i, ca for i = 1 to (custAttributes.count Mtl) do ( ca = custAttributes.get Mtl i if ca.name == "xrShadersData" then return true ) ) return false ) К нему еще приложены различные файлы, из которых сам скрипт черпает атрибуты. Их я показывать не буду. Собственно, скрипт добавляет на выделенный материал новый rollout. Сейчас он работает через кнопку или Run Script. Как бы все отлично, все добавляется, но... Помогите его полностью автоматизировать, чтобы с запуском программы он добавлял этот же rollout на все имеющиеся материалы и даже на новые, только что добавленные.