background.particle-tunnel-flythrough

粒子隧道穿行

Particle Tunnel Flythrough

仅本次打开有效
范围
场景
复杂度
高级
建议时长
4.2s
画幅
16:9 · 9:16 · 1:1
01
Live preview

真实渲染预览

实机渲染 · HyperFrames
02
Purpose

这个动效用来做什么

相机沿有限深度穿过确定性粒子隧道,最后停在可读的空间构图。

A camera flies through a finite deterministic particle tunnel and settles on a readable spatial composition.

背景
揭示转场强调
知识视频产品演示社交短视频演示文稿
03
Inputs

可替换参数

label必填 · string

Short label anchored near the tunnel vanishing point.

默认值
ENTER THE SIGNAL
particle_count可选 · integer

Deterministic count of particles distributed through depth.

默认值
42
depth_span可选 · number

Finite depth of the tunnel in scene units.

默认值
12
04
Motion timeline

归一化动作时间线

所有事件都使用 0 到 1 的归一化进度:0 是镜头开始,1 是镜头结束;事件可以重叠,适配器再把相同比例映射到秒或帧。

tunnel.revealopacity.fade
0.04–0.26
particles.staggercollection.stagger
0.06–0.68
camera.flythroughcamera.push
0.08–0.70
caption.settletransform.translate
0.42–0.66
tunnel.holdstate.hold
0.76–1.00
05
Copy to Agent

复制执行上下文

四个上下文共享同一份可机器校验核心;引擎标签只追加已验证 Adapter 路由、能力与实现纪律。

<!-- motion-registry-context:{"format":"1.0.0","recipe_id":"background.particle-tunnel-flythrough","recipe_version":"0.2.0","recipe_source":"recipes/background/particle-tunnel-flythrough/recipe.yaml"} -->
# Motion Registry Context

<!-- motion-registry-section:recipe-identity:start -->
## Recipe identity
- Recipe ID: background.particle-tunnel-flythrough
- Schema version: 0.2.0
- Recipe source: recipes/background/particle-tunnel-flythrough/recipe.yaml
<!-- motion-registry-section:recipe-identity:end -->

<!-- motion-registry-section:motion-intent:start -->
## Motion intent and scope
- Purpose (zh): 相机沿有限深度穿过确定性粒子隧道,最后停在可读的空间构图。
- Purpose (en): A camera flies through a finite deterministic particle tunnel and settles on a readable spatial composition.
- Scope: scene
- Complexity: advanced
- Subjects: background
- Intents: reveal, transition, emphasize
- Use cases: knowledge-video, product-demo, social-video, presentation
- Recipe capabilities: depth-particle-tunnel, camera-flythrough, finite-motion, seeded-layout
<!-- motion-registry-section:motion-intent:end -->

<!-- motion-registry-section:inputs:start -->
## Inputs
- label: string (required; default=ENTER THE SIGNAL) — Short label anchored near the tunnel vanishing point.
- particle_count: integer (optional; default=42) — Deterministic count of particles distributed through depth.
- depth_span: number (optional; default=12) — Finite depth of the tunnel in scene units.
<!-- motion-registry-section:inputs:end -->

<!-- motion-registry-section:normalized-timeline:start -->
## Normalized motion timeline (0 to 1)
- 0.04–0.26 · tunnel.reveal · opacity.fade → tunnel · parameters={"from":0,"to":1}
- 0.06–0.68 · particles.stagger · collection.stagger → particles · parameters={"order":"source","fraction":0.12}
- 0.08–0.70 · camera.flythrough · camera.push → tunnel · parameters={"from":0,"to":1,"curve":"ease-in-out"}
- 0.42–0.66 · caption.settle · transform.translate → caption · parameters={"axis":"y","from":0.05,"to":0,"unit":"relative-canvas"}
- 0.76–1.00 · tunnel.hold · state.hold → tunnel · parameters={}
<!-- motion-registry-section:normalized-timeline:end -->

<!-- motion-registry-section:output-envelope:start -->
## Output envelope
- Aspect ratios: 16:9, 9:16, 1:1
- Duration: min 2.8s; preferred 4.2s; max 6s
<!-- motion-registry-section:output-envelope:end -->

<!-- motion-registry-section:acceptance:start -->
## Acceptance constraints
- finite-motion: The camera and every particle complete their travel within the active interval without looping.
- deterministic: The same inputs produce identical particle positions, timing, and final camera state.
- depth-readability: The vanishing point, near/mid/far particle layers, and label remain distinguishable in the final hold.
- no-obstruction: The tunnel does not cover the caption safe area or make the label unreadable.
<!-- motion-registry-section:acceptance:end -->

<!-- motion-registry-section:handoff-invariants:start -->
## Handoff invariants
- Preserve the subject, input meaning, event order, overlaps, final state, and approximate normalized timing.
- Keep the implementation deterministic and retain a readable, stable final hold.
- Treat the Recipe document as the source of truth; do not infer engine APIs in this shared core.
<!-- motion-registry-section:handoff-invariants:end -->
06
Engine implementations

引擎实现

gsap-timeline

HyperFrames

已验证
Composition
particle-tunnel
入口文件
index.html
确定性
  • lint通过
  • validate通过
  • inspect通过
  • render通过
frame-based

Remotion

已验证
Composition
ParticleTunnelFlythrough
入口文件
ParticleTunnelFlythrough.tsx
确定性
  • typecheck通过
  • render通过
frame-based

Three.js

已验证
Composition
ThreeParticleTunnelFlythrough
入口文件
ThreeParticleTunnelFlythrough.tsx
确定性
  • typecheck通过
  • build通过
  • render通过
07
Source, reference & rights

来源与使用边界

再分发状态
original
来源说明
Self-authored H2 Recipe and procedural adapters.
Recipe 文件
recipes/background/particle-tunnel-flythrough/recipe.yaml

参考

无外部参考;该 Recipe 与测试素材为项目原创。

08
Verification

验收标准

01
finite-motion

The camera and every particle complete their travel within the active interval without looping.

02
deterministic

The same inputs produce identical particle positions, timing, and final camera state.

03
depth-readability

The vanishing point, near/mid/far particle layers, and label remain distinguishable in the final hold.

04
no-obstruction

The tunnel does not cover the caption safe area or make the label unreadable.

3 个实现已通过真实渲染理解验证模型