diff --git a/main/Scene-load.cc b/main/Scene-load.cc index 0eaa465..94e3ae6 100644 --- a/main/Scene-load.cc +++ b/main/Scene-load.cc @@ -99,3 +99,25 @@ void Scene::processChildren(refptr node) } } +refptr processMaterial(refptr node) +{ + if (typeid(*node) != typeid(MaterialNode)) + return refptr(NULL); + + refptr material = new Material(); + + /* TODO: finish */ + + return material; +} + +refptr processShape(refptr node) +{ + /* TODO: finish */ +} + +refptr processLight(refptr node) +{ + /* TODO: finish */ +} + diff --git a/main/Scene.h b/main/Scene.h index 2666573..5953bc8 100644 --- a/main/Scene.h +++ b/main/Scene.h @@ -53,6 +53,9 @@ class Scene void load(const char * filename); void processNode(refptr node); void processChildren(refptr node); + refptr processMaterial(refptr node); + refptr processShape(refptr node); + refptr processLight(refptr node); /* rendering parameters */ int m_width;