CN108780583A - 纹理映射装置和纹理映射程序 - Google Patents
纹理映射装置和纹理映射程序 Download PDFInfo
- Publication number
- CN108780583A CN108780583A CN201680083208.1A CN201680083208A CN108780583A CN 108780583 A CN108780583 A CN 108780583A CN 201680083208 A CN201680083208 A CN 201680083208A CN 108780583 A CN108780583 A CN 108780583A
- Authority
- CN
- China
- Prior art keywords
- texture
- atlas
- image
- information
- map information
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
Abstract
第1存储器(902)是存储纹理图像组(130)的主存储器。第2存储器(912)是存储配置有从纹理图像组复制的1个以上的纹理图像的第1纹理图集(170)和新生成的第2纹理图集(170)的VRAM。纹理复制部(119)将配置在第1纹理图集的至少任意一个纹理图像从第1纹理图集复制到第2纹理图集。
Description
技术领域
本发明涉及纹理映射。
背景技术
在计算机图形中,作为描绘内容的图元(primitive)而多使用多边形。另外,在一般情况下,为了表现描绘内容的质感,将被称作纹理(texture)的二维图像映射到多边形。
在将纹理映射到多边形的情况下,在指定要映射的纹理之后描绘多边形。另外,已知变更纹理的处理需要花费时间。因此,在将彼此不同的纹理映射到多个多边形时,处理时间变长。
作为解决该课题的手法,已知准备结合多个纹理而成的纹理图集,将纹理图集中包含的各个纹理映射到多边形的手法。通过该手法,能够将彼此不同的纹理快速地映射到多个多边形。
专利文献1公开有动态地快速且低负荷地生成纹理图集的方法。
但是,在纹理未完全进入到纹理图集的情况下,需要废弃纹理图集而生成新的纹理图集。并且,需要将废弃的纹理图集中包含的纹理中尚在使用的纹理,复制到新的纹理图集。纹理的复制意味着从主存储器向VRAM复制数据,这样的复制一般情况下需要花费时间。
另外,描绘处理往往在段数较多的流水线中执行,但是,在废弃纹理图集而生成新的纹理图集时,需要停止流水线。因此,导致描绘速度下降。
现有技术文献
专利文献
专利文献1:日本特开2013-206094号公报
发明内容
发明要解决的课题
本发明的目的在于,抑制纹理映射中的描绘速度的下降。
用于解决课题的手段
本发明的纹理映射装置具有:
第1存储部,其存储1个以上的纹理图像即纹理图像组;
第2存储部,其存储配置有从所述纹理图像组复制的1个以上的纹理图像的第1纹理图集和新生成的第2纹理图集;以及
纹理复制部,其将配置在所述第1纹理图集的至少任意一个纹理图像从所述第1纹理图集复制到所述第2纹理图集。
发明效果
根据本发明,在第2存储部内从第1纹理图集向第2纹理图集复制纹理图像。
其结果是,从第1存储部内的纹理图像组复制到第2存储部内的第2纹理图集的纹理图像减少。
因此,在存储部之间进行的纹理图像的复制减少,因此能够抑制描绘速度的下降。
附图说明
图1是实施方式1中的纹理映射装置100的结构图。
图2是实施方式1中的纹理映射方法的流程图。
图3是实施方式1中的纹理图集生成处理(S110)的流程图。
图4是表示实施方式1中的第1配置信息表140的图。
图5是表示实施方式1中的第1纹理图集170的图。
图6是实施方式1中的纹理映射处理(S120)的流程图。
图7是表示实施方式1中的第1映射信息数据150的图。
图8是实施方式1中的纹理图像131与纹理132的关系图。
图9是表示实施方式1中的第2映射信息数据150的图。
图10是表示实施方式1中的多边形图像160的图。
图11是实施方式1中的纹理复制处理(S130)的流程图。
图12是表示实施方式1中的第2配置信息表140的图。
图13是表示实施方式1中的第3映射信息数据150的图。
图14是表示实施方式1中的第2纹理图集170的图。
图15是实施方式中的纹理映射装置100的硬件结构图。
具体实施方式
实施方式1
根据图1~图14,对纹理映射装置100进行说明。
***结构的说明***
根据图1,对纹理映射装置100的结构进行说明。
纹理映射装置100是具备第1处理器901、第1存储器902、辅助存储装置903、第2处理器911、第2存储器912和显示器908这样的硬件的计算机。
第1处理器901经由信号线而与第1存储器902、辅助存储装置903和第2处理器911连接。
第2处理器911经由信号线而与第1处理器901、第2存储器912和显示器908连接。
第1处理器901和第2处理器911是进行处理的IC(Integrated Circuit:集成电路),对其他的硬件进行控制。具体地,第1处理器901是CPU,第2处理器911是GPU。CPU是Central Processing Unit(中央处理单元)的简称,GPU是Graphics Processing Unit(图形处理单元)的简称。
第1存储器902和第2存储器912是易失性的存储装置。具体地,第1存储器902是主存储器,第2存储器912是VRAM(Video RAM:视频RAM)。RAM是Random Access Memory(随机存取存储器)的简称。
辅助存储装置903是非易失性的存储装置。具体地,辅助存储装置903是ROM、HDD或闪存。ROM是Read Only Memory(只读存储器)的简称,HDD是Hard Disk Drive(硬盘驱动器)的简称。
显示器908是显示数据的显示装置。具体地,显示器908是液晶显示器。
纹理映射装置100作为功能结构的要素而具备应用部110、受理部111、纹理图集生成部112、信息变换部113、纹理复制部119和描绘部121这样的“部”。“部”的功能由软件来实现。“部”的功能容后再述。
在辅助存储装置903中存储有实现“部”的功能的程序。实现“部”的功能的程序被加载到第1存储器902和第2存储器912,由第1处理器901和第2处理器911执行。
进而,辅助存储装置903中存储有OS(Operating System:操作系统)。OS的至少一部分被加载到第1存储器902,由第1处理器901执行。
即,第1处理器901一边执行OS,一边执行实现“部”的功能的程序。
执行实现“部”的功能的程序而得到的数据存储于存储器(902、912)、辅助存储装置903、处理器(901、911)内的寄存器或处理器(901、911)内的快速缓冲存储器这样的存储装置。这些存储装置作为存储数据的存储部而发挥功能。第1存储器902作为第1存储部191而发挥功能,第2存储器912作为第2存储部192而发挥功能。
第1存储器902和第2存储器912存储在纹理映射装置100中使用、生成、输入输出或接收发送的数据。
具体地,第1存储器902存储纹理图像组130、配置信息表140和映射信息数据150等。另外,第2存储器912存储多边形图像160和纹理图集170等。存储于第1存储器902和第2存储器912的数据的内容容后再述。
显示器908作为显示数据的显示部193而发挥功能。
将汇集第1处理器901、第1存储器902和辅助存储装置903而成的硬件以及汇集第2处理器911和第2存储器912而成的硬件称作“处理电路系统”。
“部”可以改写成“处理”或“工序”。也可以由固件来实现“部”的功能。
能够将实现“部”的功能的程序存储到磁盘、光盘或闪存等非易失性的存储介质。
***动作的说明***
纹理映射装置100的动作相当于纹理映射方法。另外,纹理映射方法的过程相当于纹理映射程序的过程。
根据图2,对纹理映射方法进行说明。
在步骤S101中,应用部110输出追加图像组或映射信息数据150。
应用部110具备执行用于进行对多边形图像160的图像处理的应用程序的功能。
多边形图像160是包含描绘纹理132的多边形161的图像,由显示部193显示。
追加图像组是1个以上的纹理图像131。
纹理图像131是包含1个以上的纹理的图像。
映射信息数据150是包含1个以上的映射信息151的数据。
映射信息151包含多边形信息152、纹理图像标识符153和纹理信息154。
多边形信息152是确定多边形图像160中的作为描绘对象的多边形161所在的部分的信息。
纹理图像标识符153是标识包含作为描绘对象的纹理132的纹理图像131的标识符。
纹理信息154是确定包含由纹理图像标识符153标识的纹理图像131中的作为描绘对象的纹理132的部分的信息。
受理部111受理从应用部110输出的追加图像组或映射信息数据150。
在受理了追加图像组的情况下,第1存储部191将追加图像组追加到纹理图像组130,处理进入步骤S110。
在受理了映射信息数据150的情况下,第1存储部191存储映射信息数据150,处理进入步骤S120。
步骤S110是纹理图集生成处理。
在步骤S110中,纹理图集生成部112将受理的追加图像组配置到第1纹理图集170。
第1纹理图集170是使用中的纹理图集170,是配置有1个以上的纹理图像131的纹理图集170。
纹理图集生成处理(S110)的具体情况容后再述。
步骤S120是纹理映射处理。
在步骤S120中,描绘部121利用受理的映射信息数据150,在多边形图像160内的作为描绘对象的多边形161描绘作为描绘对象的纹理132。
纹理映射处理(S120)的具体情况容后再述。
根据图3,对纹理图集生成处理(S110)的过程进行说明。
在步骤S111中,纹理图集生成部112判定在第1纹理图集170中是否存在所需的空闲区域。所需的空闲区域是为了配置受理的追加图像组而所需的空闲区域。受理的追加图像组是在步骤S101中受理的追加图像组。
具体地,纹理图集生成部112以如下方式判定有无所需的空闲区域。
首先,纹理图集生成部112利用第1配置信息表140而数出配置个数。第1配置信息表140是与第1纹理图集170对应的配置信息表140。配置个数是配置在第1纹理图集170的纹理图像131的个数。配置信息表140的内容容后再述。
接着,纹理图集生成部112利用最大个数和配置个数而计算空闲个数。空闲个数是最大个数减去配置个数而得到的个数。最大个数是可配置在空的纹理图集170的纹理图像131的个数。
然后,纹理图集生成部112将追加图像数与空闲个数进行比较。追加图像数是受理的追加图像组中包含的纹理图像131的个数。
在纹理图像131的个数多于空闲个数的情况下,不存在所需的空闲区域。
在存在所需的空闲区域的情况下,处理进入步骤S112。
在不存在所需的空闲区域的情况下,处理进入步骤S130。
步骤S130是纹理复制处理(S130)。
在步骤S130中,纹理复制部119生成第2纹理图集170,将第1纹理图集170内的纹理图像131复制到第2纹理图集170。
第2纹理图集170是新的纹理图集170。
在将第1纹理图集170内的纹理图像131复制到第2纹理图集170之后,删除第1纹理图集170,将第2纹理图集170作为第1纹理图集170使用。
纹理复制处理(S130)的具体情况容后再述。
在步骤S112中,纹理图集生成部112从受理的追加图像组选择1个未选择的纹理图像131。
在步骤S113中,纹理图集生成部112判定是否已将选择出的纹理图像131配置到第1纹理图集170。
利用第1配置信息表140进行该判定。
根据图4,对第1配置信息表140进行说明。
第1配置信息表140是用于按照配置于第1纹理图集170的每个纹理图像131管理配置有纹理图像131的部分的表。
第1配置信息表140包含配置于第1纹理图集170的每个纹理图像131的配置信息141。
配置信息141包含纹理图像标识符、纹理图集标识符和范围信息。
纹理图像标识符标识纹理图像131。
纹理图集标识符标识第1纹理图集170。
范围信息是确定配置有纹理图像131的部分的信息。具体地,范围信息包含纹理图像131的左上顶点所在的部位的坐标值(U,V)、纹理图像131的宽度(W)和纹理图像131的高度(H)。
图5表示与图4的第1配置信息表140对应的第1纹理图集170。
由“T100”这样的标识符标识第1纹理图集170。第1纹理图集170的大小为40×40像素。
在第1纹理图集170中配置有由“T0”这样的标识符标识的纹理图像131、由“T1”这样的标识符标识的纹理图像131和由“T2”这样的标识符标识的纹理图像131。各个纹理图像131的大小为10×10像素。
返回到图3,继续对步骤S113进行说明。
具体地,纹理图集生成部112以如下方式进行判定。
纹理图集生成部112判定与选择出的纹理图像131的标识符相同的纹理图像标识符是否已登记在第1配置信息表140。假设纹理图像131的标识符已附加到纹理图像131。
在该纹理图像标识符已登记在第1配置信息表140的情况下,选择出的纹理图像131已配置到第1纹理图集170。
在选择出的纹理图像131已配置到第1纹理图集170的情况下,处理进入步骤S116。
在选择出的纹理图像131没有配置到第1纹理图集170的情况下,处理进入步骤S114。
在步骤S114中,纹理图集生成部112将选择出的纹理图像131配置到第1纹理图集170。
具体地,纹理图集生成部112以如下方式进行动作。
首先,纹理图集生成部112参照第1配置信息表140,从第1纹理图集170的空闲区域决定配置范围。所决定的配置范围是配置选择出的纹理图像131的部分。能够通过用于解决二维装箱问题的算法来决定配置范围。
并且,纹理图集生成部112将选择出的纹理图像131和范围信息转交给描绘部121。转交的范围信息是表示所决定的配置范围的信息。
然后,描绘部121在第1纹理图集170中的已转交的范围信息所示的部分描绘已转交的纹理图像131。
由此,将选择出的纹理图像131配置到第1纹理图集170。
在步骤S115中,纹理图集生成部112将与选择出的纹理图像131对应的配置信息141追加到第1配置信息表140。
具体地,纹理图集生成部112以如下方式进行动作。
首先,纹理图集生成部112生成包含纹理图像标识符、纹理图集标识符和范围信息的配置信息141。
纹理图像标识符是选择出的纹理图像131的标识符。
纹理图集标识符是第1纹理图集170的标识符。
范围信息是转交给描绘部121的范围信息。
然后,纹理图集生成部112将生成的配置信息141追加到第1配置信息表140。
在步骤S116中,纹理图集生成部112判定在受理的追加图像组中是否存在未选择的纹理图像131。
在存在未选择的纹理图像131的情况下,处理返回到步骤S112。
在不存在未选择的纹理图像131的情况下,结束纹理图集生成处理(S110)。
根据图6,对纹理映射处理(S120)的过程进行说明。
在步骤S121中,信息变换部113从第1映射信息数据150选择1个未选择的第1映射信息151。
第1映射信息数据150是在步骤S101中受理的映射信息数据150。
第1映射信息151是第1映射信息数据150中包含的映射信息151。
根据图7,对第1映射信息数据150进行说明。
第1映射信息数据150包含1个以上的映射信息151。
第1映射信息151包含多边形信息152、纹理图像标识符153和纹理信息154。
多边形信息152包含多边形标识符和多边形坐标,纹理信息154包含纹理坐标值。
多边形标识符标识多边形161。
多边形坐标值是多边形161具有的每个顶点的坐标值。在多边形161的形状为三角形的情况下,多边形坐标值为3组坐标值。
纹理图像标识符153标识纹理图像131。
纹理坐标值是纹理132具有的每个顶点的坐标值。在纹理132的形状为三角形的情况下,纹理坐标值为3组坐标值。
根据图8,对纹理图像131与纹理132的关系进行说明。
纹理图像131包含1个以上的纹理132。具体地,四边形的纹理图像131包含2个三角形的纹理132。
在图8中,“T0”的纹理图像131、“T1”的纹理图像131和“T2”的纹理图像131分别为四边形的纹理图像131。各个纹理图像131包含2个三角形的纹理132。
返回到图6,从步骤S122起继续进行说明。
在步骤S122中,信息变换部113判定与选择出的第1映射信息151对应的纹理图像131是否已配置到第1纹理图集170。与选择出的第1映射信息151对应的纹理图像131是由选择出的第1映射信息151中包含的纹理图像标识符153标识的纹理图像131。
具体地,信息变换部113判定与选择出的第1映射信息151中包含的纹理图像标识符153相同的纹理图像标识符153是否已登记在第1配置信息表140。在该纹理图像标识符153已登记在第1配置信息表140的情况下,与选择出的第1映射信息151对应的纹理图像131已配置到第1纹理图集170。
在与选择出的第1映射信息151对应的纹理图像131已配置到第1纹理图集170的情况下,处理进入步骤S124。
在与选择出的第1映射信息151对应的纹理图像131没有已配置到第1纹理图集170的情况下,处理进入步骤S123。
在步骤S123中,纹理图集生成部112将与选择出的第1映射信息151对应的纹理图像131配置到第1纹理图集170。
具体地,纹理图集生成部112执行根据图3而说明的纹理图集生成处理(S110)。但是,纹理图集生成处理(S110)的对象并不是在S101中受理的追加图像组,而是与在步骤S121中选择出的第1映射信息151对应的纹理图像131。
在步骤S124中,信息变换部113生成与选择出的第1映射信息151对应的第2映射信息151。
第2映射信息151与选择出的第1映射信息151相同地包含多边形信息152、纹理图像标识符153和纹理信息154。
第2映射信息151中包含的多边形信息152与选择出的第1映射信息151中包含的多边形信息152相同。
第2映射信息151中包含的纹理图像标识符153是标识第1纹理图集170的标识符。
第2映射信息151中包含的纹理信息154,是确定第1纹理图集170中的配置有与选择出的第1映射信息151中包含的纹理信息154对应的纹理132的部分的信息。与纹理信息154对应的纹理132是由纹理图像标识符153标识的纹理图像131中的位于由纹理信息154确定的部分的纹理132。
具体地,信息变换部113通过改变选择出的第1映射信息151中的纹理图像标识符153和纹理信息154来生成第2映射信息151。
作为纹理信息154的纹理坐标值(U,V)以如下方式发生变化。
首先,信息变换部113从选择出的第1映射信息151取得纹理图像标识符。
接着,信息变换部113从第1配置信息表140选择包含与所取得的纹理图像标识符153相同的纹理图像标识符的配置信息141。
接着,信息变换部113从选择出的配置信息141中包含的范围信息取得坐标值(U,V)。
然后,信息变换部113将所取得的坐标值(U,V)与选择出的第1映射信息151中包含的纹理坐标值(U,V)相加。
图9表示与图7的第1映射信息数据150和图4的第1配置信息表140对应的第2映射信息数据150。
在图7的第1映射信息数据150中,与纹理图像标识符“T0”对应的多边形标识符是“A”和“B”。在图4的第1配置信息表140中,与纹理图像标识符“T0”对应的坐标值(U,V)为(0,0)。因此,在图9的第2映射信息数据150中,与多边形标识符“A”“B”对应的纹理坐标值(U,V)与图7的第1映射信息数据150中的纹理坐标值(U,V)相同。
在图7的第1映射信息数据150中,与纹理图像标识符“T1”对应的多边形标识符为“C”和“D”。在图4的第1配置信息表140中,与纹理图像标识符“T1”对应的坐标值(U,V)为(10,0)。因此,在图9的第2映射信息数据150中,与多边形标识符“C”“D”对应的纹理坐标值(U,V)是图7的第1映射信息数据150中的纹理坐标值(U,V)加上(10,0)而得到的值。
在图7的第1映射信息数据150中,与纹理图像标识符“T2”对应的多边形标识符为“E”和“F”。在图4的第1配置信息表140中,与纹理图像标识符“T2”对应的坐标值(U,V)为(20,0)。因此,在图9的第2映射信息数据150中,与多边形标识符“E”“F”对应的纹理坐标值(U,V)是图7的第1映射信息数据150中的纹理坐标值(U,V)加上(20,0)而得到的值。
返回到图6,继续对步骤S124进行说明。
信息变换部113将第2映射信息151转交给描绘部121。
在步骤S125中,第2映射信息151中包含的纹理图像标识符153标识第1纹理图集170。
因此,描绘部121从第1纹理图集170复制配置于由第2映射信息151中包含的纹理信息154确定的部分的纹理132。
接着,描绘部121从多边形图像160选择位于由第2映射信息151中包含的多边形信息152确定的部分的多边形161。
并且,描绘部121将从第1纹理图集170复制的纹理132描绘到从多边形图像160选择出的多边形161。
在步骤S126中,信息变换部113判定在第1映射信息数据150中是否存在未选择的第1映射信息151。
在存在未选择的第1映射信息151的情况下,处理返回到步骤S121。
在不存在未选择的第1映射信息151的情况下,结束纹理映射处理(S120)。
图10表示与图9的第2映射信息数据150对应的多边形图像160。该多边形图像160的大小为50×40像素。
在图10的多边形图像160中,在与图9的第2映射信息数据150内的多边形信息152对应的多边形161,描绘与图9的第2映射信息数据150内的纹理信息154对应的纹理图像131。
根据图11,对纹理复制处理(S130)的过程进行说明。
在步骤S131中,纹理复制部119生成第2纹理图集170。
具体地,纹理复制部119请求第2处理器911确保第2纹理图集170用的存储区域,第2处理器911在第2存储部192确保第2纹理图集170用的存储区域。
在步骤S132中,纹理复制部119生成第2配置信息表140。
第2配置信息表140是与第2纹理图集170对应的配置信息表140。
具体地,纹理复制部119在第1存储部191确保第2配置信息表140用的存储区域。
在步骤S133中,纹理复制部119选择对象图像组。
对象图像组是作为从第1纹理图集170复制到第2纹理图集170的对象的1个以上的纹理图像131。
具体地,应用部110确定描绘所需的纹理图像组。然后,纹理复制部119从确定的纹理图像组选择配置于第1纹理图集170的1个以上的纹理图像131作为对象图像组。
在步骤S134中,纹理复制部119从对象图像组选择1个未选择的纹理图像131。
在步骤S135中,纹理复制部119将与选择出的纹理图像131对应的配置信息141追加到第2配置信息表140。
具体地,纹理复制部119以如下方式进行动作。
首先,纹理复制部119参照第2配置信息表140,从第2纹理图集170的空闲区域决定配置范围。所决定的配置范围是配置选择出的纹理图像131的部分。与步骤S114相同地,能够通过用于解决二维装箱问题的算法来决定配置范围。
接着,纹理复制部119生成包含纹理图像标识符、纹理图集标识符和范围信息的配置信息141。
纹理图像标识符是选择出的纹理图像131的标识符。
纹理图集标识符是第2纹理图集170的标识符。
范围信息是表示所决定的配置范围的信息。
然后,纹理复制部119将生成的配置信息141追加到第2配置信息表140。
图12表示“T0”的纹理图像131和“T2”的纹理图像131为对象图像组时的第2配置信息表140。
图12的第2配置信息表140具有包含纹理图像标识符“T0”的配置信息141和包含纹理图像标识符“T2”的配置信息141。
在步骤S136中,纹理复制部119生成第3映射信息151。
第3映射信息151是与选择出的纹理图像131对应的映射信息151。
第3映射信息151与第1映射信息151和第2映射信息151相同地包含多边形信息152、纹理图像标识符153和纹理信息154。
第3映射信息151中包含的多边形信息152是确定第2纹理图集170中的一部分的信息。
第3映射信息151中包含的纹理图像标识符153是标识第1纹理图集170的标识符。
第3映射信息151中包含的纹理信息154是确定第1纹理图集170中的配置有与第1映射信息151中包含的纹理信息154对应的纹理132的部分的信息。
具体地,纹理复制部119利用第1配置信息表140和第2配置信息表140生成第3映射信息151。
在纹理图像131的形状为四边形,纹理132的形状为三角形的情况下,纹理复制部119生成2个第3映射信息151。
图13表示与图12的第2配置信息表140和图4的第1配置信息表140对应的第3映射信息数据150。
多边形信息152中包含的多边形标识符为任意的标识符。
以如下方式计算多边形信息152中包含的多边形坐标值。
首先,纹理复制部119利用第2配置信息表140内的配置信息141中包含的范围信息计算4个坐标值。该4个坐标值为配置范围所成的四边形的每个顶点的坐标值。在范围信息(U,V,W,H)为(0,0,10,10)的情况下,4个坐标值为(0,0)、(10,0)、(0,10)、(10,10)。
然后,纹理复制部119利用4个坐标值选择2组3个坐标值。2组3个坐标值是构成配置范围所成的四边形的2个三角形各自的每个顶点的坐标值。在上述的情况下,选择(0,0)、(10,0)、(0,10)的组和(10,0)、(0,10)、(10,10)的组。
选择出的3个坐标值成为多边形坐标值。
纹理图像标识符153是第2纹理图集170的标识符。
利用第1配置信息表140内的配置信息141中包含的范围信息计算作为纹理信息154的纹理坐标值。计算方法与计算多边形坐标值的方法相同。
返回到图11,继续对步骤S136进行说明。
纹理复制部119将第3映射信息151转交给描绘部121。
在步骤S137中,按照从纹理复制部119转交给描绘部121的每个第3映射信息151,描绘部121以如下方式进行动作。
第3映射信息151中包含的纹理图像标识符153标识第1纹理图集170。
因此,描绘部121从第1纹理图集170复制配置于由第3映射信息151中包含的纹理信息154确定的部分的纹理132。
接着,描绘部121从第2纹理图集170选择由第3映射信息151中包含的多边形信息152确定的部分。
然后,描绘部121将从第1纹理图集170复制的纹理132描绘到从第2纹理图集170选择出的部分。
在步骤S138中,纹理复制部119判定在对象图像组中是否存在未选择的纹理图像131。
在存在未选择的纹理图像131的情况下,处理返回到步骤S134。
在不存在未选择的纹理图像131的情况下,处理进入步骤S139。
在步骤S139中,纹理复制部119从第1存储部191删除第1纹理图集170和第1配置信息表140。
以后,将第2纹理图集170用作第1纹理图集170,将第2配置信息表140用作第1配置信息表140。
图14表示与图13的第3映射信息数据150对应的第3纹理图集170。
在图14的第3纹理图集170中,在与图13的第3映射信息数据150内的多边形信息152对应的部分,描绘与图13的第3映射信息数据150内的纹理信息154对应的纹理图像131。
***实施方式1的效果***
纹理图像组130被存储到作为第1存储部191发挥功能的第1存储器902。第1存储器902具体为主存储器。
纹理图集170被存储到作为第2存储部192发挥功能的第2存储器912。第2存储器912具体为VRAM。
在VRAM内复制数据所需的时间比从主存储器到VRAM复制数据所需的时间短。
因此,纹理映射装置100在生成新的纹理图集170时,将旧的纹理图集170内的一部分纹理图像131复制到新的纹理图集170。
其结果是,从主存储器内的纹理图像组130复制到VRAM内的新的纹理图集170的纹理图像131变少。
由此,能够抑制描绘多边形图像160的速度下降。
***其他的结构***
纹理图像131的形状也可以是四边形以外的形状。
纹理图像131中包含的纹理132的数量也可以是1个或3个以上。
纹理132和多边形161的形状也可以是三角形以外的形状。
决定配置纹理图像131的配置范围的方法是任意的。即,也可以通过与用于解决二维装箱问题的算法不同的算法来决定配置范围。
生成新的纹理图集170即第2纹理图集170的时机是任意的。
即,也可以在旧的纹理图集170即第1纹理图集170内的空闲区域不足时以外的时机生成新的纹理图集170。
具体地,可以定期地生成新的纹理图集170。通过定期地生成新的纹理图集170,能够从纹理图集170中排除不需要的纹理图像131。
也可以选择重要度高的纹理图像131,作为成为从旧的纹理图集170(第1纹理图集)复制到新的纹理图集170(第2纹理图集)的对象的纹理图像131。
具体地,可以选择使用频率高的纹理图像131。
以如下方式判定使用频率高的纹理图像131。
应用部110利用使用次数表数出每个纹理图像131的使用次数。使用次数表是将纹理图像标识符与使用次数彼此对应起来的表,存储于第1存储部191。
具体地,应用部110在输出映射信息数据150时,从使用次数表选择跟与映射信息数据150中包含的纹理图像标识符153相同的标识符对应起来的使用次数。并且,应用部110对选择出的使用次数加上1。
纹理复制部119使用使用次数表计算每个纹理图像131的使用频率。使用频率是使用次数相对于使用次数总和的比例。
然后,纹理复制部119将每个纹理图像131的使用频率与频率阈值进行比较。
使用频率比频率阈值高的纹理图像131为使用频率高的纹理图像131。
另外,也可以选择使用可能性高的纹理图像131。在显示包含按钮的菜单画面的情况下,使用可能性高的纹理图像131为表示按钮的纹理图像131。
以如下方式判定使用可能性高的纹理图像131。
第1存储部191存储预测值表。预测值表是纹理图像标识符与预测值彼此对应起来的表。预测值是表示使用可能性高低的值。
纹理复制部119将每个纹理图像131的预测值与预测阈值进行比较。
预测值比预测阈值高的纹理图像131为使用可能性高的纹理图像131。
描绘中使用的纹理图集170(第1纹理图集)也可以是2个以上。在该情况下,在生成新的纹理图集170(第2纹理图集)时,选择要废弃的纹理图集170。然后,纹理复制部119从选择出的纹理图集170向新的纹理图集170复制纹理图像131,废弃选择出的纹理图集170。
选择要废弃的纹理图集170的方法是任意的。
具体地,可以选择偏旧的纹理图集170。
另外,也可以选择使用频率高的纹理图像131较少的纹理图集170。如上所述,利用频率阈值判定使用频率高的纹理图像131。纹理复制部119按照每个纹理图集170计算使用频率比频率阈值高的纹理图像131的数量,选择计算出的数量较少的纹理图集170。
另外,也可以选择使用可能性低的纹理图像131较多的纹理图集170。利用上述的预测值和预测阈值判定使用可能性低的纹理图像131。预测值比预测阈值低的纹理图像131为使用可能性低的纹理图像131。纹理复制部119按照每个纹理图集170计算预测值比预测阈值低的纹理图像131的数量,选择计算出的数量较多的纹理图集170。
在描绘中使用的纹理图集170的张数可以动态地变更。具体地,可以根据VRAM的存储器使用量调整纹理图集170的张数。在该情况下,存储器使用量越多,纹理图集170的张数越少。
新的纹理图集170也可以是与旧的纹理图集170不同的大小。
具体地,可以根据VRAM的存储器使用量而调整新的纹理图集170的大小。在该情况下,存储器使用量越多,新的纹理图集170越少。
新的纹理图集170和旧的纹理图集170也可以配置在1个图像内。在该情况下,1个图像被分成2个区域,在1个区域配置新的纹理图集170,在另1个区域配置旧的纹理图集170。由此,当将在描绘中使用的纹理图集170从旧的纹理图集170切换成新的纹理图集170时,不需要切换纹理图集170用的图像。其结果是,可缩短切换纹理图集170所需的时间。
也可以在纹理图集170内再次配置纹理图像131。具体地,在纹理图集170的填充率变高的情况下,在配置有使用频率低的纹理图像131的部分配置其他的纹理图像131。由此,能够抑制纹理图集170的填充率。填充率是指配置有纹理图像131的部分的比例。
***实施方式的补充***
在实施方式中,纹理映射装置100的功能也可以由硬件实现。
图15表示由硬件实现纹理映射装置100的功能时的结构。
纹理映射装置100具备第1处理电路991和第2处理电路992。第1处理电路991和第2处理电路992还称作处理电路系统。
第1处理电路991是实现应用部110、受理部111、纹理图集生成部112、信息变换部113、纹理复制部119和第1存储部191这样的“部”的功能的专用电子电路。
第2处理电路992是实现描绘部121和第2存储部192这样的“部”的功能的专用电子电路。
具体地,第1处理电路991和第2处理电路992是单一电路、复合电路、程序化的处理器、并行程序化的处理器、逻辑IC、GA、ASIC、FPGA或它们的组合。GA是Gate Array(门阵列)的简称,ASIC是Application Specific Integrated Circuit(面向特定用途的集成电路)的简称,FPGA是Field Programmable Gate Array(现场可编程门阵列)的简称。
也可以由软件与硬件的组合来实现纹理映射装置100的功能。即,由软件实现“部”的一部分,由硬件实现“部”的剩余部分。
实施方式是优选方式的例示,并非意图限定本发明的技术范围。实施方式既可以部分地实施,也可以与其他方式组合实施。利用流程图等说明的过程可以适当地变更。
符号说明
100纹理映射装置;110应用部;111受理部;112纹理图集生成部;113信息变换部;119纹理复制部;121描绘部;130纹理图像组;131纹理图像;132纹理;140配置信息表;141配置信息;150映射信息数据;151映射信息;152多边形信息;153纹理图像标识符;154纹理信息;160多边形图像;161多边形;170纹理图集;191第1存储部;192第2存储部;193显示部;901第1处理器;902第1存储器;903辅助存储装置;908显示器;911第2处理器;912第2存储器;991第1处理电路;992第2处理电路。
Claims (9)
1.一种纹理映射装置,该纹理映射装置具有:
第1存储部,其存储1个以上的纹理图像即纹理图像组;
第2存储部,其存储配置有从所述纹理图像组复制的1个以上的纹理图像的第1纹理图集和新生成的第2纹理图集;以及
纹理复制部,其将配置在所述第1纹理图集的至少任意一个纹理图像从所述第1纹理图集复制到所述第2纹理图集。
2.根据权利要求1所述的纹理映射装置,其中,
纹理图像是包含1个以上的纹理的图像,
所述第2存储部存储包含要被描绘纹理的多边形的多边形图像,
所述纹理映射装置具有:
受理部,其受理第1映射信息,该第1映射信息包含:多边形信息,其确定所述多边形图像中的作为描绘对象的多边形所在的部分;纹理图像标识符,其标识包含作为描绘对象的纹理的纹理图像;以及纹理信息,其确定由纹理图像标识符标识的纹理图像中的包含作为描绘对象的纹理的部分;
纹理图集生成部,其在由所述第1映射信息中包含的纹理图像标识符标识的纹理图像未配置在所述第1纹理图集的情况下,将该纹理图像配置到所述第1纹理图集;
信息变换部,其生成第2映射信息,该第2映射信息包含与所述第1映射信息中包含的多边形信息相同的多边形信息,作为纹理图像标识符而包含标识所述第1纹理图集的标识符,作为纹理信息而包含确定所述第1纹理图集中的配置有与所述第1映射信息中包含的纹理信息对应的纹理的部分的信息;以及
描绘部,其将由所述第2映射信息中包含的纹理图像标识符标识的所述第1纹理图集中包含的纹理中的、配置在由所述第2映射信息中包含的纹理信息确定的部分的纹理,描绘到所述多边形图像中包含的多边形中的、位于由所述第2映射信息中包含的多边形信息确定的部分的多边形。
3.根据权利要求2所述的纹理映射装置,其中,
所述纹理复制部生成第3映射信息,该第3映射信息作为多边形信息而包含确定所述第2纹理图集中的一部分的信息,作为纹理图像标识符而包含标识所述第1纹理图集的标识符,作为纹理信息而包含确定所述第1纹理图集中的配置有与所述第1映射信息中包含的纹理信息对应的纹理的部分的信息,
所述描绘部将由所述第3映射信息中包含的纹理图像标识符标识的所述第1纹理图集中包含的纹理中的、配置在由所述第3映射信息中包含的纹理信息确定的部分的纹理,描绘到所述第2纹理图集中的由所述第3映射信息中包含的多边形信息确定的部分。
4.根据权利要求3所述的纹理映射装置,其中,
所述纹理复制部通过用于解决装箱问题的算法来决定由所述第3映射信息中包含的多边形信息确定的部分。
5.根据权利要求1所述的纹理映射装置,其中,
所述纹理复制部将配置于所述第1纹理图集的纹理图像中的使用频率高于频率阈值的纹理图像,从所述第1纹理图集复制到所述第2纹理图集。
6.根据权利要求1所述的纹理映射装置,其中,
所述纹理复制部将配置于所述第1纹理图集的纹理图像中的表示使用可能性高低的预测值高于预测阈值的纹理图像,从所述第1纹理图集复制到所述第2纹理图集。
7.根据权利要求1所述的纹理映射装置,其中,
所述第2存储部存储多个第1纹理图集,
所述纹理复制部按照每个第1纹理图集计算使用频率高于频率阈值的纹理图像的数量,选择计算出的数量较少的第1纹理图集,从选择出的第1纹理图集向所述第2纹理图集复制纹理图像,并废弃选择出的第1纹理图集。
8.根据权利要求1所述的纹理映射装置,其中,
所述第2存储部存储多个第1纹理图集,
所述纹理复制部按照每个第1纹理图集计算表示使用可能性高低的预测值低于预测阈值的纹理图像的数量,选择计算出的数量较多的第1纹理图集,从选择出的第1纹理图集向所述第2纹理图集复制纹理图像,并废弃选择出的第1纹理图集。
9.一种纹理映射程序,该纹理映射程序用于使具备第1存储器和第2存储器的计算机发挥功能,
所述第1存储器是存储1个以上的纹理图像即纹理图像组的存储器,
所述第2存储器是存储配置有从所述纹理图像组复制的1个以上的纹理图像的第1纹理图集和新生成的第2纹理图集的存储器,
该纹理映射程序用于使计算机执行如下的纹理复制处理:将配置在所述第1纹理图集的至少任意一个纹理图像从所述第1纹理图集复制到所述第2纹理图集。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/058197 WO2017158734A1 (ja) | 2016-03-15 | 2016-03-15 | テクスチャマッピング装置およびテクスチャマッピングプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108780583A true CN108780583A (zh) | 2018-11-09 |
Family
ID=59851161
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680083208.1A Pending CN108780583A (zh) | 2016-03-15 | 2016-03-15 | 纹理映射装置和纹理映射程序 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20190026925A1 (zh) |
JP (1) | JP6271107B1 (zh) |
CN (1) | CN108780583A (zh) |
DE (1) | DE112016006387T5 (zh) |
WO (1) | WO2017158734A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6975665B2 (ja) * | 2018-03-14 | 2021-12-01 | 日本ユニシス株式会社 | テクスチャマッピング装置およびテクスチャマッピング用プログラム |
US11348287B2 (en) * | 2018-07-16 | 2022-05-31 | Adobe Inc. | Rendering of graphic objects with pattern paint using a graphics processing unit |
WO2020129201A1 (ja) * | 2018-12-20 | 2020-06-25 | 三菱電機株式会社 | 情報処理装置、プログラム及び情報処理方法 |
GB2593206B (en) * | 2020-03-19 | 2023-04-26 | Samsung Electronics Co Ltd | Method, apparatus and computer program for generating or updating a texture atlas |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102737403A (zh) * | 2011-04-06 | 2012-10-17 | 索尼公司 | 图像处理装置、图像处理方法和程序 |
US20130063463A1 (en) * | 2011-09-09 | 2013-03-14 | Microsoft Corporation | Real-time atlasing of graphics data |
CN103392190A (zh) * | 2011-04-04 | 2013-11-13 | 三菱电机株式会社 | 纹理映射装置 |
CN103679776A (zh) * | 2012-09-12 | 2014-03-26 | 富士通半导体股份有限公司 | 图像处理设备 |
CN104054112A (zh) * | 2012-01-27 | 2014-09-17 | 三菱电机株式会社 | 描绘数据生成装置以及图像描绘装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4220182B2 (ja) * | 2002-05-31 | 2009-02-04 | 株式会社東芝 | 高次元テクスチャ描画装置、高次元テクスチャ圧縮装置、高次元テクスチャ描画システム、高次元テクスチャ描画方法並びにプログラム |
US7889205B1 (en) * | 2006-10-24 | 2011-02-15 | Adobe Systems Incorporated | Frame buffer based transparency group computation on a GPU without context switching |
JP5318290B2 (ja) * | 2010-11-09 | 2013-10-16 | 三菱電機株式会社 | 地図シンボル描画装置 |
JP2013206094A (ja) * | 2012-03-28 | 2013-10-07 | Panasonic Corp | 情報処理装置、カーナビゲーション装置 |
KR101338370B1 (ko) * | 2012-04-27 | 2013-12-10 | 주식회사 컴퍼니원헌드레드 | 지피유를 이용한 2차원 벡터 그래픽스 패스의 배치 렌더링 방법 |
-
2016
- 2016-03-15 CN CN201680083208.1A patent/CN108780583A/zh active Pending
- 2016-03-15 US US16/071,711 patent/US20190026925A1/en not_active Abandoned
- 2016-03-15 DE DE112016006387.3T patent/DE112016006387T5/de not_active Withdrawn
- 2016-03-15 JP JP2017555736A patent/JP6271107B1/ja active Active
- 2016-03-15 WO PCT/JP2016/058197 patent/WO2017158734A1/ja active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103392190A (zh) * | 2011-04-04 | 2013-11-13 | 三菱电机株式会社 | 纹理映射装置 |
CN102737403A (zh) * | 2011-04-06 | 2012-10-17 | 索尼公司 | 图像处理装置、图像处理方法和程序 |
US20130063463A1 (en) * | 2011-09-09 | 2013-03-14 | Microsoft Corporation | Real-time atlasing of graphics data |
CN104054112A (zh) * | 2012-01-27 | 2014-09-17 | 三菱电机株式会社 | 描绘数据生成装置以及图像描绘装置 |
CN103679776A (zh) * | 2012-09-12 | 2014-03-26 | 富士通半导体股份有限公司 | 图像处理设备 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2017158734A1 (ja) | 2018-03-22 |
WO2017158734A1 (ja) | 2017-09-21 |
US20190026925A1 (en) | 2019-01-24 |
DE112016006387T5 (de) | 2018-10-18 |
JP6271107B1 (ja) | 2018-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10475228B2 (en) | Allocation of tiles to processing engines in a graphics processing system | |
CN108780583A (zh) | 纹理映射装置和纹理映射程序 | |
US10366530B2 (en) | Hidden culling in tile-based computer generated images | |
CN103793893B (zh) | 采用限缓冲区处理的世界和屏幕空间管线间基元重新排序 | |
US20080074430A1 (en) | Graphics processing unit with unified vertex cache and shader register file | |
KR20140063429A (ko) | 그래픽 처리 방법 및 장치 | |
CN115100022B (zh) | 图形处理方法及系统 | |
EP2517169A1 (en) | Image processing techniques | |
US11954782B2 (en) | Hybrid render with preferred primitive batch binning and sorting | |
US11145025B2 (en) | Graphics processing systems with expansion transformation stage masks | |
US9865076B2 (en) | Rendering apparatus | |
TW201447812A (zh) | 有共用邊緣的先印後蓋路徑描繪 | |
US8797345B2 (en) | Color gamut boundary information generating device, color gamut boundary information generating method, and computer readable medium | |
US11978156B2 (en) | Graphics processing | |
CN115049531B (zh) | 图像渲染方法、装置、图形处理设备及存储介质 | |
CN109643460B (zh) | 使用推迟图元批量合并和分类的混合渲染器 | |
TWI839352B (zh) | 圖形處理器、數據處理器、及其等的操作方法 | |
CN118052693A (zh) | 图形处理器 | |
CN118015173A (zh) | 图像渲染方法、存储介质和电子设备 | |
TW201947523A (zh) | 圖形處理 | |
GB2610081A (en) | Primitive block generator for graphics processing systems |
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 | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20230523 |