2.5 - 动画状态机、灵感中心

阅读时间:2分钟更新于 2025-08-20 15:53

我们很高兴地宣布,「动画状态机」正式登陆,全新升级的「灵感中心」正式上线!

🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉

🎬 动画状态机 —— 交互式动画真正“活”起来!

这是一位“动画指挥家”,让互动类型动画的制作变得轻松自如,无论是设计同学还是开发伙伴,都能从中获得「设计即交互」的创作体验!

📖 什么是动画状态机?

「动画状态机」是一种将动画划分为不同“状态”并定义其切换逻辑的架构模式,它广泛应用于游戏开发、人机交互系统与高级 UI 动效设计中,是实现“响应式动画”的核心技术之一。

🙋 为什么你需要动画状态机?

传统方式

状态机方案

时间轴硬编码跳转

可视化逻辑图,逻辑清晰易维护

需开发介入实现交互

设计师独立完成交互动效

动画复用困难

模块化片段 + 参数化控制,高复用性

难以处理复杂状态

层级结构 + 混合模式,应对复杂场景

🔁 用【参数】控制状态流转

【参数(Parameters)】支持布尔值、整数、浮点数等类型,你可以通过设置参数条件来触发状态切换。

🔁 用【事件】完成设计独立的交互闭环

通过【事件(Events)】机制,设计师可直接绑定用户操作(如点击、长按、滑动等)来触发状态跳转。

🎨 三种高级混合模式,掌控动画融合艺术

支持【1D(一维)】、【Additive(相加)】、【Layered(分层)】三种主流的动画混合策略,满足不同层级的动效需求。

✂️ 一键生成动画片段

在时间轴上框选任意时间段,快速创建为独立动画片段(Animation Clip),并用于某个状态的播放单元。

⚙️ 参数可编程,状态可驱动,开发更灵活

开发可通过 @galacean/effects 开放的接口动态设置状态机参数(布尔 setBool()、数字 setFloat()、触发器 setTrigger()):

import { Animator } from '@galacean/effects';

// 从场景中获取 Animator 组件,用于控制动画状态机
const animator = composition.getComponent(Animator);

animator.setBool('Boolean1', true);



“让动画不止于‘播放’,而是真正‘响应’与‘思考’。”

👉 了解更多:用户文档 -《动画状态机》


🌟 灵感中心 —— 创意流动,灵感共鸣!

现在,你可以将自己的作品一键上架至灵感中心,无论是炫酷的粒子动画,还是极具想象力的交互设计,都可以在这里被更多人发现、欣赏与复用。在这里,每一个动效作品都不再是孤岛,而是激发下一次创新的火花。

💡 发现属于你的“啊哈时刻”

  • 点击“导入”,即可将喜欢的灵感导入编辑器,进行二次创作;
  • 所有作品均保留图层结构与动画逻辑,便于你深入学习其时间轴编排策略与动画制作技巧;
  • 点击即可浏览你喜爱的灵感,一键即可获得分享链接,与好友或团队成员“品鉴”。

📣 让灵感不再沉睡,让创意自由流动。

我们相信,每一个动效背后,都蕴藏着你的创意光芒。

通过灵感中心,你的创作将触达更广泛的用户群体,成为他人设计旅程中的“灵感锚点”。



现在就行动,分享你的第一个作品!

下一个设计范式,或许就始于你的一次分享。


“好的设计从不凭空诞生,而是源于对优秀范式的理解与重构。”

—— 让灵感中心成为你动效设计的“第二大脑”。


👉 进入灵感中心:https://www.galacean.com/effects/inspiration/

🆕 2.6 版本功能预告

  • 网格形状变化动画
  • 矢量图形填充/描边渐变色
Preview