一种面数确定方法、装置及电子设备与流程

文档序号:33126989发布日期:2023-02-01 05:40阅读:29来源:国知局
一种面数确定方法、装置及电子设备与流程

1.本发明涉及游戏技术领域,特别是涉及一种面数确定方法、装置及电子设备。


背景技术:

2.在游戏制作过程中,面数是对游戏中的各个游戏模型进行建模的基础。其中,各个游戏模型均可以由多个多边形构成,通常,可以将构成游戏模型的各个多边形称为游戏模型的面,也就是说,游戏模型的面数即表征构成该游戏模型的多边形的数量。
3.通常,在游戏运行的过程中,游戏画面中所包括的各个游戏模型的面数的和值即为可以作为该游戏画面的面数,而游戏画面的面数可以直接影响游戏画面的画质和设备运行游戏的流畅度。其中,由于不同类型的设备的性能可以是不同的,不同类型的设备在运行游戏时,为了取得较为清晰的画质和较为流畅的运行状态,游戏的游戏画面在不同设备中的面数可以是不同的,因此,需要为每种设备确定合适的游戏画面的面数,以使得该种设备在运行游戏时,可以具有较为清晰的画质和较为流畅的运行状态。
4.在相关技术中,在为每种设备确定合适的游戏画面的面数时,针对每种电子设备,可以为分别制作具有不同面数的多个模型,构建得到多个具有不同面数的场景,进而,基于上述多个场景制作具有不同面数的多个画面,之后,采集在该设备的顶点着色器在渲染各个画面的过程中,该设备的显卡使用率、帧率以及cpu(central processing unit,中央处理器)使用率等通用性能数据,然后,对所采集到的该设备的各个通用性能数据进行分析,从而,从上述不同面数中,为该种设备确定合适的游戏画面的面数。
5.然而,在上述相关技术中,为每种设备确定合适的游戏画面的面数时,需要预先制作针对该种设备的多个画面,而每个画面均需要首先制作该画面对应的模型,因此,制作多个画面所需要耗费较长的的制定时间,从而,导致为每种设备确定合适的游戏画面的面数所耗费的时间较长,效率较低。


技术实现要素:

6.本发明实施例的目的在于提供一种面数确定方法、装置及电子设备,以缩短确定目标设备的面数所耗费的时长,提高面数的确定效率。具体技术方案如下:
7.第一方面,本发明实施例提供了一种面数确定方法,所述方法包括:
8.针对预设的多个候选面数中的每个候选面数,获取在目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,所述目标设备的各个性能数据,作为该候选面数对应的性能数据组;其中,每个候选面数对应的指定画面为:基于在预设场景中放置所具有面数的和值与该候选面数对应的各个预设模型确定的且所述顶点着色器待渲染的面数为该候选面数的画面;每个候选面数对应的性能数据组包括:所述顶点着色器的耗时、所述目标设备的帧率和所述顶点着色器的显卡使用率占比;
9.基于预设的基准帧率和各个性能数据组中所包括的最大显卡使用率占比,确定所述顶点着色器的目标耗时;
10.确定所包括的所述帧率不小于所述基准帧率,且所包括的耗时与所述目标耗时的差值小于预设差值阈值的各个目标性能数据组;
11.基于各个目标性能数据组分别对应的各个候选面数中的最大面数和最小面数,确定所述目标设备的目标面数。
12.可选的,一种具体实现方式中,每个候选面数对应的指定画面为:通过在所述预设场景中放置所具有面数的和值为该候选面数的各个预设模型得到的画面;
13.所述针对预设的多个候选面数中的每个候选面数,获取在目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,所述目标设备的各个性能数据,包括:
14.针对预设的多个候选面数中的每个候选面数,获取在所述目标设备的顶点着色器渲染该候选面数对应的指定画面中的每个面的过程中,所述目标设备的各个性能数据。
15.可选的,一种具体实现方式中,每个候选面数对应的指定画面为:通过在所述预设场景中放置具有预设面数的预设模型得到的且所述预设模型的每个面的渲染次数为指定次数的画面;所述指定次数为:该候选面数与所述预设面数的比值;
16.所述针对预设的多个候选面数中的每个候选面数,获取在目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,所述目标设备的各个性能数据,包括:
17.针对预设的多个候选面数中的每个候选面数,获取在所述目标设备的顶点着色器按照所述指定次数渲染所述预设模型的每个面的过程中,所述目标设备的各个性能数据。
18.可选的,一种具体实现方式中,在所述针对预设的多个候选面数中的每个候选面数,获取在目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,所述目标设备的各个性能数据之前,所述方法还包括:
19.确定多个候选面数,并利用预设场景和各个预设模型,确定每个候选面数对应的指定画面。
20.可选的,一种具体实现方式中,所述目标设备的数量为多个;所述方法还包括:
21.确定各个目标设备的目标面数中的最小值,以及各个目标设备的目标面数中的最大值;
22.按照关于面数间隔的预定选取规则,在所述最小值和所述最大值构成的面数范围内,选取各个基准面数;
23.将所述最大值、所述最小值和所述各个基准面数确定为关于所述各个目标设备的各个标定面数。
24.可选的,一种具体实现方式中,所述按照关于面数间隔的预定选取规则,在所述最小值和所述最大值构成的面数范围内,选取各个基准面数,包括:
25.按照预设步长,在所述最小值和所述最大值构成的面数范围内,选取各个基准面数。
26.可选的,一种具体实现方式中,所述基于预设的基准帧率和各个性能数据组中所包括的最大显卡使用率占比,确定所述顶点着色器的目标耗时,包括:
27.基于预设的基准帧率,计算渲染一帧画面所需要的基准耗时;
28.计算所述基准耗时与所述显卡的预留性能的第一乘积;
29.计算所述第一乘积与各个性能数据组中所包括的最大显卡使用率占比的第二乘积,作为所述顶点着色器的目标耗时。
30.第二方面,本发明实施例提供了一种面数确定装置,所述装置包括:
31.数据获取模块,用于针对预设的多个候选面数中的每个候选面数,获取在目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,所述目标设备的各个性能数据,作为该候选面数对应的性能数据组;其中,每个候选面数对应的指定画面为:基于在预设场景中放置所具有面数的和值与该候选面数对应的各个预设模型确定的且所述顶点着色器待渲染的面数为该候选面数的画面;每个候选面数对应的性能数据组包括:所述顶点着色器的耗时、所述目标设备的帧率和所述顶点着色器的显卡使用率占比;
32.目标耗时确定模块,用于基于预设的基准帧率和各个性能数据组中所包括的最大显卡使用率占比,确定所述顶点着色器的目标耗时;
33.数据组确定模块,用于确定所包括的所述帧率不小于所述基准帧率,且所包括的耗时与所述目标耗时的差值小于预设差值阈值的各个目标性能数据组;
34.目标面数确定模块,用于基于各个目标性能数据组分别对应的各个候选面数中的最大面数和最小面数,确定所述目标设备的目标面数。
35.可选的,一种具体实现方式中,每个候选面数对应的指定画面为:通过在所述预设场景中放置所具有面数的和值为该候选面数的各个预设模型得到的画面;
36.所述数据获取模块,具体用于:
37.针对预设的多个候选面数中的每个候选面数,获取在所述目标设备的顶点着色器按照所述指定次数渲染所述预设模型的每个面的过程中,所述目标设备的各个性能数据。
38.可选的,一种具体实现方式中,每个候选面数对应的指定画面为:通过在所述预设场景中放置具有预设面数的预设模型得到的且所述预设模型的每个面的渲染次数为指定次数的画面;所述指定次数为:该候选面数与所述预设面数的比值;
39.所述数据获取模块,具体用于:
40.针对预设的多个候选面数中的每个候选面数,获取在所述目标设备的顶点着色器按照所述指定次数渲染所述预设模型的每个面的过程中,所述目标设备的各个性能数据。
41.可选的,一种具体实现方式中,所述装置还包括:
42.画面确定模块,用于在所述数据获取模块之前,确定多个候选面数,并利用预设场景和各个预设模型,确定每个候选面数对应的指定画面。
43.可选的,一种具体实现方式中,所述目标设备的数量为多个;所述装置还包括:
44.确定模块,用于确定各个目标设备的目标面数中的最小值,以及各个目标设备的目标面数中的最大值;
45.选取模块,用于按照关于面数间隔的预定选取规则,在所述最小值和所述最大值构成的面数范围内,选取各个基准面数;
46.基准面数确定模块,用于将所述最大值、所述最小值和所述各个基准面数确定为关于所述各个目标设备的各个标定面数。
47.可选的,一种具体实现方式中,所述选取模块,具体用于:
48.按照预设步长,在所述最小值和所述最大值构成的面数范围内,选取各个基准面数。
49.可选的,一种具体实现方式中,所述目标耗时确定模块,具体用于:
50.基于预设的基准帧率,计算渲染一帧画面所需要的基准耗时;
51.计算所述基准耗时与所述显卡的预留性能的第一乘积;
52.计算所述第一乘积与各个性能数据组中所包括的最大显卡使用率占比的第二乘积,作为所述顶点着色器的目标耗时。
53.第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
54.存储器,用于存放计算机程序;
55.处理器,用于执行存储器上所存放的程序时,实现上述任一方法实施例的步骤。
56.第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一方法实施例的步骤。
57.第五方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一方法实施例的步骤。
58.本发明实施例有益效果:
59.以上可见,应用本发明实施例提供的方案,在确定目标设备的目标面数时,可以首先确定多个候选面数,并构建预设场景和各个预设模型,从而,可以通过在上述预设场景中放置各个预设模型来制作各个候选面数对应的指定画面,其中,上述目标设备的顶点着色器在对每个候选面数对应的指定画面进行渲染时,所需渲染的面的数量即为该候选面数。
60.因此,针对每个候选面数,可以获取在该目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,目标设备的各个性能数据,并将上述各个性能数据作为该候选面数对应的性能数据组。之后,可以基于预设的基准帧率和各个性能数据组中所包括的最大显卡使用率占比,确定顶点着色器的目标耗时,从而,可以在上述各个性能数据组中,确定所包括的帧率不小于基准帧率且所包括的耗时与目标耗时的差值小于预设差值阈值的各个目标性能数据组,并基于各个目标性能数据组分别对应的各个候选面数中的最大面数和最小面数,确定目标设备的目标面数。
61.基于此,应用本发明实施例提供的方案,针对目标设备,可以通过在预先构建的预设模型中放置各个预设模型,来制作多个候选面数分别对应的指定画面。其中,在相关技术中,通过设备的通用性能数据确定面数时,由于上述通用性能数据可能会受到渲染特效、应用程序执行逻辑顺序等多种因素的影响,所确定的面数的准确性较差,而在本技术提供的技术方案中,针对任意一种设备,该设备的顶点着色器的性能数据是不受其他因素影响、相对稳定的,从而,该所确定的面数的准确性较高;并且,在相关技术中,需要分别制作多个模型构建多个场景,之后,利用所构建的多个场景制作上述多个场景分别对应的多个画面,以及,在制作每个画面的过程中,对于在多个画面中出现的同一模型,需要多次重复制作该模型;而在本技术提供的技术方案中,只需预先构建一个预设场景,并且,各个预设模型仅需构建一次,便可以在制作多个指定画面时重复使用,从而,极大地减少了画面制作过程中所需构建的场景和模型的数量,缩短了画面的制作时长,进而,缩短了确定每种设备的面数所耗费的时间,提高了面数的确定效率。
附图说明
62.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现
有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
63.图1为本发明实施例提供的一种面数确定方法的流程示意图;
64.图2为本发明实施例提供的另一种面数确定方法的流程示意图;
65.图3为本发明实施例提供的又一种面数确定方法的流程示意图;
66.图4为本发明实施例提供的采集软件采集各个性能数据的具体实例图;
67.图5为本发明实施例提供的一种面数确定装置的结构示意图;
68.图6为本发明实施例提供的电子设备的结构示意图。
具体实施方式
69.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本技术所获得的所有其他实施例,都属于本发明保护的范围。
70.然而,在上述相关技术中,为每种设备确定合适的游戏画面的面数时,需要预先制作针对该种设备的多个画面,而每个画面均需要一定的制作时间,因此,制作多个画面需要耗费较长的的制定时间,从而,导致为每种设备确定合适的游戏画面的面数所耗费的时间较长,效率较低。
71.为了解决上述技术问题,本发明实施例提供了一种面数确定方法。
72.其中,该方法可以适用于确定各种设备运行的应用程序的画面的面数的应用场景,其中,可以将设备运行的应用程序的画面的面数称为设备的面数;例如,确定笔记本电脑运行的游戏的画面的面数,确定vr(virtual reality,虚拟现实)设备运行的vr界面的面数等;并且,上述设备可以是手机、笔记本电脑、台式电脑、vr设备、ar(augmented reality,增强现实)设备等。
73.本技术所提供的技术方案的执行主体可以是各类可以进行数据处理的电子设备,例如,服务器、手机、笔记本电脑等;并且,执行本技术所提供的技术方案的电子设备可以对自身运行的应用程序的画面的面数进行确定,例如,台式电脑可以采集自身的各个性能数据,并确定自身运行的应用程序的画面的面数;也可以对与自身相通信的其他电子设备的运行的应用程序的画面的面数进行确定,例如,该电子设备可以获取其他设备的各项性能数据,并确定该设备运行的应用程序的画面的面数。为了行文清晰,以下将本技术所提供的技术方案的执行主体称为电子设备。
74.基于此,本发明实施例不对该方法的应用场景和执行主体进行具体限定。
75.本发明实施例提供的一种面数确定方法,可以包括如下步骤:
76.针对预设的多个候选面数中的每个候选面数,获取在目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,所述目标设备的各个性能数据,作为该候选面数对应的性能数据组;其中,每个候选面数对应的指定画面为:基于在预设场景中放置所具有面数的和值与该候选面数对应的各个预设模型确定的且所述顶点着色器待渲染的面数为该候选面数的画面;每个候选面数对应的性能数据组包括:所述顶点着色器的耗时、所述目标
设备的帧率和所述顶点着色器的显卡使用率占比;
77.基于预设的基准帧率和各个性能数据组中所包括的最大显卡使用率占比,确定所述顶点着色器的目标耗时;
78.确定所包括的所述帧率不小于所述基准帧率,且所包括的耗时与所述目标耗时的差值小于预设差值阈值的各个目标性能数据组;
79.基于各个目标性能数据组分别对应的各个候选面数中的最大面数和最小面数,确定所述目标设备的目标面数。
80.以上可见,应用本发明实施例提供的方案,在确定目标设备的目标面数时,可以首先确定多个候选面数,并构建预设场景和各个预设模型,从而,可以通过在上述预设场景中放置各个预设模型来制作各个候选面数对应的指定画面,其中,上述目标设备的顶点着色器在对每个候选面数对应的指定画面进行渲染时,所需渲染的面的数量即为该候选面数。
81.因此,针对每个候选面数,可以获取在该目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,目标设备的各个性能数据,并将上述各个性能数据作为该候选面数对应的性能数据组。之后,可以基于预设的基准帧率和各个性能数据组中所包括的最大显卡使用率占比,确定顶点着色器的目标耗时,从而,可以在上述各个性能数据组中,确定所包括的帧率不小于基准帧率且所包括的耗时与目标耗时的差值小于预设差值阈值的各个目标性能数据组,并基于各个目标性能数据组分别对应的各个候选面数中的最大面数和最小面数,确定目标设备的目标面数。
82.基于此,应用本发明实施例提供的方案,针对目标设备,可以通过在预先构建的预设模型中放置各个预设模型,来制作多个候选面数分别对应的指定画面。其中,在相关技术中,通过设备的通用性能数据确定面数时,由于上述通用性能数据可能会受到渲染特效、应用程序执行逻辑顺序等多种因素的影响,所确定的面数的准确性较差,而在本技术提供的技术方案中,针对任意一种设备,该设备的顶点着色器的性能数据是不受其他因素影响、相对稳定的,从而,该所确定的面数的准确性较高;并且,在相关技术中,需要分别制作多个模型构建多个场景,之后,利用所构建的多个场景制作上述多个场景分别对应的多个画面,以及,在制作每个画面的过程中,对于在多个画面中出现的同一模型,需要多次重复制作该模型;而在本技术提供的技术方案中,只需预先构建一个预设场景,并且,各个预设模型仅需构建一次,便可以在制作多个指定画面时重复使用,从而,极大地减少了画面制作过程中所需构建的场景和模型的数量,缩短了画面的制作时长,进而,缩短了确定每种设备的面数所耗费的时间,提高了面数的确定效率。
83.下面,结合附图,对本发明实施例提供的一种面数确定方法进行具体说明。
84.图1为本发明实施例提供的一种面数确定方法的流程示意图,如图1所示,该方法可以包括如下步骤s101-s104。
85.s101:针对预设的多个候选面数中的每个候选面数,获取在目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,目标设备的各个性能数据,作为该候选面数对应的性能数据组;
86.其中,每个候选面数对应的指定画面为:基于在预设场景中放置所具有面数的和值与该候选面数对应的各个预设模型确定的且顶点着色器待渲染的面数为该候选面数的画面;每个候选面数对应的性能数据组包括:顶点着色器的耗时、目标设备的帧率和顶点着
色器的显卡使用率占比;
87.在确定目标设备的目标面数时,可以首先基于该设备的设备参数、该设备所运行的应用程序的程序数据、画质要求以及历史应用程序的模型数据等,预先设置多个候选面数。
88.针对设备所运行的应用程序的画面,该画面中的面数是指被传递到该设备的显卡(gpu,graphics processing unit)中的该画面中各个模型的面数的和值,而通过在同一场景中放置不同的模型可以得到不同的画面。那么,对于一个场景而言,可以通过增减该场景中所包括的模型,得到不同的画面,从而,便可以通过增减该场景中所包括的模型的数量来改变所得到的画面中的面数,从而,得到具有不同面数的多个画面。
89.因此,为了节省制作多个不同画面的时间,可以预先构建一个预设场景和多个预设模型,这样,可以通过在该预设场景增减预设模型的数量,来改变所得到的画面中的面数,从而,可以利用上述预设场景和预设模型,制作不同的画面,进而,可以缩短制作多个不同画面的时间。
90.并且,目标设备的顶点着色器在对每个画面中的各个面进行渲染时,可以根据预设的该顶点着色器的渲染次数确定对每个面进行渲染的次数。例如,目标设备的顶点着色器的渲染次数为2,则目标设备的顶点着色器在对每个画面中的各个面进行渲染时,将对每个面渲染2次;目标设备的顶点着色器的渲染次数为1,则目标设备的顶点着色器在对每个画面中的各个面进行渲染时,将对每个面渲染1次。
91.其中,由于目标设备的顶点着色器的渲染次数是可以调整的,因此,在不改变待渲染的画面的情况下,可以通过改变顶点着色器的渲染次数,达到改变顶点着色器待渲染的面的面数的效果。在这个过程中,可以制作一个待渲染的画面,并通过增减目标设备的顶点着色器的渲染次数,改变该顶点着色器在每次渲染该画面中的各个面时,对每个面的渲染次数,即可以实现对顶点着色器的待渲染的面的面数的增减,从而,可以无需制作多个不同的待渲染的画面,节省了制作多个不同画面的时间。
92.基于此,在本技术所提供的技术方案中,上述每个候选面数对应的指定画面可以为:基于在预设场景中放置所具有面数的和值与该候选面数对应的各个预设模型确定的且顶点着色器待渲染的面数为该候选面数的画面。
93.也就是说,针对每个候选面数,可以通过在预设场景中放置所具有面数的和值与该候选面数对应的各个预设模型得到该候选面数对应的指定画面,而根据上述所放置的各个预设模型所具有面数的和值以及目标设备的顶点着色器的渲染次数,所确定的该顶点着色器在对上述指定画面进行渲染时,待渲染的面的面数即为该候选面数。
94.例如,针对候选面数100,可以在预设场景中放置所具有面数的和值为100的各个预设模型得到该候选面数对应的指定画面,并且,设定目标设备的顶点着色器的渲染次数为1,则该顶点着色器在对上述指定画面进行渲染时,待渲染的面的面数即为100;
95.又例如,针对候选面数100,可以在预设场景中放置所具有面数的和值为50的各个预设模型得到该候选面数对应的指定画面,并且,设定目标设备的顶点着色器的渲染次数为2,则该顶点着色器在对上述指定画面进行渲染时,待渲染的面的面数即为100。
96.可选的,一种具体实现方式中,如图2所示,在上述步骤s101之前,本发明实施例提供的一种面数确定方法,还可以包括如下步骤s100:
97.s100:确定多个候选面数,并利用预设场景和各个预设模型,确定每个候选面数对应的指定画面。
98.在本具体实现方式中,电子设备可以首先确定多个候选面数。
99.其中,可选的,电子设备可以基于该目标设备的设备参数、该目标设备所运行的应用程序的程序数据、画质要求以及历史应用程序的模型数据等,确定多个候选面数。
100.可选的,电子设备可以获取用户通过多种方式输入的多个候选面数。
101.这样,在确定上述多个候选面数后,电子设备可以基于上述预设场景和各个预设模型,确定每个候选面数对应的指定画面。
102.其中,可选的,针对每个候选面数,电子设备可以在上述预设场景中放置所具有面数的和值为该候选面数的各个预设模型,得到该候选面数对应的指定画面;
103.可选的,针对每个候选面数,电子设备可以在预设场景中放置具有预设面数的预设模型得到的一个画面,并将目标设备的顶点着色器的渲染次数调整为该候选面数与预设面数的比值,从而,将上述通过在预设场景中放置具有预设面数的预设模型得到的,且预设模型的每个面的渲染次数为上述比值的画面,作为该候选面数对应的指定画面。
104.可选的,一种具体实现方式中,每个候选面数对应的指定画面为:通过在预设场景中放置所具有面数的和值为该候选面数的各个预设模型得到的画面;则上述步骤s101,可以包括如下步骤11:
105.步骤11:针对预设的多个候选面数中的每个候选面数,获取在目标设备的顶点着色器渲染该候选面数对应的指定画面中的每个面的过程中,目标设备的各个性能数据。
106.在本具体实现方式中,针对预设的多个候选面数中的每个候选面数,可以通过在预设场景中放置所具有的面数的和值为该候选面数的各个预设模型,得到所具有的模型的面数的和值为候选面数的画面,从而,得到该候选面数对应的指定画面。
107.其中,上述各个预设模型各自具有的面数可以是相同的,也可以是不同的。例如,上述各个预设模型可以是多个具有同一指定数量个面数的模型;又例如,上述各个预设模型可以是多个所具有的面数均不相同的模型,这都是合理的,在本发明实施例中不对上述预设模型进行具体限制。
108.示例性的,预设模型可以包括5个20万面的模型、4个10万面的模型以及6个5万面的模型;这样,在候选面数为50万时,可以在预设场景中放置2个20万面的模型以及1个10万面的模型;在候选面数为70万时,可以在预设场景中放置3个20万面的模型、1个10万面的模型以及1个5万面的模型。
109.在确定上述预设的多个候选面数中的每个候选面数对应的指定画面后,由于上述指定画面中所具有的面数即为候选面数,这样,目标设备的顶点着色器对该指定画面中的每个面数进行一次渲染即可,从而,可以获取在上述目标设备的顶点着色器渲染该候选面数对应的指定画面中的每个面的过程中,目标设备的各个性能数据。
110.通常,顶点着色器对每个画面的渲染次数是可以进行调整的。针对每个候选面数对应的指定画面,该顶点着色器的待渲染的面数可以是该指定画面所具有的面数与顶点着色器的渲染次数的乘积,并且,上述乘积值与该候选面数相等。
111.可选的,一种具体实现方式中,每个候选面数对应的指定画面为:通过在预设场景中放置具有预设面数的预设模型得到的且预设模型的每个面的渲染次数为指定次数的画
面;指定次数为:该候选面数与预设面数的比值;则上述步骤s101,可以包括如下步骤21:
112.步骤21:针对预设的多个候选面数中的每个候选面数,获取在目标设备的顶点着色器按照指定次数渲染预设模型的每个面的过程中,目标设备的各个性能数据。
113.在本具体实现方式中,针对预设的多个候选面数中的每个候选面数,可以在上述预设场景中放置具有预设面数的预设模型。
114.其中,上述预设面数可以按照实际需要进行设定,例如,该预设面数可以为全部候选面数的最小公约数。也就是说,每个候选面数可以均为该预设面数的倍数。
115.之后,针对每个候选面数,为了使得目标设备的顶点着色器在对该候选面数对应的指定画面进行渲染时,待渲染的面数为该候选面数,则可以对顶点着色器对上述预设模型中的各个面的渲染次数进行调整。其中,在确定该候选面数和上述预设面数时,可以计算该候选面数与预设面数的比值,从而,可以将上述比值作为顶点着色器对上述预设模型中的每个面进行渲染的指定次数。
116.也就是说,针对每个候选面数,可以基于该该候选面数与该上述预设模型中的预设面数的比值,确定顶点着色器针对上述预设模型中的每个面的进行渲染的指定次数。
117.例如,预设模型中所具有的预设面数为5万,在候选面数为5万时,上述该预设面数与该候选面数的比值为1,则上述目标设备的顶点着色器对预设画面中的每个面数进行渲染的指定次数为1次;在候选面数为20万时,上述该预设面数与该候选面数的比值为4,则上述目标设备的顶点着色器对预设画面中的每个面数进行渲染的指定次数为4次。
118.这样,针对每个候选面数,在确定顶点着色器针对上述预设模型中的每个面的进行渲染的指定次数后,目标设备的顶点着色器可以按照上述指定次数渲染上述指定画面中的预设模型的每个面,从而,本发明实施例的执行主体可以获取在目标设备的顶点着色器可以按照上述指定次数渲染上述指定画面中的预设模型的每个面的过程中,目标设备的各个性能数据,进而,得到每个候选面数对应的性能数据组。
119.以上可见,按照预设画面中的预设模型所具有的预设面数与各个候选面数的比值,调整顶点着色器对每个面的渲染次数,可以在不改变预设模型中的预设模型的情况下,采集目标设备在目标设备的顶点着色器在渲染各个候选面数对应的面的过程中的各个性能数据。并且,在不改变预设模型中的预设模型的情况下,可以利用同一张图,针对目标设备,实现对多个不同候选面数对应的性能数据组的采集,从而,可以缩短多个不同画面的制作时间,进而,缩短了目标设备的面数的确定周期。
120.可选的,在本发明实施例的执行主体即为目标设备时,该目标设备可以采集该目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,目标设备的各个性能数据,从而,可以得到上述目标设备的各个性能数据;
121.可选的,在本发明实施例的执行主体不是上述目标设备时,电子设备可以通过与上述目标设备进行通信,获取上述目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,目标设备的各个性能数据,得到该目标设备的各个性能数据;
122.可选的,在本发明实施例的执行主体不是上述目标设备时,电子设备可以通过与可以接收上述目标设备的各项性能数据的服务器进行通信,获取上述目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,目标设备的各个性能数据,得到该目标设备的各个性能数据。
123.其中,上述每个候选面数对应的性能数据组可以包括:顶点着色器的耗时、目标设备的帧率fps(frame per second,画面每秒传输帧数)和顶点着色器的显卡使用率占比。
124.上述顶点着色器的耗时为顶点着色器渲染该指定画面中各个面的总耗时;
125.上述目标设备的帧率为该目标设备在展示该指定画面时的游戏画面的帧率,该帧率是用来衡量该指定画面是否卡顿的重要性能指标;
126.上述顶点着色器的显卡使用率占比为在该顶点着色器渲染该指定画面中的模型的各个面的过程中,所占用的显卡使用率的占比。
127.例如,在显卡将应用程序的指定画面渲染到显示设备的过程中,显卡渲染该指定画面的总用时为100ms,其中,顶点着色器对该指定画面进行处理的用时为20ms,则顶点着色器的用时占用了显卡总用时的20%,即该顶点着色器的显卡使用率占比为20%。
128.s102:基于预设的基准帧率和各个性能数据组中所包括的最大显卡使用率占比,确定顶点着色器的目标耗时;
129.通常,在对应用程序中的画面进行建模之前,为了使得在目标设备运行该应用程序的画面时,所呈现的画面的画质可以达到预期标准,可以基于该应用程序的各项参数,预先设置该应用程序对应的基准帧率。
130.基于此,可选的,可以预先设置该应用程序对应的基准帧率。
131.其中,应用程序对应的基准帧率可以是基于预先设置的该应用程序的最低帧率以及该应用程序的预留消耗参数,计算得到的。
132.并且,上述该应用程序的标定帧率可以是预设各个设备运行该应用程序时,各个设备所呈现的该应用程序的画面均满足画质要求的标定帧率;上述预留消耗参数可以是基于不同设备运行该应用程序的不同画面时所记录的各个帧率以及上述应用程序的标定帧率确定的。
133.示例性的,针对游戏a,预设该游戏对应的标定帧率为30,针对各种性能不同的设备,分别记录每种设备运行该游戏a中的单人站立、单人跑动以及多人站立等多个不同游戏场景时,该设备的多个帧率fps,之后,根据上述标定帧率和多个帧率,确定该游戏对应的预留消耗参数为30%,进而,通过计算30/(1-30%),并对计算结果进行截断小数位可以得到基准帧率为42。
134.其中,上述基准帧率可以按照实际应用程序运行需要进行设定,可以是30帧,也可以是60帧,这都是合理的,在本发明实施例中不做具体限定。
135.这样,在获取到预设的多个候选面数的多个性能数据组之后,可以确定上述各个性能数据组中所包括的最大显卡使用率占比,从而,基于上述预设的基准帧率和所确定的最大显卡使用率占比,可以确定该顶点着色器的目标耗时。
136.可选的,一种具体实现方式中,基于预设的基准帧率和各个性能数据组中所包括的最大显卡使用率占比,确定顶点着色器的目标耗,可以包括如下步骤41-43:
137.步骤41:基于预设的基准帧率,计算渲染一帧画面所需要的基准耗时;
138.步骤42:计算基准耗时与显卡的预留性能的第一乘积;
139.步骤43:计算第一乘积与各个性能数据组中所包括的最大显卡使用率占比的第二乘积,作为顶点着色器的目标耗时。
140.在本具体实现方式中,顶点着色器的目标耗时用于表征顶点着色器渲染一帧画面
所需要的耗时,在基于预设的基准帧率和各个性能数据组中所包括的最大显卡使用率占比,确定顶点着色器的目标耗时时,可以首先基于预设的基准帧率,计算每一帧画面的基准耗时,之后,可以计算基准耗时与显卡的预留性能的第一乘积,然后,可以进一步计算第一乘积与各个性能数据组中所包括的最大显卡使用率占比的第二乘积,这样,便可以将所得到的第二乘积作为顶点着色器的目标耗时。
141.例如,上述过程可以用下列公式表示:
[0142][0143]
其中,是显卡渲染一帧画面的耗时,单位ms;65%是显卡的预留性能,该预留性能可以降低发热导致的降频等因素对帧率造成的影响,该预留性能的具体数值是基于应用程序的历史数据推算得到的,可以按照实际需要进行调整;最大显卡使用率占比是上述各个性能数据组中各个显卡使用率占比中的最大值。
[0144]
s103:确定所包括的帧率不小于基准帧率,且所包括的耗时与目标耗时的差值小于预设差值阈值的各个目标性能数据组;
[0145]
为了使得所确定的目标设备的目标面数,满足画质要求,所确定的目标面数对应的帧率可以不小于上述基准帧率;而上述目标耗时是基于上述基准帧率确定的,在上述目标帧率不小于上述基准帧率的情况下,为了满足设备运行应用程序时的流畅度要求,所确定的目标面数对应的耗时应接近于上述所确定的目标耗时。基于此,为了衡量上述多个候选面数对应的各个性能数据组中的耗时与目标耗时的接近程度,可以预先设置一个预设差值阈值,这样,在任一耗时与目标耗时的差值小于上述预设差值阈值时,可以确定该耗时接近上述目标耗时。
[0146]
基于此,在确定上述顶点着色器的目标耗时之后,可以基于上述基准帧率以及所确定的目标耗时,在上述各个目标性能数据组中,确定所包括的帧率不小于上述基准帧率,且所包括的耗时与目标耗时的差值小于预设差值阈值的各个目标性能数据组。
[0147]
其中,上述预设差值阈值可以按照实际需要进行设定,可以是3,也可以是5,这都是合理的,在本发明实施例中不做具体限定。
[0148]
s104:基于各个目标性能数据组分别对应的各个候选面数中的最大面数和最小面数,确定目标设备的目标面数。
[0149]
在确定各个目标性能数据组之后,可以分别确定上述各个目标性能数据组各自对应的候选面数,进而,可以进一步确定各个目标性能数据组分别对应的各个候选面数中的最大面数和最小面数,并基于上述最大面数和最小面数,确定目标设备的目标面数。
[0150]
其中,上述最大面数是上述满足所对应的目标性能数据组中的帧率不小于上述基准帧率,且所对应的目标性能数据组中的耗时与目标耗时的差值小于预设差值阈值的各个候选面数中的面数的最大值,该最大面数可以用于限制应用程序的画面中所包括的模型的面数的最大数量;并且,在上述各个候选面数中,该最大面数所对应的目标性能数据组中的耗时与上述目标耗时的差值最小,也就是说,该最大面数所对应的目标性能数据组中的耗时最接近上述目标耗时。这样,在目标设备运行的应用程序的画面中的面的面数为上述最大面数时,该画面中的模型的面数更多,场景更复杂,从而,该目标设备所呈现的画面更精
致;
[0151]
而上述最小面数是上述满足所对应的目标性能数据组中的帧率不小于上述基准帧率,且所对应的目标性能数据组中的耗时与目标耗时的差值小于预设差值阈值的各个候选面数中的面数的最小值,该最小面数可以用于限制应用程序的画面中所包括的模型的面数的最小数量。这样,在目标设备运行的应用程序的画面中的面的面数为上述最小面数时,该目标设备运行上述应用程序更为流畅。
[0152]
基于此,数值范围位于上述最大面数与最小面数之间的各个面数均为满足上述所对应的性能数据组中的帧率不小于上述基准帧率,且所对应的性能数据组中的耗时与目标耗时的差值小于预设差值阈值的面数。从而,可以基于上述最大面数和最小面数确定目标设备的目标面数。
[0153]
可选的,可以将由上述最大面数和最小面数构成的面数范围,确定为目标设备的目标面数范围;
[0154]
可选的,可以将与上述最大面数的第一差值,以及与上述最小面数的第二差值相等的面数,即最大面数与最小面数的中间面数,确定为目标设备的目标面数,使得目标设备在运行该设备时,可以兼顾画面的帧率与顶点着色器的耗时;
[0155]
可选的,可以将上述最大面数确定为目标设备的目标面数,这样,在目标设备运行的应用程序的画面中的面数为上述最大面数,画面中的场景更复杂,画面更精致;
[0156]
可选的,可以将上述最小面数确定为目标设备的目标面数,这样,在目标设备运行的应用程序的画面中的面数为上述最小面数,运行上述应用程序更为流畅。
[0157]
以上可见,应用本发明实施例提供的方案,针对目标设备,可以通过在预先构建的预设模型中放置各个预设模型,来制作多个候选面数分别对应的指定画面。其中,在相关技术中,通过设备的通用性能数据确定面数时,由于上述通用性能数据可能会受到渲染特效、应用程序执行逻辑顺序等多种因素的影响,所确定的面数的准确性较差,而在本技术提供的技术方案中,针对任意一种设备,该设备的顶点着色器的性能数据是不受其他因素影响、相对稳定的,从而,该所确定的面数的准确性较高;并且,在相关技术中,需要分别制作多个模型构建多个场景,之后,利用所构建的多个场景制作上述多个场景分别对应的多个画面,以及,在制作每个画面的过程中,对于在多个画面中出现的同一模型,需要多次重复制作该模型;而在本技术提供的技术方案中,只需预先构建一个预设场景,并且,各个预设模型仅需构建一次,便可以在制作多个指定画面时重复使用,从而,极大地减少了画面制作过程中所需构建的场景和模型的数量,缩短了画面的制作时长,进而,缩短了确定每种设备的面数所耗费的时间,提高了面数的确定效率。
[0158]
针对任一待建模应用程序,由于该应用程序是面向多种设备的,从而,为了提高该应用程序的适配范围,在对该应用程序进行建模时,应综合考虑各种性能不同的目标设备的目标面数,并综合各个目标面数,确定构建该应用程序模型时的基准面数。基于此,在确定各个目标设备各自的目标面数后,可以基于所确定的各个目标设备的目标面数,进一步确定该应用程序的模型的基准面数。
[0159]
可选的,一种具体实现方式中,上述目标设备的数量为多个;如图3所示,本发明实施例提供的一种面数确定方法,还可以包括如下步骤s105-s107:
[0160]
s105:确定各个目标设备的目标面数中的最小值,以及各个目标设备的目标面数
中的最大值;
[0161]
s106:按照关于面数间隔的预定选取规则,在最小值和最大值构成的面数范围内,选取各个基准面数;
[0162]
s107:将最大值、最小值和各个基准面数确定为关于各个目标设备的各个标定面数。
[0163]
在本具体实现方式中,通常每个应用程序都是可以搭载在多种不同类型的设备上的,基于此,在确定应用程序模型的面数时,当该应用程序所对应的目标设备为多个时,应可以综合考虑各个目标设备所对应的各个目标面数。
[0164]
这样,针对每个目标设备,在可以利用上述步骤s101-s104,确定该目标设备的目标面数后,可以确定上述多个目标设备的各个目标面数中的最小值和最大值。
[0165]
从而,可以基于上述最小值和最大值,确定由上述最小值和最大值构成的面数范围。由于上述最小值为各个目标设备的各个目标面数中满足所对应的性能数据组中的帧率不小于上述基准帧率,且所对应的性能数据组中的耗时与目标耗时的差值小于预设差值阈值的最小面数值;而上述最大值为各个目标设备的各个目标面数中满足所对应的性能数据组中的帧率不小于上述基准帧率,且所对应的性能数据组中的耗时与目标耗时的差值小于预设差值阈值的最大面数值;从而,由上述最小值和最大值构成的面数范围的任一面数,均为可以满足所对应的性能数据组中的帧率不小于上述基准帧率,且所对应的性能数据组中的耗时与目标耗时的差值小于预设差值阈值的面数。
[0166]
基于此,可以在上述面数范围内,确定该应用程序的基准面数,而考虑到不同设备的设备参数是不同的,用户的体验需求也是不同的,进而,在构建应用程序模型时,可以选择多个标定面数,并利用上述多个标定面数,构建多个标定面数各自对应的应用程序模型。
[0167]
这样,在确定应用程序对应的各个标定面数时,可以按照关于面数间隔的预定选取规则,在由上述最小值和上述最大值构成的面数范围内,选取各个面数,并将上述最大值、最小值和所选取的各个基准面数分别确定为关于各个目标设备的标定面数。
[0168]
这样,针对同一游戏,便可以按照上述所确定的各个标定面数,构建多个具有不同面数的应用程序模型,从而,各种设备在运行上述游戏时,可以按照设备自身的性能参数,选择对应的应用程序模型,以兼顾该设备运行上述应用程序的画面的画质、运行流畅度以及用户的使用体验。
[0169]
可选的,在运行上述游戏之前,设备可以将自身的性能参数发送给游戏服务器,这样,上述游戏服务器可以接收上述性能参数,并将与该设备的性能参数相匹配的游戏模型反馈给设备,从而,该设备可以接收上述游戏模型,并运行上述游戏模型;
[0170]
可选的,设备内存储有多个具有不同面数的游戏模型,在运行上述游戏之前,设备可以在上述多个游戏模型中,选择与自身的性能参数相匹配的游戏模型,并运行上述游戏模型。
[0171]
在确定游戏模型的面数的过程中,综合考虑多种不同性能设备各自对应的面数,构建多个具有不同面数的游戏模型,相比与仅构建一种游戏模型,更能兼顾不同设备的运行需要,从而,可以提高面数指定的准确性,提高用户的使用体验。
[0172]
其中,上述预定选取规则可以是按照预设步长选取,也可以是任意选取,这都是合理的,在本发明实施例中不做具体限定。
[0173]
可选的,一种具体实现方式中,上述步骤s106,可以包括如下步骤31:
[0174]
步骤31:按照预设步长,在最小值和最大值构成的面数范围内,选取各个基准面数。
[0175]
在本具体实现方式中,可以按照预设步长,在上述由最小值和最大值构成的面数范围内,选取各个基准面数。
[0176]
其中,上述预设步长可以按照实际需要进行设定,可以是20万,也可以是35万,这都是合理的,在本发明实施例中不做具体限定。
[0177]
为了便于理解本发明实施例所提供的面数确定方法,下面结合图4和表1,对本发明实施例的具体实例进行说明。
[0178]
在对游戏模型进行建模之前,可以首先确定该游戏模型对应的面数。之后,可以确定多个目标设备,并针对每个目标设备,应用本发明实施例提供的面数确定方法确定该目标设备的目标面数范围。
[0179]
在确定每个目标设备的目标面数范围时,可以首先确定多个候选面数,如图4所示,上述多个候选面数为82万、90万、100万、110万、122万、130万、142万、150万、172万、184万、190万、205万、224万、241万、260万以及285万。
[0180]
表1
[0181][0182][0183]
之后,针对每个候选面数,可以通过在预设场景中放置预设模型,生成该候选面数对应的指定画面,这样,便可以利用snapdragon profiler软件采集在目标设备的顶点着色器渲染具有每个候选面数的指定画面的过程中,目标设备的各个性能数据,并将所采集到的各个性能数据作为该候选面数的性能数据组,从而,得到如表1所示的多个候选面数对应的性能数据组。其中,如表1所示,上述各个性能数据可以包括fps、顶点着色器的耗时(ms)、顶点着色器的显卡使用率占比(%),并且,上述顶点着色器占比即为本发明实施例中的顶
点着色器的显卡使用率占比;
[0184]
如图4所示,图4为snapdragon profiler软件采集目标设备的各个性能数据的采集界面。
[0185]
然后,在确定上述多个候选面数对应的性能数据组后,可以基于预设的基准帧率、各个性能数据组中所包括的最大显卡使用率占比以及下列公式,确定顶点着色器的目标耗时。
[0186][0187]
其中,上述基准帧率为40帧,由表1可知,上述最大显卡使用率占比为30%,通过计算,可以确定上述顶点着色器的目标耗时为4.875ms。
[0188]
在确定上述目标耗时之后,可以基于如表1所示的各个性能数据组,确定所包括的帧率大于基准帧率,且所包括的耗时与目标耗时的差值小于预设差值阈值的各个目标性能数据组。
[0189]
其中,上述预设差值阈值为0.5ms,则可以确定与目标耗时的差值小于预设差值阈值的耗时位于由4.375ms与5.375ms构成的耗时数值范围内。
[0190]
结合表1所示的各个性能数据组进行分析,可以确定面数为150万、172万与184万的候选面数对应的顶点着色器的耗时位于上述耗时数值范围内,但是,面数为184万的候选面数的fps为37,小于基准帧率,画面效果较差,从而,可以确定面数为150万以及面数为172万的候选面数对应的性能数据组为该目标设备的两个目标性能数据组。
[0191]
进而,可以将两个目标性能数据组分别对应的各个候选面数中的最大面数172万和最小面数150万构成的面数范围150万-172万,确定为目标设备的目标面数范围,即在基准帧率为40帧时,目标设备的目标面数范围为150万-172万。
[0192]
基于相同的发明构思,相应于上述本发明实施例提供的图1所示的一种面数确定方法,本发明实施例还提供了一种面数确定装置。
[0193]
图5为本发明实施例提供的一种面数确定装置的结构示意图,如图5所示,该装置可以包括如下模块:
[0194]
数据获取模块510,用于针对预设的多个候选面数中的每个候选面数,获取在目标设备的顶点着色器渲染该候选面数对应的指定画面的过程中,所述目标设备的各个性能数据,作为该候选面数对应的性能数据组;其中,每个候选面数对应的指定画面为:基于在预设场景中放置所具有面数的和值与该候选面数对应的各个预设模型确定的且所述顶点着色器待渲染的面数为该候选面数的画面;每个候选面数对应的性能数据组包括:所述顶点着色器的耗时、所述目标设备的帧率和所述顶点着色器的显卡使用率占比;
[0195]
目标耗时确定模块520,用于基于预设的基准帧率和各个性能数据组中所包括的最大显卡使用率占比,确定所述顶点着色器的目标耗时;
[0196]
数据组确定模块530,用于确定所包括的所述帧率不小于所述基准帧率,且所包括的耗时与所述目标耗时的差值小于预设差值阈值的各个目标性能数据组;
[0197]
目标面数确定模块540,用于基于各个目标性能数据组分别对应的各个候选面数中的最大面数和最小面数,确定所述目标设备的目标面数。
[0198]
以上可见,应用本发明实施例提供的方案,针对目标设备,可以通过在预先构建的
预设模型中放置各个预设模型,来制作多个候选面数分别对应的指定画面。其中,在相关技术中,通过设备的通用性能数据确定面数时,由于上述通用性能数据可能会受到渲染特效、应用程序执行逻辑顺序等多种因素的影响,所确定的面数的准确性较差,而在本技术提供的技术方案中,针对任意一种设备,该设备的顶点着色器的性能数据是不受其他因素影响、相对稳定的,从而,该所确定的面数的准确性较高;并且,在相关技术中,需要分别制作多个模型构建多个场景,之后,利用所构建的多个场景制作上述多个场景分别对应的多个画面,以及,在制作每个画面的过程中,对于在多个画面中出现的同一模型,需要多次重复制作该模型;而在本技术提供的技术方案中,只需预先构建一个预设场景,并且,各个预设模型仅需构建一次,便可以在制作多个指定画面时重复使用,从而,极大地减少了画面制作过程中所需构建的场景和模型的数量,缩短了画面的制作时长,进而,缩短了确定每种设备的面数所耗费的时间,提高了面数的确定效率。
[0199]
可选的,一种具体实现方式中,每个候选面数对应的指定画面为:通过在所述预设场景中放置所具有面数的和值为该候选面数的各个预设模型得到的画面;
[0200]
所述数据获取模块510,具体用于:
[0201]
针对预设的多个候选面数中的每个候选面数,获取在所述目标设备的顶点着色器按照所述指定次数渲染所述预设模型的每个面的过程中,所述目标设备的各个性能数据。
[0202]
可选的,一种具体实现方式中,每个候选面数对应的指定画面为:通过在所述预设场景中放置具有预设面数的预设模型得到的且所述预设模型的每个面的渲染次数为指定次数的画面;所述指定次数为:该候选面数与所述预设面数的比值;所述数据获取模块510,具体用于:
[0203]
针对预设的多个候选面数中的每个候选面数,获取在所述目标设备的顶点着色器按照所述指定次数渲染所述预设模型的每个面的过程中,所述目标设备的各个性能数据。
[0204]
可选的,一种具体实现方式中,所述装置还包括:
[0205]
画面确定模块,用于在所述数据获取模块之前,确定多个候选面数,并利用预设场景和各个预设模型,确定每个候选面数对应的指定画面。
[0206]
可选的,一种具体实现方式中,所述目标设备的数量为多个;所述装置还包括:
[0207]
确定模块,用于确定各个目标设备的目标面数中的最小值,以及各个目标设备的目标面数中的最大值;
[0208]
选取模块,用于按照关于面数间隔的预定选取规则,在所述最小值和所述最大值构成的面数范围内,选取各个基准面数;
[0209]
基准面数确定模块,用于将所述最大值、所述最小值和所述各个基准面数确定为关于所述各个目标设备的各个基准面数。
[0210]
可选的,一种具体实现方式中,所述选取模块,具体用于:
[0211]
按照预设步长,在所述最小值和所述最大值构成的面数范围内,选取各个标定面数。
[0212]
可选的,一种具体实现方式中,所述目标耗时确定模块520,具体用于:
[0213]
基于预设的基准帧率,计算渲染一帧画面所需要的基准耗时;
[0214]
计算所述基准耗时与所述显卡的预留性能的第一乘积;
[0215]
计算所述第一乘积与各个性能数据组中所包括的最大显卡使用率占比的第二乘
积,作为所述顶点着色器的目标耗时。
[0216]
本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
[0217]
存储器603,用于存放计算机程序;
[0218]
处理器601,用于执行存储器603上所存放的程序时,实现上述任一所述的面数确定方法。
[0219]
上述电子设备提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0220]
通信接口用于上述电子设备与其他设备之间的通信。
[0221]
存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0222]
上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0223]
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一面数确定方法的步骤。
[0224]
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一面数确定方法。
[0225]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
[0226]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存
在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0227]
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、电子设备实施例、计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0228]
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1