淘宝直播 3D 虚拟空间应用探索
如果无法正常显示,请先停止浏览器的去广告插件。
1. 淘宝直播3D虚拟空间应用
探索
罗中柱
阿里巴巴高级无线开发专家
2. 目录
01 业务背景介绍
02 什么是云渲染
03 云渲染技术的难点与挑战
04 总结与展望
3.
4. 业务背景介绍
5. 业界情况
社交场景3D化
ZEPETYO
游戏内容多元化
堡垒之夜
开发平台和社区
ROBLOX
6. 淘宝直播
从2D到3D 内容表达形式的升级
云端实时渲染
2D直播
3D直播
7. TaoLiveCity-未来城
基于云渲染的首次电商场景大规模应用
核心技术:
• 云渲染技术
• 3D 制作技术
• 数字人技术
• 多人互动技术
8. 什么是云渲染
9. 云渲染
以云计算为基础的渲染方式,本质为交互式在线视频流
• 流送并非播放预先录制的视频片段,而是播放云端实时生成的渲染帧和音频
• 用户可以通过键盘,鼠标,触摸事件控制画面渲染
10. 云渲染优势
轻量级 大场景 游戏引擎
即点即用 云端强大的GPU算力 PC端成熟的商业游戏引擎
摆脱超级APP包大小限制 专业级别的显卡 Unreal Engine
迭代速度快 可规模化伸缩
11. 云渲染架构
Web/PC/移动
触控
服务端
用户调度
Windows PC 场景内容制作
渲染
Unreal Engine 模型设计
多人互动服务
渲染
资产导入
采集
云主机调度运维
解码
拉流
多媒体服务
GRTN
基于WebRTC 低延时传输通道
云计算基础设施
边缘|中心|网络
地形编辑
编码
推流
灯光调整
性能优化
12. 云渲染技术的难点与挑战
13. 核心挑战
好看 好逛 好玩
场景未来感 单人自主漫游 多人互动
如何保障高清画质? 如何保障百毫秒延时? 如何支持万人在线?
14. 好看:高清画质
如何做到 1080P 30FPS 渲染?
网格体的数量,视野范围,光照计算
实时渲染考验的是CPU和GPU 的处理能力
15. 渲染流水线
大量DrawCall会造成CPU 的性能瓶颈
实时光照和阴影会造成GPU的性能瓶颈
命令缓冲区
渲染模型A
CPU
添加命令
应用阶段
场景数据:
• 摄像机位置,视锥体,场
景模型,光源
• 粗粒度的剔除工作
改变渲染状态
GPU
读取命令
几何阶段
渲染模型B
改变渲染状态
渲染图元:
•
•
•
•
光栅化阶段
点,线,三角面
顶点作色器,逐顶点像光照绘制
片元作色器,逐像素光照绘制
绘制到屏幕
16. 渲染优化-模型合批
RAM
命令缓冲区
显存
渲染合并后的模型
渲染模型A 渲染模型A
渲染模型B 渲染模型B
渲染模型C 渲染模型C
CPU 在RAM 把多个网格体合并成一个更大的网格
,在一个DrawCall 中完成渲染
17. 渲染优化-LOD
Level of Detail
原始模型
LOD模型
LOD 面数 保留比例
LOD0 8320 100%
LOD2 4160 50%
LOD3 2080 25%
LOD4 1040 12.5%
18. 渲染优化-光照烘焙
静态光照贴图
体积光照贴图
19. 好逛:单人漫游
如何做到百毫秒操控延时?
方向
速度
网络传输
20. 延时拆分
缓冲 解码 渲染画面
用户移动按钮
手机端
T0
T7
画面传输
信令传输
网络传输
T1
T6
收到操控指令
云渲染端
T2
渲染完成 编码完成 组包发送
T3
T4
T5
T8
T9
21. 延时优化
阶段四:画面上屏
• 弱网策略
• H265硬解
用户移动按钮
手机端
T0
阶段一:指令上行
• 就近调度
• 动态分辨率,码率
• dataChannel over
RTC
网络传输
50ms
云渲染端
缓冲 解码 渲染画面
10ms 10ms
T7
T8
阶段三:网络传输
• RTC over UDP
• 动态FEC
• jitterBuffer,弱网抖动
画面传输
信令传输
T1
T6
收到操控指令
50ms
渲染完成 编码完成 组包发送
33ms
T2
T9
10ms
6ms
T3
T4
T5
阶段二:渲染推流
性能优化 单帧渲染 < 33ms
H265硬编
无B 帧
22. 好玩:多人同步
如何做到万人同时在线?
互动服务
用户分服
位置更新
AOI
帧同步
消息推送
扩散
23. 多人同步-AOI
Area Of Interest
步骤:
1
Leave
enter
Move
归属
网格
2
1.用户发送位置变更:进入
,移动,离开
2.计算用户所在网格
3 3.将用户挂载到网格位置下
4 4.通知周边8个网格的用户
5
6
,位置发生了变化
24. 多人同步-帧同步
用户A:
Frame
Frame
位置信息
Frame
位置信息
T0
在线人数:1W
同步帧率:30帧/秒
用户可见人数:20
位置信息
T1
T2
Frame Frame Frame
T0 T1 T2
用户B:
核心问题:
• 网络抖动情况下,用户移动
卡顿
• 服务端数据同步压力大,上
行QPS 30W
25. 多人同步-移动模拟
Frame
RenderThread
T0
T1
Frame T2 • 其他玩家的并没有必要精
准同步
自动寻路
P(x0,y0)
DataProcessThread
Frame
• 用户移动的方向,速率一
定时间窗口保持不变
• 降低了服务端数据同步量
P(x1,y1)
• 降低了云主机的数据计算
开销
26. 业务效果
水晶岛 店铺直播
舞台表演 社交玩法
27. 总结与展望
28. 好看
01
更酷炫的内容形式,写实数字人
更高清的画质,4K,60FPS
好逛
02
更低的建模成本,更多的内容生产者
更高速的网络通道,5G/6G
03
好玩
更多的社交玩法
更丰富的人物形象表达,捏脸,换装等能力
29. 扫码回复「D2」
获取第十七届 D2 演讲 PDF 材料
后续也将推送 D2 会后技术文章,敬请关注!!
30. 感谢大家观看