From 14d1f71b2b4bb21a23ad315eb116bb5f74a65d98 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= <tm@tlater.net>
Date: Fri, 12 Aug 2022 23:25:41 +0100
Subject: [PATCH] Fix rotation speed

---
 src/music/features/visualizer/Renderer.ts | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/src/music/features/visualizer/Renderer.ts b/src/music/features/visualizer/Renderer.ts
index bbd705b..4c092b3 100644
--- a/src/music/features/visualizer/Renderer.ts
+++ b/src/music/features/visualizer/Renderer.ts
@@ -5,7 +5,7 @@ import { Cube } from "./cube";
 import vertexSource from "./shaders/vertices.glsl";
 import fragmentSource from "./shaders/fragments.glsl";
 
-const ROTATION_SPEED = 0.0005;
+const ROTATION_SPEED = 0.25;
 const BACKGROUND_COLOR = [0.0588235294118, 0.0588235294118, 0.0588235294118];
 
 class RendererError extends Error {}
@@ -20,6 +20,8 @@ class Renderer {
     private lastFrameTime: number;
     private dTime: number;
 
+    private rotation: number;
+
     private buffers: {
         indices?: WebGLBuffer;
         positions?: WebGLBuffer;
@@ -47,6 +49,7 @@ class Renderer {
 
         this.lastFrameTime = 0;
         this.dTime = 0;
+        this.rotation = 0;
         this.buffers = {};
     }
 
@@ -161,14 +164,12 @@ class Renderer {
     }
 
     updateMatrices(gl: WebGLRenderingContext, shader: Shader) {
+        this.rotation += (this.dTime / 1000.0) * ROTATION_SPEED;
+
         const modelViewMatrix = mat4.create();
-        mat4.translate(modelViewMatrix, modelViewMatrix, [0.0, 0.0, -1.5]);
-        mat4.rotateX(modelViewMatrix, modelViewMatrix, Math.PI / 6);
-        mat4.rotateY(
-            modelViewMatrix,
-            modelViewMatrix,
-            this.lastFrameTime * ROTATION_SPEED
-        );
+        mat4.translate(modelViewMatrix, modelViewMatrix, [0.0, 0.025, -1.2]);
+        mat4.rotateX(modelViewMatrix, modelViewMatrix, Math.PI / 16);
+        mat4.rotateY(modelViewMatrix, modelViewMatrix, this.rotation);
         mat4.translate(modelViewMatrix, modelViewMatrix, [-1.0, 0.0, 0.0]);
         gl.uniformMatrix4fv(
             shader.getUniform("uModelViewMatrix"),