Блендер Python Объект "Группировка" - PullRequest
0 голосов
/ 11 января 2020

Я пишу Blender (2.81) Python Аддон, который должен отображать один me sh в окне просмотра (низкое разрешение) и один для рендеринга (высокое разрешение) (это растения / деревья). В настоящее время я создаю два объекта и использую объект с низким разрешением в качестве родителя объекта с высоким разрешением. Хотя это настраивается, по умолчанию объект высокого разрешения не виден в области просмотра и недоступен для выбора. Это представляет объект низкого разрешения пользователю в области просмотра, где он может перемещать, поворачивать и масштабировать его, и эти изменения влияют на дочерний объект с высоким разрешением во время рендеринга (и пользователю не нужно думать о высоком разрешении). объект вообще).

Проблема, с которой я столкнулся в настоящее время, заключается в удалении родителя из окна просмотра, оставляя дочернего элемента в сцене, где я мог бы ожидать удаления «дерева», щелкнув его в окне просмотра. и нажимая X.

Правильно ли я думаю о композиции объектов здесь, или мой мозг все еще застрял в земле SketchUp, и мне нужно приспособиться к мысли в терминах Blender?

Является ли родитель / Дочерний механизм правильный подход для такого рода сочинения?

Должен ли я использовать собственную коллекцию, чтобы вместо этого содержать два объекта? (все еще не удается удалить с помощью X в 3D-окне просмотра).

Например, на изображении ниже окно просмотра по умолчанию выглядит как левый верхний. Он может быть настроен для отображения высокого разрешения в окне просмотра, как в левом нижнем углу, но можно выбрать только низкое разрешение (в каркасном режиме, если высокое разрешение видно). В любом случае, отображается только высокое разрешение, как показано в правом нижнем углу:

enter image description here

1 Ответ

1 голос
/ 12 января 2020

Имея возможность использовать неограниченное количество коллекций, да, создайте одну, чтобы сгруппировать ваши объекты. В планировщике вы можете щелкнуть правой кнопкой мыши по коллекции и выбрать команду удаления иерархии, чтобы получить их все в одном go, это лучшее, что вы можете сделать.

Объекты также имеют возможность выбора, вы можете сделать найм невыбираемым так что можно выбрать только родителя знаний.

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

Другая возможность, которую можно рассмотреть, - это объединить их в один объект. Два модификатора маски могут быть использованы, чтобы скрыть помехи me sh при рендеринге и нанять меня sh в окне просмотра. Нужна только одна группа вершин, поскольку вы можете инвертировать выбор во второй маске. Вам нужно проверить, дает ли это то же самое преимущество в производительности, которое вы получаете, имея два объекта.

mask modifiers

...