CN111408138B - 基于游戏引擎的渲染方法、装置及电子设备 - Google Patents
基于游戏引擎的渲染方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111408138B CN111408138B CN201910009532.4A CN201910009532A CN111408138B CN 111408138 B CN111408138 B CN 111408138B CN 201910009532 A CN201910009532 A CN 201910009532A CN 111408138 B CN111408138 B CN 111408138B
- Authority
- CN
- China
- Prior art keywords
- rendering
- engine
- data
- game
- platform
- 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
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/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请实施例提供了一种基于游戏引擎的渲染方法、装置及电子设备。该方法包括:接收到游戏应用中任一场景的渲染数据时,确定游戏应用的运行平台;依据游戏应用的运行平台,确定相应的渲染引擎;利用渲染引擎对应的渲染指令对渲染数据进行渲染处理。本申请实施例实现了针对不同的平台采用不同的渲染引擎,达到保证同一游戏应用在不同的平台的高性能表现的目的,同时无需游戏开发商针对不同的平台研发不同的游戏应用,降低了游戏应用的开发和维护成本。
Description
技术领域
本申请涉及游戏技术领域,具体而言,本申请涉及一种基于游戏引擎的渲染方法、装置及电子设备。
背景技术
近年来,随着Web技术和游戏引擎技术的发展,越来越多的游戏应用开始基于Web进行开发运行。为了提供给游戏开发者更加便利和高效的游戏内容制作手段,基于Web技术的游戏引擎也日趋增多。传统的Web游戏引擎大多使用JavaScript,、TypeScript及ActionScript等语言开发,经过编译之后,运行于原生平台,这种方法相比较于C++编程实现的方法,并不具备性能上的优势。
虽然Web游戏引擎在Web平台上有较好的性能表现,但是在原生平台,例如Android、IOS、Windows等平台仍然存在性能瓶颈的问题。因此,为了实现游戏应用在多平台的应用,需要开发不同平台的游戏应用版本。这种方式不仅增加了开发时间和成本,还提高了游戏应用的维护成本和难度。
另外,现有技术并无法解决游戏应用兼顾多平台性能、多平台开发成本和维护成本的问题。
发明内容
本申请提供了一种基于游戏引擎的渲染方法、装置及电子设备,可以解决上述技术问题。所述技术方案如下:
第一方面,本申请提供了一种基于游戏引擎的渲染方法,该方法包括:
接收到游戏应用中任一场景的渲染数据时,确定游戏应用的运行平台;
依据游戏应用的运行平台,确定相应的渲染引擎;
利用渲染引擎对应的渲染指令对渲染数据进行渲染处理。
第二方面,本申请提供了一种基于游戏引擎的渲染装置,该装置包括:
平台确定模块,用于接收到游戏应用中任一场景的渲染数据时,确定游戏应用的运行平台;
引擎确定模块,用于依据游戏应用的运行平台,确定相应的渲染引擎;
渲染处理模块,用于利用渲染引擎对应的渲染指令对渲染数据进行渲染处理。
第三方面,本申请提供了一种电子设备,该电子设备包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行上述基于游戏引擎的渲染方法。
第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述基于游戏引擎的渲染方法。
本申请实施例提供的技术方案带来的有益效果是:接收到游戏应用中任一场景的渲染数据时,确定游戏应用的运行平台,以依据游戏应用的运行平台,确定相应的渲染引擎,从而利用渲染引擎对应的渲染指令对渲染数据进行渲染处理,实现了针对不同的平台采用不同的渲染引擎,达到保证同一游戏应用在不同的平台的高性能表现的目的,同时无需游戏开发商针对不同的平台研发不同的游戏应用,降低了游戏应用的开发和维护成本。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例一提供的基于游戏引擎的渲染方法的流程示意图;
图2为本申请实施例一提供的渲染组件的结构示意图;
图3为本申请实施例二提供的游戏引擎的功能模块层的结构示意图;
图4为本申请实施例二提供的渲染流程的示意图;
图5为本申请实施例三提供的基于游戏引擎的渲染装置的结构示意图;
图6为本申请实施例四提供的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先对本申请涉及的几个名词进行介绍和解释:
游戏引擎是指一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件。
渲染,是指为显示的图像着色的步骤,实践中一般把Shader称为着色,把Render称为渲染,其中,Shader为游戏渲染中的着色器,具体是指渲染中的数据着色处理程序。
本申请提供的基于游戏引擎的渲染方法、装置、电子设备和计算机可读存储介质,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
实施例一
本申请实施例提供了一种基于游戏引擎的渲染方法,如图1所示,该方法包括:步骤S101、步骤S102和步骤S103。
步骤S101、接收到游戏应用中任一场景的渲染数据时,确定游戏应用的运行平台。
本申请实施例中,运行平台向游戏运营商提供接口,以使游戏运营商通过该接口发布游戏应用,以在游戏应用发布后,用户能够利用通过该运行平台进行操作,通过该运行平台实现连接游戏运营商和游戏玩家的目的。具体地,运行平台一般由电子设备操作系统确定,例如,电子设备操作系统为安卓系统,那么运行平台为安卓Andriod平台。
实际应用时,运行平台既可以包括PC端版本,也可以包括移动端版本。例如,若运行平台为移动端版本,那么用户在移动端操作游戏应用,如XX手游。
本申请实施例中,运行平台检测到游戏应用被启动的操作指令时,运行平台加载该游戏应用,以接收游戏应用中任一场景的渲染数据。
步骤S102、依据游戏应用的运行平台,确定相应的渲染引擎。
实际应用时,不同的运行平台使用不同的渲染引擎,本申请实施例通过确定运行平台的类型,确定相应的渲染引擎。例如,若运行平台为平台1,采用的渲染引擎为引擎1;若运行平台为平台2,采用的渲染引擎为引擎2。
步骤S103、利用渲染引擎对应的渲染指令对渲染数据进行渲染处理。
本申请实施例,接收到游戏应用中任一场景的渲染数据时,确定游戏应用的运行平台,以依据游戏应用的运行平台,确定相应的渲染引擎,从而利用渲染引擎对应的渲染指令对渲染数据进行渲染处理,实现了针对不同的平台采用不同的渲染引擎,达到保证同一游戏应用在不同的平台的高性能表现的目的,同时无需游戏开发商针对不同的平台研发不同的游戏应用,降低了游戏应用的开发和维护成本。
在一个实现方式中,如图1所示,步骤S101接收到游戏应用中任一场景的渲染数据之前,该方法还包括:步骤S1011(图中未示出)和步骤S1012(图中未示出)。
步骤S1011、利用预配置的至少一个渲染组件,获取游戏应用中任一场景的各个节点的节点数据。
步骤S1012、对任一渲染组件获取到的节点数据进行处理,以使得处理后的数据符合图像显示设备GPU设备所需的数据格式。
具体地,渲染组件包括以下至少一项:图片渲染组件、文字渲染组件、图像渲染组件。
本申请实施例通过渲染组件获取游戏应用中任一场景的各个节点的节点数据,并进行处理,保证处理后的数据符合GPU设备所需的数据格式,即GPU所需要的顶点数据和顶点索引数据。
实际应用时,可以通过web游戏引擎组件模块实现添加预配置的至少一个渲染组件的目的。具体地,渲染组件可以如图2所示,包括图片渲染组件、文字渲染组件、图像渲染组件等。实际应用时,当场景中节点的位置、大小、颜色等数据发生变化时,节点的渲染组件将实时更新和记录发生变化的数据,并设置参数改变的标记位,以便在游戏渲染更新循环中,每帧处理标记位发生变化的节点。不同的渲染组件对节点数据的处理方式不同,具体地,不同的渲染组件利用不同的assembler文件对节点数据对进行处理,转换为GPU所需要的顶点数据和顶点索引数据。具体地,不同的渲染组件通过assembler文件将处理后,得到渲染数据Buffer。
在另一个实现方式中,步骤S103中利用渲染引擎对应的渲染指令对渲染数据进行处理之前,该方法还包括:
遍历渲染数据中任一节点数据,对各个节点数据进行批次合并处理。
本申请实施例通过对渲染数据的遍历处理,对各个节点数据进行批次合并处理,批次合并之后的渲染数据即可统一进行buffer提交,从而减少渲染引擎对应的渲染指令的调用次数,从而大幅度提高渲染效率。
实际应用时,可以通过渲染组件使用的材质、纹理、数据的填充格式以及着色器(如shader)的Uniform变量等渲染状态进行批次合并。
在又一个实现方式中,如图1所示,步骤S102依据游戏应用的运行平台,确定相应的渲染引擎,包括:步骤S1021(图中为示出)和步骤S1022(图中为示出)。
步骤S1021、检测游戏应用的运行平台为web平台时,确定渲染引擎为JS渲染引擎;
步骤S1022、检测游戏应用的运行平台为原生平台时,确定渲染引擎为原生平台的渲染器。
本申请实施例中,针对不同的平台,渲染数据将通过不同的渲染引擎进行渲染指令的提交。实际应用时,可以在引擎编辑器在构建时,提供是否使用原生渲染器的选项,以便为不同的平台设置不同的渲染引擎。
在又一个实现方式中,若渲染引擎为JS渲染引擎,步骤S103利用渲染引擎对应的渲染指令对渲染数据进行处理,包括:
利用WebGL渲染指令对渲染数据进行处理,绘制渲染数据对应的场景。
本申请实施例中,游戏应用的运行平台为web平台,因此利用JS渲染引擎的WebGL渲染指令对渲染数据进行处理,完成游戏场景的绘制,以进行显示。
在又一个实现方式中,若渲染引擎为原生平台的渲染器,步骤S103利用渲染引擎对应的渲染指令对渲染数据进行渲染处理,包括:
加载预设的JS适配文件,以在JS适配文件中重写渲染方法;
调用原生平台的渲染器,利用原生平台的渲染器的OpenGL渲染指令依据重写的渲染方法对渲染数据进行处理,绘制渲染数据对应的场景。
本申请实施例中,原生平台可以包括IOS(苹果操作系统)、Android(安卓操作系统)、Windows(微软操作系统)等平台。若游戏应用被发布在原生平台,原生平台检测到游戏应用启动的控制指令后,利用原生平台的渲染器对渲染数据进行渲染处理。
实际应用时,在检测到运行平台为原生平台时,加载JS脚本(即JS适配文件),在该JS脚本中重写渲染流处理方法,从而实现JS脚本的抽象,得到与不同原生平台的引擎配合的渲染方法,以利用原生平台的渲染器进行渲染。例如,通过重写渲染方法,保证上层接口调用的统一,在具体的实现中,如果是原生平台,则通过调用注册入JavaScriptCore或者V8等引擎的C++方法,进行最终的渲染处理。
实施例二
为了进一步说明本申请提供的基于游戏引擎的渲染方法,下面以如图3和图4进行说明。图3所示为应用本申请提供的方法的游戏引擎的结构示意图,该游戏引擎包括业务层、核心层、数据层、渲染层和平台层。本申请提供的方法实现了将渲染层分拆的目的,有机的将数据层和业务层连接起来,使开发者在进行游戏内容制作时只需要使用其中一种引擎版本进行开发,等开发完成后,即可将游戏打包发布到不同的平台。这种渲染层的Web平台和本地平台的多平台开发兼容机制,在增加引擎性能优化的同时,也提升了各平台兼容的自由度,从而保证采用本申请提供的方法的游戏引擎在多个平台开发游戏时都具有较好的性能表现,从根本上满足了游戏开发者的多平台开发、多平台游戏版本发布和对游戏性能要求的需求。
本申请实施例中,业务层用于提供游戏内容,实际应用时,游戏内容由web游戏引擎核心系统提供,具体地,web游戏引擎核心系统主要由音频、物理、资源、网络、脚本几部分组成。具体地,不同的场景对应显示不同的游戏内容。
本申请实施例中游戏引擎的核心层用于提供渲染组件,本实施例中各个渲染组件通过web游戏引擎组件进行添加,通过web游戏引擎组件提供渲染组件,以便通过渲染组件获取游戏应用中任一场景的各个节点的节点数据,并将各个节点的节点数据进行处理,得到数据层的渲染数据。
本申请实施例中,游戏引擎的渲染层实现了将业务层和数据层的连接,使得开发者在进行游戏内容制作时,只需使用一种引擎版本进行开发即可,开发完成后,直接将游戏应用发布即可,无需考虑发布平台的类型,这种通过渲染层实现了兼容web平台和原生平台的目的。具体地,渲染层提供web平台的渲染和原生平台的渲染,利用web平台本身的JS渲染引擎起到保证游戏应用的性能,而在原生平台,则通过加装JS配置文件的方式,以在JS适配文件中重写渲染方法后,通过调用原生平台的渲染器的渲染指令,使得原生平台的渲染器的渲染指令重写的渲染方法进行渲染。
实际应用时,如图4所示,游戏应用被发布在运行平台后,运行平台检测到该游戏应用的启动控制操作时,判断该运行平台是否为web平台,若是,调用JS Render方法,通过JS渲染流对渲染数据进行遍历,以对渲染数据进行批次合并处理后,调用JS方法处理渲染处理;若该运行平台不是web平台,加载JS引擎适配文件,重写JS渲染流处理过程的渲染方法,然后使用JS Binding的方法调用本地渲染器(即原生平台的渲染器),最后通过C++方法处理渲染数据。通过这种方式保证上层用户使用上的统一,实现了在多平台兼容的目的,同时降低了游戏引擎的开发和维护成本。
实施例三
本申请实施例提供了一种基于游戏引擎的渲染装置,如图5所示,该基于游戏引擎的渲染装置50可以包括:平台确定模块501、引擎确定模块502以及渲染处理模块503,其中,
平台确定模块501,用于接收到游戏应用中任一场景的渲染数据时,确定游戏应用的运行平台;
引擎确定模块502,用于依据游戏应用的运行平台,确定相应的渲染引擎;
渲染处理模块503,用于利用渲染引擎对应的渲染指令对渲染数据进行渲染处理。
本申请实施例,接收到游戏应用中任一场景的渲染数据时,确定游戏应用的运行平台,以依据游戏应用的运行平台,确定相应的渲染引擎,从而利用渲染引擎对应的渲染指令对渲染数据进行渲染处理,实现了针对不同的平台采用不同的渲染引擎,达到保证同一游戏应用在不同的平台的高性能表现的目的,同时无需游戏开发商针对不同的平台研发不同的游戏应用,降低了游戏应用的开发和维护成本。
进一步地,平台确定模块接收到游戏应用中任一场景的渲染数据之前,还用于:
利用预配置的至少一个渲染组件,获取游戏应用中任一场景的各个节点的节点数据;
对任一渲染组件获取到的节点数据进行处理,以使得处理后的数据符合图像显示设备GPU设备所需的数据格式。
进一步地,渲染组件包括以下至少一项:图片渲染组件、文字渲染组件、图像渲染组件。
进一步地,渲染处理模块利用渲染引擎对应的渲染指令对渲染数据进行处理之前,还用于:遍历渲染数据中任一节点数据,对各个节点数据进行批次合并处理。
进一步地,渲染处理模块用于:
检测游戏应用的运行平台为web平台时,确定渲染引擎为JS渲染引擎;
检测游戏应用的运行平台为原生平台时,确定渲染引擎为原生平台的渲染器。
进一步地,若渲染引擎为JS渲染引擎,渲染处理模块用于:
利用WebGL渲染指令对所述渲染数据进行处理,绘制渲染数据对应的场景。
进一步地,若渲染引擎为原生平台的渲染器,渲染处理模块用于:
加载预设的JS适配文件,以在JS适配文件中重写渲染方法;
调用原生平台的渲染器,利用原生平台的渲染器的OpenGL渲染指令依据重写的渲染方法对渲染数据进行处理,绘制渲染数据对应的场景。
本实施例的基于游戏引擎的渲染装置可执行本申请实施例一提供的基于游戏引擎的渲染方法,其实现原理相类似,此处不再赘述。
实施例三
本申请实施例提供了一种电子设备,如图6所示,图6所示的电子设备600包括:处理器6001和收发器6004。其中,处理器6001和收发器6004相连,如通过总线6002相连。可选的,电子设备600还可以包括存储器6003。需要说明的是,实际应用中收发器6004不限于一个,该电子设备600的结构并不构成对本申请实施例的限定。
处理器6001可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器6001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线6002可包括一通路,在上述组件之间传送信息。总线6002可以是PCI总线或EISA总线等。总线6002可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器6003可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
可选的,存储器6003用于存储执行本申请方案的应用程序代码,并由处理器6001来控制执行。处理器601用于执行存储器6003中存储的应用程序代码,以实现图5所示实施例提供的基于游戏引擎的渲染装置的动作。
本申请实施例,接收到游戏应用中任一场景的渲染数据时,确定游戏应用的运行平台,以依据游戏应用的运行平台,确定相应的渲染引擎,从而利用渲染引擎对应的渲染指令对渲染数据进行渲染处理,实现了针对不同的平台采用不同的渲染引擎,达到保证同一游戏应用在不同的平台的高性能表现的目的,同时无需游戏开发商针对不同的平台研发不同的游戏应用,降低了游戏应用的开发和维护成本。
实施例四
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现实施例一所示的方法。
本申请实施例提供了一种计算机可读存储介质,与现有技术相比,接收到游戏应用中任一场景的渲染数据时,确定游戏应用的运行平台,以依据游戏应用的运行平台,确定相应的渲染引擎,从而利用渲染引擎对应的渲染指令对渲染数据进行渲染处理,实现了针对不同的平台采用不同的渲染引擎,达到保证同一游戏应用在不同的平台的高性能表现的目的,而无需游戏开发商针对不同的平台研发不同的游戏应用,降低了游戏应用的开发和维护成本。
本申请实施例提供了一种计算机可读存储介质适用于上述方法实施例。在此不再赘述。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (9)
1.一种基于游戏引擎的渲染方法,其特征在于,包括:
在游戏应用发布后,接收到游戏应用中任一场景的渲染数据时,确定所述游戏应用的运行平台;
依据所述游戏应用的运行平台,确定相应的渲染引擎;
利用所述渲染引擎对应的渲染指令对所述渲染数据进行渲染处理;
所述依据所述游戏应用的运行平台,确定相应的渲染引擎;利用所述渲染引擎对应的渲染指令对所述渲染数据进行渲染处理,包括:
检测所述游戏应用的运行平台为原生平台时,确定所述渲染引擎为所述原生平台的渲染器;加载预设的JS适配文件,以在JS适配文件中重写渲染方法;调用所述原生平台的渲染器,利用所述原生平台的渲染器的OpenGL渲染指令依据重写的渲染方法对所述渲染数据进行处理,绘制所述渲染数据对应的场景。
2.根据权利要求1所述的方法,其特征在于,所述接收到游戏应用中任一场景的渲染数据之前,所述方法还包括:
利用预配置的至少一个渲染组件,获取所述游戏应用中任一场景的各个节点的节点数据;
对任一渲染组件获取到的节点数据进行处理,以使得处理后的数据符合图像显示设备GPU设备所需的数据格式。
3.根据权利要求2所述的方法,其特征在于,所述渲染组件包括以下至少一项:
图片渲染组件、文字渲染组件、图像渲染组件。
4.根据权利要求2所述的方法,其特征在于,所述利用所述渲染引擎对应的渲染指令对所述渲染数据进行处理之前,所述方法还包括:
遍历所述渲染数据中任一节点数据,对各个节点数据进行批次合并处理。
5.根据权利要求1所述的方法,其特征在于,所述依据所述游戏应用的运行平台,确定相应的渲染引擎,包括:
检测所述游戏应用的运行平台为web平台时,确定所述渲染引擎为JS渲染引擎。
6.根据权利要求5所述的方法,其特征在于,若所述渲染引擎为JS渲染引擎,所述利用所述渲染引擎对应的渲染指令对所述渲染数据进行处理,包括:
利用WebGL渲染指令对所述渲染数据进行处理,绘制所述渲染数据对应的场景。
7.一种基于游戏引擎的渲染装置,其特征在于,包括:
平台确定模块,用于在游戏应用发布后,接收到游戏应用中任一场景的渲染数据时,确定所述游戏应用的运行平台;
引擎确定模块,用于依据所述游戏应用的运行平台,确定相应的渲染引擎;
渲染处理模块,用于利用所述渲染引擎对应的渲染指令对所述渲染数据进行渲染处理;
渲染处理模块,具体用于检测所述游戏应用的运行平台为原生平台时,确定所述渲染引擎为所述原生平台的渲染器;加载预设的JS适配文件,以在JS适配文件中重写渲染方法;调用所述原生平台的渲染器,利用所述原生平台的渲染器的OpenGL渲染指令依据重写的渲染方法对所述渲染数据进行处理,绘制所述渲染数据对应的场景。
8.一种电子设备,其特征在于,其包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据权利要求1-6任一项所述基于游戏引擎的渲染方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-6任一项所述的基于游戏引擎的渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910009532.4A CN111408138B (zh) | 2019-01-04 | 2019-01-04 | 基于游戏引擎的渲染方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910009532.4A CN111408138B (zh) | 2019-01-04 | 2019-01-04 | 基于游戏引擎的渲染方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111408138A CN111408138A (zh) | 2020-07-14 |
CN111408138B true CN111408138B (zh) | 2023-07-07 |
Family
ID=71484889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910009532.4A Active CN111408138B (zh) | 2019-01-04 | 2019-01-04 | 基于游戏引擎的渲染方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111408138B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112423111A (zh) * | 2020-11-05 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 图形引擎和适用于播放器的图形处理方法 |
CN112381918A (zh) * | 2020-12-03 | 2021-02-19 | 腾讯科技(深圳)有限公司 | 图像渲染方法、装置、计算机设备和存储介质 |
CN113181657B (zh) * | 2021-04-30 | 2024-04-05 | 北京读我网络技术有限公司 | 一种跨平台渲染方法及装置 |
CN113617022B (zh) * | 2021-08-09 | 2024-04-05 | 在线途游(北京)科技有限公司 | 一种加快游戏应用启动速度的方法及装置 |
CN113797554B (zh) * | 2021-09-22 | 2023-12-26 | 北京有竹居网络技术有限公司 | 游戏引擎资源的处理方法、装置、存储介质及电子设备 |
CN114237795B (zh) * | 2021-12-16 | 2024-01-30 | 海宁奕斯伟集成电路设计有限公司 | 终端界面显示方法、装置、电子设备及可读存储介质 |
CN114632329B (zh) * | 2022-05-16 | 2022-10-25 | 荣耀终端有限公司 | 终端设备性能调节方法和相关装置 |
CN116912382B (zh) * | 2023-09-14 | 2023-12-29 | 成都帆点创想科技有限公司 | 一种渲染方法、装置及电子设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104850388A (zh) * | 2014-02-13 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 网页绘制方法及装置 |
CN108765534A (zh) * | 2018-05-24 | 2018-11-06 | 武汉斗鱼网络科技有限公司 | 一种图像渲染方法、装置、设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8088012B2 (en) * | 2009-01-29 | 2012-01-03 | Disney Enterprises, Inc. | System and method for dynamic video game recap |
CN103713891B (zh) * | 2012-10-09 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 一种在移动设备上进行图形渲染的方法和装置 |
CN105005473B (zh) * | 2015-06-29 | 2018-02-23 | 乐道互动(天津)科技有限公司 | 一种用于开发3d游戏的游戏引擎系统 |
CN106815002B (zh) * | 2015-12-01 | 2020-12-04 | 厦门雅基软件有限公司 | 一种跨平台游戏开发工具的实现方法 |
CN105867911B (zh) * | 2016-03-24 | 2019-04-02 | 江苏大学 | 一种Iris 2D图形引擎的实现方法 |
CN108721898B (zh) * | 2018-06-01 | 2022-02-22 | 深圳市腾讯网络信息技术有限公司 | 帧率的确定方法和装置、存储介质、电子装置 |
-
2019
- 2019-01-04 CN CN201910009532.4A patent/CN111408138B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104850388A (zh) * | 2014-02-13 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 网页绘制方法及装置 |
CN108765534A (zh) * | 2018-05-24 | 2018-11-06 | 武汉斗鱼网络科技有限公司 | 一种图像渲染方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
图形渲染及优化—Unity合批技术实践;Weibo;《https://gameinstitute.qq.com/community/detail/114323》;20170604;第1-4页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111408138A (zh) | 2020-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111408138B (zh) | 基于游戏引擎的渲染方法、装置及电子设备 | |
JP5525175B2 (ja) | 複数のハードウェア・ドメイン、データ・タイプ、およびフォーマットの処理を統合し抽象化するフレームワーク | |
CN109697060B (zh) | 视频特效系统及其生成方法、装置、设备和存储介质 | |
CN108563517B (zh) | 系统接口的调用方法及装置 | |
US8860752B2 (en) | Multimedia scripting | |
CN109670128B (zh) | 一种基于WebAssembly的网页应用实现方法及装置 | |
CN109814884A (zh) | 一种根据游戏资源类型进行资源管理的方法及系统 | |
CN103713891A (zh) | 一种在移动设备上进行图形渲染的方法和装置 | |
Cozzi et al. | OpenGL insights | |
CN111158690B (zh) | 桌面应用框架、构建方法、桌面应用运行方法及存储介质 | |
CN114025238B (zh) | 基于Linux服务器原生安卓应用云端虚拟化方法 | |
CN111740948A (zh) | 数据包发布方法、动态更新方法、装置、设备及介质 | |
CN113076163A (zh) | 一种卡片渲染方法和装置 | |
CN111833429A (zh) | 三维游戏渲染方法、三维引擎、电子设备及可读存储介质 | |
CN111414150B (zh) | 游戏引擎渲染方法、装置、电子设备及计算机存储介质 | |
CN104778075A (zh) | Android系统中native层调用Java层API的方法和装置 | |
CN114579255A (zh) | 虚拟机的图像处理方法、装置、系统以及电子设备 | |
CN111796812B (zh) | 图像渲染的方法、装置、电子设备及计算机可读存储介质 | |
EP3752914B1 (en) | Techniques for native runtime of hypertext markup language graphics content | |
CN116503529A (zh) | 渲染、3d画面控制方法、电子设备和计算机可读存储介质 | |
CN112306539A (zh) | 一种单片机应用层开发方法、系统、终端及介质 | |
CN111782196A (zh) | 基于mvp架构的开发方法及装置 | |
CN110609682B (zh) | 一种基于WebGL的图形绘制方法、装置及系统 | |
CN111443953B (zh) | 基于fpga的红外成像系统的启动方法、装置及介质 | |
CN115908668A (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 |