std::auto_ptr<MasterRenderer> create_master_renderer_with_tile_callback(Project* project,
                                                                         const bpy::dict& params,
                                                                         IRendererController* render_controller,
                                                                         ITileCallback* tile_callback)
 {
     return std::auto_ptr<MasterRenderer>(new MasterRenderer(*project,
                                                             bpy_dict_to_param_array(params),
                                                             render_controller,
                                                             tile_callback));
 }
 auto_release_ptr<ObjectInstance> create_obj_instance_with_back_mat(const std::string& name,
                                                                    const bpy::dict& params,
                                                                    const std::string& object_name,
                                                                    const UnalignedTransformd44& transform,
                                                                    const bpy::dict& front_material_mappings,
                                                                    const bpy::dict& back_material_mappings)
 {
     return ObjectInstanceFactory::create(name.c_str(),
                                          bpy_dict_to_param_array(params),
                                          object_name.c_str(),
                                          transform.as_foundation_transform(),
                                          bpy_dict_to_dictionary(front_material_mappings).strings(),
                                          bpy_dict_to_dictionary(back_material_mappings).strings());
 }
    auto_release_ptr<EnvironmentShader> create_environment_shader(const std::string& env_shader_type,
                                                                  const std::string& name,
                                                                  const bpy::dict& params)
    {
        EnvironmentShaderFactoryRegistrar factories;
        const IEnvironmentShaderFactory* factory = factories.lookup(env_shader_type.c_str());

        if (factory)
            return factory->create(name.c_str(), bpy_dict_to_param_array(params));
        else
        {
            PyErr_SetString(PyExc_RuntimeError, "EnvironmentShader type not found");
            bpy::throw_error_already_set();
        }

        return auto_release_ptr<EnvironmentShader>();
    }
Ejemplo n.º 4
0
    auto_release_ptr<Light> create_light(const std::string& light_type,
                                         const std::string& name,
                                         const bpy::dict& params)
    {
        LightFactoryRegistrar factories;
        const ILightFactory* factory = factories.lookup(light_type.c_str());

        if (factory)
            return factory->create(name.c_str(), bpy_dict_to_param_array(params));
        else
        {
            PyErr_SetString(PyExc_RuntimeError, "Light type not found");
            bpy::throw_error_already_set();
        }

        return auto_release_ptr<Light>();
    }
 void entity_set_parameters(Entity* e, const bpy::dict& params)
 {
     e->get_parameters() = bpy_dict_to_param_array(params);
 }
Ejemplo n.º 6
0
 auto_release_ptr<Material> create_material(const string& name, const bpy::dict& params)
 {
     return GenericMaterialFactory().create(name.c_str(), bpy_dict_to_param_array(params));
 }
 void master_renderer_set_parameters(MasterRenderer* m, const bpy::dict& params)
 {
     m->get_parameters() = bpy_dict_to_param_array(params);
 }
 std::auto_ptr<MasterRenderer> create_master_renderer(Project* project,
                                                      const bpy::dict& params,
                                                      IRendererController* render_controller)
 {
     return std::auto_ptr<MasterRenderer>(new MasterRenderer(*project, bpy_dict_to_param_array(params), render_controller));
 }
Ejemplo n.º 9
0
 auto_release_ptr<Frame> create_frame(const std::string& name, const bpy::dict& params)
 {
     return FrameFactory::create(name.c_str(), bpy_dict_to_param_array(params));
 }
 auto_release_ptr<Environment> create_environment(const std::string& name, const bpy::dict& params)
 {
     return EnvironmentFactory::create(name.c_str(), bpy_dict_to_param_array(params));
 }
Ejemplo n.º 11
0
 auto_release_ptr<Configuration> create_config_with_params(
     const std::string&                  name,
     const bpy::dict&                    params)
 {
     return ConfigurationFactory::create(name.c_str(), bpy_dict_to_param_array(params));
 }