simple ubershader system, reflection debugging
[laserbrain_demo] / src / scene.cc
index adc90fb..10304f6 100644 (file)
@@ -2,6 +2,7 @@
 #include "scene.h"
 #include "objmesh.h"
 #include "app.h"
+#include "dbg_gui.h"
 
 static void destroy_node_tree(SceneNode *n);
 
@@ -202,11 +203,10 @@ static SceneNode *find_node_rec(SceneNode *tree, const std::regex &re)
        if(std::regex_match(tree->get_name(), re)) {
                return tree;
        }
-       debug_log("no match: \"%s\"\n", tree->get_name());
 
        int num = tree->get_num_children();
        for(int i=0; i<num; i++) {
-               SceneNode *n = find_node_rec(tree, re);
+               SceneNode *n = find_node_rec(tree->get_child(i), re);
                if(n) return n;
        }
        return 0;
@@ -245,7 +245,7 @@ std::list<SceneNode*> Scene::match_nodes(const char *qstr) const
                std::regex re{qstr};
                find_nodes_rec(&res, nodes, re);
        }
-       return std::move(res);
+       return res;
 }
 
 Scene *Scene::extract_nodes(const char *qstr)