LINUX.ORG.RU

Расскажите, пожалуйста, про события в блендере

 , ,


0

1

Как мне навесить обработчик сообщения на какой-нибудь объект в Blender ?

Ну, например, я хочу нарисовать текстурированный кирпич. Текстура у меня пусть будет процедурно генерируемая. Я хочу, чтобы при изменении размера кирпича текстура перегенерировалась. Как мне прицепить к Mesh обработчик события на python ?

Ну, или, например, я буду рисовать что-нибудь с костями, хотелось бы иметь возможность запустить скрипт пересчёта положения костей в скелете при перетягивании например кисти руки в новое положение (т.е. на событие «изменение координат»).

Теоретически внутри blender (и любой другой UI-программы) есть цикл обработки сообщений, и можно в принципе, было бы написать обработчик сообщений, который бы тоже сообщения принимал. Но как это делают на питоне? Что надо писать, и как этот код загружать, чтобы он начал срабатывать?

Следить за мышью?
https://docs.blender.org/api/current/bpy.types.Operator.html#bpy.types.Operat...
https://docs.blender.org/api/current/bpy.types.Event.html
https://blender.stackexchange.com/questions/35198/triggerring-left-click-even...

Делать AddOn, чтобы он мог зарегистрироваться в меню? (как это поможет следить за изменениями модели?)

Текстура у меня пусть будет процедурно генерируемая. Я хочу, чтобы при изменении размера кирпича текстура перегенерировалась.

... для этого ничего программировать не нужно, все что требуется нужно учесть в самой процедурной текстуре, для того она и процедурная ...

Теоретически внутри blender (и любой другой UI-программы) есть цикл обработки сообщений, и можно в принципе, было бы написать обработчик сообщений

... много из того что тебе нужно описано в API https://docs.blender.org/api/current/index.html ... например обратные вызовы по событиям ... https://docs.blender.org/api/current/bpy.app.handlers.html?highlight=handler#...

Делать AddOn, чтобы он мог зарегистрироваться в меню? (как это поможет следить за изменениями модели?)

... либо addon либо просто запускать скрипт, на самом примеров автоматизации много, и инструменты не только скрипты, те же драйверы ...

https://www.blender.org/get-involved/developers/ https://blenderscripting.blogspot.com/ https://cgcookie.com/articles/blender-2-8-python-scripting-superpowers-for-no...

sungreen ()