def filterCamera(self): """Apply camera properties.""" import mantra render_type = mantra.property("renderer:rendertype")[0] if not self.all_passes and render_type != "beauty": logger.warning("Not a beauty render, skipping deepresolver") return # Look for existing args. deep_args = mantra.property("image:deepresolver") # If deep rendering is not enabled the args will be emptry so we should # log an error and bail out. if not deep_args: logger.error( "Cannot set deepresolver: deepresolver is not enabled") return try: idx = deep_args.index("filename") # Somehow there is no filename arg so log an exception and print the # args list. except ValueError as inst: logger.exception(inst) logger.error("Deep args: {}".format(deep_args)) else: deep_args[idx + 1] = self.filepath # Set the new list as the property value setProperty("image:deepresolver", deep_args)
def filterCamera(self): """Apply camera properties.""" import mantra render_type = mantra.property("renderer:rendertype")[0] if not self.all_passes and render_type != "beauty": logger.warning("Not a beauty render, skipping deepresolver") return # Look for existing args. deepresolver = mantra.property("image:deepresolver") if deepresolver == ['']: logger.error( "Cannot set deepresolver: deepresolver is not enabled") return if deepresolver: args = list(deepresolver[0].split()) try: idx = args.index("filename") except ValueError as inst: logger.exception(inst) return else: args[idx + 1] = self.filepath # Set the new list as the property value setProperty("image:deepresolver", args)
def _createPropertySetter(stage_name, property_name, property_block): """Create a PropertySetter based on data.""" # Handle masked properties. if "mask" in property_block: # Filter a plane. if stage_name == "plane": return MaskedPropertySetter( property_name, property_block, "plane:variable" ) # Something involving an actual object. elif stage_name in ("fog", "light", "instance"): return MaskedPropertySetter( property_name, property_block, "object:name" ) # If masking is specified but we don't know how to handle it, log a # warning message. We will still return a regular PropertySetter # object though. else: logger.warning( "No masking available for {}:{}.".format( stage_name, property_name ) ) # Generic property setter. return PropertySetter(property_name, property_block)
def filterCamera(self): """Apply camera properties.""" import mantra render_type = mantra.property("renderer:rendertype")[0] if not self.all_passes and render_type != "beauty": logger.warning("Not a beauty render, skipping deepresolver") return # Look for existing args. deepresolver = mantra.property("image:deepresolver") if deepresolver == [""]: logger.error("Cannot set deepresolver: deepresolver is not enabled") return if deepresolver: args = list(deepresolver[0].split()) try: idx = args.index("filename") except ValueError as inst: logger.exception(inst) return else: args[idx + 1] = self.filepath # Set the new list as the property value setProperty("image:deepresolver", args)
def filterCamera(self): """Apply camera properties.""" render_type = getProperty("renderer:rendertype") if not self.all_passes and render_type != "beauty": logger.warning("Not a beauty render, skipping deepresolver") return if self.disable_deep_image: logger.info("Disabling deep resolver") setProperty("image:deepresolver", []) else: # Look for existing args. deep_args = getProperty("image:deepresolver") # If deep rendering is not enabled the args will be empty. if not deep_args: # If a resolver type and filename was passed then we will create # args for the resolver type to enable deep output. if self.deepresolver and self.filename: deep_args = [self.deepresolver] # Log an error and abort. else: logger.error( "Cannot set deepresolver: deep output is not enabled") return # Modify the args to include any passed along options. self._modifyDeepArgs(deep_args) logger.debug("Setting 'image:deepresolver': {}".format(" ".join( [str(arg) for arg in deep_args]))) setProperty("image:deepresolver", deep_args)