1、探索 Unity 实时云渲染分布式渲染技术助力提升渲染性能顾申华Unity 中国Unity 实时云渲染介绍引擎集成Unity 引擎原生集成的能力。开发过程中可以做到无需引入额外插件,对工程项目无侵入。已有工程只需使用对应版本系列的编辑器重新构建打包,便可完成发布。实时串流利用了 WebRTC 作为流媒体传输协议,实现高质量、高复杂的 3D 场景在远端渲染,并能低延迟、低损耗的传输至跨平台终端设备播放。实时交互提供多种终端 SDK,提供 Input System 和基础音视频通信功能。开发者可以利用数据通道,自定义业务场景功能,创造更多可能。Unity 实时云渲染介绍基本原理Unity Play
2、er(headless mode)DX11 Swapchain.presentaudio system.master group.onDatainput system:old/newmicrophone.onDataCloudRendering Agent(as a Windows Service)encode,h264encode,accdecode,keyboard,mouse,touch,gamepaddecode,accWeb BrowserPeerConnectiontexture handlevideo streamPCM dataaudio streaminput datadat
3、a channelPCM dataaudio streamstart player,heart beatcloudrendering clientagentstart game,peerConnecitonjs SDK基本用法Step1 打包Step2 上传Step3 发布高级用法Web Appindex.htmlindex.js JS:send/receive messagesUnity ProjectAssetsPackagesinstall cloudrendering.unitypackageC#:send/receive messages高级用法 收发消息C#高级用法 收发消息Jav
4、aScript高级用法更多功能01修改分辨率/画质02 无输入回调03 游戏状态回调04 网络状态回调05 虚拟键盘回调06 游戏截图07 麦克风采集08 结束游戏分布式渲染技术详解技术架构 采用多 GPU 节点以横向扩展的形式运行相同的 Unity 应用,解决大型复杂项目场景下,单机单卡 GPU 纵向提升受限的问题。降低对硬件设备性能的妥协,助力内容创作不受限。架构简介部署方式 单机多卡编组。单机单卡,多机编组。单机多卡,多机编组。支持同主机/跨主机部署混布信息输入帧聚合渲染节点 0渲染节点 1渲染节点 N网络同步画面输出同步方法LockStep,齐步走网络同步方案角色分工EmitterRe
5、peater同步内容时间:Time.delta,Time.unscaledDeltaTime.随机数:种子,内部状态用户输入:键盘,鼠标,触摸 自定义数据EmitterFrame(N+1)RepeaterFrame(N)R1R2R3FrameStateFrameDoneFrameStateFrameDoneFrameStateFrameDone网络同步方案 齐步走顶视图MulticastRepeater 3(Frame N)Repeater 2(Frame N)网络同步方案 齐步走时序图Emitter(Frame N+1)Repeater 1(Frame N)Emit FrameState(N
6、)Wait for FrameDone(N)for all repeatersRestore FrameState(N)Signal FrameDone(N)FixedUpdate(N+1)Blocking LoopBlocking LoopUpdate(N+1)LateUpdate(N+1)Rendering(skipped)Present(skipped)FixedUpdate(N)Update(N)LateUpdate(N)Rendering(N)Present(N)(Frame N)LateUpdate(N