device.product-orbit-reveal

产品模块环绕揭示

Product Orbit Reveal

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

真实渲染预览

实机渲染 · HyperFrames
02
Purpose

这个动效用来做什么

带灯光反射和体积细节的程序化产品模块完成有限环绕并在正面停住。

A procedural product module with lit volumetric detail completes a finite orbit and settles front-on.

设备
演示揭示强调
产品演示广告社交短视频演示文稿
03
Inputs

可替换参数

product_label必填 · string

Label rendered on the product module and caption.

默认值
SIGNAL MODULE
orbit_degrees可选 · number

Bounded horizontal orbit angle before settling front-on.

默认值
32
finish可选 · enum

Procedural product finish palette.

默认值
amber
04
Motion timeline

归一化动作时间线

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

product.revealopacity.fade
0.04–0.30
product.orbittransform.rotate3d
0.08–0.66
orbit-camera.pushcamera.push
0.12–0.72
caption.revealopacity.fade
0.36–0.62
product.holdstate.hold
0.76–1.00
05
Copy to Agent

复制执行上下文

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

<!-- motion-registry-context:{"format":"1.0.0","recipe_id":"device.product-orbit-reveal","recipe_version":"0.2.0","recipe_source":"recipes/device/product-orbit-reveal/recipe.yaml"} -->
# Motion Registry Context

<!-- motion-registry-section:recipe-identity:start -->
## Recipe identity
- Recipe ID: device.product-orbit-reveal
- Schema version: 0.2.0
- Recipe source: recipes/device/product-orbit-reveal/recipe.yaml
<!-- motion-registry-section:recipe-identity:end -->

<!-- motion-registry-section:motion-intent:start -->
## Motion intent and scope
- Purpose (zh): 带灯光反射和体积细节的程序化产品模块完成有限环绕并在正面停住。
- Purpose (en): A procedural product module with lit volumetric detail completes a finite orbit and settles front-on.
- Scope: shot
- Complexity: advanced
- Subjects: device
- Intents: demonstrate, reveal, emphasize
- Use cases: product-demo, advertising, social-video, presentation
- Recipe capabilities: procedural-product, orbit-camera, webgl-lighting, readable-front-hold
<!-- motion-registry-section:motion-intent:end -->

<!-- motion-registry-section:inputs:start -->
## Inputs
- product_label: string (required; default=SIGNAL MODULE) — Label rendered on the product module and caption.
- orbit_degrees: number (optional; default=32) — Bounded horizontal orbit angle before settling front-on.
- finish: enum (optional; default=amber; options=amber|cobalt) — Procedural product finish palette.
<!-- motion-registry-section:inputs:end -->

<!-- motion-registry-section:normalized-timeline:start -->
## Normalized motion timeline (0 to 1)
- 0.04–0.30 · product.reveal · opacity.fade → product · parameters={"from":0,"to":1}
- 0.08–0.66 · product.orbit · transform.rotate3d → product · parameters={"axis":"y","from":-32,"to":0,"unit":"deg"}
- 0.12–0.72 · orbit-camera.push · camera.push → orbit-camera · parameters={"from":0,"to":1,"curve":"ease-out"}
- 0.36–0.62 · caption.reveal · opacity.fade → caption · parameters={"from":0,"to":1}
- 0.76–1.00 · product.hold · state.hold → product · 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
- real-volume: The product has visible front, side, and top surfaces with lighting response and is not a flat card.
- bounded-orbit: The orbit completes once and stops at a readable front angle without looping.
- deterministic: The same inputs produce identical geometry, camera path, materials, and final state.
- no-obstruction: Product and caption stay inside their responsive safe zones with no mutual overlap.
<!-- 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
product-orbit
入口文件
index.html
确定性
  • lint通过
  • validate通过
  • inspect通过
  • render通过
frame-based

Remotion

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

Three.js

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

来源与使用边界

再分发状态
original
来源说明
Self-authored H2 Recipe and procedural adapters.
Recipe 文件
recipes/device/product-orbit-reveal/recipe.yaml

参考

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

08
Verification

验收标准

01
real-volume

The product has visible front, side, and top surfaces with lighting response and is not a flat card.

02
bounded-orbit

The orbit completes once and stops at a readable front angle without looping.

03
deterministic

The same inputs produce identical geometry, camera path, materials, and final state.

04
no-obstruction

Product and caption stay inside their responsive safe zones with no mutual overlap.

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