diff --git a/CMakeLists.txt b/CMakeLists.txt
index 58dcbafdf8abb41a1517d4eaaef72a6653f792ae..d14d13ea7c73d582141a1147e41f37e98b8d9698 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -420,7 +420,8 @@ cmake_minimum_required(VERSION 3.0)
 
 project(OpenGL_Praktikum)
 
-set(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/src/main.cpp")
+set(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/src/main.cpp"
+)
 set(INCLUDES "${CMAKE_CURRENT_SOURCE_DIR}/src")
 
 ##-------------------------------add your source files here-------------------------------------------------------------
diff --git a/assets/shaders/vertex.glsl b/assets/shaders/vertex.glsl
index b15cfe23675a177254fa5a2bcbedbddc406d17e2..6b7fd5f43270f3c188322babe765a840c97d69c4 100644
--- a/assets/shaders/vertex.glsl
+++ b/assets/shaders/vertex.glsl
@@ -9,8 +9,12 @@ out mat3 animationMatrix;
 uniform mat4 model;
 uniform mat3 animationMatrixFromUniform;
 
+uniform mat4 view;
+uniform mat4 projection;
+
 void main(){
     colorVS = colorRGB;
     animationMatrix = animationMatrixFromUniform;
-    gl_Position = model * vec4(pos.x, pos.y, pos.z, 1.0);
+    gl_Position = projection * view * model * vec4(pos.x, pos.y, pos.z, 1.0);
+    //gl_Position = model * vec4(pos.x, pos.y, pos.z, 1.0);
 }
diff --git a/cmake-build-debug/.cmake/api/v1/reply/codemodel-v2-5ed625bc681e4acff5f2.json b/cmake-build-debug/.cmake/api/v1/reply/codemodel-v2-ae6ced8114156d040ca2.json
similarity index 98%
rename from cmake-build-debug/.cmake/api/v1/reply/codemodel-v2-5ed625bc681e4acff5f2.json
rename to cmake-build-debug/.cmake/api/v1/reply/codemodel-v2-ae6ced8114156d040ca2.json
index 1e5c861a4852c289c0bd19c232ab00746fe0296f..65abdb00fedefbfcb08226d6b9f228dc996fd517 100644
--- a/cmake-build-debug/.cmake/api/v1/reply/codemodel-v2-5ed625bc681e4acff5f2.json
+++ b/cmake-build-debug/.cmake/api/v1/reply/codemodel-v2-ae6ced8114156d040ca2.json
@@ -312,7 +312,7 @@
 				{
 					"directoryIndex" : 0,
 					"id" : "OpenGL_Praktikum::@6890427a1f51a3e7e1df",
-					"jsonFile" : "target-OpenGL_Praktikum-Debug-758790e1d4c23c530eac.json",
+					"jsonFile" : "target-OpenGL_Praktikum-Debug-152779872fcd5e3f1e85.json",
 					"name" : "OpenGL_Praktikum",
 					"projectIndex" : 0
 				},
diff --git a/cmake-build-debug/.cmake/api/v1/reply/index-2025-05-10T19-06-07-0649.json b/cmake-build-debug/.cmake/api/v1/reply/index-2025-05-17T17-00-05-0247.json
similarity index 93%
rename from cmake-build-debug/.cmake/api/v1/reply/index-2025-05-10T19-06-07-0649.json
rename to cmake-build-debug/.cmake/api/v1/reply/index-2025-05-17T17-00-05-0247.json
index 41a8a3fb6e5bd7b5557f4a1d6f2a678ff1e7975d..55e6af402cf6f1cbcee19e789498a666e10b1c61 100644
--- a/cmake-build-debug/.cmake/api/v1/reply/index-2025-05-10T19-06-07-0649.json
+++ b/cmake-build-debug/.cmake/api/v1/reply/index-2025-05-17T17-00-05-0247.json
@@ -26,7 +26,7 @@
 	"objects" : 
 	[
 		{
-			"jsonFile" : "codemodel-v2-5ed625bc681e4acff5f2.json",
+			"jsonFile" : "codemodel-v2-ae6ced8114156d040ca2.json",
 			"kind" : "codemodel",
 			"version" : 
 			{
@@ -86,7 +86,7 @@
 		},
 		"codemodel-v2" : 
 		{
-			"jsonFile" : "codemodel-v2-5ed625bc681e4acff5f2.json",
+			"jsonFile" : "codemodel-v2-ae6ced8114156d040ca2.json",
 			"kind" : "codemodel",
 			"version" : 
 			{
diff --git a/cmake-build-debug/.cmake/api/v1/reply/target-OpenGL_Praktikum-Debug-758790e1d4c23c530eac.json b/cmake-build-debug/.cmake/api/v1/reply/target-OpenGL_Praktikum-Debug-152779872fcd5e3f1e85.json
similarity index 99%
rename from cmake-build-debug/.cmake/api/v1/reply/target-OpenGL_Praktikum-Debug-758790e1d4c23c530eac.json
rename to cmake-build-debug/.cmake/api/v1/reply/target-OpenGL_Praktikum-Debug-152779872fcd5e3f1e85.json
index 3ed25002196cbb56d519eca24a0cae4860dae2b8..f929c6910715860c5581a652bca0dfde087bb826 100644
--- a/cmake-build-debug/.cmake/api/v1/reply/target-OpenGL_Praktikum-Debug-758790e1d4c23c530eac.json
+++ b/cmake-build-debug/.cmake/api/v1/reply/target-OpenGL_Praktikum-Debug-152779872fcd5e3f1e85.json
@@ -30,7 +30,7 @@
 			{
 				"command" : 0,
 				"file" : 0,
-				"line" : 470,
+				"line" : 471,
 				"parent" : 0
 			},
 			{
@@ -45,13 +45,13 @@
 			{
 				"command" : 1,
 				"file" : 0,
-				"line" : 476,
+				"line" : 477,
 				"parent" : 0
 			},
 			{
 				"command" : 2,
 				"file" : 0,
-				"line" : 471,
+				"line" : 472,
 				"parent" : 0
 			}
 		]
@@ -143,15 +143,15 @@
 	[
 		{
 			"backtrace" : 4,
-			"id" : "stb::@9a2ae61009350e897074"
+			"id" : "glfw::@3be6e5b4e7ef208431a5"
 		},
 		{
 			"backtrace" : 4,
-			"id" : "glfw::@3be6e5b4e7ef208431a5"
+			"id" : "glew_s::@717d470b011500e00557"
 		},
 		{
 			"backtrace" : 4,
-			"id" : "glew_s::@717d470b011500e00557"
+			"id" : "stb::@9a2ae61009350e897074"
 		}
 	],
 	"id" : "OpenGL_Praktikum::@6890427a1f51a3e7e1df",
diff --git a/cmake-build-debug/.ninja_deps b/cmake-build-debug/.ninja_deps
index d7abfdddba60a1bcbee1f69e642d7f746e59062d..a079bd81ee1eb79c30622e299e89062803103b37 100644
Binary files a/cmake-build-debug/.ninja_deps and b/cmake-build-debug/.ninja_deps differ
diff --git a/cmake-build-debug/.ninja_log b/cmake-build-debug/.ninja_log
index 185ccd3bd0fcd92650d8c182d65efe93dc8ecf32..f23e324f0d5bdda08cdbf3f328c8e5520246be44 100644
--- a/cmake-build-debug/.ninja_log
+++ b/cmake-build-debug/.ninja_log
@@ -1,24 +1,24 @@
 # ninja log v5
-3253	7539	7686065174954045	CMakeFiles/OpenGL_Praktikum.dir/framework/OBJLoader.cpp.obj	d2f9fcf70f53a76f
-11	2397	7686065123684395	CMakeFiles/OpenGL_Praktikum.dir/src/Framework/SceneElements/Transform.cpp.obj	79d1706bd494aca2
 6831	8361	7686065183312964	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/win32_tls.c.obj	37adbcd9a1b59fc1
 2402	5124	7686065150930272	CMakeFiles/OpenGL_Praktikum.dir/framework/Input.cpp.obj	3aa35e4a541b37cb
-17	2775	7686065127464165	CMakeFiles/OpenGL_Praktikum.dir/src/Framework/Assets/ShaderProgram.cpp.obj	636d8f8ef2520675
+3253	7539	7686065174954045	CMakeFiles/OpenGL_Praktikum.dir/framework/OBJLoader.cpp.obj	d2f9fcf70f53a76f
+11	2397	7686065123684395	CMakeFiles/OpenGL_Praktikum.dir/src/Framework/SceneElements/Transform.cpp.obj	79d1706bd494aca2
 9748	9859	7686065198313281	libs/glfw-3.2.1/src/libglfw3.a	7f148bdc7acbce15
-28	3252	7686065132231581	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Window.cpp.obj	ab9d4e71a8c90cb0
+12	2101	7692151093484304	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Window.cpp.obj	ab9d4e71a8c90cb0
+17	2775	7686065127464165	CMakeFiles/OpenGL_Praktikum.dir/src/Framework/Assets/ShaderProgram.cpp.obj	636d8f8ef2520675
 3	3331	7686065132987911	CMakeFiles/OpenGL_Praktikum.dir/src/Framework/Assets/AssetManager.cpp.obj	a3cf3a9a87bd79b4
-22	3445	7686065134113940	CMakeFiles/OpenGL_Praktikum.dir/framework/OpenGLWindow.cpp.obj	34ea2011e57f2170
 7540	9264	7686065192309264	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/win32_window.c.obj	f3663704c5e7b483
-8	2508	7686071019642495	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+22	3445	7686065134113940	CMakeFiles/OpenGL_Praktikum.dir/framework/OpenGLWindow.cpp.obj	34ea2011e57f2170
 8264	10755	7686065207221889	libs/glew-2.1.0/build/cmake/CMakeFiles/glew_s.dir/__/__/src/glew.c.obj	49302988e0a6d721
-3446	5087	7686065150584678	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/context.c.obj	25e8349415fc9756
+19	2425	7692151096724377	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
 6279	7932	7686065179033527	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/window.c.obj	4f7adc10a9b5c100
+3446	5087	7686065150584678	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/context.c.obj	25e8349415fc9756
 3713	5273	7686065152431421	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/init.c.obj	c23d9b4a554c4f26
-2777	5359	7686065153297237	CMakeFiles/OpenGL_Praktikum.dir/framework/glerror.cpp.obj	283e4f1da4998727
 5360	6841	7686065168085346	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/vulkan.c.obj	d183a1e3d22ea511
-3331	6279	7686065162499084	CMakeFiles/OpenGL_Praktikum.dir/src/main.cpp.obj	195d9e105c20c9dc
-5088	6646	7686065166162948	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/monitor.c.obj	7ef9e67f35f28cd5
+2777	5359	7686065153297237	CMakeFiles/OpenGL_Praktikum.dir/framework/glerror.cpp.obj	283e4f1da4998727
+26	2020	7692151092685063	CMakeFiles/OpenGL_Praktikum.dir/src/main.cpp.obj	195d9e105c20c9dc
 8245	9748	7686065197204313	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/input.c.obj	e27f20b419f1800e
+5088	6646	7686065166162948	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/monitor.c.obj	7ef9e67f35f28cd5
 5125	6673	7686065166335158	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/win32_joystick.c.obj	82d66a06693256c5
 5273	6831	7686065167859215	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/win32_monitor.c.obj	c9b9fd7628118e17
 6673	8245	7686065182160366	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/win32_time.c.obj	a83aac5291489e
@@ -26,8 +26,52 @@
 6842	8491	7686065184420325	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/egl_context.c.obj	a926327ff0927a5f
 8361	8516	7686065184908185	libs/glew-2.1.0/build/cmake/CMakeFiles/glew_s.dir/__/glew.rc.obj	b31ab018f98307f0
 8516	8843	7686065188136532	libs/stb/CMakeFiles/stb.dir/stb_image_write.c.obj	3526fea5ed75b7b5
+4	749	7692044051857988	build.ninja	e200cd586be24cf3
 7932	9454	7686065194250355	libs/glfw-3.2.1/src/CMakeFiles/glfw.dir/wgl_context.c.obj	6893a4a99f5b69c5
 8492	9494	7686065194635396	libs/stb/CMakeFiles/stb.dir/stb_image.c.obj	e492735f915a3aa
 9494	9620	7686065195935485	libs/stb/libstb.a	5abafcb88860c9c8
 10756	10849	7686065208208944	lib/libglew32d.a	bc6e147c3a6b7648
-2508	3061	7686071025109340	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+2425	2989	7692151102308506	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+13	74	7686767474063569	CMakeFiles/OpenGL_Praktikum.dir/src/Game/wajdi.cpp.obj	20b3fc935b3f3aa4
+15	2466	7692151568551477	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2467	3030	7692151574140461	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+12	2083	7692155176160940	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2083	2649	7692155181728914	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+14	2113	7692155970141004	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2113	2700	7692155975890811	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+28	2559	7692157589710965	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2559	3193	7692157596008471	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+9	2460	7692157901324491	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2461	3203	7692157908696680	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+10	2329	7692160653427143	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2329	2961	7692160659691101	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+30	2669	7692161048578145	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2669	3236	7692161054181193	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+27	2496	7692161519427577	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2497	3103	7692161525414993	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+10	2358	7692161639874414	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2358	2908	7692161645318503	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+13	2050	7692162128447673	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2050	2602	7692162133907493	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+9	2270	7692162504786348	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2270	2839	7692162510417811	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+7	2531	7692162707113644	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2531	3075	7692162712493091	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+7	2248	7692163390809165	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2249	2890	7692163397165142	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+34	2492	7692163725432711	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2492	3133	7692163731775177	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+8	2524	7692164167209100	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2525	3114	7692164173068653	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+12	2145	7692164597182390	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2145	2804	7692164603729082	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+10	2415	7692165141355730	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2415	2983	7692165147010564	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+13	2495	7692165303779516	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2496	3156	7692165310294970	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+8	2352	7692165385505571	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2352	2939	7692165391324594	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+7	2256	7692165646149942	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2256	2846	7692165651998118	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
+7	2467	7692166031829316	CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj	a89dc091bea583c7
+2468	3028	7692166037380832	OpenGL_Praktikum.exe	9fec4fbaeb613d2c
diff --git a/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj b/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj
index 67795678314e5bc83695adb7bc30148796a9ee8b..33a9caa20ea58139195bf02f4eef3cf16a0cf828 100644
Binary files a/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj and b/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/Scene.cpp.obj differ
diff --git a/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/Window.cpp.obj b/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/Window.cpp.obj
index 56837564423acbb330ce02e934582afe56c4d7a5..62d8ce2a6fc193e2fe81d1ac8d2508b42698506a 100644
Binary files a/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/Window.cpp.obj and b/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/Window.cpp.obj differ
diff --git a/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/wajdi.cpp.obj b/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/wajdi.cpp.obj
new file mode 100644
index 0000000000000000000000000000000000000000..384b50926b2501fa191fd04d22ed86788d4d0e45
Binary files /dev/null and b/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/Game/wajdi.cpp.obj differ
diff --git a/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/main.cpp.obj b/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/main.cpp.obj
index cf16ea514f85f045f6ed788138b5392215277ee5..7f2cfba266c50ad06f98a860eda77f62c8ee5905 100644
Binary files a/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/main.cpp.obj and b/cmake-build-debug/CMakeFiles/OpenGL_Praktikum.dir/src/main.cpp.obj differ
diff --git a/cmake-build-debug/OpenGL_Praktikum.exe b/cmake-build-debug/OpenGL_Praktikum.exe
index aa10cb899e3c523ceed59c7156577dfb33fc2d52..67f00af923cacbe390a6ce3e2950ced53075ac60 100644
Binary files a/cmake-build-debug/OpenGL_Praktikum.exe and b/cmake-build-debug/OpenGL_Praktikum.exe differ
diff --git a/cmake-build-debug/Testing/Temporary/LastTest.log b/cmake-build-debug/Testing/Temporary/LastTest.log
index b3986faf5774a17eb240374fdcf3dced30a6d37e..7d5f7284f62cd711d007f337c4630186f8a8a241 100644
--- a/cmake-build-debug/Testing/Temporary/LastTest.log
+++ b/cmake-build-debug/Testing/Temporary/LastTest.log
@@ -1,3 +1,3 @@
-Start testing: May 10 21:06 Mitteleurop�ische Sommerzeit
+Start testing: May 17 22:23 Mitteleurop�ische Sommerzeit
 ----------------------------------------------------------
-End testing: May 10 21:06 Mitteleurop�ische Sommerzeit
+End testing: May 17 22:23 Mitteleurop�ische Sommerzeit
diff --git a/cmake-build-debug/assets/shaders/vertex.glsl b/cmake-build-debug/assets/shaders/vertex.glsl
index b15cfe23675a177254fa5a2bcbedbddc406d17e2..6b7fd5f43270f3c188322babe765a840c97d69c4 100644
--- a/cmake-build-debug/assets/shaders/vertex.glsl
+++ b/cmake-build-debug/assets/shaders/vertex.glsl
@@ -9,8 +9,12 @@ out mat3 animationMatrix;
 uniform mat4 model;
 uniform mat3 animationMatrixFromUniform;
 
+uniform mat4 view;
+uniform mat4 projection;
+
 void main(){
     colorVS = colorRGB;
     animationMatrix = animationMatrixFromUniform;
-    gl_Position = model * vec4(pos.x, pos.y, pos.z, 1.0);
+    gl_Position = projection * view * model * vec4(pos.x, pos.y, pos.z, 1.0);
+    //gl_Position = model * vec4(pos.x, pos.y, pos.z, 1.0);
 }
diff --git a/cmake-build-debug/perflog.csv b/cmake-build-debug/perflog.csv
index 4f2a82e2a76ec9a93532e77ab3b2eb3c00bda01c..feeaef6cfd6dddf34c1365b7fe0f79aa1dc63c2f 100644
--- a/cmake-build-debug/perflog.csv
+++ b/cmake-build-debug/perflog.csv
@@ -1,10 +1,50 @@
-6.96119,11.3009,143.654,88.4885
-6.92979,8.0036,144.305,124.944
-6.93685,8.7478,144.158,114.314
-6.9352,10.9572,144.192,91.2642
-7.0332,12.9953,142.183,76.9509
-6.93524,9.5856,144.191,104.323
-6.9374,7.3916,144.146,135.289
-7.03401,13.3142,142.166,75.1078
-6.9315,7.7876,144.269,128.409
-6.93496,7.4632,144.197,133.991
+9.55332,16.1199,104.676,62.0351
+8.37541,17.7173,119.397,56.442
+8.21206,17.0291,121.772,58.723
+11.5022,21.1709,86.94,47.2346
+11.3184,20.3647,88.3515,49.1046
+11.0885,17.6205,90.1838,56.7521
+11.2509,21.0727,88.8817,47.4548
+11.581,20.8078,86.3487,48.0589
+11.1825,17.8693,89.4253,55.9619
+11.3275,20.6107,88.281,48.5185
+10.7088,17.8789,93.3808,55.9319
+11.771,20.5132,84.9544,48.7491
+13.0609,20.7399,76.5641,48.2162
+228.782,6710.84,4.37098,0.149013
+13.6825,25.3838,73.086,39.3952
+10.9025,20.418,91.7217,48.9764
+10.5033,17.9763,95.2086,55.6288
+10.6172,13.605,94.1864,73.5024
+10.7801,17.5242,92.7634,57.0639
+10.6972,17.2651,93.482,57.9203
+10.8364,20.549,92.2819,48.6642
+10.626,17.5531,94.1087,56.97
+10.9303,20.8172,91.4891,48.0372
+11.011,17.7004,90.8185,56.4959
+11.0069,17.5076,90.8523,57.1181
+11.1556,17.2654,89.6411,57.9193
+10.8597,17.9812,92.0838,55.6136
+10.9989,20.5644,90.9185,48.6277
+10.7732,21.0052,92.8228,47.6073
+11.2493,20.7625,88.8945,48.1638
+10.9407,20.8895,91.4019,47.8709
+7.72728,18.2588,129.412,54.7681
+9.30915,13.8221,107.421,72.3479
+10.7099,17.8313,93.3714,56.0812
+10.5412,14.0087,94.8659,71.3842
+10.9238,20.9154,91.5432,47.8117
+10.7064,17.6518,93.4025,56.6514
+10.6996,13.8318,93.4611,72.2972
+10.6992,17.3903,93.4652,57.5033
+10.5488,14.003,94.7974,71.4133
+8.4931,13.8159,117.743,72.3804
+10.7055,18.2899,93.4103,54.675
+10.6145,13.8521,94.2105,72.1912
+12.2765,17.8747,81.4562,55.945
+10.6862,14.2372,93.5789,70.2385
+10.853,17.5068,92.1405,57.1207
+12.9229,14.9633,77.3818,66.8302
+11.5691,26.8532,86.437,37.2395
+10.8311,20.3933,92.3267,49.0357
+14.0504,141.496,71.1726,7.06731
diff --git a/src/Game/Scene.cpp b/src/Game/Scene.cpp
index 72654cb4d5c92b8d026c4a45281a59c8f4e5064b..6eaf91907a63fc37cadbd7d3e3d30f93654d7882 100644
--- a/src/Game/Scene.cpp
+++ b/src/Game/Scene.cpp
@@ -9,7 +9,6 @@
 
 Scene::Scene(OpenGLWindow * window) :m_window(window){
     assert(window != nullptr);
-
 }
 
 Scene::~Scene(){
@@ -54,6 +53,131 @@ void createAndBind_VBO_VAO_IBO(ObjectBuffer& objectBuffer){
 }
 
 
+
+void drawObject(ObjectBuffer& obj){
+    glBindVertexArray(obj.vaoID);
+    glDrawElements(GL_TRIANGLES, obj.indicesLength, GL_UNSIGNED_INT, 0);
+    glBindVertexArray(0);
+}
+
+glm::vec3 setRotationAxe(float angle,char axe='x'){
+    if (axe == 'x') {
+        return {glm::radians(angle),0.0f,0.0f};
+    }else if (axe == 'y'){
+        return {0.0f,glm::radians(angle),0.0f};
+    }else if(axe == 'z'){ // z
+        return {0.0f,0.0f,glm::radians(angle)};
+    }
+
+    return {0.0f,0.0f,glm::radians(angle)};
+}
+
+
+const glm::mat4 getMatrixHead() {
+    float ty= (0.375 + gap) + (0.25 * 0.5); // body + 1/2 head
+    Transform translate,scale;
+    scale.scale(glm::vec3(0.25, 0.25, roboterBodyHeadThiknessZ));
+    translate.translate(glm::vec3(0.0,ty,0.0f));
+    return translate.getTransformMatrix() * scale.getTransformMatrix();
+}
+
+const glm::mat4 getMatrixBody() {
+
+    Transform translate,scale;
+    scale.scale(glm::vec3(0.5, 0.75, roboterBodyHeadThiknessZ));
+    translate.translate(glm::vec3(0.0,0.0 , 0.0f));
+    return translate.getTransformMatrix() * scale.getTransformMatrix();
+}
+
+const glm::mat4 getMatrixLegs(char x) {
+
+
+    float legScaleX = 0.1;
+    float legScaleY = 0.4;
+    float legX = 0.12 ;
+    float legY = 0.375f  + (0.5 * legScaleY) + gap; // body + leg + gap
+
+    Transform translateR,translateL,scale;
+    scale.scale(glm::vec3(legScaleX, legScaleY, roboterLegArmShoulderThiknessZ));
+    translateR.translate(glm::vec3(legX,-legY , 0.0f));
+    translateL.translate(glm::vec3(-legX,-legY , 0.0f));
+
+    float angleShoulderAndLegs = 20.0f * sin(animationTime * rotationSpeed);
+
+    Transform rotationP;
+    rotationP.rotateAroundPoint(glm::vec3( 0.0f, (0.5 * legScaleY), 0.0f),setRotationAxe(angleShoulderAndLegs));
+    Transform rotationN;
+    rotationN.rotateAroundPoint(glm::vec3( 0.0f, (0.5 * legScaleY), 0.0f),setRotationAxe(-angleShoulderAndLegs));
+
+
+    if(x == 'l'){
+        return translateL.getTransformMatrix() * rotationN.getTransformMatrix() *  scale.getTransformMatrix();
+    }else if(x == 'r'){
+        return translateR.getTransformMatrix() * rotationP.getTransformMatrix() *  scale.getTransformMatrix();
+    }else{
+        throw("please choose R or L");
+    }
+}
+
+const glm::mat4 getMatrixShoulders(char x) {
+
+
+    float scaleX = 0.1;
+    float scaleY = 0.3;
+
+    float translateX = (0.5 * 0.5) + (scaleX * 0.5) + gap; // bodyX + shoulder
+    float translateY = (0.75 * 0.5) - (scaleY * 0.5); // bodyY - shoulderY
+    float translateZ = 0.0f;
+
+    float angleShoulderAndLegs = 20.0f * sin(animationTime * rotationSpeed);
+
+    Transform translateR,translateL,scale;
+    scale.scale(glm::vec3(scaleX, scaleY, roboterLegArmShoulderThiknessZ));
+    translateR.translate(glm::vec3(translateX,translateY , translateZ));
+    translateL.translate(glm::vec3(-translateX,translateY , translateZ));
+
+
+    Transform rotationP;
+    rotationP.rotateAroundPoint(glm::vec3( translateX, (scaleY * 0.5)+translateY, 0.0f),setRotationAxe(angleShoulderAndLegs));
+
+    Transform rotationN;
+    rotationN.rotateAroundPoint(glm::vec3( -translateX, (scaleY * 0.5)+translateY, 0.0f),setRotationAxe(-angleShoulderAndLegs));
+
+    if(x == 'l'){
+        return    rotationN.getTransformMatrix() * translateL.getTransformMatrix() * scale.getTransformMatrix();
+    }else if(x == 'r'){
+        return    rotationP.getTransformMatrix() * translateR.getTransformMatrix() * scale.getTransformMatrix();
+    }else{
+        throw("please choose R or L");
+    }
+}
+
+const glm::mat4 getMatrixArms(char x) {
+
+    // shoulder and arm have same value
+    float scaleY = 0.3;
+
+    float translateY = 1.05 + gap;
+
+    Transform translate;
+    translate.translate(glm::vec3(0.0,  - translateY, 0.0));
+
+    float rotationSpeedArm = 0.7;
+    float angle = 60.0f * (sin(animationTime * rotationSpeedArm) + 1) / 2 ;
+    Transform rotate;
+    rotate.rotateAroundPoint(glm::vec3( 0.0, 0.5, 0.0f),glm::vec3(glm::radians(-angle),0.0f,0.0f));
+
+
+    if(x == 'l'){
+        return   getMatrixShoulders('l') * translate.getTransformMatrix() * rotate.getTransformMatrix();
+    }else if(x == 'r'){
+        return   getMatrixShoulders('r') * translate.getTransformMatrix() * rotate.getTransformMatrix();
+    }else{
+        throw("please choose R or L");
+    }
+}
+
+
 bool Scene::init()
 {
     try
@@ -73,48 +197,48 @@ bool Scene::init()
 
         // define the Vertices
         obj.vertices = new float[obj.verticesLength] {
-            0.5, -0.5, -0.5, 1, 0, 0,
-            0.5, -0.5, 0.5, 0, 1, 0,
-            -0.5, -0.5, 0.5, 0, 0, 1,
-            -0.5, -0.5, -0.5, 1, 1, 0,
-            0.5, 0.5, -0.5, 1, 0, 1,
-            0.5, 0.5, 0.5, 0, 1, 1,
-            -0.5, 0.5, 0.5, 1, 1, 1,
-            -0.5, 0.5, -0.5, 0.5, 1, 0.5
+                0.5, -0.5, -0.5, 1, 0, 0,
+                0.5, -0.5, 0.5, 0, 1, 0,
+                -0.5, -0.5, 0.5, 0, 0, 1,
+                -0.5, -0.5, -0.5, 1, 1, 0,
+                0.5, 0.5, -0.5, 1, 0, 1,
+                0.5, 0.5, 0.5, 0, 1, 1,
+                -0.5, 0.5, 0.5, 1, 1, 1,
+                -0.5, 0.5, -0.5, 0.5, 1, 0.5
         };
 
         // define the Indices
         obj.indices = new unsigned int [obj.indicesLength]{
-            1, 2, 3,
-            7, 6, 5,
-            4, 5, 1,
-            5, 6, 2,
-            2, 6, 7,
-            0, 3, 7,
-            0, 1, 3,
-            4, 7, 5,
-            0, 4, 1,
-            1, 5, 2,
-            3, 2, 7,
-            4, 0, 7
+                1, 2, 3,
+                7, 6, 5,
+                4, 5, 1,
+                5, 6, 2,
+                2, 6, 7,
+                0, 3, 7,
+                0, 1, 3,
+                4, 7, 5,
+                0, 4, 1,
+                1, 5, 2,
+                3, 2, 7,
+                4, 0, 7
         };
 
 
         createAndBind_VBO_VAO_IBO(obj);
 
+
         glEnable(GL_CULL_FACE);
         glFrontFace(GL_CCW);
         glCullFace(GL_BACK);
 
-        glClearColor(0.0f, 0.0f, 0.0f, 1.0f); // Schwarz
-        glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
 
         glEnable(GL_DEPTH_TEST);
         glDepthFunc(GL_LESS);
-        glClearDepth(0.0);
+        glClearDepth(1.0f);
+
 
 
-        glDepthMask(GL_FALSE);
+        //glDepthMask(GL_FALSE);
 
         std::cout << "Scene initialization done\n";
         return true;
@@ -125,47 +249,113 @@ bool Scene::init()
     }
 }
 
-void drawObject(ObjectBuffer& obj){
-    glBindVertexArray(obj.vaoID);
-    glDrawElements(GL_TRIANGLES, obj.indicesLength, GL_UNSIGNED_INT, 0);
-    glBindVertexArray(0);
-}
-
-glm::vec3 setRotationAxe(float angle,char axe='z'){
-    if (axe == 'x') {
-        return {glm::radians(angle),0.0f,0.0f};
-    }else if (axe == 'y'){
-        return {0.0f,glm::radians(angle),0.0f};
-    }else if(axe == 'z'){ // z
-        return {0.0f,0.0f,glm::radians(angle)};
-    }
-
-    return {0.0f,0.0f,glm::radians(angle)};
-}
 
 void Scene::render(float dt)
 {
+    glClearColor(0.7f, 0.3f, 0.1f, 1.0f);
     glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
 
+    float animationSpeed = 1.00f;
+    float colorAnimValue = (sin(animationTime * animationSpeed) + 1.5f) / 2.0f; // → [0, 1]
+    glm::mat3 animationMatrixFromUniform = glm::mat3(
+            colorAnimValue + 0.9, 0.0f,         0.0f,
+            0.0f,         colorAnimValue + 0.2, 0.0f,
+            0.0f,         0.0f,         colorAnimValue + 0.4
+    );
+    m_shader->setUniform("animationMatrixFromUniform", animationMatrixFromUniform , false);
+
+    glm::mat4 view = glm::lookAt(
+            glm::vec3(3.0f, 1.0f, 2.0f), // Kameraposition für bessere Sicht
+            glm::vec3(0.0f), // Blickpunkt
+            glm::vec3(0.0f, 1.0f, 0.0f) // Up-Vector
+    );
+    m_shader->setUniform("view", view, false);
+
+    //float angleShoulderAndLegs = 10.0f * sin(animationTime * rotationSpeed);
+
+    // Projektionsmatrix (Perspektive)
+    glm::mat4 projection = glm::perspective(
+            glm::radians(45.0f),
+            800.0f/600.0f,
+            0.1f,
+            100.0f
+    );
+    m_shader->setUniform("projection", projection, false);
+
+
+    float rotationSpeedAllReboter = 0.05f;
+    float angleRotation = 360.0f * sin(animationTime * rotationSpeedAllReboter);
+    Transform rotateRoboter;
+    rotateRoboter.rotateAroundPoint(glm::vec3( 0.0f, 0.0f, 0.0f), glm::vec3(0.0f,glm::radians(angleRotation),0.0f));
+
+    // head
+    m_shader->setUniform("model", rotateRoboter.getTransformMatrix() * getMatrixHead(), false);
+    drawObject(obj);
+
+    // body
+    m_shader->setUniform("model",rotateRoboter.getTransformMatrix() * getMatrixBody(), false);
+    drawObject(obj);
+
+    // Leg R
+    m_shader->setUniform("model",rotateRoboter.getTransformMatrix() * getMatrixLegs('r'), false);
+    drawObject(obj);
+
+    // Leg L
+    m_shader->setUniform("model",rotateRoboter.getTransformMatrix() * getMatrixLegs('l'), false);
+    drawObject(obj);
+
+    // Shoulder R
+    m_shader->setUniform("model",rotateRoboter.getTransformMatrix() * getMatrixShoulders('r'), false);
+    drawObject(obj);
+
+    // Shoulder L
+    m_shader->setUniform("model",rotateRoboter.getTransformMatrix() * getMatrixShoulders('l'), false);
+    drawObject(obj);
+
+    // Arm R
+    m_shader->setUniform("model",rotateRoboter.getTransformMatrix() * getMatrixArms('r'), false);
+    drawObject(obj);
+
+    // Arm L
+    m_shader->setUniform("model",rotateRoboter.getTransformMatrix() * getMatrixArms('l'), false);
+    drawObject(obj);
+
+
+
+
+
+
+
+
+
+
+
+
+
+/*
     float gap = 0.04;
     float gapShoulderArm = 0.01;
 
-    float rotationSpeed = 3.0f;
+    float rotationSpeed = 0.4f;
 
     float boxHeight = 0.5f;
     float boxWidth = 0.5f;
 
     float bodyScaleX = 0.5f; // halbieren
     float bodyScaleY = 0.8f;
+    float bodyScaleZ = 0.5f;
     float bodyX = 0.0f;
     float bodyY = 0.0f;
 
     float headScaleXY = bodyScaleX / 2;
+    float headScaleZ = 0.4;
     float headX = 0.0f;
     float headY = (boxHeight*bodyScaleY) + (headScaleXY/2) + gap;
 
     float legScaleX = 0.1;
     float legScaleY = 0.4;
+    float legScaleZ = 0.25;
+
     float legX = 0.12;
     float legY = (boxHeight*bodyScaleY) + (legScaleY/2) + gap;
     float legRotationPointX = legX;
@@ -173,13 +363,14 @@ void Scene::render(float dt)
 
     float shoulderArmScaleX = 0.1;
     float shoulderArmScaleY = 0.3;
+    float shoulderArmScaleZ = 0.25;
+
     float shoulderX = (boxWidth * bodyScaleX) + (boxWidth * shoulderArmScaleX) + gap ;
     float shoulderY =  (boxHeight*bodyScaleY) - (boxHeight * shoulderArmScaleY);
     float shoulderRotationPointX = shoulderX;
     float shoulderRotationPointY = (boxHeight*bodyScaleY); // body + gap
 
 
-
     // translate to shoulder position and then translate down the size of the shoulder
     //boxHeight * shoulderArmScaleY is half size of shoulder
     // we will make the Arms a littel bit different (scaling than rotation than translation) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@@ -188,17 +379,16 @@ void Scene::render(float dt)
     float armRotationPointX = 0.0f;
     float armRotationPointY = shoulderArmScaleY * boxHeight;
 
-    float angleShoulderAndLegs = 10.0f * sin(animationTime * rotationSpeed);
-    float angleArm = 10.0f * ((sin(-animationTime * rotationSpeed) + 1.0f) / 2.0f); // sin value is between [0..1] not [-1..1]
 
-    float animationSpeed = 3.0f;
-    float colorAnimValue = (sin(animationTime * animationSpeed) + 1.5f) / 2.0f; // → [0, 1]
-    glm::mat3 animationMatrixFromUniform = glm::mat3(
-            colorAnimValue + 0.9, 0.0f,         0.0f,
-            0.0f,         colorAnimValue + 0.2, 0.0f,
-            0.0f,         0.0f,         colorAnimValue + 0.4
-    );
-    m_shader->setUniform("animationMatrixFromUniform", animationMatrixFromUniform , false);
+    float angleShoulderAndLegs = 360.0f * sin(animationTime * rotationSpeed);
+    float angleArm = 15.0f * ((sin(-animationTime * rotationSpeed) + 1.0f) / 2.0f); // sin value is between [0..1] not [-1..1]
+
+
+    float rotationSpeedAllReboter = 0.001f;
+    float angleRotation = 0.0f; //* sin(animationTime * rotationSpeedAllReboter);
+    Transform rotateRoboter;
+    rotateRoboter.rotateAroundPoint(glm::vec3( 0.0f, 0.0f, 0.0f), glm::vec3(0.0f,glm::radians(angleRotation),0.0f));
+
 
     Transform rotateLegLeft;
     rotateLegLeft.rotateAroundPoint(glm::vec3( -legRotationPointX, -legRotationPointY, 0.0f), setRotationAxe(angleShoulderAndLegs));
@@ -222,63 +412,71 @@ void Scene::render(float dt)
     //float viewAngle = 60.0;
     //rotateRobot.rotateAroundPoint(glm::vec3( 0.0,0.0,0.0),setRotationAxe(viewAngle,'y'));
 
+
+
+
+
     // Body
     Transform T11,T12;
-    T12.scale(glm::vec3(bodyScaleX, bodyScaleY, 1.0f));
+    T12.scale(glm::vec3(bodyScaleX, bodyScaleY,bodyScaleZ));
     T11.translate(glm::vec3(0.0f, 0.0f, 0.0f));
-    m_shader->setUniform("model",    T11.getTransformMatrix() *  T12.getTransformMatrix(), false);
-    drawObject(obj);
+    //m_shader->setUniform("model",    rotateRoboter.getTransformMatrix() * T11.getTransformMatrix() *  T12.getTransformMatrix(), false);
+    //drawObject(obj);
 
     // Head
     Transform T1,T2;
-    T2.scale(glm::vec3(headScaleXY, headScaleXY, 1.0f));
+    T2.scale(glm::vec3(headScaleXY, headScaleXY, headScaleZ));
     T1.translate(glm::vec3(headX,headY , 0.0f));
-    m_shader->setUniform("model",  T1.getTransformMatrix() * T2.getTransformMatrix(), false);
-    drawObject(obj);
+    //m_shader->setUniform("model",  rotateRoboter.getTransformMatrix() * T1.getTransformMatrix() * T2.getTransformMatrix(), false);
+   // drawObject(obj);
 
     // Legs
     Transform T8,T9,T10;
-    T9.scale(glm::vec3(legScaleX, legScaleY, 1.0f));
+    T9.scale(glm::vec3(legScaleX, legScaleY, legScaleZ));
 
     //Left Leg
     T8.translate(glm::vec3(-legX, -legY, 0.0f)); // translate Left Leg
-    m_shader->setUniform("model",rotateLegLeft.getTransformMatrix() * T8.getTransformMatrix() * T9.getTransformMatrix(), false);
-    drawObject(obj);
+    m_shader->setUniform("model",rotateRoboter.getTransformMatrix() * rotateLegLeft.getTransformMatrix() * T8.getTransformMatrix() * T9.getTransformMatrix(), false);
+   // drawObject(obj);
 
     //Right Leg
     T10.translate(glm::vec3(legX, -legY , 0.0f)); // translate Left Leg
-    m_shader->setUniform("model",rotateLegRight.getTransformMatrix() * T10.getTransformMatrix() * T9.getTransformMatrix(), false);
-    drawObject(obj);
+    m_shader->setUniform("model",rotateRoboter.getTransformMatrix() * rotateLegRight.getTransformMatrix() * T10.getTransformMatrix() * T9.getTransformMatrix(), false);
+    //drawObject(obj);
 
     // shoulders &  Arms
     Transform T3,T4,T5,T6,T7;
-    T5.scale(glm::vec3(shoulderArmScaleX, shoulderArmScaleY, 1.0f));
+    T5.scale(glm::vec3(shoulderArmScaleX, shoulderArmScaleY, shoulderArmScaleZ));
 
     //Left shoulder
     T7.translate(glm::vec3(-shoulderX, shoulderY , 0.0f)); // translate Left Leg
-    m_shader->setUniform("model", rotateShoulderLeft.getTransformMatrix() * T7.getTransformMatrix() * T5.getTransformMatrix(), false);
-    drawObject(obj);
+    m_shader->setUniform("model", rotateRoboter.getTransformMatrix() * rotateShoulderLeft.getTransformMatrix() * T7.getTransformMatrix() * T5.getTransformMatrix(), false);
+    //drawObject(obj);
 
     //Right shoulder
     T4.translate(glm::vec3(shoulderX, shoulderY , 0.0f)); // translate Left Leg
-    m_shader->setUniform("model", rotateShoulderRight.getTransformMatrix() * T4.getTransformMatrix() * T5.getTransformMatrix(), false);
-    drawObject(obj);
+    m_shader->setUniform("model", rotateRoboter.getTransformMatrix() * rotateShoulderRight.getTransformMatrix() * T4.getTransformMatrix() * T5.getTransformMatrix(), false);
+    //drawObject(obj);
 
     //Left Arm
     T3.translate(glm::vec3(-ArmX, ArmY , 0.0f)); // translate Left Leg
-    m_shader->setUniform("model",      T3.getTransformMatrix()* rotateHandLeft.getTransformMatrix() * T5.getTransformMatrix(), false);
-    drawObject(obj);
+    m_shader->setUniform("model",rotateRoboter.getTransformMatrix()  * T3.getTransformMatrix() * rotateShoulderLeft.getTransformMatrix() * rotateHandLeft.getTransformMatrix() * T5.getTransformMatrix(), false);
+    //drawObject(obj);
 
     //Right Arm
     T6.translate(glm::vec3(ArmX, ArmY , 0.0f)); // translate Left Leg
-    m_shader->setUniform("model",    T6.getTransformMatrix()* rotateHandRight.getTransformMatrix() * T5.getTransformMatrix(), false);
-    drawObject(obj);
+    m_shader->setUniform("model",    rotateRoboter.getTransformMatrix() * T6.getTransformMatrix()* rotateHandRight.getTransformMatrix() * T5.getTransformMatrix(), false);
+    //drawObject(obj);
+
+ */
+
+
 
 }
 
 void Scene::update(float dt)
 {
-    this->animationTime += dt;
+    animationTime += dt;
 
 }
 
diff --git a/src/Game/Scene.h b/src/Game/Scene.h
index 58dbf76853238d30ad38282f0b556f7e1803470b..5a9aa9f6ec158294b669863ed837d31130532c43 100644
--- a/src/Game/Scene.h
+++ b/src/Game/Scene.h
@@ -6,6 +6,16 @@
 #include <AssetManager.h>
 #include "Transform.h"
 
+
+static float roboterBodyHeadThiknessZ = 0.3;
+static float roboterLegArmShoulderThiknessZ = 0.2;
+
+static float animationTime = 0.0f;
+
+static float rotationSpeed = 2.0f;
+
+static float gap = 0.03;
+
 struct ObjectBuffer {
     GLuint vaoID = 0;
     GLuint vboID = 0;
@@ -45,7 +55,6 @@ struct ObjectBuffer {
     }
 };
 
-
 class Scene
 {
 public:
@@ -69,7 +78,5 @@ private:
     AssetManager m_assets;
     ShaderProgram* m_shader;
     ObjectBuffer obj;
-    float animationTime = 0.0f;
-
 };