2024 抖音欢笑中国年(一):招财神龙互动技术揭秘

💡 原文中文,约17900字,阅读约需43分钟。
📝

内容提要

字节跳动旗下的抖音等App在2024年春节期间推出了欢笑中国年系列活动,其中的一个重要玩法是“招财神龙”。活动使用了字节内的主要前端、跨端、互动技术产品,包括跨端框架、Canvas作为渲染引擎的运行环境以及抖音前端架构自研的高性能互动解决方案。活动中还支持了5个互动玩法,如“神龙探宝”、“摇福签”等。整个开发过程需要三方通力合作,尤其需要程序和设计同学的有效沟通。

🔎

延伸解读

互动玩法与前端页面的协作模式

招财神龙活动将互动部分封装为SDK,通过API与前端通信。前端同学负责主逻辑(如服务端交互、业务元素),互动同学处理游戏逻辑。游戏初始化时,互动侧向前端索要服务端数据,判断展示家场景或寻宝场景;用户完成任务后,前端以事件通知互动侧渲染场景并播放动效。这种分工协作确保了复杂活动的高效开发。

性能优化与机型适配策略

任务页前端UI繁多,互动资源加载是CPU密集型任务,易导致卡顿和OOM,内存安全余量仅200-300MB。为此,团队采用预加载、缓存和销毁策略:游戏初始化后预加载另一场景;根据机型评分和实时内存动态决定缓存或销毁资源,低端机直接销毁以保障稳定性。此外,发光建筑在高端机使用Spine动画,低端机使用精灵图,平衡视觉效果与性能。

2D场景实现3D效果的技巧

寻宝场景是纯2D的,但通过设置元素层级(z轴)实现了自然的3D效果,如龙绕山时龙尾在山后、龙头在山前。设计同学在SAR Creator中配置探测点的Z Value,程序在触发时读取并赋值给神龙实体,再播放动画。此外,3D-2D坐标同步技术用于小女孩头上的气泡,每帧将3D骨骼位置转换为2D画布坐标,确保气泡跟随移动而不穿帮。

场景切换与资源管理

家场景和寻宝场景通过转场动画过渡,转场期间利用Spine动画的loop阶段加载另一场景资源。场景管理采用预加载、缓存和销毁:预加载提前获取资源;缓存将节点移出场景但保留资源,加快切换速度;销毁则递归释放纹理等资源。根据机型信息和实时内存动态选择策略,剩余内存不足时销毁当前场景资源,确保游戏稳定运行。

❓

Q&A

招财神龙活动的主要玩法是什么?

招财神龙活动的主要玩法是用户通过点击按钮引导神龙寻宝,过程中会遇到福袋和龙蛋。

招财神龙活动使用了哪些技术?

活动使用了字节内的主要前端、跨端、互动技术产品,包括跨端框架和SAR Creator。

招财神龙活动中有哪些互动玩法?

活动支持5个互动玩法,包括“招财神龙”、“神龙探宝”、“摇福签”、“保卫现金”和“红包雨”。

招财神龙的开发过程需要哪些团队合作?

开发过程需要产品、设计和程序团队的通力合作,确保设计方案顺利实施。

寻宝场景是如何实现的?

寻宝场景是一个纯2D互动场景,处理复杂逻辑以实现自然的互动效果,并使用正交相机渲染。

任务页在活动期间如何展示内容?

任务页在活动期间展示统一内容,通过替换主KV对应的内容实现动态渲染活动组件。

🏷️

标签

➡️

继续阅读