Transforms and ATL animation
This page is part of the GenPy Ren'Py learning path. It focuses on practical Ren'Py 8.x production and links each concept back to the GenPy workflow.
Learning goals
- Understand transform blocks and ATL statements.
- Use timing, interpolation, and repeat behavior deliberately.
- Keep animation reusable instead of duplicating effects.
Core syntax
transformatlineareaseparallelrepeat
Runnable example
text
transform left_in:
xalign 0.0 yalign 1.0
alpha 0.0
linear 0.5 alpha 1.0 # 0.5 秒淡入
transform bounce:
yoffset 0
block:
ease 0.5 yoffset -30
ease 0.5 yoffset 0
repeatStudy outline
- Start with the smallest example for transforms and atl animation.
- Test the key terms in a clean Ren'Py project: transform, at, linear, ease.
- Move the pattern back into your real project only after the example runs.
- Use GenPy docs and validation to keep the feature connected to story, assets, and export readiness.
Common pitfalls
- Test the smallest working script before layering on visual or UI complexity.
- Run Ren'Py Lint before release builds, even when the script appears to run locally.
- Keep examples in standard .rpy files so they remain editable outside GenPy.
Official references
- Ren'Py ATL reference: https://www.renpy.org/doc/html/atl.html
- Ren'Py official reference: https://www.renpy.org/doc/html/transform_properties.html
How this fits in GenPy
- Use GenPy's ATL documentation and Performance Editor to connect animation ideas with scene context.
- Keep generated ATL code reviewable in Code mode.
Recommended GenPy docs:
