1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

Обработка материалов объектов сцены

Тема в разделе "MAXScript", создана пользователем Castello, 28 апр 2012.

Модераторы: Savin Denis
  1. Castello

    Castello Активный участник

    С нами с:
    06.01.2012
    Сообщения:
    47
    Симпатии:
    0
    Баллы:
    5
    В сцене имеется несколько объектов с назначеными на них мультиматериалами
    нужно у каждого подматериала мультиматериала каждого объекта выставить в качестве материала - Standart' ный материал, а также сменить тип шейдера таким образом - mtl.shaderType = 2

    зарание спасибо
     
  2. igorznag

    igorznag Знаток

    С нами с:
    23.04.2010
    Сообщения:
    1.256
    Симпатии:
    173
    Баллы:
    65
    Код:
    for obj in objects where classof obj.material==multimaterial do 
    for i=1 to obj.material.materialList.count do 
    (mtl=StandardMaterial();mtl.shaderType=2;obj.material.materialList[i]=mtl)
    P.S. Создаем копию сцены перед тем, как использовать скрипт.
     
  3. Castello

    Castello Активный участник

    С нами с:
    06.01.2012
    Сообщения:
    47
    Симпатии:
    0
    Баллы:
    5
    Почти то что надо
    нужно чтобы имя подматериала при конвертации в стандырт сохранялось, т.е. чтобы вместо имен standartmaterial выставяллось то имя которое было до этого на подматериале
     
  4. igorznag

    igorznag Знаток

    С нами с:
    23.04.2010
    Сообщения:
    1.256
    Симпатии:
    173
    Баллы:
    65
    Код:
    for obj in objects where classof obj.material==multimaterial do 
    for i=1 to obj.material.materialList.count do (mtl=StandardMaterial();mtl.shaderType=2;
    mtl.name=obj.material.materialList[i].name;obj.material.materialList[i]=mtl)
     
Модераторы: Savin Denis

Поделиться этой страницей