CN111462289B - 图像的渲染方法及装置、系统 - Google Patents
图像的渲染方法及装置、系统 Download PDFInfo
- Publication number
- CN111462289B CN111462289B CN202010334334.8A CN202010334334A CN111462289B CN 111462289 B CN111462289 B CN 111462289B CN 202010334334 A CN202010334334 A CN 202010334334A CN 111462289 B CN111462289 B CN 111462289B
- Authority
- CN
- China
- Prior art keywords
- task
- rendered
- intermediate state
- state data
- rendering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 124
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012545 processing Methods 0.000 claims abstract description 30
- 230000006870 function Effects 0.000 claims description 33
- 230000008569 process Effects 0.000 claims description 10
- 238000004806 packaging method and process Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
本申请公开了一种图像的渲染方法及装置、系统。其中,该方法包括:对待渲染任务进行处理,得到待渲染任务对应的中间状态数据;将待渲染任务对应的中间状态数据发送至服务器;接收服务器通过服务器本地的显卡驱动对中间状态数据进行渲染得到的图像数据。本申请解决了目前对图像进行渲染需要在本地设备配置高性能物理显卡导致的成本较高,并且利用率较低的的技术问题。
Description
技术领域
本申请涉及图像渲染领域,具体而言,涉及一种图像的渲染方法及装置、系统。
背景技术
目前的图像渲染大多是在本地设备使用图形处理器进行渲染,这就要求本地设备的渲染主机必须存在显卡设备。为了达到较好的渲染效果,通常在本地设备上配置高性能物理显卡,而高性能物理显卡的价格较高,在本地设备配置高性能物理显卡会增加设备成本。此外,由于本地设备的渲染任务有限,高性能物理显卡的渲染能力可能很难被充分利用。如果选用低配置物理显卡,虽然降低了设备成本,但是渲染效果可能无法达到预期。
针对目前对图像进行渲染需要在本地设备配置高性能物理显卡导致的成本较高,并且利用率较低的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种图像的渲染方法及装置、系统,以至少解决目前对图像进行渲染需要在本地设备配置高性能物理显卡导致的成本较高,并且利用率较低的的技术问题。
根据本申请实施例的一个方面,提供了一种图像的渲染方法,包括:对待渲染任务进行处理,得到待渲染任务对应的中间状态数据;将待渲染任务对应的中间状态数据发送至服务器;接收服务器通过服务器本地的显卡驱动对中间状态数据进行渲染得到的图像数据。
可选地,对待渲染任务进行处理,得到待渲染任务对应的中间状态数据,包括:依据三维计算机图形库对待渲染任务调用的开放图形库接口函数进行处理,得到待渲染任务对应的中间状态数据,中间状态数据包括控制状态对象和纹理数据,控制状态对象包括对待渲染任务进行渲染的多个参数。
可选地,在对待渲染任务进行处理,得到待渲染任务对应的中间状态数据之前,上述方法还包括:修改三维计算机图形库的功能,其中,三维计算机图形库运行在客户端,用于对待渲染任务进行渲染;将客户端运行的操作系统启动时加载三维计算机图形库的库路径变更为修改后的三维计算机图形库的库路径。
可选地,修改三维计算机图形库的功能,包括:增加三维计算机图形库与服务器建立通信连接的功能;增加三维计算机图形库按照预设协议格式对中间状态数据进行封装的功能。
可选地,将待渲染任务对应的中间状态数据发送至服务器之前,上述方法还包括:按照预设协议格式对中间状态数据进行封装。
可选地,上述预设协议格式包括三个字段,其中,第一字段为数据帧的命令,第二字段为当前数据帧的命令所属的对象,第三字段为当前数据帧的数据长度。
根据本申请实施例的另一方面,还提供了另一种图像的渲染方法,包括:获取客户端发送的待渲染任务对应的中间状态数据;解析中间状态数据,得到解析后的数据;依据服务器本地的显卡驱动对解析后的数据进行渲染。
可选地,中间状态数据包括:控制状态对象和纹理数据,控制状态对象包括对待渲染任务进行渲染的多个参数。
可选地,依据服务器本地的显卡驱动对解析后的数据进行渲染,包括:依据开放图形库接口函数调用服务器本地的显卡驱动对解析后的数据进行渲染。
可选地,获取客户端发送的待渲染任务对应的中间状态数据,包括:获取一个或多个客户端发送的待渲染任务对应的中间状态数据。
根据本申请实施例的另一方面,还提供了一种图像的渲染系统,包括:客户端和服务器,其中,客户端用于对待渲染任务进行处理,得到待渲染任务对应的中间状态数据;并将待渲染任务对应的中间状态数据发送至服务器;服务器用于接收客户端发送的待渲染任务对应的中间状态数据;解析中间状态数据,得到解析后的数据;通过服务器本地的显卡驱动对解析后的数据进行渲染。
根据本申请实施例的另一方面,还提供了一种图像的渲染装置,包括:处理模块,用于对待渲染任务进行处理,得到待渲染任务对应的中间状态数据;发送模块,用于将待渲染任务对应的中间状态数据发送至服务器;接收模块,用于接收服务器通过服务器本地的显卡驱动对中间状态数据进行渲染得到的图像数据。
根据本申请实施例的另一方面,还提供了另一种图像的渲染装置,包括:获取模块,用于获取客户端发送的待渲染任务对应的中间状态数据;解析模块,用于解析中间状态数据,得到解析后的数据;渲染模块,用于依据服务器本地的显卡驱动对解析后的数据进行渲染。
根据本申请实施例的再一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行以上的图像的渲染方法。
根据本申请实施例的再一方面,还提供了一种处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行以上的图像的渲染方法。
在本申请实施例中,采用对待渲染任务进行处理,得到待渲染任务对应的中间状态数据;将待渲染任务对应的中间状态数据发送至服务器;接收服务器通过服务器本地的显卡驱动对中间状态数据进行渲染得到的图像数据的方式,通过将本地设备生成的图像的渲染任务的中间状态数据,通过网络发送到配置有高性能物理显卡的服务器端设备,由服务器端设备完成本地设备的渲染任务,实现渲染任务的拉远,从而实现了降低本地设备的成本,而且提高服务器端配置的高性能物理显卡的利用率的技术效果,进而解决了目前对图像进行渲染需要在本地设备配置高性能物理显卡导致的成本较高,并且利用率较低的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种图像的渲染方法的流程图;
图2是根据本申请实施例的一种图像渲染系统的架构图;
图3是根据本申请实施例的一种预设协议格式的帧结构示意图;
图4是根据本申请实施例的另一种图像的渲染方法的流程图;
图5是根据本申请实施例的一种图像的渲染系统的结构图;
图6是根据本申请实施例的一种图像的渲染装置的结构图;
图7是根据本申请实施例的另一种图像的渲染装置的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本申请实施例,提供了一种图像的渲染方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在现有技术中,也即本地设备配置有物理显卡,由本地设备完成渲染任务的场景下,在Linux系统中所有的应用程序(包括虚拟机)生成的图像的渲染任务必须通过调用开源的渲染库mesa库来实现,也就是说,Linux系统中的图像渲染任务都是通过mesa库完成的。
mesa库是一个在MIT许可证下开放源代码的三维计算机图形库,以开源形式实现了OpenGL的应用程序接口。
为了方便理解,下面对渲染任务的实现过程进行说明:一个3D应用的图像的渲染任务是由OpenGL接口函数进行完成的,但是OpenGL函数的具体实现是由mesa库完成。渲染任务的执行过程主要包括两个部分:用户层和内核层;用户层的实现主要由mesa库完成;内核层的实现由显卡驱动完成。用户层的Mesa库主要基于整个渲染任务的逻辑和状态的控制,为内核层的显卡驱动提供一种统一的接口,而内核层的显卡驱动可以根据用户层传递的统一的接口,来控制物理显卡完成渲染任务。
可见,物理显卡是渲染任务的最终执行者,而mesa库主要是对整个渲染任务的执行过程的中间状态数据的控制。
基于上述渲染任务的实现过程,本发明先由客户端的mesa库将生成的渲染任务的中间状态数据发送给服务器端,再由服务器端的物理显卡生成渲染任务对应的图像数据。其中,发起渲染任务的本地设备为客户端,拉远后实际执行渲染任务的设备为服务器端。
这样,客户端不需配置物理显卡,只需服务器端配置高性能物理显卡即可,并且多个客户端的渲染任务可以发送给同一个服务器端来完成。不仅能够降低客户端设备的成本,而且能够提高服务器端的物理显卡的利用率。
图1是根据本申请实施例的一种图像的渲染方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,对待渲染任务进行处理,得到待渲染任务对应的中间状态数据。
根据本申请的一个可选的实施例,上述待渲染任务是指对图像进行渲染的任务。
步骤S104,将待渲染任务对应的中间状态数据发送至服务器。
步骤S106,接收服务器通过服务器本地的显卡驱动对中间状态数据进行渲染得到的图像数据。
通过上述步骤,通过将本地设备生成的图像的渲染任务的中间状态数据,通过网络发送到配置有高性能物理显卡的服务器端设备,由服务器端设备完成本地设备的渲染任务,实现渲染任务的拉远,从而实现了降低本地设备的成本,而且提高服务器端配置的高性能物理显卡的利用率的技术效果。
根据本申请的一个可选的实施例,在执行步骤S102之前,需要修改三维计算机图形库的功能,其中,三维计算机图形库运行在客户端,通过调用开放图形库接口函数对待渲染任务进行渲染;将客户端运行的操作系统启动时加载三维计算机图形库的库路径变更为修改后的三维计算机图形库的库路径。
根据本申请的一个可选的实施例,修改三维计算机图形库的功能,包括:增加三维计算机图形库与服务器建立通信连接的功能;增加三维计算机图形库按照预设协议格式对中间状态数据进行封装的功能。
图2是根据本申请实施例的一种图像渲染系统的架构图,如图2所示,客户端(client)的操作系统运行的mesa库(即上文中的三维计算机图形库)中包括winsys模块,winsys模块用于将中间状态数据传递给内核层的显卡驱动。而在本发明中,需要事先对winsys模块的功能进行修改,修改后的winsys模块的功能包括如下两部分:
1)由winsys模块建立与服务器端(server)的网络连接,该网络连接用于向服务器端传输中间状态数据。
2)将中间状态数据打包封装,通过已建立的网络连接发送到服务器端。
具体的,可以先预设一个包括符合上述功能要求的修改后的winsys模块的mesa库,记为已修改的mesa库,再通过修改客户端的配置环境变量(LD_LIBRARY_PATH),来改变被加载的mesa库路径,将mesa库的加载路径指定为上述预设的已修改的mesa库,以使客户端通过调用已修改的mesa库来执行渲染任务,实现对渲染任务的拉远。
在本申请的一个可选的实施例中,步骤S102可以通过以下方法实现:依据三维计算机图形库对待渲染任务调用的开放图形库接口函数进行处理,得到待渲染任务对应的中间状态数据,中间状态数据包括控制状态对象和纹理数据,控制状态对象包括对待渲染任务进行渲染的多个参数。
具体实施时,客户端将本地设备中的应用产生的渲染任务发送到已修改的mesa库。
在本步骤中,由于事先已经修改了加载mesa库的路径,因此,本地设备中的应用在进行渲染时,可以加载已修改的mesa库进行渲染。
已修改的mesa库对应用中调用的OpenGL接口函数(开放图形库接口函数)实现具体的渲染,生成渲染任务的中间状态数据,中间状态数据包括控制状态对象和纹理数据。
其中,中间状态数据中的控制状态对象为CSO(不变控制状态对象),主要包括混合、深度、模板、光栅化、着色器、顶点元素。
具体的,中间状态数据包括控制状态对象和纹理数据,中间状态数据是在mesa库处理完OpenGL接口后交给驱动时的一种统一的数据类型。在这里其实就相当于拦截了用户层交给内核层的中间状态数据(控制状态对象和纹理数据),不再用客户端调用显卡驱动,而是将中间状态数据在封装后发送到服务器端来处理。
根据本申请的一个可选的实施例,执行步骤S104之前,还需要按照预设协议格式对中间状态数据进行封装。
已修改的mesa库根据预设的协议格式,对中间状态数据进行封装,生成封装数据,并通过网络将封装数据发送到Server端。
在本步骤中,已修改的mesa库中的修改后的winsys模块,根据预设的协议格式,封装中间状态数据,得到封装数据,并将封装数据通过网络发送给Server端,以使Server端根据封装数据,执行渲染任务,实现渲染任务的拉远。
图3是根据本申请实施例的一种预设协议格式的帧结构示意图,如图3所示,封装完成的数据帧包括三个字段,其中,len为数据帧的数据长度,OBJ为当前数据帧的命令所属的对象,CMD为当前数据帧中的命令。需要说明的是,OBJ也可以理解为待渲染任务的属性。
服务器端的处理流程如下:
步骤A,服务器端在接收到封装数据之后,通过解析封装数据得到中间状态数据。
在本步骤中,服务器端的主程序(负责数据的接收和解析)在接收到封装数据之后,通过解析封装数据得到中间状态数据。
步骤B,根据中间状态数据中的控制状态对象和纹理数据,通过调用OpenGL接口函数翻译解析中间状态数据,使其利用Linux图像栈调用服务器端本地的显卡驱动完成渲染任务,达到与客户端相同的渲染效果。
具体的,服务器端通过调用OpenGL接口函数,直接利用Linux的图像栈进行显卡渲染,也就是说,服务器端相当于一个3D应用程序调用OpenGL接口正常实现图像的渲染操作。
图4是根据本申请实施例的另一种图像的渲染方法的流程图,如图4所示,该方法包括以下步骤:
步骤S402,获取客户端发送的待渲染任务对应的中间状态数据。
步骤S404,解析中间状态数据,得到解析后的数据。
步骤S406,依据服务器本地的显卡驱动对解析后的数据进行渲染。
根据本申请的一个可选的实施例,上述中间状态数据包括:控制状态对象和纹理数据,控制状态对象包括对待渲染任务进行渲染的多个参数。
在本申请的一个可选的实施例中,步骤S406可以通过以下方法实现:依据开放图形库接口函数调用服务器本地的显卡驱动对解析后的数据进行渲染。
服务器端的处理流程如下:
步骤A,服务器端在接收到封装数据之后,通过解析封装数据得到中间状态数据。
在本步骤中,服务器端的主程序(负责数据的接收和解析)在接收到封装数据之后,通过解析封装数据得到中间状态数据。
步骤B,根据中间状态数据中的控制状态对象和纹理数据,通过调用OpenGL接口函数翻译解析中间状态数据,使其利用Linux图像栈调用服务器端本地的显卡驱动完成渲染任务,达到与客户端相同的渲染效果。
具体的,服务器端通过调用OpenGL接口函数,直接利用Linux的图像栈进行显卡渲染,也就是说,服务器端相当于一个3D应用程序调用OpenGL接口正常实现图像的渲染操作。
根据本申请的一个可选的实施例,在执行步骤S402时可以获取一个或多个客户端发送的待渲染任务对应的中间状态数据。
将多个客户端的待渲染任务发送至一个服务器端进行渲染,可以提到服务器端配置的高性能物理显卡的利用率。
图5是根据本申请实施例的一种图像的渲染系统的结构图,如图5所示,该系统包括:客户端50和服务器52,其中,客户端50用于对待渲染任务进行处理,得到待渲染任务对应的中间状态数据;并将待渲染任务对应的中间状态数据发送至服务器52;服务器52用于接收客户端50发送的待渲染任务对应的中间状态数据;解析中间状态数据,得到解析后的数据;通过服务器52本地的显卡驱动对解析后的数据进行渲染。
通过上述系统,通过将本地设备生成的图像的渲染任务的中间状态数据,通过网络发送到配置有高性能物理显卡的服务器端设备,由服务器端设备完成本地设备的渲染任务,实现渲染任务的拉远,从而实现了降低本地设备的成本,而且提高服务器端配置的高性能物理显卡的利用率的技术效果。
需要说明的是,图5所示实施例的优选实施方式可以参见图1和图4所示实施例的相关描述,此处不再赘述。
图6是根据本申请实施例的一种图像的渲染装置的结构图,如图6所示,该装置包括:
处理模块60,用于对待渲染任务进行处理,得到待渲染任务对应的中间状态数据。
发送模块62,用于将待渲染任务对应的中间状态数据发送至服务器。
接收模块64,用于接收服务器通过服务器本地的显卡驱动对中间状态数据进行渲染得到的图像数据。
需要说明的是,图6所示实施例的优选实施方式可以参见图1所示实施例的相关描述,此处不再赘述。
图7是根据本申请实施例的另一种图像的渲染装置的结构图,如图7所示,该装置包括:
获取模块70,用于获取客户端发送的待渲染任务对应的中间状态数据。
解析模块72,用于解析中间状态数据,得到解析后的数据。
渲染模块74,用于依据服务器本地的显卡驱动对解析后的数据进行渲染。
需要说明的是,图7所示实施例的优选实施方式可以参见图4所示实施例的相关描述,此处不再赘述。
本申请实施例还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行以上的图像的渲染方法。
存储介质用于存储执行以下功能的程序:对待渲染任务进行处理,得到待渲染任务对应的中间状态数据;将待渲染任务对应的中间状态数据发送至服务器;接收服务器通过服务器本地的显卡驱动对中间状态数据进行渲染得到的图像数据。或者
获取客户端发送的待渲染任务对应的中间状态数据;解析中间状态数据,得到解析后的数据;依据服务器本地的显卡驱动对解析后的数据进行渲染。
本申请实施例还提供了一种处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行以上的图像的渲染方法。
处理器用于运行执行以下功能的程序:对待渲染任务进行处理,得到待渲染任务对应的中间状态数据;将待渲染任务对应的中间状态数据发送至服务器;接收服务器通过服务器本地的显卡驱动对中间状态数据进行渲染得到的图像数据。或者
获取客户端发送的待渲染任务对应的中间状态数据;解析中间状态数据,得到解析后的数据;依据服务器本地的显卡驱动对解析后的数据进行渲染。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,ReWXDZd-Only Memory)、随机存取存储器(RWXDZM,RWXDZndom WXDZccess Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (14)
1.一种图像的渲染方法,其特征在于,包括:
对待渲染任务进行处理,得到所述待渲染任务对应的中间状态数据;
将所述待渲染任务对应的中间状态数据发送至服务器;
接收所述服务器通过服务器本地的显卡驱动对所述中间状态数据进行渲染得到的图像数据;
对待渲染任务进行处理,得到所述待渲染任务对应的中间状态数据,包括:
依据三维计算机图形库对所述待渲染任务调用的开放图形库接口函数进行处理,得到所述待渲染任务对应的中间状态数据,所述中间状态数据包括控制状态对象和纹理数据,所述控制状态对象包括对所述待渲染任务进行渲染的多个参数。
2.根据权利要求1所述的方法,其特征在于,在对待渲染任务进行处理,得到所述待渲染任务对应的中间状态数据之前,所述方法还包括:
修改所述三维计算机图形库的功能,其中,所述三维计算机图形库运行在客户端,用于对所述待渲染任务进行渲染;
将所述客户端运行的操作系统启动时加载所述三维计算机图形库的库路径变更为修改后的所述三维计算机图形库的库路径。
3.根据权利要求2所述的方法,其特征在于,修改所述三维计算机图形库的功能,包括:
增加所述三维计算机图形库与所述服务器建立通信连接的功能;
增加所述三维计算机图形库按照预设协议格式对所述中间状态数据进行封装的功能。
4.根据权利要求3所述的方法,其特征在于,将所述待渲染任务对应的中间状态数据发送至服务器之前,所述方法还包括:
按照所述预设协议格式对所述中间状态数据进行封装。
5.根据权利要求3或4所述的方法,其特征在于,所述预设协议格式包括三个字段,其中,第一字段为数据帧的命令,第二字段为当前数据帧的命令所属的对象,第三字段为当前数据帧的数据长度。
6.一种图像的渲染方法,其特征在于,包括:
获取客户端发送的待渲染任务对应的中间状态数据,其中,所述客户端用于对待渲染任务进行处理,得到所述待渲染任务对应的中间状态数据,包括:依据三维计算机图形库对所述待渲染任务调用的开放图形库接口函数进行处理,得到所述待渲染任务对应的中间状态数据,所述中间状态数据包括控制状态对象和纹理数据,所述控制状态对象包括对所述待渲染任务进行渲染的多个参数;
解析所述中间状态数据,得到解析后的数据;
依据服务器本地的显卡驱动对所述解析后的数据进行渲染。
7.根据权利要求6所述的方法,其特征在于,所述中间状态数据包括:控制状态对象和纹理数据,所述控制状态对象包括对所述待渲染任务进行渲染的多个参数。
8.根据权利要求6所述的方法,其特征在于,依据服务器本地的显卡驱动对所述解析后的数据进行渲染,包括:
依据开放图形库接口函数调用所述服务器本地的显卡驱动对所述解析后的数据进行渲染。
9.根据权利要求6所述的方法,其特征在于,获取客户端发送的待渲染任务对应的中间状态数据,包括:
获取一个或多个所述客户端发送的待渲染任务对应的中间状态数据。
10.一种图像的渲染系统,其特征在于,包括:客户端和服务器,其中,
所述客户端用于对待渲染任务进行处理,得到所述待渲染任务对应的中间状态数据;并将所述待渲染任务对应的中间状态数据发送至所述服务器;
所述服务器用于接收所述客户端发送的所述待渲染任务对应的中间状态数据;解析所述中间状态数据,得到解析后的数据;通过所述服务器本地的显卡驱动对所述解析后的数据进行渲染;
所述客户端还用于依据三维计算机图形库对所述待渲染任务调用的开放图形库接口函数进行处理,得到所述待渲染任务对应的中间状态数据,所述中间状态数据包括控制状态对象和纹理数据,所述控制状态对象包括对所述待渲染任务进行渲染的多个参数。
11.一种图像的渲染装置,其特征在于,包括:
处理模块,用于对待渲染任务进行处理,得到所述待渲染任务对应的中间状态数据;
发送模块,用于将所述待渲染任务对应的中间状态数据发送至服务器;
接收模块,用于接收所述服务器通过服务器本地的显卡驱动对所述中间状态数据进行渲染得到的图像数据;
所述处理模块,还用于依据三维计算机图形库对所述待渲染任务调用的开放图形库接口函数进行处理,得到所述待渲染任务对应的中间状态数据,所述中间状态数据包括控制状态对象和纹理数据,所述控制状态对象包括对所述待渲染任务进行渲染的多个参数。
12.一种图像的渲染装置,其特征在于,包括:
获取模块,用于获取客户端发送的待渲染任务对应的中间状态数据,其中,所述客户端用于对待渲染任务进行处理,得到所述待渲染任务对应的中间状态数据,包括:依据三维计算机图形库对所述待渲染任务调用的开放图形库接口函数进行处理,得到所述待渲染任务对应的中间状态数据,所述中间状态数据包括控制状态对象和纹理数据,所述控制状态对象包括对所述待渲染任务进行渲染的多个参数;
解析模块,用于解析所述中间状态数据,得到解析后的数据;
渲染模块,用于依据服务器本地的显卡驱动对所述解析后的数据进行渲染。
13.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至9中任意一项所述的图像的渲染方法。
14.一种处理器,其特征在于,所述处理器用于运行存储在存储器中的程序,其中,所述程序运行时执行权利要求1至9中任意一项所述的图像的渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010334334.8A CN111462289B (zh) | 2020-04-24 | 2020-04-24 | 图像的渲染方法及装置、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010334334.8A CN111462289B (zh) | 2020-04-24 | 2020-04-24 | 图像的渲染方法及装置、系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111462289A CN111462289A (zh) | 2020-07-28 |
CN111462289B true CN111462289B (zh) | 2023-10-24 |
Family
ID=71685487
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010334334.8A Active CN111462289B (zh) | 2020-04-24 | 2020-04-24 | 图像的渲染方法及装置、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111462289B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116893816B (zh) * | 2023-09-08 | 2024-01-23 | 北京趋动智能科技有限公司 | 远程渲染方法、装置及存储介质 |
CN117472371B (zh) * | 2023-10-09 | 2024-07-05 | 北京趋动智能科技有限公司 | 远程渲染方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105262961A (zh) * | 2015-10-21 | 2016-01-20 | 北京中科大洋科技发展股份有限公司 | 一种基于集群渲染的多镜头编辑方法 |
CN106557002A (zh) * | 2015-09-30 | 2017-04-05 | 日本冲信息株式会社 | 图像形成设备和图像形成方法 |
CN108765534A (zh) * | 2018-05-24 | 2018-11-06 | 武汉斗鱼网络科技有限公司 | 一种图像渲染方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103701807B (zh) * | 2013-12-26 | 2016-08-24 | 华为技术有限公司 | 一种vdi环境下的数据发送方法和装置 |
-
2020
- 2020-04-24 CN CN202010334334.8A patent/CN111462289B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106557002A (zh) * | 2015-09-30 | 2017-04-05 | 日本冲信息株式会社 | 图像形成设备和图像形成方法 |
CN105262961A (zh) * | 2015-10-21 | 2016-01-20 | 北京中科大洋科技发展股份有限公司 | 一种基于集群渲染的多镜头编辑方法 |
CN108765534A (zh) * | 2018-05-24 | 2018-11-06 | 武汉斗鱼网络科技有限公司 | 一种图像渲染方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
金平 ; 张海东 ; 齐越 ; 沈旭昆 ; .基于远程渲染的三维模型发布系统.北京航空航天大学学报.2006,(03),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111462289A (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10354430B2 (en) | Image update method, system, and apparatus | |
US20170323418A1 (en) | Virtualized gpu in a virtual machine environment | |
CN114968478A (zh) | 一种数据处理的方法、装置、服务器和系统 | |
US11711563B2 (en) | Methods and systems for graphics rendering assistance by a multi-access server | |
CN111462289B (zh) | 图像的渲染方法及装置、系统 | |
US8654134B2 (en) | Command remoting | |
US20100134494A1 (en) | Remote shading-based 3d streaming apparatus and method | |
CN111488196A (zh) | 渲染方法及装置、存储介质、处理器 | |
CN110213265B (zh) | 图像获取方法、装置、服务器及存储介质 | |
US20240096007A1 (en) | Rendering Method, Device, and System | |
CN111984114A (zh) | 基于虚拟空间的多人交互系统及其多人交互方法 | |
CN110404256A (zh) | 数据处理方法及装置、设备、服务器、系统及存储介质 | |
CN108762934A (zh) | 远程图形传输系统、方法及云服务器 | |
CN107729049A (zh) | 指令转换方法、设备及计算机可读存储介质 | |
CN113240571A (zh) | 图像处理系统、方法 | |
CN114268779B (zh) | 图像数据处理方法、装置、设备及计算机可读存储介质 | |
CN113835890A (zh) | 一种渲染数据处理方法、装置、设备和存储介质 | |
CN109671156A (zh) | 三维模型加载方法和装置 | |
US10062140B2 (en) | Graphics processing systems | |
CN112416470B (zh) | 命令的执行方法和装置、存储介质及电子装置 | |
CN113051032A (zh) | 应用画面处理方法、装置和系统 | |
CN112416489A (zh) | 工程图纸显示方法及相关装置 | |
CN115767182B (zh) | 图像渲染方法、装置、电子设备及存储介质 | |
CN112070655A (zh) | 应用的渲染方法、系统、装置、存储介质和处理器 | |
CN118096926B (zh) | 应用纹理渲染方法、相关装置和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |