RenderConfig::RenderConfig(const luxrays::Properties &props, Scene *scn) : scene(scn) { InitDefaultProperties(); SLG_LOG("Configuration: "); const vector<string> &keys = props.GetAllNames(); for (vector<string>::const_iterator i = keys.begin(); i != keys.end(); ++i) SLG_LOG(" " << props.Get(*i)); // Set the Scene if (scn) { scene = scn; allocatedScene = false; } else { // Create the Scene const string defaultSceneName = GetDefaultProperties().Get("scene.file").Get<string>(); const string sceneFileName = props.Get(Property("scene.file")(defaultSceneName)).Get<string>(); const float defaultImageScale = GetDefaultProperties().Get("images.scale").Get<float>(); const float imageScale = Max(.01f, props.Get(Property("images.scale")(defaultImageScale)).Get<float>()); scene = new Scene(sceneFileName, imageScale); allocatedScene = true; } // Parse the configuration Parse(props); }
LightStrategyType LightStrategy::GetType(const luxrays::Properties &cfg) { const string type = cfg.Get(Property("lightstrategy.type")(LightStrategyLogPower::GetObjectTag())).Get<string>(); return String2LightStrategyType(type); }