CN117237508A - 像素纹理值的加载方法、装置、设备及存储介质 - Google Patents
像素纹理值的加载方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117237508A CN117237508A CN202311027529.8A CN202311027529A CN117237508A CN 117237508 A CN117237508 A CN 117237508A CN 202311027529 A CN202311027529 A CN 202311027529A CN 117237508 A CN117237508 A CN 117237508A
- Authority
- CN
- China
- Prior art keywords
- pixel
- loading
- pixel texture
- texture values
- memory
- 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
- 238000011068 loading method Methods 0.000 title claims abstract description 136
- 238000000034 method Methods 0.000 claims abstract description 33
- 238000004590 computer program Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 abstract description 14
- 238000010586 diagram Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 7
- 238000011010 flushing procedure Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- 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
Abstract
本申请公开了一种像素纹理值的加载方法、装置、设备及存储介质,涉及图像处理技术领域。其中方法应用于图形处理器,包括:从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,其中内存中的中间帧图像被分割成多个预设尺寸的像素块;将第一像素块的像素纹理值存储在图形处理器中的缓存中。通过该方法可大大的降低了内存带宽和功耗。
Description
技术领域
本申请涉及图像处理技术领域,更具体地,涉及一种像素纹理值的加载方法、像素纹理值的加载装置、电子设备以及计算机可读存储介质。
背景技术
为了避免GPU场景渲染帧率不足而导致的VR显示延时增大问题,VR设备中的GPU在进行图像显示时一般都会对图像进行异步时间扭曲(Asynchronous Timewarp,ATW),即渲染中间帧图像。
目前,GUP在渲染中间帧图像时,需要首先从VR设备的内存中加载已生成的中间帧图像的纹理值,以存储在GPU上的缓存Texture Unit Cache上。GPU在对中间帧图像进行显示过程中,由于GPU中的片元着色器的执行时间是随机的,即GPU中的片元着色器从缓存中读取像素的纹理值是随机的,而这会导致如图1所示的在时序上相邻的时刻GPU读取纹理值的像素在空间上距离较远。其中,图1中的一个网格表示一个像素位置,“1”、“2”、“3”和“4”指的是像素对应的纹理值读取时序。
由于片元着色器的执行时间的随机性,因此GPU在读取某个像素的纹理值时,首先会检测该像素的纹理值是否被加载到Texture Unit Cache上。如果已经加载到TextureUnit Cache上,则直接读取该像素的纹理值。如果未加载到Texture Unit Cache上,则会产生Texture Unit Cache异常,此时,GPU则会清空Texture Unit Cache,重新加载该像素的纹理值以及该像素附近的像素的纹理值至Texture Unit Cache中。而这则会使得GPU对某些像素的纹理值进行反复的加载,从而导致VR设备的内存带宽和功耗大的问题。
发明内容
本申请的一个目的是提供一种用于加载像素纹理值的新技术方案。
根据本申请的第一方面,提供了一种像素纹理值的加载方法,应用于图形处理器,包括:
从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,其中所述内存中的中间帧图像被分割成多个预设尺寸的像素块;
将所述第一像素块的像素纹理值存储在图形处理器中的缓存中。
可选地,所述方法还包括:
在所述缓存中存在目标像素纹理值的情况下,从所述缓存中读取目标像素纹理值;
在所述缓存中不存在目标像素纹理值的情况下,清空所述缓存中的第一像素块的像素纹理值,以及重新从所述内存中按照加载顺序加载预设尺寸的第二像素块的像素纹理值,所述第二像素块为所述加载顺序中位于所述第一像素块的下一像素块;
将所述第二像素块的像素纹理值更新为第一像素块的像素纹理值。
可选地,所述方法在所述从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值之前,还包括:
获取所述中间帧图像的刷新顺序;
将所述加载顺序确定为所述刷新顺序。
可选地,所述方法在所述从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值之前,还包括:
获取所述图形处理器中的缓存的尺寸;
将所述预设尺寸设置为所述缓存的尺寸。
可选地,所述从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,包括:
检测是否开启像素块加载模式;
在开启的情况下,从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值。
可选地,所述从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,包括:
获取中间帧图像的像素纹理值在内存中的存储位置;
根据所述存储位置,从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值。
可选地,所述缓存为Texture Unit Cache。
根据本申请的第二方面,提供了一种像素纹理值的加载装置,应用于图形处理器,包括:
加载模块,用于从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,其中所述内存中的中间帧图像被分割成多个预设尺寸的像素块;
存储模块,用于将所述第一像素块的像素纹理值存储在图形处理器中的缓存中。
根据本申请的第三方面,提供了一种电子设备,所述电子设备包括如第二方面所述的像素纹理值的加载装置;或者,
所述电子设备包括存储器和图形处理器,其中,所述存储器用于存储计算机指令;
所述图形处理器用于从所述存储器中调用所述计算机指令,以执行如第一方面中任一项所述的像素纹理值的加载方法。
根据本申请的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实现根据第一方面中任一项所述的像素纹理值的加载方法。
本申请实施例提供了一种像素纹理值的加载方法,该方法应用于图形处理器,包括:从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,其中内存中的中间帧图像被分割成多个预设尺寸的像素块;将第一像素块的像素纹理值存储在图形处理器中的缓存中。在本申请实施例中,虽然GPU的片元着色器的执行时间是随机的,但是在相邻两个执行时序上,片元着色器从缓存中所读取的时序上相邻的两个像素的纹理值均可大概率的从第一像素块的像素纹理值中获取到。这可减少清空Texture Unit Cache和重新加载像素纹理值的操作,从而大大的降低了内存带宽和功耗。
通过以下参照附图对本申请的示例性实施例的详细描述,本申请的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本申请的实施例,并且连同其说明一起用于解释本申请的原理。
图1是传统技术中在时序上相邻的时刻GPU读取纹理值的像素的空间位置示意图;
图2是根据本申请实施例提供的一种实现像素纹理值的加载方法的电子设备的硬件配置的框图一;
图3是根据本申请实施例提供的一种实现像素纹理值的加载方法的流程示意图;
图4是根据本申请实施例提供的一种中间帧图像的像素块示意图;
图5是根据本申请实施例提供的一种GPU的结构示意图;
图6是根据本申请实施例提供的一种实现像素纹理值的加载装置的结构示意图;
图7是根据本申请实施例提供的一种实现像素纹理值的加载方法的电子设备的硬件配置的框图二。
具体实施方式
现在将参照附图来详细描述本申请的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本申请的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本申请及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图2是根据本申请实施例提供的一种实现像素的纹理值的加载方法的电子设备的硬件配置的框图一。
其中,电子设备2000示例性的为AR、MR、VR或XR等头戴设备。以及,头戴设备可以为分体式头戴设备,也可以为一体式头戴设备。对于分体式的头戴设备,具备头戴显示设备(例如AR眼镜或头盔等)以及相适配的控制设备,控制设备具体为头戴显示设备的数据处理单元。控制设备以及一体式头戴设备为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,当然还可以为其他可能的操作系统,对此本申请实施例不作具体限定。
电子设备2000可以包括处理器2100、存储器2200、接口装置2300、通信装置2400、显示装置2500、输入装置2600、扬声器2700、麦克风2800,等等。其中,处理器2100可以是中央处理器CPU、微处理器MCU等。存储器2200例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1300例如包括USB接口、耳机接口等。通信装置2400例如能够进行有线或无线通信。显示装置1500例如是液晶显示屏、触摸显示屏等。输入装置2600例如可以包括触摸屏、键盘等。用户可以通过扬声器2700和麦克风2800输入/输出语音信息。处理器2100例如可以为图像处理器。
尽管在图2中对电子设备1000均示出了多个装置,但是,本申请可以仅涉及其中的部分装置,例如,电子设备2000只涉及存储器2200、处理器2100以及显示装置2500。
应用于本申请的实施例中,电子设备2000的存储器2200用于存储指令,该指令用于控制处理器2100执行本申请实施例提供的像素的纹理值的加载方法。
在上述描述中,技术人员可以根据本申请所公开方案设计指令。指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。
本申请实施例提供了一种像素纹理值的加载方法,应用于图形处理器(GraphicsProcessing Unit,GPU)如图3所示,该方法包括如下S3100和S3200:
S3100、从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值。
其中,内存中的中间帧图像被分割成多个预设尺寸的像素块。
在本申请实施例中,中间帧图像的纹理值存储在电子设备的内存中。GPU中设置有GPU纹理处理单元。本申请实施例提供的像素纹理值的加载方法具体应用于GPU中所设置的GPU纹理处理单元。
如图4所示,将中间帧图像划分为多个像素块(Tile)。其中,图4中以中间帧图像划分为9个像素块,该9个像素块分别为Tile0、Tile1、Tile2、Tile3、Tile4、Tile5、Tile6、Tile7以及Tile8为例进行示出。
加载顺序为从内存中加载中间帧图像所划分的像素块的顺序。
预设尺寸指的是将中间帧图像所划分的块的大小。
以及,GPU一次从内存中加载一个预设尺寸的像素块,第一像素块指的是GPU当前所加载的像素块。
在本申请的一个实施例中,加载顺序可预先由开发人员进行提前指定。
在本申请的另一个实施例中,加载顺序还可根据中间帧图像的刷新顺序确定。基于此,本申请实施例提供的像素纹理值的加载方法在上述S3100之前还包括确定加载顺序的步骤。该步骤包括如下S3110和S3111:
S3110、获取中间帧图像的刷新顺序。
在本申请实施例中,中间帧图像的刷新顺序指的是,在对中间帧图像进行显示时,中间帧图像中像素的显示顺序。
在本申请的一个实施例中,中间帧图像的刷新顺序可以为从左至右、从右至左、从上至下以及从下至上中的任一个。对此本申请实施例不做限定。
S3111、将加载顺序确定为刷新顺序。
在本申请的一个实施例中,以刷新顺序为从左至右为例,上述S3111的具体实现为:确定加载顺序为从左至右。基于此,结合上述图4,像素块的加载顺序依次:Tile0、Tile1、Tile2、Tile3、Tile4、Tile5、Tile6、Tile7以及Tile8。
在本申请实施例中,通过将加载顺序确定为刷新顺序,这样可使得在对中间帧图像刷新时,能够更快的获取到中间帧图像的像素纹理值,进而实现对中间帧图像的更快刷新。
在本申请的一个实施例中,预设尺寸可预先由开发人员进行提前指定。需要说明的是,该预设尺寸只要小于或等于图形处理器中的缓存的尺寸即可。
在本申请的一个实施例中,预设尺寸还可通过图形处理器中的缓存的尺寸来确定。在此基础上,本申请实施例提供的像素纹理值的加载方法在上述S3100之前还包括确定预设尺寸的步骤。该步骤通过下述S3120和S3121:
S3120、获取图形处理器中的缓存的尺寸。
在本申请实施例中,如图5示GPU的结构,GPU中的设置有至少一个缓存L1 TextureCache(也称之为Texture Unit Cache)。该缓存具备有一定的尺寸。
S3121、将预设尺寸设置为缓存的尺寸。
在本申请实施例中,将预设尺寸设置为缓存的尺寸,这样,可避免缓存的浪费,以及一次可加载到最大数量的像素纹理值。
S3200、将第一像素块的像素纹理值存储在图形处理器中的缓存中。
在本申请的一个实施例中,图像处理器的缓存可示例性的为Texture UnitCache。
在本申请实施例中,在第一像素块的像素纹理值存储在图像处理器中的缓存中的基础上,虽然GPU的片元着色器的执行时间是随机的,但是在相邻两个执行时序上,片元着色器从缓存中所读取的时序上相邻的两个像素的纹理值均可大概率的从第一像素块的像素纹理值中获取到。这可减少清空Texture Unit Cache和重新加载像素纹理值的操作,从而大大的降低了内存带宽和功耗。
示例性的如图4所示,以相邻两个执行时序上,片元着色器从缓存中随机读取的两个像素纹理值分别为1和2为例,在此基础上,虽然像素纹理值1和像素纹理值2在空间上的距离较远,但是,由于像素纹理值1和像素纹理值2属于同一个第一像素块,因此,片元着色器从缓存中读取像素纹理值1之后,在读取像素纹理值2时,经检测像素纹理值2也属于第一像素块中的像素纹理值。在此基础上,则不会产生Texture Unit Cache异常,即不会进行清空Texture Unit Cache和重新加载像素纹理值2的操作。这大大的降低了内存带宽和功耗。
本申请实施例提供了一种像素纹理值的加载方法,该方法应用于图形处理器,包括:从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,其中内存中的中间帧图像被分割成多个预设尺寸的像素块;将第一像素块的像素纹理值存储在图形处理器中的缓存中。在本申请实施例中,虽然GPU的片元着色器的执行时间是随机的,但是在相邻两个执行时序上,片元着色器从缓存中所读取的时序上相邻的两个像素的纹理值均可大概率的从第一像素块的像素纹理值中获取到。这可减少清空Texture Unit Cache和重新加载像素纹理值的操作,从而大大的降低了内存带宽和功耗。
在本申请的一个实施例中,本申请实施例提供的像素纹理值的加载方法还包括如下S3300-S3500:
S3300、在缓存中存在目标像素纹理值的情况下,从缓存中读取目标像素纹理值。
在本申请实施例中,目标像素纹理值为GPU的元着色器当前要读取的像素纹理值。在缓存中存在目标像素纹理值的情况下,GPU的元着色器则直接对该目标像素纹理值进行读取。
对应于上述S3300,本申请实施例提供的像素纹理值的加载方法还包括如下S3400和S3500。
S3400、在缓存中不存在目标像素纹理值的情况下,清空缓存中的第一像素块的像素纹理值,以及重新从内存中按照加载顺序加载预设尺寸的第二像素块的像素纹理值。
其中,第二像素块为加载顺序中位于第一像素块的下一像素块。
在本申请实施例中,在缓存中不存在目标像素纹理值的情况下,则清空缓存中的第一像素块的像素纹理值。此时,重新从内存中加载加载顺序中位于第一像素块的下一像素块,即第二像素块,以使得缓存中加载到目标像素纹理值。
在一个示例中,如图4所示,在第一像素块为Tile2的情况下,第二像素块为Tile3。
S3500、将第二像素块的像素纹理值更新为第一像素块的像素纹理值。
在本申请实施例中,在第二像素块的像素纹理值加载到缓存中后,则将缓存中的第二像素块的像素纹理值记为第一像素块的像素纹理值。此时,继续执行上述S3200,将更新后的第一像素块的像素纹理值存储在图像处理器的缓存中。在此基础上,重复上述S3400和S3500,则可使得缓存中存在目标像素纹理值。
在本申请的一个实施例中,上述S3100可具体通过下述S3130和S3131来实现:
S3130、检测是否开启像素块加载模式。
在本申请实施例中,电子设备具备两种模式,具体为:像素块加载模式以及非像素块加载模式(即传统的像素纹理值的加载模式)。
以及,电子设备上设置有控制像素块加载模式开启和关闭的控件。在一个示例中,在该控件被选中的情况下,则确定开启像素块加载模式。对应的,在该控件未被选中的情况下,则确定不开启像素块加载模式。
S3131、在开启的情况下,从存储头中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值。
在本申请实施例中,在用户欲指示GPU执行本申请实施例提供的像素纹理值的加载方法时,则指示开启像素块加载模式。反之,则不指示开启像素块加载模式。
在本申请实施例中,在开启像素块加载模式的情况下,则触发上述S3100和S3200。这样,可使得本申请实施例提供的像素纹理值的加载方法满足用户的个性化需求。
在本申请的一个实施例中,上述S3100可具体通过下述S3140和S3141来实现:
S3140、获取中间帧图像的像素纹理值在内存中的存储位置。
S3141、根据存储位置,从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值。
在本申请实施例中,GPU在获取中间帧图像的像素纹理值时,首先需要获取中间帧图像的像素纹理值在内存中的存储位置。在确定存储位置后,根据该存储位置则可准确的在内存中获取到中间帧图像的像素纹理值。
通过上述S3140和S3141,提供了一种从存储有中间帧图像的像素纹理值的内存中,获取第一像素块的像素纹理值的方式。
本申请还提供了一种像素纹理值的加载装置600,应用于图形处理器,如图6所示,该像素纹理值的加载装置600包括:
加载模块610,用于从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,其中所述内存中的中间帧图像被分割成多个预设尺寸的像素块;
存储模块620,用于将所述第一像素块的像素纹理值存储在图形处理器中的缓存中。
本申请实施例提供了一种像素纹理值的加载装置,应用于图形处理器,该装置包括:加载模块,用于从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,其中内存中的中间帧图像被分割成多个预设尺寸的像素块;存储模块,用于将第一像素块的像素纹理值存储在图形处理器中的缓存中。在本申请实施例中,虽然GPU的片元着色器的执行时间是随机的,但是在相邻两个执行时序上,片元着色器从缓存中所读取的时序上相邻的两个像素的纹理值均可大概率的从第一像素块的像素纹理值中获取到。这可减少清空Texture Unit Cache和重新加载像素纹理值的操作,从而大大的降低了内存带宽和功耗。
在本申请的一个实施例中,本申请实施例提供的像素纹理值的加载装置600还包括:
读取模块,用于在所述缓存中存在目标像素纹理值的情况下,从所述缓存中读取目标像素纹理值;
清空模块,用于在所述缓存中不存在目标像素纹理值的情况下,清空所述缓存中的第一像素块的像素纹理值;
以及加载模块,还用于重新从所述内存中按照加载顺序加载预设尺寸的第二像素块的像素纹理值,所述第二像素块为所述加载顺序中位于所述第一像素块的下一像素块;
更新模块,用于将所述第二像素块的像素纹理值更新为第一像素块的像素纹理值。
在申请的一个实施例中,本申请实施例提供的像素纹理值的加载装置600还包括:
第一确定模块,用于获取所述中间帧图像的刷新顺序;
将所述加载顺序确定为所述刷新顺序。
在申请的一个实施例中,本申请实施例提供的像素纹理值的加载装置600还包括:
第二确定模块,用于获取所述图形处理器中的缓存的尺寸;
将所述预设尺寸设置为所述缓存的尺寸。
在申请的一个实施例中,加载模块610,具体用于检测是否开启像素块加载模式;
在开启的情况下,从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值。
在申请的一个实施例中,加载模块610,具体用于获取中间帧图像的像素纹理值在内存中的存储位置;
根据所述存储位置,从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值。
在申请的一个实施例中,所述缓存为Texture Unit Cache。
本申请实施例还提供了一种电子设备700,该电子设备700包括如上述装置实施例提供的任一项像素纹理值的加载装置600。
或者,如图7所示,该电子设备700包括存储器710和图形处理器720,其中,所述图形处理器720用于从所述存储器710中调用所述计算机指令,以执行如上述方法实施例中任一项所述的像素纹理值的加载方法。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实现根据上述方法实施例中任一项所述的像素纹理值的加载方法。
本申请可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本申请的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本申请操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本申请的各个方面。
这里参照根据本申请实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本申请的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本申请的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本申请的范围由所附权利要求来限定。
Claims (10)
1.一种像素纹理值的加载方法,其特征在于,应用于图形处理器,包括:
从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,其中所述内存中的中间帧图像被分割成多个预设尺寸的像素块;
将所述第一像素块的像素纹理值存储在图形处理器中的缓存中。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述缓存中存在目标像素纹理值的情况下,从所述缓存中读取目标像素纹理值;
在所述缓存中不存在目标像素纹理值的情况下,清空所述缓存中的第一像素块的像素纹理值,以及重新从所述内存中按照加载顺序加载预设尺寸的第二像素块的像素纹理值,所述第二像素块为所述加载顺序中位于所述第一像素块的下一像素块;
将所述第二像素块的像素纹理值更新为第一像素块的像素纹理值。
3.根据权利要求1所述的方法,其特征在于,所述方法在所述从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值之前,还包括:
获取所述中间帧图像的刷新顺序;
将所述加载顺序确定为所述刷新顺序。
4.根据权利要求1所述的方法,其特征在于,所述方法在所述从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值之前,还包括:
获取所述图形处理器中的缓存的尺寸;
将所述预设尺寸设置为所述缓存的尺寸。
5.根据权利要求1所述的方法,其特征在于,所述从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,包括:
检测是否开启像素块加载模式;
在开启的情况下,从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值。
6.根据权利要求1所述的方法,其特征在于,所述从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,包括:
获取中间帧图像的像素纹理值在内存中的存储位置;
根据所述存储位置,从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述缓存为Texture UnitCache。
8.一种像素纹理值的加载装置,其特征在于,应用于图形处理器,包括:
加载模块,用于从存储有中间帧图像的像素纹理值的内存中,按照加载顺序加载预设尺寸的第一像素块的像素纹理值,其中所述内存中的中间帧图像被分割成多个预设尺寸的像素块;
存储模块,用于将所述第一像素块的像素纹理值存储在图形处理器中的缓存中。
9.一种电子设备,其特征在于,所述电子设备包括如权利要求8所述的像素纹理值的加载装置;或者,
所述电子设备包括存储器和图形处理器,其中,所述存储器用于存储计算机指令;
所述图形处理器用于从所述存储器中调用所述计算机指令,以执行如权利要求1-7中任一项所述的像素纹理值的加载方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-7中任一项所述的像素纹理值的加载方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311027529.8A CN117237508A (zh) | 2023-08-15 | 2023-08-15 | 像素纹理值的加载方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311027529.8A CN117237508A (zh) | 2023-08-15 | 2023-08-15 | 像素纹理值的加载方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117237508A true CN117237508A (zh) | 2023-12-15 |
Family
ID=89081553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311027529.8A Pending CN117237508A (zh) | 2023-08-15 | 2023-08-15 | 像素纹理值的加载方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117237508A (zh) |
-
2023
- 2023-08-15 CN CN202311027529.8A patent/CN117237508A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI550548B (zh) | 於中段排序架構中利用訊框對訊框之同調性的技術 | |
KR102307163B1 (ko) | 크로스 플랫폼 렌더링 엔진 | |
CN111930442B (zh) | 页面视图的加载方法、装置、存储介质和电子设备 | |
US9558542B2 (en) | Method and device for image processing | |
US10978027B2 (en) | Electronic display partial image frame update systems and methods | |
KR20160141807A (ko) | 적응형 사용자 인터페이스 창 관리자 | |
JP2018163678A (ja) | 選択的ラスタライゼーション | |
US11467717B2 (en) | Optimizing window resize actions for remoted applications | |
CN110750664B (zh) | 图片的显示方法及装置 | |
US11190653B2 (en) | Techniques for capturing an image within the context of a document | |
CN110308836B (zh) | 一种数据处理方法、装置、终端及存储介质 | |
CN110782387A (zh) | 图像处理方法、装置、图像处理器及电子设备 | |
US20230224554A1 (en) | Method and apparatus for wire formats for segmented media metadata for parallel processing in a cloud platform | |
CN111199569A (zh) | 数据处理的方法、装置、电子设备及计算机可读介质 | |
CN117237508A (zh) | 像素纹理值的加载方法、装置、设备及存储介质 | |
CN112005209B (zh) | 用于以原子方式呈现覆盖多个显示器的单个缓冲器的机制 | |
CN108449625B (zh) | 视频截图方法、装置及终端 | |
US9972064B1 (en) | Non-intrusive and low-power recording | |
US10186237B2 (en) | Glyph-mask render buffer | |
CN117237499A (zh) | 图像渲染方法、装置、设备及存储介质 | |
CN114359081A (zh) | 液体材质溶解方法、装置、电子设备及存储介质 | |
CN117764808A (zh) | Gpu的数据处理方法、装置及存储介质 | |
CN111159593A (zh) | 流程图的生成方法、装置、存储介质和电子设备 | |
CN117148966A (zh) | 控制方法、装置、头戴显示设备及介质 | |
CN112445318A (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 |