struct node
{
virtual void draw() = 0;
std::vector<node*> children;
};

std::vector<node> scene;