Хочу написать скрипт который будет делать следующее:
в сцене имеется несколько объектов (Editable Mesh), среди них есть такие у которых количество под материалов (matID) около 50, мне необходимо чтобы matID у объектов в сцене не превышал 32, т.е. для объектов у которых matID > 32 необходимо выполнить разделение. К примеру имеем объект с 40 matID, необходимо разделить его на два - у первого будет 32, у второго 8 matID, и также разделить материалы (и при этом к имени первого объекта добавить "_0", а к имени второго "_1", аналогично с именами материалов). Я хочу не просто получить скрипт который будет это реализовывать, но и мне важно разобраться как все в нем работает.
Я накидал план действий, помогите пожалуйста это реализовать:
Что касается геометрии:
1) Для объектов у которых matID > 32, реализовать разделение функцией meshop.detachFaces (при этом к имени первого объекта добавить "_0", а к имени второго "_1")
2) Перебрать ID у второго объекта чтобы они начинались не с 33, а с 1
Что касается материалов:
3) Для первого объекта удалить под материалы > 32 и присвоить имени материала имя объекта
4) Для второго объекта создать и назначить материал основанный на оставшихся matID которые были > 32 и присвоить имени материала имя объекта
Вроде все, помогите с написанием кода и с комментариями пожалуйста
в сцене имеется несколько объектов (Editable Mesh), среди них есть такие у которых количество под материалов (matID) около 50, мне необходимо чтобы matID у объектов в сцене не превышал 32, т.е. для объектов у которых matID > 32 необходимо выполнить разделение. К примеру имеем объект с 40 matID, необходимо разделить его на два - у первого будет 32, у второго 8 matID, и также разделить материалы (и при этом к имени первого объекта добавить "_0", а к имени второго "_1", аналогично с именами материалов). Я хочу не просто получить скрипт который будет это реализовывать, но и мне важно разобраться как все в нем работает.
Я накидал план действий, помогите пожалуйста это реализовать:
Что касается геометрии:
1) Для объектов у которых matID > 32, реализовать разделение функцией meshop.detachFaces (при этом к имени первого объекта добавить "_0", а к имени второго "_1")
2) Перебрать ID у второго объекта чтобы они начинались не с 33, а с 1
Что касается материалов:
3) Для первого объекта удалить под материалы > 32 и присвоить имени материала имя объекта
4) Для второго объекта создать и назначить материал основанный на оставшихся matID которые были > 32 и присвоить имени материала имя объекта
Вроде все, помогите с написанием кода и с комментариями пожалуйста