diff --git a/modules/asset_loader/include/vkcv/asset/asset_loader.hpp b/modules/asset_loader/include/vkcv/asset/asset_loader.hpp
index d1bcea4f090c75eeea994e3a442a592031469db2..597cf4c8e237e9fafb9a43f63c64b769623ab314 100644
--- a/modules/asset_loader/include/vkcv/asset/asset_loader.hpp
+++ b/modules/asset_loader/include/vkcv/asset/asset_loader.hpp
@@ -7,6 +7,7 @@
 
 #include <string>
 #include <vector>
+#include <array>
 #include <cstdint>
 #include <vkcv/VertexLayout.hpp>
 
diff --git a/modules/asset_loader/src/vkcv/asset/asset_loader.cpp b/modules/asset_loader/src/vkcv/asset/asset_loader.cpp
index 48ec170e9c0b12bb2eb15c7ffa2db840ca7cc4e2..f546e21c4e63001647baa781f7659fbf7b8b9080 100644
--- a/modules/asset_loader/src/vkcv/asset/asset_loader.cpp
+++ b/modules/asset_loader/src/vkcv/asset/asset_loader.cpp
@@ -6,7 +6,6 @@
 #define STB_IMAGE_IMPLEMENTATION
 #define STBI_ONLY_JPEG
 #include <stb_image.h>
-
 #include <vkcv/Logger.hpp>
 
 namespace vkcv::asset {
@@ -92,12 +91,12 @@ std::array<float, 16> computeModelMatrix(std::array<float, 3> translation, std::
     auto q2 = rotation[2];
     auto q3 = rotation[3];
 
-    modelMatrix[0] = (2 * (a * a + q1 * q1) + 1) * scale[0];
+    modelMatrix[0] = (2 * (a * a + q1 * q1) - 1) * scale[0];
     modelMatrix[1] = (2 * (q1 * q2 - a * q3)) * scale[1];
     modelMatrix[2] = (2 * (q1 * q3 + a * q2)) * scale[2];
 
     modelMatrix[4] = (2 * (q1 * q2 + a * q3)) * scale[0];
-    modelMatrix[5] = (2 * (a * a + q2 * q2) + 1) * scale[1];
+    modelMatrix[5] = (2 * (a * a + q2 * q2) - 1) * scale[1];
     modelMatrix[6] = (2 * (q2 * q3 - a * q1)) * scale[2];
 
     modelMatrix[8] = (2 * (q1 * q3 - a * q2)) * scale[0];
diff --git a/projects/first_scene/src/main.cpp b/projects/first_scene/src/main.cpp
index b5d67372c8f4adcd2ac76818829dad61194fdf9c..51993a35f5d191d56d21d5e60ab891ea14100fe6 100644
--- a/projects/first_scene/src/main.cpp
+++ b/projects/first_scene/src/main.cpp
@@ -7,12 +7,9 @@
 
 glm::mat4 arrayTo4x4Matrix(std::array<float,16> array){
     glm::mat4 matrix;
-    int r = 0;
     for (int i = 0; i < 4; i++){
         for (int j = 0; j < 4; j++){
-            matrix[i][j] = array[r];
-            r++;
-            std::cout << matrix[i][j] << std::endl;
+            matrix[i][j] = array[j * 4 + i];
         }
     }
     return matrix;