面向Unity应用的分布式渲染微服务化工具链及运行中间件

文档序号:35895981发布日期:2023-10-28 22:21阅读:87来源:国知局
面向Unity应用的分布式渲染微服务化工具链及运行中间件

本发明涉及计算机服务领域。


背景技术:

1、近些年来,“元宇宙(metaverse)”这一新的科技概念逐渐成为热门。“元宇宙”一词是由nealstephenson于1992年在其科幻小说《雪崩(snowcrash)》中最早提出的。nealstephenson把“元宇宙”描述为一个与现实世界平行的虚拟世界。在元宇宙中,每个人都有数字化身(digitalavatar)。这些化身可以在三维虚拟空间相互交流与互动。在现实世界的人们可以通过穿戴式xr设备或软件与元宇宙虚拟世界的人或物相联系。依照评论家matthewball的说法,元宇宙是大规模、可互操作的网络,能够实时渲染3d虚拟世界,借助大量连续性数据,如身份、历史、权利、对象、通信和支付等,可以让无限数量的用户体验实时同步和持续有效的在场感。

2、然而,元宇宙要求的3d虚拟世界渲染、大量连续数据等在技术上的实现尚有一定难度,尤其在终端设备计算能力和网络稳定性受限的情况下。但仅引入计算能力强大的云服务器,又会由于传输速度的上限导致延迟急剧增加,影响用户体验。因此,云—边缘—端的系统架构是对于元宇宙服务应用更具有可行性的架构。在这种架构中,由于边缘服务器距离用户端较近,和云端相比,具有较低的延迟,能够对用户的请求做出快速的响应,将服务部署到边缘服务器上,能够显著降低延迟以及数据传输时间,从而提高服务质量。

3、然而,现有的元宇宙应用开发技术并未对边缘或云部署提供足够的支持。现有的元宇宙应用是一些vr/ar设备上的app,它们是由unity或unreal开发的3d游戏应用程序,通过vr/ar厂商提供或公有的sdk编译安卓平台,从而运行在基于安卓操作系统的vr/ar设备上。概括地讲,现有的元宇宙应用是非服务化和单纯依赖终端的。

4、微服务是一种软件架构风格,它是以专注于单一责任与功能的小型功能模块为基础,利用模块化的方式组合出复杂的大型应用程序,各个模块之间高度解耦,能够各自独立的进行开发、测试、部署、拓展等而不影响其它模块。微服务技术的使用,能够让服务系统可以针对用户需求,对特定的服务进行合理的调整,而不影响其它服务的正常运行,降低了服务系统调整的复杂性。容器是应用程序级别的虚拟化,允许单个内核上有多个独立的用户空间实例。它提供了将应用程序的代码、运行时、系统工具、系统库和配置打包到一个实体中的标准方法。相较于传统的虚拟机技术,容器在体积上十分轻量;能够快速启动;具备高弹性,能够更加有效的使用服务器中的资源;具备更高的性能。容器技术的应用,能够让服务在各种异构的服务器环境中,快速的启动和稳定的运行,进一步降低了服务系统调整的复杂性。kubernetes(k8s)是一个开源的,用于管理云平台中多个主机上的容器化的应用,它能够让部署容器化应用更加简单且高效,在该云—边缘—端的架构中,能够显著降低容器化应用的管理难度。基于上述研究背景可以发现,微服务、容器以及k8s的使用,能够构建一个更加稳定高效的云—边缘—端架构下的服务系统。

5、因此,如果能通过某种手段,将依赖于非服务化和单纯依赖终端的元宇宙应用,转化为微服务化和包装于容器的元宇宙微服务应用,即可实现边缘和云上的应用部署和算力应用,有助于实现高可靠、高效率、良体验的元宇宙服务应用。


技术实现思路

1、本发明是为了解决现有面向元宇宙的应用无法运行于容器化、无图形界面的集群环境里问题,从而提供一种面向unity应用的分布式渲染微服务化工具链及运行中间件。

2、本发明采用的技术方案是:

3、面向unity应用的分布式渲染微服务化工具链,它包括unity组件t1、镜像组件t2、远程渲染组件t3和拆分渲染解决方案组件t4;

4、所述unity组件t1,用于unity应用内嵌脚本/客户端库;

5、所述unity组件t1是一个unity素材包,能够被导入到所需的unity3d项目中,还能够扩展unityrenderstreaming,使其兼容元宇宙微服务运行支持中间件的连接标准和配置标准;

6、所述镜像组件t2,用于作为元宇宙微服务容器的镜像基础;

7、所述镜像组件t2是一个docker容器基础镜像,能够以此构建微服务化的unity应用,并提供远程渲染支持;

8、所述远程渲染组件t3,用于为unity应用提供远程渲染解决方案;

9、所述远程渲染组件t3,能够通过unityrenderstreaming、所述unity组件t1和支持中间件的配合实现原始unity应用的远程渲染,以及在所支持的浏览器或unity应用中接收渲染结果。

10、所述拆分渲染解决方案组件t4,用于为unity应用提供拆分渲染解决方案;

11、所述拆分渲染组件t4,能够通过unityrenderstreaming、所述unity组件t1、所述远程渲染组件t3和支持中间件的配合实现原始unity应用的拆分,以及进行各自独立的渲染;

12、优选地,所述unityrenderstreaming是unity官方提供的开源库,能够将非容器化、有界面的unity程序渲染结果视频发送到支持的浏览器上。

13、用于上述面向unity应用的分布式渲染微服务化工具链的运行支持中间件,它包括kubernetes集群改造工具组件m1、unity应用远程渲染网关组件m2、内容分发系统组件m3和自动化渲染缓存服务组件m4,

14、所述kubernetes集群改造工具组件m1,用于对现存、满足硬件要求的kubenetes集群,可以通过工具进行改造,使其适配unity元宇宙微服务;

15、所述unity应用远程渲染网关组件m2,用于与所述unity组件t1配合,帮助渲染发送端和接收端建立网络连接;

16、所述内容分发系统组件m3,用于分发静态资源,并与unityaddressable配合可实现热更新;

17、所述自动化渲染缓存服务组件m4,用于自动化渲染缓存服务。

18、优选地,所述自动化渲染缓存服务组件m4实现自动化渲染缓存服务的具体方法为:

19、对于可缓存的渲染结果,能够根据负载情况自动地进行渲染缓存的生成和释放。

20、发明取得的突出的实质性特点和显著进步:本发明通过微服务容器镜像基础的设计与开发,使得只适用于非容器化、有图形界面环境的unity程序,可以使“元宇宙”应用运行于容器化、无图形界面的集群环境里,填补了现有技术的空白;

21、本发明通过对现有远程渲染技术的增强改造,达成了多程序、分布式的渲染过程,填补了技术上的空白;

22、本发明通过内容分发系统和一些调度方法,实现了渲染结果的持久化和重用。



技术特征:

1.面向unity应用的分布式渲染微服务化工具链,其特征是:它包括unity组件t1、镜像组件t2、远程渲染组件t3和拆分渲染解决方案组件t4;

2.根据权利要求1所述的面向unity应用的分布式渲染微服务化工具链,其特征在于所述unityrenderstreaming是unity官方提供的开源库,能够将非容器化、有界面的unity程序渲染结果视频发送到支持的浏览器上。

3.用于权利要求1所述面向unity应用的分布式渲染微服务化工具链的运行中间件,其特征是:它包括kubernetes集群改造工具组件m1、unity应用远程渲染网关组件m2、内容分发系统组件m3和自动化渲染缓存服务组件m4,

4.根据权利要求3所述用于面向unity应用的分布式渲染微服务化工具链的运行中间件,其特征在于所述自动化渲染缓存服务组件m4实现自动化渲染缓存服务的具体方法为:


技术总结
面向Unity应用的分布式渲染微服务化工具链及运行中间件,涉及计算机服务领域。是为了解决现有面向元宇宙的应用无法运行于容器化、无图形界面的集群环境里问题,本发明通过微服务容器镜像基础的设计与开发,使得只适用于非容器化、有图形界面环境的Unity程序,可以使“元宇宙”应用运行于容器化、无图形界面的集群环境里;以及通过对现有远程渲染技术的增强改造,达成了多程序、分布式的渲染过程,填补了现有技术上的空白。

技术研发人员:宿梓航,王忠杰,贺祥,徐汉川
受保护的技术使用者:哈尔滨工业大学
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1