From 3bd7de6ad8b7ff4903f03d3810ad32a0d2ba9a72 Mon Sep 17 00:00:00 2001 From: arnav-hiwarkar Date: Thu, 12 Nov 2026 15:47:15 +0530 Subject: [PATCH] #3475: Beam: Starting and Ending Thickness take After Effects' range Starting and Ending Thickness take 0..4000, After Effects' recorded valid range in the same units (pixels). The CPU and GPU renderers draw the beam per pixel from its distance to the segment, within the layer's buffer, so a thicker beam costs the same. Default and slider are unchanged. --- crates/aep/src/export/fx_defs.rs | 2 -- crates/effects/src/generate2.rs | 4 ++-- crates/engine/src/tests/effect_ranges.rs | 2 ++ 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/crates/aep/src/export/fx_defs.rs b/crates/aep/src/export/fx_defs.rs index 3c7464009..e35f7c6fc 100644 --- a/crates/aep/src/export/fx_defs.rs +++ b/crates/aep/src/export/fx_defs.rs @@ -736,8 +736,6 @@ mod tests { ("ec.distort.turbulentdisplace", "evolutionOptions/randomSeed", 3470), ("ec.distort.transform", "scaleHeight", 3471), ("ec.distort.transform", "scaleWidth", 3471), - ("ec.generate.beam", "startThickness", 3475), - ("ec.generate.beam", "endThickness", 3475), ("ec.time.pixelmotionblur", "shutterAngle", 3481), ("ec.time.pixelmotionblur", "shutterSamples", 3482), ("ec.noise.fractal", "subSettings/subInfluence", 3485), diff --git a/crates/effects/src/generate2.rs b/crates/effects/src/generate2.rs index ad80cb9cd..6bf5443fc 100644 --- a/crates/effects/src/generate2.rs +++ b/crates/effects/src/generate2.rs @@ -1111,8 +1111,8 @@ pub fn specs() -> Vec { p("endPoint", "Ending Point", pt(0.75, 0.5), ParamUi::Point), p("length", "Length", num(25.0), pct()), p("time", "Time", num(0.0), pct()), - p("startThickness", "Starting Thickness", num(8.0), slider(0.0, 1000.0, 0.0, 100.0, 1)), - p("endThickness", "Ending Thickness", num(8.0), slider(0.0, 1000.0, 0.0, 100.0, 1)), + p("startThickness", "Starting Thickness", num(8.0), slider(0.0, 4000.0, 0.0, 100.0, 1)), + p("endThickness", "Ending Thickness", num(8.0), slider(0.0, 4000.0, 0.0, 100.0, 1)), p("softness", "Softness", num(20.0), pct()), p("insideColor", "Inside Color", col(1.0, 1.0, 1.0), ParamUi::Color), p("outsideColor", "Outside Color", col(0.4, 0.4, 1.0), ParamUi::Color), diff --git a/crates/engine/src/tests/effect_ranges.rs b/crates/engine/src/tests/effect_ranges.rs index c783478fb..320e1378f 100644 --- a/crates/engine/src/tests/effect_ranges.rs +++ b/crates/engine/src/tests/effect_ranges.rs @@ -55,6 +55,8 @@ const ROWS: &[(u32, &str, &str, f64, f64)] = &[ (3473, "ec.transition.venetian", "feather", 0.0, 32000.0), (3474, "ec.transition.radialwipe", "feather", 0.0, 32000.0), (3477, "ec.stylize.scatter", "amount", 0.0, 1000.0), + (3475, "ec.generate.beam", "startThickness", 0.0, 4000.0), + (3475, "ec.generate.beam", "endThickness", 0.0, 4000.0), ]; fn path(effect: &str, param: &str) -> String {