From af017c1ef7b866a9370eaef62701e64a8ac365b0 Mon Sep 17 00:00:00 2001
From: Azur Ponjavic <azur.ponjavic@rwth-aachen.de>
Date: Wed, 12 Jul 2023 11:59:18 +0200
Subject: [PATCH] light fix

---
 src/headset/remote_headset.hpp     |  8 ++++----
 src/scene.cpp                      |  2 +-
 src/transport/webrtc_transport.cpp | 10 +++++-----
 3 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/src/headset/remote_headset.hpp b/src/headset/remote_headset.hpp
index 905f7a8d..30ccbf9d 100644
--- a/src/headset/remote_headset.hpp
+++ b/src/headset/remote_headset.hpp
@@ -115,11 +115,11 @@ private:
     std::vector<std::fstream> encoder_files;
     //uint32_t encoder_mode = ENCODER_MODE_CONSTANT_QUALITY;
     uint32_t encoder_mode = ENCODER_MODE_CONSTANT_BITRATE;
-    uint32_t encoder_input_rate = 60;
-    uint32_t encoder_key_rate = 60;
-    uint32_t encoder_frame_rate = 60;
+    uint32_t encoder_input_rate = 144;
+    uint32_t encoder_key_rate = 144;
+    uint32_t encoder_frame_rate = 144;
     float encoder_quality = 0.5;
-    float encoder_bit_rate = 50.0;              //NOTE: Bitrate in Mbit per seconds
+    float encoder_bit_rate = 15.0;              //NOTE: Bitrate in Mbit per seconds
     float encoder_last_submit = 0.0f;
     bool encoder_enable_submit = true;
 
diff --git a/src/scene.cpp b/src/scene.cpp
index 11404f12..d0c09fb7 100644
--- a/src/scene.cpp
+++ b/src/scene.cpp
@@ -1232,7 +1232,7 @@ bool Scene::load_lights(const aiScene* scene, float scale, const std::map<std::s
 
         glm::vec3 color = glm::make_vec3(&light->mColorDiffuse.r);
         glm::vec3 position = glm::make_vec3(&light->mPosition.x);
-        glm::vec3 direction = glm::make_vec3(&light->mDirection.x);
+        glm::vec3 direction = -glm::make_vec3(&light->mDirection.x);
         float direction_length = glm::length(direction);
 
         if (direction_length > 0.0f)
diff --git a/src/transport/webrtc_transport.cpp b/src/transport/webrtc_transport.cpp
index e52a5887..8d275ece 100644
--- a/src/transport/webrtc_transport.cpp
+++ b/src/transport/webrtc_transport.cpp
@@ -264,7 +264,7 @@ shared_ptr<rtc::PeerConnection> createPeerConnection(weak_ptr<rtc::WebSocket> ww
                         if (tr->get_state() == TRANSPORT_STATE_CONNECTED) {
                             TransformId transform_id = (std::to_integer<long long>(msg[1]) | std::to_integer<long long>(msg[2]) << 8 | std::to_integer<long long>(msg[3]) << 16 | std::to_integer<long long>(msg[4]) << 24 | std::to_integer<long long>(msg[5]) << 32 | std::to_integer<long long>(msg[6]) << 40 | std::to_integer<long long>(msg[7]) << 48 | std::to_integer<long long>(msg[8]) << 56);
                             float htr[16];
-                            memcpy(&htr, &msg[9], 64);
+                            //memcpy(&htr, &msg[9], 64);
                             auto time = std::chrono::system_clock::now(); // get the current time
                             auto since_epoch = time.time_since_epoch(); // get the duration since epoch
                             auto millis = std::chrono::duration_cast<std::chrono::milliseconds>(since_epoch);
@@ -275,10 +275,10 @@ shared_ptr<rtc::PeerConnection> createPeerConnection(weak_ptr<rtc::WebSocket> ww
                             float angle = r / 1000.0 * 2 * 3.141592;
                             float sine = std::sin(angle);
                             float cosine = std::cos(angle);
-                            htr[0] = cosine;
-                            htr[10] = cosine;
-                            htr[2] = sine;
-                            htr[8] = -sine;
+                            //htr[0] = cosine;
+                            //htr[10] = cosine;
+                            //htr[2] = sine;
+                            //htr[8] = -sine;
                             tr->parse_head_transform(transform_id, htr);
                         }
                         break;
-- 
GitLab