diff --git a/demo/main.cpp b/demo/main.cpp
index 8b80be9d5f0de604366367e2fbdbb0c972d35fb9..70da07a76d99db4e8a5ac9a2f3f9fb31a1ff03d4 100644
--- a/demo/main.cpp
+++ b/demo/main.cpp
@@ -15,6 +15,8 @@
 
 #include <imgui.h>
 
+constexpr bool showNormals = false;
+
 template <typename T> int sgn(T val) {
     return (T(0) < val) - (val < T(0));
 }
@@ -326,11 +328,13 @@ int main(int argc, char* argv[]) {
 		meshRenderer.render(win, ecs, camEnt, 16.0f);
 
 		// render using normals shader
-		for ( auto renderable : renderables ) {
-			auto token = ecs.getComponent<fggl::gfx::MeshToken>(renderable);
-			token->pipeline = shaderNormals;
+		if ( showNormals ) {
+			for ( auto renderable : renderables ) {
+				auto token = ecs.getComponent<fggl::gfx::MeshToken>(renderable);
+				token->pipeline = shaderNormals;
+			}
+			meshRenderer.render(win, ecs, camEnt, 16.0f);
 		}
-		meshRenderer.render(win, ecs, camEnt, 16.0f);
 
 		debug.draw();
 		win.swap();