]> git.tdb.fi Git - libs/gl.git/blobdiff - source/render/scene.cpp
Move lighting calculations to world space
[libs/gl.git] / source / render / scene.cpp
index b8cdc04516191226b76fd9a89f16b65721106b70..70a9e94b6c354d2519b5b49041b085dd3fd70497 100644 (file)
@@ -24,7 +24,7 @@ bool Scene::setup_frustum(const Renderer &renderer) const
        if(!camera)
                return false;
 
-       culling_matrix = renderer.get_matrix();
+       culling_matrix = camera->get_view_matrix()*renderer.get_matrix();
 
        if(camera->is_orthographic())
        {
@@ -111,6 +111,7 @@ void Scene::Loader::init()
 {
        add("object", &Loader::object);
        add("object", &Loader::object_tagged);
+       add("scene", &Loader::scene);
 }
 
 void Scene::Loader::object(const string &n)
@@ -128,6 +129,11 @@ void Scene::Loader::object_tagged(const string &n, const string &t)
        obj.owned_data.push_back(inst.release());
 }
 
+void Scene::Loader::scene(const string &n)
+{
+       obj.add(get_collection().get<Scene>(n));
+}
+
 
 DataFile::Loader::ActionMap Scene::GenericLoader::shared_actions;