Ошибка установки рендера при попытке удалить узлы RenderSetupLayer через редактор узлов

Мой первый пост на Stackru!

В настоящее время я пытаюсь написать простой инструмент настройки рендера, чтобы быстро разрешить удаление слоев Render Setup.

Однако я заметил, что когда я выбираю узлы RenderSetupLayer по имени, это приводит к тому, что "удаленный" слой рендеринга в графическом интерфейсе настройки рендеринга частично становится серым в области, где находится кнопка "активный слой". Если я затем закрою окно, оно сообщит, что с окном произошла ошибка C++, выдавая следующую ошибку:

"Ошибка 510: внутренний объект C++ (RenderSetupWindow) уже удален".

После этого я выполнил простой тест, не основанный на коде, в котором я просто открыл диалоговое окно Render Setup, создал новый слой рендеринга и удалил узлы RenderLayer и RenderSetupLayer через окно редактора узлов, и это привело к тому же результату " ошибка". После того, как я закрыл окно, я не мог открыть его снова, намекая на очень простую ошибку в интерфейсе Maya Render Setup. Очень расстраивает! Это известная проблема с майя? Кто-нибудь может порекомендовать жизнеспособный рабочий процесс для эффективного удаления слоев из системы Render Setup?

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

Любая помощь будет принята с благодарностью

Спасибо

Craig

0 ответов

Какая это была версия Maya? У меня не было проблем с удалением слоев рендеринга в Maya 2018, в любом случае с python это может быть решением для вас:

#modules
import maya.app.renderSetup.model.renderLayer as renderLayer
import maya.app.renderSetup.model.renderSetup as renderSetup
rs = renderSetup.instance()

rs.clearAll() #for deleting all renderlayers

#to delete a specific renderlayer
rl_layer = rs.createRenderLayer("Layer") #create renderlayer
renderLayer.delete(rl_layer) #delete renderlayer
Другие вопросы по тегам