Автоматический запуск скрипта с применением параметров для Material Editor

Автор
Сообщение
Репутация: 0
На сайте c 13.12.2019
Сообщений: 5

Здравствуйте! Нужна помощь. Имеется вот такой скрипт. 

(

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 на все имеющиеся материалы и даже на новые, только что добавленные.

Репутация: 0
На сайте c 13.12.2019
Сообщений: 5

Я в принципе сделал то, что мне было нужно и начало сейчас выглядит так(

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), то работает, но добавляет только для пятого материала соответственно. Что я упустил в этот раз?

Репутация: 0
На сайте c 13.12.2019
Сообщений: 5
Через medit.getcurmtl. Это, кстати, срабатывает, но для активного слота.
Репутация: 0
На сайте c 13.12.2019
Сообщений: 5

Убедился - как видите сами. Нужный мне rollout добавился, но опять же только на активный материал.

Сами все на скриншоте увидите

Репутация: 0
На сайте c 13.12.2019
Сообщений: 5

Ахринеть! Спасибо, заработало наконец-то!

Slazzo, извините что сразу не послушал. Спасибо что разжевали все и сделали за меня всю работу!

Читают эту тему: