diff --git a/demo/demo/rollball.cpp b/demo/demo/rollball.cpp
index 7236d40792623910f059440061fcbf818edec93d..88cc9269175199e4af3d489b866edfbb5b338063 100644
--- a/demo/demo/rollball.cpp
+++ b/demo/demo/rollball.cpp
@@ -127,6 +127,7 @@ namespace demo {
 		Game::activate();
 
 		fggl::debug::log(fggl::debug::Level::info, "RollBall::activate()");
+
 		auto* assetLoader = m_owner.service<fggl::assets::Loader>();
 		assetLoader->load("rollball.yml", fggl::entity::PROTOTYPE_ASSET);
 
diff --git a/fggl/gfx/ogl4/models.cpp b/fggl/gfx/ogl4/models.cpp
index 1149e911230e172575280e6edb1c4bcf5d93d755..5a99963e95cb52b1d0aff0ca4ad6ec3fe911e589 100644
--- a/fggl/gfx/ogl4/models.cpp
+++ b/fggl/gfx/ogl4/models.cpp
@@ -74,6 +74,8 @@ namespace fggl::gfx::ogl4 {
 			}
 
 			auto& meshComp = world.get<data::StaticMesh>(renderable);
+			auto& modelComp = world.add<StaticModel>(renderable);
+
 			auto shader = m_phong;
 			try {
 				shader = std::make_shared<ogl::Shader>( m_shaders->get( meshComp.pipeline ) );
@@ -81,7 +83,6 @@ namespace fggl::gfx::ogl4 {
 				debug::log(debug::Level::warning, "Could not find shader: {}", meshComp.pipeline);
 			}
 
-			auto& modelComp = world.add<StaticModel>(renderable);
 			setupComponent(modelComp, shader, meshComp.mesh);
 			debug::log(debug::Level::info, "Added static mesh to {}", (uint64_t)renderable);
 		}