3 static void destroy_node_tree(SceneNode *n);
5 Scene::Scene(TextureSet *tset)
13 texset = new TextureSet;
25 destroy_node_tree(nodes);
34 // Scene::load defined in sceneload.cc
36 void Scene::update(float dt)
42 int nobj = objects.size();
43 for(int i=0; i<nobj; i++) {
44 if(!objects[i]->node) {
45 // only update objects which don't belong to a scenegraph node
46 // to avoid updating objects twice
47 objects[i]->update(dt);
52 void Scene::draw() const
54 if(!objects.empty()) {
55 int nobj = objects.size();
56 for(int i=0; i<nobj; i++) {
60 int nmesh = meshes.size();
61 for(int i=0; i<nmesh; i++) {
67 static void destroy_node_tree(SceneNode *n)
71 int nsub = n->get_num_children();
72 for(int i=0; i<nsub; i++) {
73 destroy_node_tree(n->get_child(i));