def process(self): with lib.undo_chunk(): instance = super(CreateYetiRig, self).process() self.log.info("Creating Rig instance set up ...") input_meshes = cmds.sets(name="input_SET", empty=True) cmds.sets(input_meshes, forceElement=instance)
def repair(cls, instance): invalid = cls.get_invalid(instance) with lib.undo_chunk(): for node in invalid: for attribute in cls.attributes: if cmds.attributeQuery(attribute, node=node, exists=True): plug = "{}.{}".format(node, attribute) cmds.setAttr(plug, channelBox=False, keyable=False)
def process(self): with lib.undo_chunk(): instance = super(CreateRig, self).process() self.log.info("Creating Rig instance set up ...") controls = cmds.sets(name="controls_SET", empty=True) pointcache = cmds.sets(name="out_SET", empty=True) cmds.sets([controls, pointcache], forceElement=instance)
def process(self): """Entry point.""" exists = cmds.ls(self.name) if exists: cmds.warning("%s already exists." % exists[0]) return use_selection = self.options.get("useSelection") with lib.undo_chunk(): self._create_render_settings() instance = super(CreateRender, self).process() # create namespace with instance index = 1 namespace_name = "_{}".format(str(instance)) try: cmds.namespace(rm=namespace_name) except RuntimeError: # namespace is not empty, so we leave it untouched pass while(cmds.namespace(exists=namespace_name)): namespace_name = "_{}{}".format(str(instance), index) index += 1 namespace = cmds.namespace(add=namespace_name) cmds.setAttr("{}.machineList".format(instance), lock=True) self._rs = renderSetup.instance() layers = self._rs.getRenderLayers() if use_selection: print(">>> processing existing layers") sets = [] for layer in layers: print(" - creating set for {}:{}".format( namespace, layer.name())) render_set = cmds.sets( n="{}:{}".format(namespace, layer.name())) sets.append(render_set) cmds.sets(sets, forceElement=instance) # if no render layers are present, create default one with # asterix selector if not layers: render_layer = self._rs.createRenderLayer('Main') collection = render_layer.createCollection("defaultCollection") collection.getSelector().setPattern('*') renderer = cmds.getAttr( 'defaultRenderGlobals.currentRenderer').lower() # handle various renderman names if renderer.startswith('renderman'): renderer = 'renderman' cmds.setAttr(self._image_prefix_nodes[renderer], self._image_prefixes[renderer], type="string")
def process(self): exists = cmds.ls(self.name) assert len(exists) <= 1, ( "More than one renderglobal exists, this is a bug") if exists: return cmds.warning("%s already exists." % exists[0]) with lib.undo_chunk(): instance = super(CreateRenderSetup, self).process() self.data["renderSetup"] = "42" null = cmds.sets(name="null_SET", empty=True) cmds.sets([null], forceElement=instance)
def process(self): """Entry point.""" exists = cmds.ls(self.name) if exists: return cmds.warning("%s already exists." % exists[0]) use_selection = self.options.get("useSelection") with lib.undo_chunk(): self._create_vray_instance_settings() instance = super(CreateVRayScene, self).process() index = 1 namespace_name = "_{}".format(str(instance)) try: cmds.namespace(rm=namespace_name) except RuntimeError: # namespace is not empty, so we leave it untouched pass while (cmds.namespace(exists=namespace_name)): namespace_name = "_{}{}".format(str(instance), index) index += 1 namespace = cmds.namespace(add=namespace_name) # create namespace with instance layers = self._rs.getRenderLayers() if use_selection: print(">>> processing existing layers") sets = [] for layer in layers: print(" - creating set for {}".format(layer.name())) render_set = cmds.sets( n="{}:{}".format(namespace, layer.name())) sets.append(render_set) cmds.sets(sets, forceElement=instance) # if no render layers are present, create default one with # asterix selector if not layers: render_layer = self._rs.createRenderLayer('Main') collection = render_layer.createCollection("defaultCollection") collection.getSelector().setPattern('*')