summaryrefslogtreecommitdiff
path: root/src/tests
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-02-02 15:55:03 +0100
committerskal <pascal.massimino@gmail.com>2026-02-02 15:55:03 +0100
commitc194f59e171a1e58ce1704f37d99ffcd09a42433 (patch)
treef77a32f2c4c23b335209b8df11cc82920388b51a /src/tests
parent316825883c705ed0fe927c32e072f98141d3eaa3 (diff)
fix(gpu): Resolve high-DPI squished rendering and 3D shadow bugs
- Implemented dynamic resolution support in all shaders and effects. - Added explicit viewport setting for all render passes to ensure correct scaling. - Fixed 3D shadow mapping by adding PLANE support and standardizing soft shadow logic. - Propagated resize events through the Effect hierarchy. - Applied project-wide code formatting.
Diffstat (limited to 'src/tests')
-rw-r--r--src/tests/test_3d_render.cc16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/tests/test_3d_render.cc b/src/tests/test_3d_render.cc
index fbf5fc0..e8a6bf1 100644
--- a/src/tests/test_3d_render.cc
+++ b/src/tests/test_3d_render.cc
@@ -141,7 +141,8 @@ void setup_scene() {
Object3D floor(ObjectType::CUBE);
floor.position = vec3(0, -2.0f, 0);
floor.scale = vec3(20.0f, 0.5f, 20.0f);
- floor.color = vec4(0.9f, 0.9f, 0.9f, 1.0f); // Brighter white for better shadow contrast
+ floor.color =
+ vec4(0.9f, 0.9f, 0.9f, 1.0f); // Brighter white for better shadow contrast
g_scene.add_object(floor);
// Center object
@@ -155,20 +156,23 @@ void setup_scene() {
for (int i = 0; i < 30; ++i) {
ObjectType type = ObjectType::SPHERE;
int r = rand() % 3;
- if (r == 1) type = ObjectType::TORUS;
- if (r == 2) type = ObjectType::BOX;
+ if (r == 1)
+ type = ObjectType::TORUS;
+ if (r == 2)
+ type = ObjectType::BOX;
Object3D obj(type);
float angle = (rand() % 360) * 0.01745f;
float dist = 3.0f + (rand() % 100) * 0.05f;
float height = -1.0f + (rand() % 100) * 0.04f;
-
+
obj.position = vec3(std::cos(angle) * dist, height, std::sin(angle) * dist);
-
+
float s = 0.3f + (rand() % 100) * 0.005f;
obj.scale = vec3(s, s, s);
- obj.color = vec4((rand()%100)/100.0f, (rand()%100)/100.0f, (rand()%100)/100.0f, 1.0f);
+ obj.color = vec4((rand() % 100) / 100.0f, (rand() % 100) / 100.0f,
+ (rand() % 100) / 100.0f, 1.0f);
g_scene.add_object(obj);
}