def create_renderer(self): self.release_renderer() if self.use_fixed_res: w = self.fixed_width h = self.fixed_height else: w = self.img_width h = self.img_height mode = "rtGPU" # 1 thread is at 100% for the render loop and leave 1 free for the user # the max 8 limit is because we've found RT GPU performance degrades with too many threads (i.e. 24) num_threads = min(max(cpu_count() - 2, 1), 8) self.vray_renderer = vray.VRayRenderer(renderMode=mode, inProcess=True, \ numThreads=num_threads, imageWidth=w, imageHeight=h, \ rtNoiseThreshold=0, rtSampleLevel=0, keepRTRunning=True) # if we don't show it initially, we wouldn't be able to later (bug) self.vray_renderer.showFrameBuffer = True # we set many things each frame, so commit manually in one go for performance self.vray_renderer.autoCommit = False self.vray_renderer.setOnRtImageUpdated(gOnImageUpdated) self.vray_renderer.setOnRenderStart(gOnRenderStart) self.vray_renderer.setOnDumpMessage(gOnDumpMessage) self.exporter = VRay4MobuExporter() self.on_intervals() self.exporter.set_renderer(self.vray_renderer)
def setUpClass(cls): hou.hipFile.load("./scenes/vfh_mtloverrides.hipnc", suppress_save_prompt=True, ignore_load_warnings=False) cls.vrayRop = hou.node("/out/vray_renderer1") prm = cls.vrayRop.parm("render_export_filepath") scenePath = prm.evalAsString() prm = cls.vrayRop.parm("render_export_mode") prm.set("Export") cls.vrayRop.render() cls.vrayRenderer = vray.VRayRenderer() cls.vrayRenderer.load(scenePath)
print("[HYPERSIM: MODIFY_VRSCENE_SAVE_GI_CACHE_FILES] Begin...") irradiance_map_file_when_rendering = os_path_module_when_rendering.join( args.shared_asset_dir_when_rendering, args.irradiance_map_name + ".vrmap") light_cache_file_when_rendering = os_path_module_when_rendering.join( args.shared_asset_dir_when_rendering, args.light_cache_name + ".vrlmap") output_dir = os.path.dirname(args.out_file) if output_dir == "": output_dir = "." if not os.path.exists(output_dir): os.makedirs(output_dir) if not os.path.exists(args.shared_asset_dir): os.makedirs(args.shared_asset_dir) renderer = vray.VRayRenderer() def log_msg(renderer, message, level, instant): print(str(instant) + " " + str(level) + " " + message) renderer.setOnLogMessage(log_msg) renderer.load(args.in_file) time.sleep(0.5) # SettingsLightCache settings_light_cache = renderer.classes.SettingsLightCache.getInstanceOrCreate( ) settings_light_cache.mode = 0 # single frame settings_light_cache.file = ""
def getVRay(): global vr if not vr: vr = vray.VRayRenderer() return vr