summaryrefslogtreecommitdiff
path: root/src/generated/timeline.cc
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-02-02 16:39:15 +0100
committerskal <pascal.massimino@gmail.com>2026-02-02 16:39:15 +0100
commit5354b5dc0b67f775fe173f2968f2e01023e45e21 (patch)
tree27bee9b512d46fade2d5313178e5e219679c5ffa /src/generated/timeline.cc
parentfcf1cbe0e520137d729152239c2aed68d9952cc5 (diff)
fix(3d): Unify all objects to SDF path for consistent shadows
- Updated ObjectData to include inv_model for reliable world-to-local mapping. - Enabled SDF raymarching path for all objects in test_3d_render (floor is now a large SDF BOX). - Implemented robust normal calculation using SDF gradient for all objects. - Standardized lighting (light_dir = 1,1,1) and diffuse+ambient model. - Refined calc_shadow with instance-based skip_idx and robust bias. - Fixed non-uniform scale handling in shader by extracting min scale from model matrix.
Diffstat (limited to 'src/generated/timeline.cc')
-rw-r--r--src/generated/timeline.cc19
1 files changed, 6 insertions, 13 deletions
diff --git a/src/generated/timeline.cc b/src/generated/timeline.cc
index 9669b7b..376624b 100644
--- a/src/generated/timeline.cc
+++ b/src/generated/timeline.cc
@@ -2,25 +2,18 @@
#include "gpu/demo_effects.h"
#include "gpu/effect.h"
-void LoadTimeline(MainSequence& main_seq, WGPUDevice device, WGPUQueue queue,
- WGPUTextureFormat format) {
+void LoadTimeline(MainSequence& main_seq, WGPUDevice device, WGPUQueue queue, WGPUTextureFormat format) {
{
auto seq = std::make_shared<Sequence>();
- seq->add_effect(std::make_shared<HeptagonEffect>(device, queue, format),
- 0.0f, 60.0f, 0);
- seq->add_effect(std::make_shared<ParticlesEffect>(device, queue, format),
- 0.0f, 60.0f, 1);
- seq->add_effect(std::make_shared<Hybrid3DEffect>(device, queue, format),
- 0.0f, 60.0f, 2);
+ seq->add_effect(std::make_shared<HeptagonEffect>(device, queue, format), 0.0f, 60.0f, 0);
+ seq->add_effect(std::make_shared<ParticlesEffect>(device, queue, format), 0.0f, 60.0f, 1);
+ seq->add_effect(std::make_shared<Hybrid3DEffect>(device, queue, format), 0.0f, 60.0f, 2);
main_seq.add_sequence(seq, 0.0f, 0);
}
{
auto seq = std::make_shared<Sequence>();
- seq->add_effect(std::make_shared<GaussianBlurEffect>(device, queue, format),
- 0.0f, 60.0f, 0);
- seq->add_effect(
- std::make_shared<ChromaAberrationEffect>(device, queue, format), 0.0f,
- 60.0f, 1);
+ seq->add_effect(std::make_shared<GaussianBlurEffect>(device, queue, format), 0.0f, 60.0f, 0);
+ seq->add_effect(std::make_shared<ChromaAberrationEffect>(device, queue, format), 0.0f, 60.0f, 1);
main_seq.add_sequence(seq, 0.0f, 10);
}
}