#include "scene_impl.h" #include "memory.h" #include "node_impl.h" #include Scene* gfx_make_scene(void) { Scene* scene = mem_alloc_scene(); scene->root = mem_get_node_index(gfx_make_node()); return scene; } void gfx_destroy_scene(Scene** scene) { assert(scene); if (*scene) { SceneNode* node = mem_get_node((*scene)->root); gfx_destroy_node(&node); mem_free_scene(scene); } } const SceneNode* gfx_get_scene_root(const Scene* scene) { assert(scene); return mem_get_node(scene->root); } SceneNode* gfx_get_scene_root_mut(Scene* scene) { assert(scene); return (SceneNode*)gfx_get_scene_root(scene); }