CN111803943A - 美术渲染效果控制的方法、装置及服务器 - Google Patents

美术渲染效果控制的方法、装置及服务器 Download PDF

Info

Publication number
CN111803943A
CN111803943A CN202010704069.8A CN202010704069A CN111803943A CN 111803943 A CN111803943 A CN 111803943A CN 202010704069 A CN202010704069 A CN 202010704069A CN 111803943 A CN111803943 A CN 111803943A
Authority
CN
China
Prior art keywords
art rendering
art
rendering parameter
parameter set
target stack
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.)
Granted
Application number
CN202010704069.8A
Other languages
English (en)
Other versions
CN111803943B (zh
Inventor
邹晓航
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202010704069.8A priority Critical patent/CN111803943B/zh
Publication of CN111803943A publication Critical patent/CN111803943A/zh
Application granted granted Critical
Publication of CN111803943B publication Critical patent/CN111803943B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

本申请提供一种美术渲染效果控制的方法、装置及服务器,该方法包括:响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,目标堆栈中的每个元素由美术渲染参数集合组成;获取第二美术渲染参数集合,并将第二美术渲染参数集合推入目标堆栈的栈顶,第二美术渲染参数集合为对第一美术渲染参数集合修改后得到的美术渲染参数集合;获取位于目标堆栈的栈顶的第二美术渲染参数集合中的每个美术渲染参数;根据获取的第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果。从而实现了美术渲染参数覆盖的快速还原以及定位参数设置错误的问题。

Description

美术渲染效果控制的方法、装置及服务器
技术领域
本申请涉及计算机技术,尤其涉及一种美术渲染效果控制的方法、装置及服务器。
背景技术
在游戏开发过程中,游戏往往需要展示多种不同的美术效果,或者是特定条件下的一些特殊的美术表现,比如虚拟角色经过水面的时候会发现水面上倒影出虚拟角色的镜像、当镜头拉近虚拟角色时虚拟角色的面容皮肤渲染需要展现出较真实的次表面散射现象;对于需要在多个硬件平台上运行的手机游戏来说,为了满足不同硬件平台的不同硬件特性,游戏往往也需要针对特定硬件制定特定的美术渲染参数来控制不同的美术效果。这些不同情况下需要展示不同美术渲染表现的能力,通常是通过不同的美术渲染参数来实现的。
如何在游戏开发中合理的管理这些庞大的美术渲染参数,将对游戏开发进度上有较大的影响,针对美术渲染参数的有效管理目前现有技术中尚未提出有效的解决方案。
发明内容
本申请提供一种美术渲染效果控制的方法、装置及服务器,避免美术渲染参数的渲染值相互覆盖,进而避免渲染效果出错。
第一方面,本申请提供一种美术渲染效果控制的方法,包括:
响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,目标堆栈中的每个元素由美术渲染参数集合组成;
获取第二美术渲染参数集合,并将第二美术渲染参数集合推入目标堆栈的栈顶,第二美术渲染参数集合为对第一美术渲染参数集合修改后得到的美术渲染参数集合;
获取位于目标堆栈的栈顶的第二美术渲染参数集合中的每个美术渲染参数;根据获取的第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果。
在一种可能的设计中,方法还包括:
响应于针对美术渲染参数还原的第一还原指令,将一个或多个元素从目标堆栈中弹出;
当将一个或多个元素从目标堆栈中弹出之后,获取目标堆栈当前栈顶的元素对应的美术渲染参数集合;根据获取的目标堆栈当前栈顶的元素对应的美术渲染参数集合中的每个美术渲染参数进行渲染,获得还原的第一美术渲染效果。
在一种可能的设计中,获取第二美术渲染参数集合,包括:
通过读取预设的第一数据表格获取第二美术渲染参数集合。
在一种可能的设计中,美术渲染参数包括开关类型的美术渲染参数和非开关类型的美术渲染参数。
在一种可能的设计中,方法还包括:
响应于针对美术渲染参数更新的指令,获取第三美术渲染参数集合;
将第三美术渲染参数集合推入目标堆栈的栈顶;
获取位于目标堆栈的栈顶的第三美术渲染参数集合中的每个美术渲染参数,并根据获取的第三美术渲染参数集合中的每个美术渲染参数进行渲染,获得更新的美术渲染效果。
在一种可能的设计中,获取第三美术渲染参数集合,包括:
通过读取预设的第二数据表格获取第三美术渲染参数集合。
在一种可能的设计中,将一个或多个元素从目标堆栈中弹出之后,方法还包括:
将弹出的一个或多个元素存储在预设的第三数据表格中。
在一种可能的设计中,方法还包括:
响应于针对美术渲染参数还原的第二还原指令,从预设的第三数据表格中读取与第二还原指令对应的元素;
将读取的与第二还原指令对应的元素推入目标堆栈的栈顶;
根据位于目标堆栈的栈顶的元素中的每个美术渲染参数进行渲染,获得还原的第二美术渲染效果。
第二方面,本申请提供一种美术渲染效果控制的装置,其特征在于,包括:响应模块和获取模块,其中,
响应模块用于,响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,目标堆栈中的每个元素由美术渲染参数集合组成;
获取模块用于,获取第二美术渲染参数集合,并将第二美术渲染参数集合推入目标堆栈的栈顶,第二美术渲染参数集合为对第一美术渲染参数集合修改后得到的美术渲染参数集合;
获取模块还用于,获取位于目标堆栈的栈顶的第二美术渲染参数集合中的每个美术渲染参数;根据获取的第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果。
在一种可能的设计中,响应模块还用于,响应于针对美术渲染参数还原的第一还原指令,将一个或多个元素从目标堆栈中弹出;
获取模块还用于,当将一个或多个元素从目标堆栈中弹出之后,获取目标堆栈当前栈顶的元素对应的美术渲染参数集合;根据获取的目标堆栈当前栈顶的元素对应的美术渲染参数集合中的每个美术渲染参数进行渲染,获得还原的第一美术渲染效果。
在一种可能的设计中,获取模块具体用于:
通过读取预设的第一数据表格获取第二美术渲染参数集合。
在一种可能的设计中,美术渲染参数包括开关类型的美术渲染参数和非开关类型的美术渲染参数。
在一种可能的设计中,响应模块还用于,响应于针对美术渲染参数更新的指令,获取第三美术渲染参数集合;将第三美术渲染参数集合推入目标堆栈的栈顶;
获取模块还用于,获取位于目标堆栈的栈顶的第三美术渲染参数集合中的每个美术渲染参数,并根据获取的第三美术渲染参数集合中的每个美术渲染参数进行渲染,获得更新的美术渲染效果。
在一种可能的设计中,获取模块还用于:
通过读取预设的第二数据表格获取第三美术渲染参数集合。
在一种可能的设计中,装置还包括:存储模块,其中,
存储模块用于,将一个或多个元素从目标堆栈中弹出之后,将弹出的一个或多个元素存储在预设的第三数据表格中。
在一种可能的设计中,响应模块还用于:响应于针对美术渲染参数还原的第二还原指令,从预设的第三数据表格中读取与第二还原指令对应的元素;将读取的与第二还原指令对应的元素推入目标堆栈的栈顶;
获取模块还用于,根据位于目标堆栈的栈顶的元素中的每个美术渲染参数进行渲染,获得还原的第二美术渲染效果。
第三方面,本申请提供一种游戏服务器,包括:
存储器,用于存储程序;
处理器,用于执行存储器存储的程序,当程序被执行时,处理器用于执行如上第一方面中任一项的方法。
第四方面,本申请提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上第一方面中任一项的方法。
本申请实施例提供的美术渲染效果控制的方法、装置及服务器,其中,方法包括:响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,目标堆栈中的每个元素由美术渲染参数集合组成;获取第二美术渲染参数集合,并将第二美术渲染参数集合推入目标堆栈的栈顶,第二美术渲染参数集合为对第一美术渲染参数集合修改后得到的美术渲染参数集合;获取位于目标堆栈的栈顶的第二美术渲染参数集合中的每个美术渲染参数;根据获取的第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果。通过上述方法,可以方便获取当前渲染的美术渲染参数,并对美术渲染参数进行修改,从而可以根据栈顶的美术渲染参数,即第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果,可以避免不同类型的美术渲染参数的渲染值相互覆盖、导致渲染效果出错的问题,提高目标美术渲染效果的准确性,实现了美术渲染参数的有效管理。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的美术渲染效果控制的方法的应用场景示意图;
图2为本申请实施例提供的一种美术渲染效果控制的方法的流程;
图3为本申请实施例提供的另一种美术渲染效果控制的方法的流程;
图4为本申请实施例提供的一种美术渲染效果控制的装置的结构示意;
图5为本申请实施例提供的另一种美术渲染效果控制的装置的结构示意;
图6为本申请实施例提供的游戏服务器的硬件结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在现有技术中,为了避免渲染控制选项参数的值互相覆盖,通常采用如下可行的方法设置渲染控制选项参数的值:在确定渲染控制选项参数为开关类型控制参数时,在需要设置渲染控制选项参数的位置第一位置处,将渲染控制选项参数的值设置为第一目标值,同时将渲染控制选项参数对应的引用计数设置为1,以使游戏引擎根据第一目标值控制虚拟人物展示对应的渲染效果;在展示上述渲染效果之后,将该渲染控制选项参数对应的引用计数设置为0,实现还原渲染控制选项参数的值,从而避免渲染控制选项参数的值互相覆盖。在实际开发中,由于渲染控制选项参数还可以是非开关类型控制参数,该非开关类型控制参数通常无法采用上述方法来避免渲染控制选项参数的值互相覆盖,因此当多处代码将开关类型控制参数的值设置为不同的值时,可以导致开关类型控制参数的值互相覆盖,进而导致渲染效果出错。
而在本申请中,为了避免美术渲染参数的渲染值相互覆盖,进而避免渲染效果出错,本申请提供一种美术渲染效果控制的方法,下面结合图1对本申请提供的美术渲染效果控制的方法的应用场景进行说明。
图1为本申请实施例提供的美术渲染效果控制的方法的应用场景示意图。如图1所示,包括:游戏服务器101以及游戏客户端102。
其中,游戏客户端102可以通过有线网络、或者无线网络与游戏服务器101进行交互。可选地,有线网络可以是同轴电缆、双绞线和光纤等,无线网络可以是2G网络、3G网络、4G网络或者5G网络、无线保真(Wireless Fidelity,简称WIFI)网络等。本申请对交互的具体类型或者具体形式并不做限定,只要其能够实现服务器和终端交互的功能即可。
可选地,游戏客户端102通常运行在玩家持有的终端设备上。可选地,终端设备可以是计算机设备、平板电脑或移动电话(或称为“蜂窝”电话)等,也可以是便携式、袖珍式、手持式、计算机内置的移动装置或设备,此处不做特别限制。图1中示例性的给出了4个游戏客户端102,本申请对游戏客户端102的具体数量不做特别限制。
在游戏服务器101与游戏客户端102交互的过程中,例如可以实现如下游戏过程:当玩家控制游戏角色移动时,在游戏角色经过虚拟水面的过程中,游戏服务器101控制游戏客户端102在虚拟水面中展示游戏角色的倒影,在经过虚拟水面之后,游戏服务器101控制游戏客户端102取消展示游戏角色的倒影,当玩家再次控制游戏角色移动时,再次经过虚拟水面的过程中,游戏服务器101控制游戏客户端102在虚拟水面中再次展示游戏角色的倒影,在经过虚拟水面之后,游戏服务器101控制游戏客户端102再次取消展示游戏角色的倒影,从而保障渲染效果的正确性。
下面结合具体的实施例,对本申请提供的美术渲染效果控制的方法进行详细介绍。首先结合图2对本申请提供的美术渲染效果控制的方法说明。
图2为本申请实施例提供的一种美术渲染效果控制的方法的流程。如图2所示,本实施例提供的美术渲染效果控制的方法包括:
S201、响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,目标堆栈中的每个元素由美术渲染参数集合组成。
本发明实施例提出一种基于堆栈Stack且以美术渲染参数集合RenderFrame为管理元素的美术渲染效果控制的方法,RenderFrame是游戏中所有美术渲染参数RenderOption的一个状态集合,通过RenderFrame来管理游戏中所有RenderOption,同时通过Stack来管理多个RenderFrame。
同时,在本发明实例中为Stack定义一些运算:
Push(x):将x元素推入栈顶,同时遍历RenderFrame x中的所有RenderOption并将其值设置到引擎中;
Pop():将栈顶元素RenderFrame x弹出栈,同时获得新的栈顶RenderFrame,遍历此RenderFrame中的所有RenderOption并将其值设置到引擎中;
PopByIndex(i):将第i个RenderFrame从栈中弹出,并遍历此时新的栈顶RenderFrame中的所有RenderOption并将其值设置到引擎中去。
在本发明实施例中,当需要修改RenderOption的时候,从Stack栈顶复制一份RenderFrame出来,并修改RenderFrame中相应的RenderOption,最后调用Push(RenderFrame)方法即可,因此,在需要还原RenderOption的地方调用Pop()方法或者PopByIndex(i)方法即可。
可选地,本申请的执行主体可以为游戏服务器或终端设备,也可以为设置在游戏服务器中的游戏渲染效果控制装置。该装置可以通过软件和/或硬件的结合来实现。
在一种可能的设计中,美术渲染参数包括开关类型的美术渲染参数和非开关类型的美术渲染参数。
具体的,目标堆栈中可以存储多个元素,每个元素由美术渲染参数集合(RenderFrame)组成。例如,目标堆栈存储四个元素时,具有如下表1所示存储结构。
表1
RenderFrame4
RenderFrame3
RenderFrame2
RenderFrame1
其中,每个美术渲染参数集合具有集合名称。例如,RenderFrame1指示第一个进入目标堆栈的美术渲染参数集合的集合名称,RenderFrame2指示第二个进入目标堆栈的美术渲染参数集合的集合名称,RenderFrame3指示第三个进入目标堆栈的美术渲染参数集合的集合名称,RenderFrame4指示最后一个进入目标堆栈的美术渲染参数集合的集合名称(栈顶的元素的集合名称)。
进一步地,每个美术渲染参数集合包括至少一个美术渲染参数(RenderOption),每个美术渲染参数具有各自对应的渲染标识。例如,每个美术渲染参数集合可以各自包括2个美术渲染参数,其中一个美术渲染参数对应的渲染标识例如可以为RO1,另一个美术渲染参数对应的渲染标识例如可以为RO2。
可选地,每个美术渲染参数(或者渲染标识)具有各自对应的渲染值。例如,RenderFrame1对应的美术渲染参数集合中RO1的渲染值为1、RO2的渲染值为0,RenderFrame2对应的美术渲染参数集合中RO1的渲染值为2、RO2的渲染值为0。
可选地,美术渲染参数可以包括渲染对象的标识、顶点信息、材质参数等,美术渲染参数的渲染标识用于指示游戏角色、或虚拟物(例如:虚拟天空、虚拟水面等)等,美术渲染参数的渲染值用于控制虚拟天空、虚拟角色、或虚拟物展示相应的渲染效果。例如,当RO1指示虚拟天空时,若RO1的渲染值为2,则可以控制虚拟天空展示天空为红色的渲染效果,若RO1的渲染值为1,则可以控制虚拟天空展示天空为蓝色的渲染效果。
S202、获取第二美术渲染参数集合,并将第二美术渲染参数集合推入目标堆栈的栈顶,第二美术渲染参数集合为对第一美术渲染参数集合修改后得到的美术渲染参数集合。
可选地,可以根据第一渲染需求对第一美术渲染参数集合修改进行,从而得到第二美术渲染参数集合。其中,第一渲染需求包括渲染标识和目标渲染值。
具体的,可以根据第一渲染需求的渲染标识在第一美术渲染参数集合中确定目标美术渲染参数,并将目标美术渲染参数的当前的渲染值替换为第一渲染需求中的目标渲染值,从而得到第二美术渲染参数集合。
可选地,可以根据第一预设进栈运算和第二美术渲染参数集合的集合名称,将第二美术渲染参数集合推入目标堆栈的栈顶。其中,第一预设进栈运算为Push()。
例如,第二美术渲染参数集合的集合名称为RenderFrame5时,若游戏服务器执行Push(RenderFrame5),则可以实现将将第二美术渲染参数推入目标堆栈的栈顶。
可选地,在表1的基础上,将第二美术渲染参数集合推入目标堆栈的栈顶之后,得到的目标堆栈如下表2所示。
表2
RenderFrame5
RenderFrame4
RenderFrame3
RenderFrame2
RenderFrame1
在一种可能的设计中,获取第二美术渲染参数集合,包括:
通过读取预设的第一数据表格获取第二美术渲染参数集合。其中,第一数据表格中包括至少一个美术渲染参数和每个美术渲染参数对应的渲染值。
S203、获取位于目标堆栈的栈顶的第二美术渲染参数集合中的每个美术渲染参数,根据获取的第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果。
可选地,第二美术渲染参数集合推入目标堆栈的栈顶之后,游戏服务器可以自动获取目标堆栈的栈顶的第二美术渲染参数集合中的每个美术渲染参数的渲染值,进而根据每个美术渲染参数的渲染值获得目标美术渲染效果。
本申请实施例提供的美术渲染效果控制的方法包括:响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,目标堆栈中的每个元素由美术渲染参数集合组成;获取第二美术渲染参数集合,并将第二美术渲染参数集合推入目标堆栈的栈顶,第二美术渲染参数集合为对第一美术渲染参数集合修改后得到的美术渲染参数集合;获取位于目标堆栈的栈顶的第二美术渲染参数集合中的每个美术渲染参数;根据获取的第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果。通过上述方法,可以方便获取当前渲染的美术渲染参数,并对美术渲染参数进行修改,从而可以根据栈顶的美术渲染参数,即第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果,可以避免不同类型的美术渲染参数的渲染值相互覆盖、导致渲染效果出错的问题,提高目标美术渲染效果的准确性,实现了美术渲染参数的有效管理。
在上述实施例的基础上,下面结合图3对本申请提供的美术渲染效果控制的方法做进一步地详细介绍。
图3为本申请实施例提供的另一种美术渲染效果控制的方法的流程。如图3所示,本实施例提供的美术渲染效果控制的方法包括:
S301、响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,目标堆栈中的每个元素由美术渲染参数集合组成。
S302、获取第二美术渲染参数集合,并将第二美术渲染参数集合推入目标堆栈的栈顶,第二美术渲染参数集合为对第一美术渲染参数集合修改后得到的美术渲染参数集合。
S303、获取位于目标堆栈的栈顶的第二美术渲染参数集合中的每个美术渲染参数;根据获取的第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果。
需要说明的是,S301~S303的执行方法与S201~S203的执行方法相同,此处不再赘述S301~S303的执行过程。
S304、响应于针对美术渲染参数还原的第一还原指令,将一个或多个元素从目标堆栈中弹出。
可选地,第一还原指令中可以包括至少一个美术渲染参数集合的集合名称。进一步地,可以根据第二预设出栈运算(或者第三预设出栈运算)和至少一个美术渲染参数集合的集合名称将一个或多个元素从目标堆栈中弹出。具体的,若第一还原指令指示的美术渲染参数集合正好位于目标堆栈的栈顶,则只需将栈顶的元素从目标堆栈中弹出即可,从而从栈顶数位于第二位的元素恢复为栈顶元素;若第一还原指令指示的美术渲染参数集合从栈顶数位于目标堆栈的第N位,其中,N为正整数,则将从栈顶开始的N个堆栈元素从目标堆栈中弹出,这原从栈顶数位于第N+1的元素恢复为栈顶元素。
其中,第二预设出栈运算为Pop(),第三预设出栈运算为PopByIndex()。
例如,在第一还原指令中包括RenderFrame5,在表2的基础上,执行Pop(RenderFrame5)或者PopByIndex(RenderFrame5)可以将一个元素从目标堆栈中弹出,从而得到表1。
例如,在第一还原指令中包括RenderFrame4,在表2的基础上,执行PopByIndex(RenderFrame4)可以将两个元素从目标堆栈中弹出,从而得到表3所示的目标堆栈。
表3
RenderFrame3
RenderFrame2
RenderFrame1
S305、当将一个或多个元素从目标堆栈中弹出之后,获取目标堆栈当前栈顶的元素对应的美术渲染参数集合,根据获取的目标堆栈当前栈顶的元素对应的美术渲染参数集合中的每个美术渲染参数进行渲染,获得还原的第一美术渲染效果。
例如,当将一个元素从目标堆栈中弹出之后,具有表1所示的目标堆栈时,目标堆栈当前栈顶的元素对应的美术渲染参数集合(即RenderFrame4对应的美术渲染参数集合),进而根据RenderFrame4对应的美术渲染参数集合中的每个美术渲染参数进行渲染,获得还原的第一美术渲染效果。
在一种可能的设计中,当将一个或多个元素从目标堆栈中弹出之后,还包括:将弹出的一个或多个元素存储在预设的第三数据表格中。
进一步地,响应于针对美术渲染参数还原的第二还原指令,从预设的第三数据表格中读取与第二还原指令对应的元素;
将读取的与第二还原指令对应的元素推入目标堆栈的栈顶;
根据位于目标堆栈的栈顶的元素中的每个美术渲染参数进行渲染,获得还原的第二美术渲染效果。
在本发明实施例中,当游戏的美术渲染参数被新设置的美术渲染参数覆盖,则在本发明实施例中可以通过两种途径进行还原。第一种:若当前美术渲染参数由于栈顶元素被修改的或新设置的美术渲染参数集合所替代,如被从第一数据表格中获得的第二美术渲染参数集合所替代或被从第二数据表格中获取的第三美术渲染参数集合所替代,则根据第一还原指令,将一个或一个以上的元素从堆栈中弹出,使得非栈顶的元素恢复栈顶的位置,从而实现美术效果的还原。第二种:若当前美术渲染效果是由于出栈操作,使得原非栈顶的元素更新为栈顶位置而获得的效果,在本发明实施例中,由于将出栈的元素都存储在第三数据表格中,则根据第二还原指令,则可以从第三数据表格中获取已经出栈的美术渲染参数,并重新置于目标堆栈的栈顶的位置,从而恢复原来的美术效果。
需要说明的是,在本发明实施例中,第一数据表格是用于对从堆栈中复制的元素进行修改后得到的美术渲染参数进行存储的,第二数据表格是用于对新配置的美术渲染参数进行存储,与堆栈中的元素并没有必然的联系,当然也可以将这两种美术渲染参数放在同一张数据表格中存储;第三数据表格是专门用于存储从目标堆栈中弹出的美术渲染参数集合进行存储的,并不需要对美术渲染参数集合做任何渲染,当然第一数据表格、第二数据表格和第三数据表格中存储的数据也可以置于一张数据表格中存储,数据类型可以通过数据类型标识进行区分。
本申请提供的美术渲染效果控制的方法包括:响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,目标堆栈中的每个元素由美术渲染参数集合组成;获取第二美术渲染参数集合,并将第二美术渲染参数集合推入目标堆栈的栈顶,第二美术渲染参数集合为对第一美术渲染参数集合修改后得到的美术渲染参数集合;获取位于目标堆栈的栈顶的第二美术渲染参数集合中的每个美术渲染参数;根据获取的第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果;响应于针对美术渲染参数还原的第一还原指令,将一个或多个元素从目标堆栈中弹出;当将一个或多个元素从目标堆栈中弹出之后,获取目标堆栈当前栈顶的元素对应的美术渲染参数集合,根据获取的目标堆栈当前栈顶的元素对应的美术渲染参数集合中的每个美术渲染参数进行渲染,获得还原的第一美术渲染效果。在上述方法中,可以根据第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果,并在将一个或多个元素从目标堆栈中弹出之后,根据目标堆栈当前栈顶的元素对应的美术渲染参数集合中的每个美术渲染参数进行渲染,获得还原的第一美术渲染效果,从而避免不同类型的美术渲染参数的渲染值相互覆盖、导致渲染效果出错的问题,提高目标美术渲染效果的准确性。
在一种可能的设计中,本申请提的方法还包括:
响应于针对美术渲染参数更新的指令,获取第三美术渲染参数集合;
将第三美术渲染参数集合推入目标堆栈的栈顶;
获取位于目标堆栈的栈顶的第三美术渲染参数集合中的每个美术渲染参数,并根据获取的第三美术渲染参数集合中的每个美术渲染参数进行渲染,获得更新的美术渲染效果。
在本申请中,可以将一个美术渲染参数集合中包括的所有的美术渲染参数整理成一个表格,并将该表格展示给美术设计人员,美术设计人员可以按照游戏场景变化需求,设置表格中美术渲染参数的渲染值,从而得到第二数据表格,进而存储该第二数据表格。
进一步地,若接收到针对美术渲染参数更新的指令,则响应于针对美术渲染参数更新的指令,通过读取上述第二数据表格获取第三美术渲染参数集合。
在本申请中,美术设计人员可以设置上述表格中美术渲染参数的渲染值,即实现将美术渲染参数的设置权限开放给美术设计人员,使得美术设计人员能够快速的修改美术渲染参数的渲染值来验证渲染效果的正确性,提高了美术设计人员的工作效率。
在游戏开发过程中,第二预设出栈运算、第三预设出栈运算、第一预设进栈运算具有各自对应执行代码块,可以在上述任意至少一个执行代码块中插入调试追踪代码,当执行调试追踪代码的过程中,可以向服务器中的控制台输出渲染结果。若确定渲染效果错误,则可以根据渲染结果,确定第二预设出栈运算、第三预设出栈运算、第一预设进栈运算的执行过程是否正确。例如,第一预设进栈运算是否将错误的元素存储至目标堆栈中,第二预设出栈运算、第三预设出栈运算从目标堆栈中删除的元素错误等。
需要说明的是,第二预设出栈运算、第三预设出栈运算、第一预设进栈运算只能对目标堆栈的栈顶选项进行操作,因此错误的美术渲染参数集合(即元素)只能出现在栈顶。
在本申请中,第二预设出栈运算、第三预设出栈运算、第一预设进栈运算具有各自对应执行代码,在上述执行代码中插入调试追踪代码,可以在渲染效果出现错误时,方便查找错误源头。
图4为本申请实施例提供的一种美术渲染效果控制的装置的结构示意。如图4所示,美术渲染效果控制的装置40包括:响应模块41和获取模块42,其中,
响应模块41用于,响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,目标堆栈中的每个元素由美术渲染参数集合组成;
获取模块42用于,获取第二美术渲染参数集合,并将第二美术渲染参数集合推入目标堆栈的栈顶,第二美术渲染参数集合为对第一美术渲染参数集合修改后得到的美术渲染参数集合;
获取模块42还用于,获取位于目标堆栈的栈顶的第二美术渲染参数集合中的每个美术渲染参数;根据获取的第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果。
本实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
在一种可能的设计中,响应模块41还用于,响应于针对美术渲染参数还原的第一还原指令,将一个或多个元素从目标堆栈中弹出;
获取模块42还用于,当将一个或多个元素从目标堆栈中弹出之后,获取目标堆栈当前栈顶的元素对应的美术渲染参数集合;根据获取的目标堆栈当前栈顶的元素对应的美术渲染参数集合中的每个美术渲染参数进行渲染,获得还原的第一美术渲染效果。
在一种可能的设计中,获取模块42具体用于:
通过读取预设的第一数据表格获取第二美术渲染参数集合。
在一种可能的设计中,美术渲染参数包括开关类型的美术渲染参数和非开关类型的美术渲染参数。
在一种可能的设计中,响应模块41还用于,响应于针对美术渲染参数更新的指令,获取第三美术渲染参数集合;将第三美术渲染参数集合推入目标堆栈的栈顶;
获取模块42还用于,获取位于目标堆栈的栈顶的第三美术渲染参数集合中的每个美术渲染参数,并根据获取的第三美术渲染参数集合中的每个美术渲染参数进行渲染,获得更新的美术渲染效果。
在一种可能的设计中,获取模块42还用于:
通过读取预设的第二数据表格获取第三美术渲染参数集合。
图5为本申请实施例提供的另一种美术渲染效果控制的装置的结构示意。如图5所示,该游戏渲染效果控装置40还包括:存储模块43,其中,
存储模块用于,将一个或多个元素从目标堆栈中弹出之后,将弹出的一个或多个元素存储在预设的第三数据表格中。
本实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
在一种可能的设计中,响应模块还用于:响应于针对美术渲染参数还原的第二还原指令,从预设的第三数据表格中读取与第二还原指令对应的元素;将读取的与第二还原指令对应的元素推入目标堆栈的栈顶;
获取模块还用于,根据位于目标堆栈的栈顶的元素中的每个美术渲染参数进行渲染,获得还原的第二美术渲染效果。第三响应模块46,其中,
图6为本申请实施例提供的游戏服务器的硬件结构示意图。如图5所示,本实施例的游戏服务器50包括:处理器51以及存储器52;其中
存储器52,用于存储计算机执行指令;
处理器51,用于执行存储器存储的计算机执行指令,以实现上述实施例中美术渲染效果控制的方法所执行的各个步骤。具体可以参见前述方法实施例中的相关描述。
可选地,存储器52既可以是独立的,也可以跟处理器51集成在一起。
当存储器52独立设置时,该游戏客户端还包括总线53,用于连接存储器52和处理器51。
本申请还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上游戏客户端以及游戏服务器所执行的美术渲染效果控制的方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例方法的部分步骤。
应理解,上述处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (11)

1.一种美术渲染效果控制的方法,其特征在于,包括:
响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,所述目标堆栈中的每个元素由美术渲染参数集合组成;
获取第二美术渲染参数集合,并将所述第二美术渲染参数集合推入所述目标堆栈的栈顶,所述第二美术渲染参数集合为对所述第一美术渲染参数集合修改后得到的美术渲染参数集合;
获取位于所述目标堆栈的栈顶的所述第二美术渲染参数集合中的每个美术渲染参数;根据获取的所述第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于针对美术渲染参数还原的第一还原指令,将一个或多个元素从所述目标堆栈中弹出;
当将一个或多个元素从所述目标堆栈中弹出之后,获取所述目标堆栈当前栈顶的元素对应的美术渲染参数集合;根据获取的所述目标堆栈当前栈顶的元素对应的美术渲染参数集合中的每个美术渲染参数进行渲染,获得还原的第一美术渲染效果。
3.根据权利要求1所述的方法,其特征在于,所述获取第二美术渲染参数集合,包括:
通过读取预设的第一数据表格获取所述第二美术渲染参数集合。
4.根据权利要求1所述的方法,其特征在于,所述美术渲染参数包括开关类型的美术渲染参数和非开关类型的美术渲染参数。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于针对美术渲染参数更新的指令,获取第三美术渲染参数集合;
将所述第三美术渲染参数集合推入所述目标堆栈的栈顶;
获取位于所述目标堆栈的栈顶的所述第三美术渲染参数集合中的每个美术渲染参数,并根据获取的所述第三美术渲染参数集合中的每个美术渲染参数进行渲染,获得更新的美术渲染效果。
6.根据权利要求5所述的方法,其特征在于,所述获取第三美术渲染参数集合,包括:
通过读取预设的第二数据表格获取所述第三美术渲染参数集合。
7.根据权利要求2所述的方法,其特征在于,所述将一个或多个元素从所述目标堆栈中弹出之后,所述方法还包括:
将弹出的一个或多个元素存储在预设的第三数据表格中。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
响应于针对美术渲染参数还原的第二还原指令,从所述预设的第三数据表格中读取与所述第二还原指令对应的元素;
将读取的与所述第二还原指令对应的元素推入所述目标堆栈的栈顶;
根据位于所述目标堆栈的栈顶的元素中的每个美术渲染参数进行渲染,获得还原的第二美术渲染效果。
9.一种美术渲染效果控制的装置,其特征在于,包括:响应模块和获取模块,其中,
所述响应模块用于,响应于针对美术渲染参数修改的指令,对目标堆栈中栈顶的元素进行复制,得到待修改的第一美术渲染参数集合,所述目标堆栈中的每个元素由美术渲染参数集合组成;
所述获取模块用于,获取第二美术渲染参数集合,并将所述第二美术渲染参数集合推入所述目标堆栈的栈顶,所述第二美术渲染参数集合为对所述第一美术渲染参数集合修改后得到的美术渲染参数集合;
所述获取模块还用于,获取位于所述目标堆栈的栈顶的所述第二美术渲染参数集合中的每个美术渲染参数;根据获取的所述第二美术渲染参数集合中的每个美术渲染参数进行渲染,获得目标美术渲染效果。
10.一种游戏服务器,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行如权利要求1至8中任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至8中任一项所述的方法。
CN202010704069.8A 2020-07-21 2020-07-21 美术渲染效果控制的方法、装置及服务器 Active CN111803943B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010704069.8A CN111803943B (zh) 2020-07-21 2020-07-21 美术渲染效果控制的方法、装置及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010704069.8A CN111803943B (zh) 2020-07-21 2020-07-21 美术渲染效果控制的方法、装置及服务器

Publications (2)

Publication Number Publication Date
CN111803943A true CN111803943A (zh) 2020-10-23
CN111803943B CN111803943B (zh) 2024-04-30

Family

ID=72860796

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010704069.8A Active CN111803943B (zh) 2020-07-21 2020-07-21 美术渲染效果控制的方法、装置及服务器

Country Status (1)

Country Link
CN (1) CN111803943B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060152509A1 (en) * 2005-01-12 2006-07-13 Sony Computer Entertainment Inc. Interactive debugging and monitoring of shader programs executing on a graphics processor
CN104657367A (zh) * 2013-11-18 2015-05-27 北京四维图新科技股份有限公司 一种网络地图局部更新方法及装置
WO2017124961A1 (zh) * 2016-01-21 2017-07-27 阿里巴巴集团控股有限公司 一种界面处理方法、装置和智能终端
CN107845144A (zh) * 2017-07-21 2018-03-27 浙江科澜信息技术有限公司 一种高效组织和切换OpenGL渲染状态的方法
CN109966742A (zh) * 2019-03-21 2019-07-05 深圳市腾讯信息技术有限公司 游戏运行中获取渲染性能数据的方法及装置
CN110083426A (zh) * 2019-04-28 2019-08-02 无线生活(杭州)信息科技有限公司 一种应用界面渲染方法及装置
CN110659098A (zh) * 2019-09-23 2020-01-07 北京城市网邻信息技术有限公司 数据更新方法、装置、终端设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060152509A1 (en) * 2005-01-12 2006-07-13 Sony Computer Entertainment Inc. Interactive debugging and monitoring of shader programs executing on a graphics processor
CN104657367A (zh) * 2013-11-18 2015-05-27 北京四维图新科技股份有限公司 一种网络地图局部更新方法及装置
WO2017124961A1 (zh) * 2016-01-21 2017-07-27 阿里巴巴集团控股有限公司 一种界面处理方法、装置和智能终端
CN107845144A (zh) * 2017-07-21 2018-03-27 浙江科澜信息技术有限公司 一种高效组织和切换OpenGL渲染状态的方法
CN109966742A (zh) * 2019-03-21 2019-07-05 深圳市腾讯信息技术有限公司 游戏运行中获取渲染性能数据的方法及装置
CN110083426A (zh) * 2019-04-28 2019-08-02 无线生活(杭州)信息科技有限公司 一种应用界面渲染方法及装置
CN110659098A (zh) * 2019-09-23 2020-01-07 北京城市网邻信息技术有限公司 数据更新方法、装置、终端设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吴健;曹妍妍;崔志明;王晓军;: "Geometry Clipmap算法扩展研究", 系统仿真学报, no. 1, pages 136 - 140 *

Also Published As

Publication number Publication date
CN111803943B (zh) 2024-04-30

Similar Documents

Publication Publication Date Title
WO2018000607A1 (zh) 一种识别测试用例失败原因的方法及电子设备
CN107168780B (zh) 虚拟现实场景的加载方法、设备及虚拟现实设备
CN110032314B (zh) 一种长截屏方法、装置、存储介质和终端设备
CN107562483A (zh) 一种挂载引导文件系统的方法及装置
CN111459376B (zh) 产品引导方法、装置及设备
CN110908734A (zh) 基于插件化的应用组合方法、装置、终端设备及存储介质
CN110851307A (zh) 振动环境下硬盘性能测试方法、系统、终端及存储介质
CN111179402B (zh) 一种目标对象的渲染方法、装置及系统
CN112306368B (zh) 一种emmc扩展用户数据分区的方法及装置
CN108399038A (zh) 一种图片合成方法及移动终端
CN111803943B (zh) 美术渲染效果控制的方法、装置及服务器
CN109460187A (zh) 一种qcow2文件数据一致性验证方法及验证终端
CN110688198B (zh) 系统调用方法、装置和电子设备
CN115543225B (zh) 数据处理方法、系统、装置、计算机存储介质及电子设备
CN111381905B (zh) 一种程序处理方法、装置及设备
CN112003730A (zh) 一种集群快速部署的方法、系统、终端及存储介质
US10740218B2 (en) Method and device for determining usage log
CN110766779A (zh) 镜头光晕生成的方法及装置
CN108874586B (zh) 数据恢复方法及相关产品
CN114238934A (zh) 一种设备信息获取方法、装置、设备及介质
CN110457188B (zh) 可保持事务类型比例的tpc-e测试方法及测试系统
CN109542531B (zh) 一种文件布局调整方法及装置
CN113934421A (zh) 应用程序的页面路径写入方法、装置、设备及存储介质
CN111464688B (zh) 工作模式切换方法及装置
CN110782389A (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