const RenderSettings = { obj_settings: null, init: () => { RenderSettings.obj_settings = { str_engine: "CYCLES", nb_samples: 128, str_device: "GPU", is_denoise: true, is_film_transparent: false, nb_resolution_percentage: 100, }; }, set_from_blend: (obj_render) => { if (!obj_render) { return; } let obj_s = RenderSettings.obj_settings; obj_s.str_engine = obj_render.str_engine || "CYCLES"; obj_s.nb_resolution_percentage = obj_render.nb_resolution_percentage || 100; obj_s.is_film_transparent = !!obj_render.is_film_transparent; if (obj_render.str_cycles_device) { obj_s.str_device = obj_render.str_cycles_device; } if (obj_render.is_cycles_denoise !== undefined) { obj_s.is_denoise = obj_render.is_cycles_denoise; } if (obj_render.nb_cycles_samples !== undefined) { obj_s.nb_samples = obj_render.nb_cycles_samples; } else if (obj_render.nb_eevee_samples !== undefined) { obj_s.nb_samples = obj_render.nb_eevee_samples; } RenderSettings.render(); }, set_from_config: (obj_config) => { if (!obj_config || !obj_config.obj_render_settings) { return; } let obj_src = obj_config.obj_render_settings; let obj_s = RenderSettings.obj_settings; if (obj_src.str_engine !== undefined) { obj_s.str_engine = obj_src.str_engine; } if (obj_src.nb_samples !== undefined) { obj_s.nb_samples = obj_src.nb_samples; } if (obj_src.str_device !== undefined) { obj_s.str_device = obj_src.str_device; } if (obj_src.is_denoise !== undefined) { obj_s.is_denoise = obj_src.is_denoise; } if (obj_src.is_film_transparent !== undefined) { obj_s.is_film_transparent = obj_src.is_film_transparent; } if (obj_src.nb_resolution_percentage !== undefined) { obj_s.nb_resolution_percentage = obj_src.nb_resolution_percentage; } RenderSettings.render(); }, get_settings: () => { return Object.assign({}, RenderSettings.obj_settings); }, render: () => { let obj_container = document.getElementById("container_render_settings"); if (!obj_container) { return; } let obj_s = RenderSettings.obj_settings; let is_cycles = obj_s.str_engine === "CYCLES"; let str_html = '