CN111744182A - 游戏场景的批处理渲染方法、装置以及服务器 - Google Patents
游戏场景的批处理渲染方法、装置以及服务器 Download PDFInfo
- Publication number
- CN111744182A CN111744182A CN202010631534.XA CN202010631534A CN111744182A CN 111744182 A CN111744182 A CN 111744182A CN 202010631534 A CN202010631534 A CN 202010631534A CN 111744182 A CN111744182 A CN 111744182A
- Authority
- CN
- China
- Prior art keywords
- rendering
- grid
- information
- game
- rendering object
- 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.)
- Pending
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 364
- 238000000034 method Methods 0.000 title claims abstract description 44
- 239000000463 material Substances 0.000 claims abstract description 111
- 239000011159 matrix material Substances 0.000 claims abstract description 64
- 230000009466 transformation Effects 0.000 claims abstract description 62
- 238000004590 computer program Methods 0.000 claims description 14
- 230000003068 static effect Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及一种游戏场景的批处理渲染方法、装置以及服务器,所述游戏场景的批处理渲染方法包括步骤:获取所述游戏场景中游戏模型对应的网格渲染对象;获取所述网格信息相同且材质信息相同的第一网格渲染对象和所述网格信息不同或材质信息不同的第二网格渲染对象;对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行批处理渲染,并对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网格渲染对象对应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染。相对于现有技术,本申请实现了对网格信息和材质信息相同的游戏模型的批处理渲染,减少了调用渲染接口的次数,减轻了CPU的负载,提高了渲染速度。
Description
技术领域
本申请实施例涉及计算机通信技术领域,尤其涉及一种游戏场景的批处理渲染方法、装 置以及服务器。
背景技术
随着游戏技术的不断发展,游戏玩家对游戏场景要求越来越高,游戏开发商即要保证游 戏场景的制作精良,同时又保证终端负载能力强、运行速度快。因而,如何针对各种游戏场 景进行优化成为亟待解决的技术问题。
现有技术在游戏场景的渲染过程中,可以通过调用渲染接口来进行图像渲染,在调用渲 染接口的过程中,终端的中央处理器调用底层图形渲染接口,以命令图像处理器进行渲染操 作。但是,由于游戏场景内模型众多、采用的材质也多种多样,每进行一次渲染CPU都去调 用一次渲染接口,这将导致CPU过载,影响渲染速度。
发明内容
本申请实施例提供了一种游戏场景的批处理渲染方法、装置以及服务器,可以游戏场景 渲染速度慢、CPU负载过大的问题,所述技术方案如下:
第一方面,本申请实施例提供了一种游戏场景的批处理渲染方法,包括:获取所述游戏 场景中游戏模型对应的网格渲染对象;其中,所述网格渲染对象指向渲染所述游戏模型用到 的网格信息、材质信息和空间变换矩阵;
获取所述网格信息相同且材质信息相同的第一网格渲染对象和所述网格信息不同或材质 信息不同的第二网格渲染对象;
对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行批处理渲染,并对 所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网格渲染对象对应的 游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染。
可选的,所述获取所述游戏场景中游戏模型对应的网格渲染对象之后,包括步骤:
遍历所述网格渲染对象,获取当前网格渲染对象指向的网格信息的标识和材质信息的标 识,得到所述当前网格渲染对象的对象标识,若所述当前网格渲染对象的对象标识与已遍历 的网格渲染对象的对象标识相同,存储所述当前网格渲染对象指向的空间变换矩阵;
若所述当前网络对象的对象标识与已遍历的网格渲染对象的对象标识均不同,存储所述 当前网格渲染对象指向的网格信息、材质信息和空间变换矩阵。
可选的,所述获取所述网格信息相同且材质信息相同的第一网格渲染对象和所述网格信 息不同或材质信息不同的第二网格渲染对象,包括步骤:
获取所述对象标识相同的网格渲染对象为第一网格渲染对象,并获取所述对象标识与所 述第一网格渲染对象的对象标识均不同的网格渲染对象为第二网格渲染对象。
可选的,所述对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行批处 理渲染,包括步骤:
将所述第一网格渲染对象的对象标识、所述第一网格渲染对象对应的游戏模型的网格信 息和材质信息的存储路径传入所述第一渲染接口进行批处理渲染。
可选的,所述对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二 网格渲染对象对应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染,包括步 骤:
将所述第一网格渲染对象的对象标识、所述第一网格渲染对象对应的游戏模型的空间变 换矩阵、以及所述第二网格渲染对象的对象标识、所述第二网格渲染对象对应的游戏模型的 网格信息和材质信息的存储路径、空间变换矩阵转换为二进制数据流;
调用所述游戏场景的第二渲染接口,将所述二进制数据流传入所述第二渲染接口进行单 独渲染。
可选的,所述游戏模型包括静态模型和动态模型,获取所述游戏场景中游戏模型对应的 网格渲染对象之前,包括步骤:
将动态模型标识发送至对应的客户端,通过所述客户端获取所述动态模型标识对应的动 态模型,复制所述动态模型至所述游戏场景中。
第二方面,本申请实施例提供了一种游戏场景的批处理渲染装置,包括:
第一获取单元,用于获取所述游戏场景中游戏模型对应的网格渲染对象;其中,所述网 格渲染对象指向渲染所述游戏模型用到的网格信息、材质信息和空间变换矩阵;
第二获取单元,用于获取所述网格信息相同且材质信息相同的第一网格渲染对象和所述 网格信息不同或材质信息不同的第二网格渲染对象;
渲染单元,用于对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行批 处理渲染,并对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网格 渲染对象对应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染。
第三方面,本申请实施例提供了一种服务器,包括:处理器、存储器以及存储在所述存 储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第 一方面游戏场景的批处理渲染方法的步骤。
第五方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存 储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的游戏场景的批 处理渲染方法的步骤。
在本申请的实施例中,通过获取所述游戏场景中游戏模型对应的网格渲染对象;其中, 所述网格渲染对象指向渲染所述游戏模型用到的网格信息、材质信息和空间变换矩阵;获取 所述网格信息相同且材质信息相同的第一网格渲染对象和所述网格信息不同或材质信息不同 的第二网格渲染对象;对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行 批处理渲染,并对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网 格渲染对象对应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染,实现了对 网格信息和材质信息相同的游戏模型的批处理渲染,减少了调用渲染接口的次数,减轻了CPU 的负载,提高了渲染速度。
为了更好地理解和实施,下面结合附图详细说明本申请的技术方案。
附图说明
图1为本申请一个实施例提供的游戏场景的批处理渲染方法的流程示意图;
图2为本申请另一个实施例提供的游戏场景的批处理渲染方法的流程示意图;
图3为本申请一个实施例提供的游戏场景的批处理渲染装置的结构示意图;
图4为本申请一个实施例提供的服务器的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时, 除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述 的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书 中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申 请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式, 除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个 或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信 息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申 请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信 息。取决于语境,如在此所使用的词语“如果”/“若”可以被解释成为“在……时”或“当…… 时”或“响应于确定”。
请参阅图1,为本申请一个实施例提供的游戏场景的批处理渲染方法的流程示意图,所 述方法包括如下步骤:
S101:获取所述游戏场景中游戏模型对应的网格渲染对象;其中,所述网格渲染对象指 向渲染所述游戏模型用到的网格信息、材质信息和空间变换矩阵。
每一款游戏均会设计多种多样的游戏场景,游戏玩家通过显示设备能够观看到游戏世界 中的各种游戏场景,达成游戏体验。
在每个游戏场景中包括若干个游戏模型,在本申请实施例中,所述游戏模型为3D游戏 模型,所述游戏模型可以分为人物模型、建筑模型、植物模型以及基础背景模型等等。
具体地,游戏模型可以通过第三方软件生成,例如:3D studio Max、Maya等,在生成游 戏模型后,会将其放置到游戏场景中。
在一个可选的实施例中,所述游戏模型包括静态模型和动态模型,所述静态模型是游戏 运行前已经放置在游戏场景中的模型,所述动态模型为游戏运行时动态复制在游戏场景中的 模型。
具体地,对于动态模型,服务器在游戏开始的时候,发送动态模型标识至对应的客户端 中,通过客户端获取动态模型标识对应的动态模型,复制所述动态模型至游戏场景中。
可以理解的是,服务器中存储有游戏玩家标识以及所述游戏玩家标识对应的动态模型标 识,在游戏玩家不断玩游戏的过程中,存储的动态模型标识会不断发生变化,从而需要在每 次游戏开始时,需动态复制到游戏场景中。
服务器获取所述游戏场景中游戏模型对应的网格渲染对象,所述网格渲染对象指向渲染 所述游戏模型用到的网格信息、材质信息和空间变换矩阵。
其中,所述网格信息为渲染一个游戏模型需使用的集合信息,包括但不限于:顶点数量、 顶点位置、顶点颜色、顶点的法线方向以及三角面数量等。
所述材质信息为渲染一个游戏模型需要用到的参数和方法信息,包括但不限于:贴图、 渲染函数以及渲染参数等。
所述空间变换矩阵为渲染一个游戏模型需用到的旋转矩阵、平移矩阵以及缩放矩阵。
具体地,若采用Unity3D进行游戏模型的渲染,可以通过Unity3D的内置接口获取到游 戏场景中所有的网格渲染对象,通过调用网格渲染对象,能够获取到每个游戏模型用到的网 格信息、材质信息和空间变换矩阵。
S102:获取所述网格信息相同且材质信息相同的第一网格渲染对象和所述网格信息不同 或材质信息不同的第二网格渲染对象。
每个游戏模型均对应一个网格渲染对象,服务器通过判断网格渲染对象所指向的网格信 息和材质信息是否相同,获取网格信息相同且材质信息相同的第一网格渲染对象和网格信息 不同或材质信息不同的第二网格渲染对象。
所述第一网格渲染对象包括多组,每组内的第一网格渲染对象所指向的网格信息和材质 信息均相同。
所述第二网格渲染对象包括至少一个,每个第二网格渲染对象与其他网格渲染对象的网 格信息不同或材质信息不同。
例如:网格渲染对象包括A1、A2、A3、B1、B2以及C1,A1、A2和A2所指向的网格 信息和材质信息相同,B1和B2所指向的网格信息和材质信息相同,没有与C1所指向的网 格信息和材质信息相同的其他网格渲染对象,那么A1、A2、A3为一组第一网格渲染对象、 B1、B2为另一组第一网格渲染对象,C1为第二网格渲染对象。
S103:对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行批处理渲染, 并对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网格渲染对象对 应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染。
服务器对第一网格渲染对象对应的游戏模型的网格信息和材质信息进行批处理渲染。
具体地,服务器分别将每组第一网格渲染对象传入渲染接口,通过渲染接口对同一组内 的第一网格渲染对应的游戏模型的网格信息和材质信息进行批处理渲染。
由于同一组内的第一网格渲染对象对应的游戏模型的空间变换矩阵并不相同,因此,对 于第一网格渲染对象对应的游戏模型的空间变换矩阵、以及第二网格渲染对象对应的游戏模 型的网格信息、材质信息和空间变换矩阵进行单独渲染。
在本申请的实施例中,通过获取所述游戏场景中游戏模型对应的网格渲染对象;其中, 所述网格渲染对象指向渲染所述游戏模型用到的网格信息、材质信息和空间变换矩阵;获取 所述网格信息相同且材质信息相同的第一网格渲染对象和所述网格信息不同或材质信息不同 的第二网格渲染对象;对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行 批处理渲染,并对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网 格渲染对象对应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染,实现了对 网格信息和材质信息相同的游戏模型的批处理渲染,减少了调用渲染接口的次数,减轻了CPU 的负载,提高了渲染速度。
请参阅图2,图2为本申请另一个实施例提供的游戏场景的批处理渲染方法的流程示意 图,所述方法包括S201~S204,具体如下:
S201:获取所述游戏场景中游戏模型对应的网格渲染对象;其中,所述网格渲染对象指 向渲染所述游戏模型用到的网格信息、材质信息和空间变换矩阵。
S202:遍历所述网格渲染对象,获取当前网格渲染对象指向的网格信息的标识和材质信 息的标识,得到所述当前网格渲染对象的对象标识,若所述当前网格渲染对象的对象标识与 已遍历的网格渲染对象的对象标识相同,存储所述当前网格渲染对象指向的空间变换矩阵。
服务器遍历所述网格渲染对象,获取当前网格渲染对象指向的网格信息的标识和材质信 息的标识,根据所述网格信息的标识和材质信息的标识,得到所述当前网格渲染对象的对象 标识。
其中,所述网格信息的标识和材质信息的标识分别为网格信息和材质信息的唯一标识, 在一个可选的实施例中,所述网格信息的标识和材质信息的标识均以字符串的形式存储,将 所述网格信息的标识和材质信息的标识对应的字符串相连所得到述当前网格渲染对象的对象 标识。
若所述当前网格渲染对象的对象标识与已遍历的网格渲染对象的对象标识相同,那么表 示当前网格渲染对象指向的渲染所述游戏模型需要用到的网格信息和材质信息已经被存储, 仅需存储当前网格对象所指向的空间变换矩阵。
S203:若所述当前网络对象的对象标识与已遍历的网格渲染对象的对象标识均不同,存 储所述当前网格渲染对象指向的网格信息、材质信息和空间变换矩阵。
若所述当前网格对象的对象标识与已遍历的网格渲染对象的对象标识均不同,那么表示 所述当前网格对象指向的渲染所述游戏模型需要用到的网格信息和材质信息与已遍历的网格 渲染对象指向的都不同,因而服务器存储所述当前网格渲染对象指向的网格信息、材质信息 和空间变换矩阵。
S204:获取所述对象标识相同的网格渲染对象为第一网格渲染对象,并获取所述对象标 识与所述第一网格渲染对象的对象标识均不同的网格渲染对象为第二网格渲染对象。
服务器获取所述对象标识相同的网格渲染对象为第一网格渲染对象,并获取所述对象标 识与所述第一网格渲染对象的对象标识均不同的网格渲染对象为第二网格渲染对象。
通过标识判断网格渲染对象所指向的网格信息和材质信息是否相同,能够提高服务器的 处理速度,在存在大量网格渲染对象的情况下,快速获取到第一网格渲染对象和第二网格渲 染对象。
S205:对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行批处理渲染, 并对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网格渲染对象对 应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染。
具体地,服务器将所述第一网格渲染对象的对象标识,以及所述第一网格渲染对象对应 的游戏模型的网格信息和材质信息的存储路径传入所述第一渲染接口进行批处理渲染。
其中,第一网格渲染对象仍包括多组,每组内的第一网格渲染对象所指向的网格信息和 材质信息均相同。由于本实施例是将对象标识传入第一渲染接口,所以在传入之前,无需对 第一网格渲染对象先进行分组,而是可以直接将所有第一网格渲染对象的对象标识传入第一 渲染接口,使第一渲染接口直接根据对象标识对第一网格渲染对象进行分组合并,再基于相 同的网格信息和材质信息的存储路径提取网格信息和材质信息,进行批处理渲染。
服务器将所述第一网格渲染对象的对象标识、所述第一网格渲染对象对应的游戏模型的 空间变换矩阵、以及所述第二网格渲染对象的对象标识、所述第二网格渲染对象对应的游戏 模型的网格信息和材质信息的存储路径、空间变换矩阵转换为二进制数据流,调用所述游戏 场景的第二渲染接口,将所述二进制数据流传入所述第二渲染接口进行单独渲染。
在本实施例中,通过遍历每个网格渲染对象,得到网格渲染对象的标识,再基于标识判 断当前网格渲染对象所指向的渲染游戏模型用到的网格信息和材质信息是否与已遍历的网格 渲染对象的所指向的相同,从而实现了同样的网格信息和材质信息只存储一份,提高了存储 空间的利用率。并且,由于直接将所述第一网格渲染对象的对象标识,以及所述第一网格渲 染对象对应的游戏模型的网格信息和材质信息的存储路径传入所述第一渲染接口进行批处理 渲染,无需单独对第一网格渲染对象进行分组合并,提高了整体渲染速度,还同样减少了渲 染接口的调用次数,减轻了CPU负载。
请参见图3,为本申请一个实施例提供的游戏场景的批处理渲染装置的结构示意图。该 装置可以通过软件、硬件或两者的结合实现成为游戏场景的批处理渲染设备的全部或一部分。 该装置3包括第一获取单元31、第二获取单元32和渲染单元33:
第一获取单元31,用于获取所述游戏场景中游戏模型对应的网格渲染对象;其中,所述 网格渲染对象指向渲染所述游戏模型用到的网格信息、材质信息和空间变换矩阵;
第二获取单元32,用于获取所述网格信息相同且材质信息相同的第一网格渲染对象和所 述网格信息不同或材质信息不同的第二网格渲染对象;
渲染单元33,用于对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行 批处理渲染,并对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网 格渲染对象对应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染。
在本申请的实施例中,通过获取所述游戏场景中游戏模型对应的网格渲染对象;其中, 所述网格渲染对象指向渲染所述游戏模型用到的网格信息、材质信息和空间变换矩阵;获取 所述网格信息相同且材质信息相同的第一网格渲染对象和所述网格信息不同或材质信息不同 的第二网格渲染对象;对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行 批处理渲染,并对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网 格渲染对象对应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染,实现了对 网格信息和材质信息相同的游戏模型的批处理渲染,减少了调用渲染接口的次数,减轻了CPU 的负载,提高了渲染速度。
可选的,所述装置3还包括:
第一存储单元,用于遍历所述网格渲染对象,获取当前网格渲染对象指向的网格信息的 标识和材质信息的标识,得到所述当前网格渲染对象的对象标识,若所述当前网格渲染对象 的对象标识与已遍历的网格渲染对象的对象标识相同,存储所述当前网格渲染对象指向的空 间变换矩阵;
第二存储单元,用于若所述当前网络对象的对象标识与已遍历的网格渲染对象的对象标 识均不同,存储所述当前网格渲染对象指向的网格信息、材质信息和空间变换矩阵。
可选的,所述第二获取单元32包括:
第三获取单元,用于获取所述对象标识相同的网格渲染对象为第一网格渲染对象,并获 取所述对象标识与所述第一网格渲染对象的对象标识均不同的网格渲染对象为第二网格渲染 对象。
可选的,所述渲染单元33包括:
第一渲染单元,用于将所述第一网格渲染对象的对象标识、所述第一网格渲染对象对应 的游戏模型的网格信息和材质信息的存储路径传入所述第一渲染接口进行批处理渲染。
可选的,所述渲染单元33还包括:
转换单元,用于将所述第一网格渲染对象的对象标识、所述第一网格渲染对象对应的游 戏模型的空间变换矩阵、以及所述第二网格渲染对象的对象标识、所述第二网格渲染对象对 应的游戏模型的网格信息和材质信息的存储路径、空间变换矩阵转换为二进制数据流;
第二渲染单元,用于调用所述游戏场景的第二渲染接口,将所述二进制数据流传入所述 第二渲染接口进行单独渲染。
可选的,所述装置3还包括:
动态复制单元,用于将动态模型标识发送至对应的客户端,通过所述客户端获取所述动 态模型标识对应的动态模型,复制所述动态模型至所述游戏场景中。
请参见图4,为本申请一个实施例提供的服务器的结构示意图。如图4所示,所述服务 器4可以包括:处理器40、存储器41以及存储在所述存储器41并可以在所述处理器40上运行的计算机程序42,例如:游戏场景的批处理渲染程序;所述处理器40执行所述计算机程序42时实现上述各方法实施例中的步骤,例如图1所示的步骤S101至S103。或者,所述 处理器40执行所述计算机程序42时实现上述各装置实施例中各模块/单元的功能。
其中,所述处理器40可以包括一个或多个处理核心。处理器40利用各种接口和线路连 接所述控制设备4内的各个部分,通过运行或执行存储在存储器41内的指令、程序、代码集 或指令集,以及调用存储器41内的数据,执行控制设备4的各种功能和处理数据,可选的, 处理器40可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列 (Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programble LogicArray,PLA) 中的至少一个硬件形式来实现。处理器40可集成中央处理器(CentralProcessing Unit,CPU)、 图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中, CPU主要处理操作***、用户界面和应用程序等;GPU用于负责触摸显示屏所需要显示的内 容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不 集成到处理器40中,单独通过一块芯片进行实现。
其中,存储器41可以包括随机存储器(Random Access Memory,RAM),也可以包括只 读存储器(Read-Only Memory)。可选的,该存储器41包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器41可用于存储指令、程序、代码、 代码集或指令集。存储器41可包括存储程序区和存储数据区,其中,存储程序区可存储用于 实现操作***的指令、用于至少一个功能的指令(比如触控指令等)、用于实现上述各个方法 实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器41可选 的还可以是至少一个位于远离前述处理器40的存储装置。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、 模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、 模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部 或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单 元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采 用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体 名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的 具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部 分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算 法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件 还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每 个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范 围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其 它的方式实现。例如,以上所描述的装置/终端设备实施例仅是示意性的,例如,所述模块或 单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元 或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所 显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间 接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部 件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元 上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个 单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以 采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时, 可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中 的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可 存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实 施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代 码形式、对象代码形式、可执行文件或某些中间形式等。
本发明并不局限于上述实施方式,如果对本发明的各种改动或变形不脱离本发明的精神 和范围,倘若这些改动和变形属于本发明的权利要求和等同技术范围之内,则本发明也意图 包含这些改动和变形。
Claims (10)
1.一种游戏场景的批处理渲染方法,其特征在于,包括步骤:
获取所述游戏场景中游戏模型对应的网格渲染对象;其中,所述网格渲染对象指向渲染所述游戏模型用到的网格信息、材质信息和空间变换矩阵;
获取所述网格信息相同且材质信息相同的第一网格渲染对象和所述网格信息不同或材质信息不同的第二网格渲染对象;
对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行批处理渲染,并对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网格渲染对象对应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染。
2.根据权利要求1所述的游戏场景的批处理渲染方法,其特征在于,所述获取所述游戏场景中游戏模型对应的网格渲染对象之后,包括步骤:
遍历所述网格渲染对象,获取当前网格渲染对象指向的网格信息的标识和材质信息的标识,得到所述当前网格渲染对象的对象标识,若所述当前网格渲染对象的对象标识与已遍历的网格渲染对象的对象标识相同,存储所述当前网格渲染对象指向的空间变换矩阵;
若所述当前网络对象的对象标识与已遍历的网格渲染对象的对象标识均不同,存储所述当前网格渲染对象指向的网格信息、材质信息和空间变换矩阵。
3.根据权利要求2所述的游戏场景的批处理渲染方法,其特征在于,所述获取所述网格信息相同且材质信息相同的第一网格渲染对象和所述网格信息不同或材质信息不同的第二网格渲染对象,包括步骤:
获取所述对象标识相同的网格渲染对象为第一网格渲染对象,并获取所述对象标识与所述第一网格渲染对象的对象标识均不同的网格渲染对象为第二网格渲染对象。
4.根据权利要求2所述的游戏场景的批处理渲染方法,其特征在于,所述对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行批处理渲染,包括步骤:
将所述第一网格渲染对象的对象标识、所述第一网格渲染对象对应的游戏模型的网格信息和材质信息的存储路径传入所述第一渲染接口进行批处理渲染。
5.根据权利要求2所述的游戏场景的批处理渲染方法,其特征在于,所述对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网格渲染对象对应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染,包括步骤:
将所述第一网格渲染对象的对象标识、所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网格渲染对象的对象标识、所述第二网格渲染对象对应的游戏模型的网格信息和材质信息的存储路径、空间变换矩阵转换为二进制数据流;
调用所述游戏场景的第二渲染接口,将所述二进制数据流传入所述第二渲染接口进行单独渲染。
6.根据权利要求1所述的游戏场景的批处理渲染方法,其特征在于,所述游戏模型包括静态模型和动态模型,获取所述游戏场景中游戏模型对应的网格渲染对象之前,包括步骤:
将动态模型标识发送至对应的客户端,通过所述客户端获取所述动态模型标识对应的动态模型,复制所述动态模型至所述游戏场景中。
7.一种游戏场景的批处理渲染装置,其特征在于,包括:
第一获取单元,用于获取所述游戏场景中游戏模型对应的网格渲染对象;其中,所述网格渲染对象指向渲染所述游戏模型用到的网格信息、材质信息和空间变换矩阵;
第二获取单元,用于获取所述网格信息相同且材质信息相同的第一网格渲染对象和所述网格信息不同或材质信息不同的第二网格渲染对象;
渲染单元,用于对所述第一网格渲染对象对应的游戏模型的网格信息和材质信息进行批处理渲染,并对所述第一网格渲染对象对应的游戏模型的空间变换矩阵、以及所述第二网格渲染对象对应的游戏模型的网格信息、材质信息和空间变换矩阵进行单独渲染。
8.根据权利要求7所述的游戏场景的批处理渲染装置,其特征在于,还包括:
遍历所述网格渲染对象,获取当前网格渲染对象指向的网格信息的标识和材质信息的标识,得到所述当前网格渲染对象的对象标识,若所述当前网格渲染对象的对象标识与已遍历的网格渲染对象的对象标识相同,存储所述当前网格渲染对象指向的空间变换矩阵;
若所述当前网络对象的对象标识与已遍历的网格渲染对象的对象标识均不同,存储所述当前网格渲染对象指向的网格信息、材质信息和空间变换矩阵。
9.一种服务器,其特征在于,包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010631534.XA CN111744182A (zh) | 2020-07-03 | 2020-07-03 | 游戏场景的批处理渲染方法、装置以及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010631534.XA CN111744182A (zh) | 2020-07-03 | 2020-07-03 | 游戏场景的批处理渲染方法、装置以及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111744182A true CN111744182A (zh) | 2020-10-09 |
Family
ID=72678913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010631534.XA Pending CN111744182A (zh) | 2020-07-03 | 2020-07-03 | 游戏场景的批处理渲染方法、装置以及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111744182A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113827965A (zh) * | 2021-09-28 | 2021-12-24 | 完美世界(北京)软件科技发展有限公司 | 游戏场景中样条线的渲染方法、装置及设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090021513A1 (en) * | 2007-07-18 | 2009-01-22 | Pixblitz Studios Inc. | Method of Customizing 3D Computer-Generated Scenes |
KR20090041204A (ko) * | 2007-10-23 | 2009-04-28 | 한국전자통신연구원 | 3d 모델 식별자를 이용한 랜더링 시스템 및 방법 |
CN109816762A (zh) * | 2019-01-30 | 2019-05-28 | 网易(杭州)网络有限公司 | 一种图像渲染方法、装置、电子设备和存储介质 |
CN109816763A (zh) * | 2018-12-24 | 2019-05-28 | 苏州蜗牛数字科技股份有限公司 | 一种图形渲染方法 |
CN109978981A (zh) * | 2019-03-15 | 2019-07-05 | 广联达科技股份有限公司 | 一种提高建筑模型显示效率的批次渲染方法 |
CN110570507A (zh) * | 2019-09-11 | 2019-12-13 | 珠海金山网络游戏科技有限公司 | 一种图像渲染方法及装置 |
CN111340925A (zh) * | 2020-02-28 | 2020-06-26 | 福建数***信息科技有限公司 | 一种区域划分的渲染优化方法及终端 |
-
2020
- 2020-07-03 CN CN202010631534.XA patent/CN111744182A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090021513A1 (en) * | 2007-07-18 | 2009-01-22 | Pixblitz Studios Inc. | Method of Customizing 3D Computer-Generated Scenes |
KR20090041204A (ko) * | 2007-10-23 | 2009-04-28 | 한국전자통신연구원 | 3d 모델 식별자를 이용한 랜더링 시스템 및 방법 |
CN109816763A (zh) * | 2018-12-24 | 2019-05-28 | 苏州蜗牛数字科技股份有限公司 | 一种图形渲染方法 |
CN109816762A (zh) * | 2019-01-30 | 2019-05-28 | 网易(杭州)网络有限公司 | 一种图像渲染方法、装置、电子设备和存储介质 |
CN109978981A (zh) * | 2019-03-15 | 2019-07-05 | 广联达科技股份有限公司 | 一种提高建筑模型显示效率的批次渲染方法 |
CN110570507A (zh) * | 2019-09-11 | 2019-12-13 | 珠海金山网络游戏科技有限公司 | 一种图像渲染方法及装置 |
CN111340925A (zh) * | 2020-02-28 | 2020-06-26 | 福建数***信息科技有限公司 | 一种区域划分的渲染优化方法及终端 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113827965A (zh) * | 2021-09-28 | 2021-12-24 | 完美世界(北京)软件科技发展有限公司 | 游戏场景中样条线的渲染方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108563517B (zh) | ***接口的调用方法及装置 | |
CN111681167B (zh) | 画质调整方法和装置、存储介质及电子设备 | |
CN112316433B (zh) | 游戏画面渲染方法、装置、服务器和存储介质 | |
EP4325423A1 (en) | Rendering method, device and system | |
WO2022033162A1 (zh) | 一种模型加载方法以及相关装置 | |
JP7297080B2 (ja) | 画像取得方法、画像取得装置、サーバ、及びコンピュータプログラム | |
CN112307403A (zh) | 页面渲染方法、装置、存储介质以及终端 | |
CN109509139A (zh) | 顶点数据处理方法、装置及设备 | |
WO2023197762A1 (zh) | 图像渲染方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
CN114116635A (zh) | 压缩数据流的并行解压缩 | |
CN111773704A (zh) | 游戏数据处理方法、装置、存储介质、处理器及电子装置 | |
CN116128983A (zh) | 图片处理的方法和装置、图片渲染的方法和装置 | |
CN111744182A (zh) | 游戏场景的批处理渲染方法、装置以及服务器 | |
CN116897541A (zh) | 使用渲染引擎的沉浸式技术媒体格式(itmf)规范的映射架构 | |
CN105957133B (zh) | 一种加载贴图的方法和装置 | |
CN113204296B (zh) | 图元高亮显示方法、装置、设备及存储介质 | |
CN114429513A (zh) | 可见元素的确定方法和装置、存储介质及电子设备 | |
CN111476858B (zh) | 一种基于WebGL的2d引擎渲染方法、装置及设备 | |
CN107483399B (zh) | 一种在远程过程调用中的信息封装方法及装置 | |
CN113938667B (zh) | 基于视频流数据的视频数据传输方法、装置及存储介质 | |
JP7301453B2 (ja) | 画像処理方法、画像処理装置、コンピュータプログラム、及び電子機器 | |
EP4231243A1 (en) | Data storage management method, object rendering method, and device | |
CN114904274A (zh) | 云游戏的画面渲染方法、装置、电子设备以及存储介质 | |
CN114712853A (zh) | 游戏地图的加载、显示方法、装置、设备以及存储介质 | |
CN109767379B (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 |