LO2S × SNP & DashDigital:设计充满动感与能量的网站
SNP和DashDigital团队分享了他们如何通过动效、交互性和性能优化,将LO2S网站打造成一个充满活力的数字体验。
项目背景
LO2S希望建立一个不仅能展示服务,更能体现其快节奏、运动驱动理念的网站。用户浏览时应能感受到其工作能量。这意味着需要将全屏视频、流畅过渡和交互式动效作为核心构建块。挑战不仅在于视觉抛光,更需确保这些元素在底层保持高性能和无缝体验。
技术与工具
网站基于标准技术栈构建:Next.js(Page Router)、GSAP、Strapi、AWS、CloudFront,并额外采用OGL。
为什么选择OGL?
- 相比three.js更轻量
- 提供最大渲染控制权
- 无需复杂3D资源(GLTF/OBJ/FBX)时的理想选择
这是团队首次在生产环境中使用OGL。LO2S网站不需要复杂3D资产,因此OGL成为实现高性能交互视觉的自然选择。
关键功能
沉浸式落地体验
全屏视频作为入口点,四网格悬停导航展示特色项目。这种设置让用户直接深入作品,同时保持落地页的视觉冲击力。
双工作视图
工作页面提供两种浏览方式:
- 列表视图便于快速导航
- 动态卡片布局,项目动画进出屏幕,创造接近电影序列的浏览节奏
带模糊效果的无限3D画廊
使用transform3d和原生JS而非WebGL实现无限画廊,保持轻量级构建的同时支持背景模糊。通过精细优化确保模糊效果在各设备上稳定运行。
交互式Logo着色器
基于Studio 27b灵感开发自定义着色器,使Logo与品牌本质对齐。悬停时字符移动混合,创造类似现场活动光模式的连接感。
技术优化
初始文本扭曲测试显示锯齿问题,通过自定义aastep函数实现程序化抗锯齿。该函数分析纹理梯度并平滑像素过渡,确保字体缩放清晰且扭曲后仍保持锐利。
视觉与交互元素
塑造体验的关键细节:
- 与Logo关联的页面过渡保持连续性
- 应用于文本的响应式动效扭曲着色器
- 实时自适应布局的动态内容模块
- 设定首次加载基调的动画预加载器
架构与结构
快速内容交付是不可妥协的要求,通过两种方式实现:
- CDN交付:媒体通过AWS CloudFront提供,Strapi配置为自动将资源推送到S3存储桶
- 视频优化:为客户提供bash ffmpeg脚本批量优化视频文件,平衡质量与加载速度
反思与学习
每个项目都是优化流程的机会。LO2S项目中最初使用Strapi的Sharp集成进行图像裁剪,但发现两个痛点:
- 上传原始4K图像会拖慢流程并偶尔失败
- Sharp自动生成多个图像尺寸,其中许多并不必要
项目后测试imgproxy发现更符合需求:
- 与CDN和缓存无缝协作
- 将处理与主应用隔离
- 可按用例配置图像格式
- 基准测试中实现620+请求/秒,延迟约12.8ms
这为团队指明了更清洁、快速、可靠的图像工作流方向。