MaxScript: какое «имя типа обратного вызова» будет использоваться для запуска обратного вызова, когда узел меняет тип / класс? - PullRequest
0 голосов
/ 05 июня 2011

Моему инструменту MaxScript требуется, чтобы объект сцены имел тип editable_mesh или editable_poly, и в зависимости от типа объекта включит и отключит элементы управления графическим интерфейсом.

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

Какое имя типа обратного вызова я должен предоставить callbacks.addscript, чтобычтобы он вызывался, когда пользователь изменяет / конвертирует тип / класс объекта?

Ответы [ 2 ]

1 голос
/ 08 июня 2011

Использовал Система событий узла , вызвав NodeEventCallback и предоставил мою функцию свойству modelstructured.

Это работает над слоем стандартной системы обратного вызова событий и имеет ряд новых событий, однако доступно только для 3ds Max 2009 и выше.

0 голосов
/ 06 июня 2011

Нет такого события обратного вызова, о котором я знаю, даже когда конструкция не сработает здесь. Один из способов добиться этого - использовать таймер в свитке и на каждом тике проверять класс / суперкласс выбранного объекта / объектов, но я не уверен, что он вообще нужен во-первых.

Если вы хотите предупредить пользователя о том, что объект должен быть преобразован, есть много способов сделать это с его сотрудничеством, например, вывести запрос в поле выбора, который скажет что-то вроде "Выбранный объект не является Редактируемая сетка. Конвертировать ее в одну? " или пользовательское поле запроса с параметрами Преобразовать в редактируемую поли / Преобразовать в редактируемую сетку / Сбросить .

Или даже старомодным способом, при котором все рассматриваемые элементы управления по умолчанию отключены, включена только большая кнопка выбора Pick Node. Эта функция была бы снабжена функцией фильтра, которая позволяла бы выбирать только редактируемые узлы.

...