better scene data structure