系统设计 · 从0-1搭建
PICO OS 动效设计体系
从0-1建立VR系统的统一动效语言,定义Token体系与核心设计原则
项目背景
PICO OS从5.0向6.0迭代时,暴露出系统性的动效体验问题。作为核心负责人,我从0-1搭建了覆盖VR/Web/App多端的动效设计体系。
问题诊断:三个层面的系统性缺失
① 用户体验层:不一致、不流畅、缺反馈
- 动效缺失与切换生硬:界面直接硬切无过渡,hover状态露白底,瀑布流页面切换无层次感
- 卡顿掉帧:多数界面动效存在卡顿,图片轮播不流畅,操作反馈迟钝
- 风格割裂:同一Title Bar出现三种不同的hover效果(大通栏/竖列矩形/无效果)
- 状态缺失:按钮无hover/normal态区分,加载状态只有白底无内容
② 团队协作层:无规范、无组件、重复造轮子
- 从零开始:设计原则和研发动画框架均缺失
- 没有Token体系:无统一曲线预设和时长规范,每次需求重新调参
- 没有组件化:按钮、导航栏等基础元素各写各的,重复开发严重
- 缺乏统一语言:设计与研发缺乏对齐标准,沟通成本高,质量参差不齐
③ 业务影响层:品牌受损、转化受阻
- 品牌专业性受损:官网缺少基础交互动效,Web端体验不流畅,降低品牌信任
- 转化效果差:官网被归为"转化结果差"的问题范畴,信息层级不合理
- 多端不统一:VR/Web/App各端动效各自为政,缺乏统一设计语言
核心矛盾
"无规范、无组件、无框架"的三无状态,导致用户体验割裂、团队重复低效、业务转化受损。
设计目标
- 统一动效语言:定义PICO品牌动效风格,形成可感知的流畅性和一致性
- Token体系:系统化动效参数,让80%的需求直接复用预设
- 可复用规范:沉淀设计文档和组件库,为多端业务提供方案储备
- VR约束指南:针对晕眩、景深、空间交互问题,提供专门的设计约束
📹 动效Demo展示区
此处将展示PICO OS的实际动效案例
(需要补充:界面录屏/动效GIF/设计稿)
从0-1搭建方法
没有可参考的前例,我通过三步建立起完整的动效设计体系:
Step 1:调研与问题拆解
- 收集用户反馈和内部测试问题(官网、OS系统、多端产品)
- 按用户体验、团队协作、业务影响三个层面拆解问题
- 识别核心矛盾:不是缺动效,而是缺统一的设计语言和复用机制
Step 2:定义原则与Token体系
- 定义5个核心设计原则,作为所有动效设计的判断标准
- 建立三层Token体系:曲线Token(Spring/Bézier)+ 时长Token(4档分层)+ 效果Token
- 设计"冲突消解机制":通过分层预设,让不同场景需求在统一框架内各得其所
Step 3:文档沉淀与推广落地
- 编写《PICO OS Motion Principle》和《动效设计指南》
- 定义组件化边界,让设计师和开发直接调用Token
- 通过团队宣讲和实际案例验证,推动规范在多端业务落地
核心设计原则
定义5个核心原则,作为整个系统动效设计的基础框架和质量判断标准:
① 统一动效语言
全系统使用统一的曲线和时长Token体系,确保跨页面、跨功能的动效体验一致,形成PICO品牌辨识度和流畅感知。
② Token化设计
将动效属性做成可高效调取的Tokens,建立曲线Token、时长Token、效果Token三层体系,让设计师和开发轻松创建和管理动画。
③ 响应与反馈
用户操作后第一时间给出反馈,反馈状态统一化。交互过程中给予及时响应和积极反馈,明确操作状态。
④ 场景适配
不同设备采用不同时长:手机200-300ms、平板延长30%、可穿戴缩短30%、Web 150-200ms。VR/大屏避免大范围移动或旋转,防止眩晕。
⑤ 渐进式加载指引
2-9秒:循环加载动效,趣味化设计缓解焦虑;10秒以上:进度条形式,给明确时间预期;10秒后无效,给空页面状态。
Token体系:冲突消解机制
Token体系不仅仅是参数的集合,更是一套"冲突消解机制"——通过分层、分类的预设,让不同场景的动效需求在统一框架内各得其所,而不是各自为政。
曲线Token体系
📊 曲线Token可视化图表
此处将展示:
• Spring Token(8种:gradual/steady/rapid/instant + snapy/fair/bouncy)
• Bézier Token(5种:linear/standard/overshoot/decelerate/accelerate)
• 使用场景说明
时长Token体系
📊 时长Token分层图表
此处将展示:
• Short1-4(60-240ms)
• Medium1-4(300-480ms)
• Long1-4(540-720ms)
• Extra-long1-4(780-960ms)
• 按运动范围匹配的规则
Token体系如何消解规则冲突
| 潜在冲突场景 | 解决方案 |
|---|---|
| 不同页面转场需要不同速度 | 4档时长Token(Short/Medium/Long/Extra-long),按运动范围匹配 |
| 实时交互 vs 页面转场需要不同曲线 | Spring Token用于实时交互,Bézier Token用于页面转场 |
| 强调 vs 普通场景需要不同动效强度 | Spring分无阻尼(gradual→instant)和有阻尼(snapy/fair/bouncy) |
| 入场 vs 出场节奏不同 | 入场时长>出场时长,出场delay为入场1/2 |
| 不同设备体验差异 | 按设备类型调整时长比例(手机/平板/可穿戴/Web) |
成果与影响
① 可复用的动效规范体系
- 完成《PICO OS Motion Principle》和《动效设计指南》
- 定义13种曲线Token(8种Spring + 5种Bézier)、16档时长Token(4档×4层)
- 建立VR专属设计约束指南(防晕眩、景深适配、空间交互)
② 团队协作效率提升
- 设计师:直接调用Token,无需重新定义参数,输出质量更稳定
- 开发:通过组件库使用预设动效,减少沟通成本和重复开发
- 新人:通过文档快速理解PICO动效语言,降低上手门槛
③ 多端业务方案储备
体系不仅服务于PICO OS,也被官网、App等业务线参考复用,成为PICO设计语言的重要组成部分。
关键成果
从"三无状态"到统一动效语言,Token体系让80%需求直接复用预设,20%特殊场景也有明确原则指导。
📄 设计规范文档展示区
此处将展示Motion Principle文档截图
(需要补充:文档界面/Token定义页面/应用案例)
复盘与思考
① 从0-1搭建的关键:先定义"什么是对的"
没有前例可参考时,最大的挑战不是"怎么做",而是"做什么"。我通过三个维度的问题诊断(用户体验层、团队协作层、业务影响层),识别出核心矛盾不是缺少动效,而是缺少统一的设计语言。这让我明确了设计目标:不是做更多动效,而是建立一套能复用、能约束、能指导的规范体系。
② Token体系的设计哲学:冲突消解机制
Token体系不仅仅是参数的集合,更是一套"冲突消解机制"。通过分层、分类的预设,让不同场景的动效需求在统一框架内各得其所:
- 实时交互 vs 页面转场:Spring Token用于实时交互,Bézier Token用于页面转场
- 强调 vs 普通场景:Spring分无阻尼(gradual→instant)和有阻尼(snapy/fair/bouncy)
- 不同运动范围:4档时长Token(Short/Medium/Long/Extra-long)按运动距离匹配
- 不同设备类型:手机/平板/可穿戴/Web按设备特性调整时长比例
这种"预设大于定制"的策略,让80%的需求可以直接使用Token,只有20%的特殊场景需要定制。这不仅提高了效率,更重要的是保证了体验的一致性。
③ VR约束的处理方法:把限制变成设计原则
VR设备有独特的设计约束:大范围移动会导致晕眩、景深变化需要时间适应、空间交互与2D屏幕完全不同。我没有把这些约束当作"限制",而是转化为明确的设计原则:
- 防晕眩:避免大范围移动或旋转动画,优先使用淡入淡出而非位移
- 时长优化:VR设备动效时长相比手机缩短30%,减少等待时的不适感
- 景深适配:界面元素在不同景深层级的动效需要考虑视觉焦点转移时间
这些原则被写入《动效设计指南》,成为所有VR动效设计的判断标准。
④ 知识沉淀的长期价值:规范是活的资产
设计规范不是一次性的产出,而是持续的知识资产。《PICO OS Motion Principle》不仅服务于OS团队,也被官网、App等其他业务线参考和复用。更重要的是,它建立了一套"可传递的设计判断标准"——新同事不需要靠经验积累,可以直接通过文档理解"PICO的动效应该是什么样的"。
⑤ 如果重新做,会怎么改进?
- 更早引入开发参与:Token体系的落地需要开发侧的动画框架支持,如果在定义Token时就让开发参与,可以减少后期对齐成本
- 建立量化评估指标:当时主要依靠团队反馈验证效果,如果能建立"动效一致性评分"等量化指标,可以更客观地衡量规范的落地效果
- 补充更多实际案例:文档中可以补充更多"这种场景用哪个Token"的实际案例,降低新同事的理解成本