Как получить данные меша с учетом модификаторов

При обращении к геометрии меша – его точкам, ребрам и полигонам, Blender оперирует исходными данными без учета наложенных на объект модификаторов.

Например количество точек для активного объекта, которое можно получить с помощью команды:

будет возвращено без учета наложенного на объект модификатора Subdivision, который подразделяет геометрию меша, увеличивая ее значения.

Так для куба, на который наложен модификатор Subdivision:

Для того, чтобы определить геометрию объекта с учетом изменяющих ее модификаторов нужно обратится к объекту через структуру depsgraph, которая дает возможность обращаться к реальному состоянию сцены.

Для начала нужно получить объект depsgraph для текущего контекста:

Далее, через него получить “evaluated”версию нужного объекта, в которой уже учтено воздействие всех модификаторов:

И уже для полученного объекта запрашивать данные по геометрии.

Как мы видим, для куба получены реальные данные по его геометрии с учетом наложенного модификатора Subdivision.

0 0 голоса
Article Rating
Подписаться
Уведомить о
guest
0 Комментарий
Межтекстовые Отзывы
Посмотреть все комментарии