CN107430783A - 纹理映射装置、纹理映射方法和程序 - Google Patents
纹理映射装置、纹理映射方法和程序 Download PDFInfo
- Publication number
- CN107430783A CN107430783A CN201580077771.3A CN201580077771A CN107430783A CN 107430783 A CN107430783 A CN 107430783A CN 201580077771 A CN201580077771 A CN 201580077771A CN 107430783 A CN107430783 A CN 107430783A
- Authority
- CN
- China
- Prior art keywords
- texture
- coordinate
- polygon
- pixel
- 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.)
- Withdrawn
Links
Classifications
-
- 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
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2012—Colour editing, changing, or manipulating; Use of colour codes
Abstract
纹理映射装置具有:纹理图集生成部(10),其结合多个纹理而生成纹理图集(41),并且,生成纹理图集(41)中的描绘用纹理的配置信息(32);多边形信息存储部(330),其存储设定有输出图像(42)中的多边形的顶点坐标和在根据描绘用纹理描绘于多边形的图像中与顶点坐标对应的顶点纹理坐标的多边形信息(33);像素坐标计算部(22),其检测在输出图像(42)中多边形涂满的像素的位置,计算在描绘图像中与像素的位置对应的像素对应纹理坐标;以及坐标转换部(23),其将像素对应纹理坐标转换成纹理图集(41)上的描绘用纹理的范围内的坐标。
Description
技术领域
本发明涉及纹理映射装置、纹理映射方法和程序。
背景技术
在计算机图形中,多边形多用作描绘内容的图元(primitive)。并且,为了表现多边形的表面材质,一般采用将被称作纹理的二维图像映射到多边形中进行描绘的技术。
在多边形中映射纹理的情况下,为了减小要使用的存储量,存在重复尺寸较小的纹理或拉伸纹理的端部进行映射的技术。这些技术在一般的GPU(Graphics ProcessingUnit:图形处理单元)中被称作纹理循环模式,将重复进行映射的模式称作重复(repeat),将拉伸端部进行映射的模式称作钳制(clamp)。
在多边形中映射纹理的情况下,指定要映射的纹理后描绘多边形。但是,公知指定纹理的处理一般耗费时间,当在多个多边形中分别映射不同的纹理时,处理时间变长。因此,公知预先结合多个纹理而成为一个纹理,按照其每个部分映射到多边形中,由此能够高速进行描绘。将结合多个纹理而成为一个纹理的部分称作纹理图集。在专利文献1中提出有高速且低负荷地生成纹理图集的方法。
现有技术文献
专利文献
专利文献1:日本特开2013-206094号公报
发明内容
发明要解决的课题
但是,一般的GPU在进行纹理的重复或钳制的情况下,对纹理的整体进行重复或钳制。由此,存在被重复或钳制的纹理无法成为纹理图集这样的课题。
本发明的目的在于,对纹理图集的一部分进行重复或钳制,在多边形中映射纹理。
用于解决课题的手段
本发明的纹理映射装置具有:纹理图集生成部,其结合包含在向作为多边形区域的多边形的描绘中使用的描绘用纹理在内的多个纹理而生成纹理图集,并且,生成表示所述纹理图集中的所述描绘用纹理的配置的配置信息;多边形信息存储部,其存储设定有顶点坐标和顶点纹理坐标的多边形信息,该顶点坐标表示由多个像素构成的输出图像中的所述多边形的顶点的位置,该顶点纹理坐标表示根据所述描绘用纹理而描绘于所述多边形的图像中的与所述顶点坐标对应的位置;像素坐标计算部,其根据所述多边形信息,检测表示在所述输出图像中所述多边形对应的像素的像素坐标,计算在描绘于所述多边形的图像中与所述像素坐标对应的坐标作为像素对应纹理坐标;以及坐标转换部,其根据所述配置信息,将所述像素对应纹理坐标转换成包含所述纹理图集中结合的所述描绘用纹理的范围内的坐标,输出转换后的坐标作为转换坐标。
发明效果
在本发明的纹理映射装置中,多边形信息存储部存储设定有顶点坐标和顶点纹理坐标的多边形信息,该顶点坐标表示输出图像中的多边形的顶点的位置,该顶点纹理坐标表示描绘于多边形的图像中的与顶点坐标对应的位置。并且,像素坐标计算部检测表示多边形对应的像素的像素坐标,计算在描绘于多边形的图像中与像素坐标对应的坐标作为像素对应纹理坐标。并且,坐标转换部将像素对应纹理坐标转换成纹理图集的坐标中的包含描绘用纹理的范围内的坐标,输出转换后的坐标作为转换坐标。因此,能够将通过对描绘用纹理进行重复或钳制而描绘于多边形的图像上的坐标转换成纹理图集的坐标。由此,根据纹理映射装置,发挥能够对纹理图集中结合的描绘用纹理进行重复或钳制而向多边形映射纹理这样的效果。
附图说明
图1是实施方式1的纹理映射装置的块结构图。
图2是实施方式1的纹理映射装置的硬件结构图。
图3是示出实施方式1的纹理映射方法和纹理映射处理的流程图。
图4是示出实施方式1的纹理图集生成处理的流程图。
图5是示出实施方式1的纹理的一例的图。
图6是示出实施方式1的扩张纹理的一例的图。
图7是示出实施方式1的纹理图集的一例的图。
图8是示出实施方式1的配置信息的一例的图。
图9是示出实施方式1的描绘处理的流程图。
图10是示出实施方式1的多边形信息的一例的图。
图11是示出实施方式1的输出图像中由图10所示的多边形信息涂满的像素的范围的图。
图12是示出实施方式1的计算输出图像上的像素的片元信息的步骤的例子的图。
图13是示出实施方式1中基于图10的多边形信息的描绘结果的图。
图14是示出实施方式1中图10的多边形信息的纹理循环模式为钳制时的描绘结果的例子的图。
图15是实施方式2的纹理映射装置的块结构图。
图16是示出实施方式2的纹理图集的一例的图。
图17是示出实施方式2的配置信息的一例的图。
图18是示出实施方式2中基于图10的多边形信息的描绘结果的图。
图19是示出实施方式2中图10的多边形信息的纹理循环模式为钳制时的描绘结果的例子的图。
具体实施方式
实施方式1
***结构的说明***
图1是示出本实施方式的纹理映射装置100的块结构的图。
如图1所示,纹理映射装置100具有纹理图集生成部10、描绘部20、主存储器30、VRAM(Video Random Access Memory:视频随机存取存储器)40、输出部50。
纹理图集生成部10具有纹理扩张部11、纹理配置部12。
描绘部20具有顶点处理部21、像素坐标计算部22、坐标转换部23、纹理拾取部24。
在主存储器30中存储有纹理组31、配置信息32、多边形信息33。在纹理组31中包含多个纹理311。
在VRAM40中存储有纹理图集41、输出图像42。
另外,纹理也被称作纹理图像。
图5是示出纹理311的一例的图。图7是示出纹理图集41的一例的图。图8是示出配置信息32的一例的图。
使用图1、5、7、8对纹理图集生成部10进行简单说明。
纹理图集生成部10结合包含在向作为多边形区域的多边形的描绘中使用的描绘用纹理3110的多个纹理311,生成纹理图集41。并且,纹理图集生成部10生成表示纹理图集41中的描绘用纹理3110的配置的配置信息32。配置信息32也被称作纹理配置信息。
纹理图集生成部10取得主存储器30中存储的纹理组31,结合纹理组31中包含的多个纹理311,生成纹理图集41。
纹理扩张部11对输入的多个纹理的各纹理311进行扩张。纹理扩张部11在纵向和横向上一个像素一个像素地对多个纹理的各纹理311进行扩张。即,纹理扩张部11在X轴方向和Y轴方向上一个像素一个像素地对多个纹理的各纹理311进行扩张。
纹理配置部12结合由纹理扩张部11扩张后的纹理311,生成纹理图集41。纹理配置部12结合由纹理扩张部11扩张后的多个纹理311中的各个纹理311,生成纹理图集41。在纹理图集41内扩张后的纹理311的范围是包含在纹理图集41中结合的纹理311的范围。
然后,纹理配置部12将生成的纹理图集41存储到VRAM40中。
并且,纹理配置部12生成表示纹理图集41中的描绘用纹理3110的配置的配置信息32。纹理配置部12将表示纹理图集41内的各纹理311的配置的配置信息32存储到主存储器30中。
描绘部20从主存储器30取得多边形信息33、以及配置信息32中的映射到多边形的纹理311即描绘用纹理3110的配置信息32d。并且,描绘部20从VRAM40取得纹理图集41。然后,描绘部20通过重复或钳制将纹理图集41的一部分即描绘用纹理3110映射到多边形进行描绘。
顶点处理部21从主存储器30取得多边形信息33、以及配置信息32中的映射到多边形的描绘用纹理3110的配置信息32。
多边形信息33存储在主存储器30具有的多边形信息存储部330中。
图10是示出多边形信息33的一例的图。使用图10对多边形信息33进行简单说明。
多边形信息存储部330存储设定有顶点坐标V1和顶点纹理坐标T1的多边形信息33,该顶点坐标V1表示由多个像素构成的输出图像42中的多边形的顶点的位置,该顶点纹理坐标T1表示在根据描绘用纹理3110描绘于多边形的图像即描绘图像3111中与顶点坐标V1对应的位置。
这里,描绘于多边形的图像即描绘图像3111是假设根据描绘用纹理3110描绘于多边形的假想图像。即,顶点纹理坐标T1是假设根据描绘用纹理3110描绘于多边形的描绘图像3111上的顶点坐标。
在多边形信息33中设定重复或钳制作为纹理循环模式。
在纹理循环模式为重复的情况下,在多边形信息33中设定假设通过对描绘用纹理3110进行重复而描绘于多边形的描绘图像3111中的顶点纹理坐标T1。
在纹理循环模式为钳制的情况下,在多边形信息33中设定假设通过对描绘用纹理3110进行钳制而描绘于多边形的描绘图像3111中的顶点纹理坐标T1。
像素坐标计算部22根据多边形信息33,检测表示在输出图像42中多边形对应的像素的像素坐标V2。像素坐标计算部22计算在描绘图像3111中与检测到的表示像素的像素坐标V2对应的坐标作为像素对应纹理坐标T2。将由像素坐标计算部22计算出的像素对应纹理坐标T2和像素坐标V2称作片元(fragment)信息。
坐标转换部23根据配置信息32d,将像素对应纹理坐标T2转换成纹理图集41的坐标即包含纹理图集41中结合的描绘用纹理3110的范围内的坐标,输出转换后的坐标作为转换坐标T21。坐标转换部23也被称作纹理坐标转换部。
坐标转换部23将像素对应纹理坐标T2转换成对描绘用纹理3110进行扩张后的范围内的转换坐标T21。
坐标转换部23使用与纹理循环模式对应的转换式,将像素对应纹理坐标T2转换成转换坐标T21。
纹理拾取部24根据由坐标转换部23输出的转换坐标T21,从纹理图集41中提取颜色信息411,根据提取出的颜色信息411涂满由像素坐标V2表示的像素。纹理拾取部24对转换坐标T21所示的位置的像素周围的多个像素的颜色进行插值,由此提取颜色信息411。
纹理拾取部24根据颜色信息411涂满像素,由此描绘输出图像42。纹理拾取部24将描绘出的输出图像42输出到VRAM40。
输出部50将VRAM40内的输出图像42输出到监视器等视频显示装置。
使用图2对本实施方式的纹理映射装置100的硬件结构的一例进行说明。
纹理映射装置100是计算机。
纹理映射装置100具有处理器901、辅助存储装置902、存储器903、通信装置904、输入接口905、显示器接口906这样的硬件。
处理器901经由信号线910而与其它硬件连接,对这些其他硬件进行控制。
输入接口905与输入装置907连接。
显示器接口906与显示器908连接。
处理器901是进行处理的IC(Integrated Circuit:集成电路)。
处理器901例如是CPU(Central Processing Unit:中央处理单元)、DSP(DigitalSignal Processor:数字信号处理器)、GPU(Graphics Processing Unit:图形处理单元)。
辅助存储装置902例如是ROM(Read Only Memory:只读存储器)、闪存、HDD(HardDisk Drive:硬盘驱动器)。
存储器903例如是RAM(Random Access Memory:随机存取存储器)。
通信装置904包含接收数据的接收机9041和发送数据的发送机9042。
通信装置904例如是通信芯片或NIC(Network Interface Card:网络接口卡)。
输入接口905是连接输入装置907的缆线911的端口。
输入接口905例如是USB(Universal Serial Bus:通用串行总线)端子。
显示器接口906是连接显示器908的缆线912的端口。
显示器接口906例如是USB端子或HDMI(注册商标)(High Definition MultimediaInterface:高分辨率多媒体接口)端子。
输入装置907例如是鼠标、键盘或触摸面板。
显示器908例如是LCD(Liquid Crystal Display:液晶显示器)。
在辅助存储装置902中存储有实现图1所示的纹理扩张部11、纹理配置部12、顶点处理部21、像素坐标计算部22、纹理坐标转换部23、纹理拾取部24的功能的程序。下面,将纹理扩张部11、纹理配置部12、顶点处理部21、像素坐标计算部22、纹理坐标转换部23、纹理拾取部24统一记作“部”。
实现上述“部”的功能的程序也称作纹理映射程序。实现“部”的功能的程序可以是一个程序,也可以由多个程序构成。
该程序载入到存储器903,读入到处理器901,由处理器901来执行。
进而,在辅助存储装置902中还存储有OS(Operating System:操作系统)。
而且,OS的至少一部分载入到存储器903,处理器901执行OS,并且执行实现“部”的功能的程序。
在图2中,图示出一个处理器901,但是,纹理映射装置100也可以具有多个处理器901。
而且,多个处理器901也可以协作执行实现“部”的功能的程序。
并且,表示“部”的处理结果的信息、数据、信号值和变量值作为文件存储在存储器903、辅助存储装置902或处理器901内的寄存器或缓存中。
也可以利用“电路系统(circuitry)”来提供“部”。
并且,也可以将“部”改写成“电路”或“工序”或“步骤”或“处理”。并且,也可以将“处理”改写成“电路”或“工序”或“步骤”或“部”。
“电路”和“电路系统”是不仅包含处理器901,而且包含逻辑IC或GA(Gate Array:门阵列)或ASIC(Application Specific Integrated Circuit:面向特定用途的集成电路)或FPGA(Field-Programmable Gate Array:现场可编程门阵列)这样的其他种类的处理电路的概念。
另外,被称作程序产品的是记录有实现作为“部”说明的功能的程序的存储介质、存储装置等,与看起来的形式无关,载入有计算机可读取的程序。
***动作的说明***
使用图3对本实施方式的纹理映射装置100的纹理映射方法和纹理映射处理S100进行说明。
如图3所示,纹理映射处理S100具有纹理图集生成处理S110、描绘处理S120、输出处理S130。
<纹理图集生成处理S110>
首先,使用图4对本实施方式的纹理映射装置100的纹理图集生成处理S110进行说明。
纹理图集生成部10结合包含描绘用纹理3110的多个纹理311,生成纹理图集41。并且,纹理图集生成部10执行生成表示纹理图集41中的描绘用纹理3110的配置的配置信息32的纹理图集生成处理S110。
在图5中,示出2×2像素的4个纹理311a、311b、311c、311d。这里,设纹理311d是在多边形的描绘中使用的描绘用纹理3110。另外,纹理311的尺寸和数量是任意的。并且,在以下的说明中,设图像的右方向为X轴正方向,下方向为Y轴正方向。
例如,设在纹理组31中包含4个纹理311a、311b、311c、311d。
<纹理扩张处理S111>
纹理扩张部11从纹理组31取得4个纹理311a、311b、311c、311d。
纹理扩张部11在XY轴正方向上分别一个像素一个像素地对取得的4个纹理311a、311b、311c、311d中的各个纹理进行扩张。此时,纹理扩张部11对要扩张的像素赋予在图像内位于相反侧端部的像素的颜色。这里,将由纹理扩张部11扩张后的纹理311称作扩张纹理312。
在图6中,示出由纹理扩张部11扩张后的扩张纹理312a、312b、312c、312d。
<纹理配置处理S112>
纹理配置处理S112具有配置处理S1121和配置信息生成处理S1122。
<配置处理S1121>
纹理配置部12结合扩张纹理312a、312b、312c、312d,生成纹理图集41。此时,在纹理图集41中配置扩张纹理312的方法是任意的。作为在纹理图集41中配置扩张纹理312的方法的例子,存在求解二维装箱问题等的方法。
图7是由纹理配置部12生成的纹理图集41的例子。如图7所示,纹理配置部12进行结合以使扩张纹理312a、312b、312c、312d成为6×6像素的图像,生成纹理图集41。
纹理配置部12将生成的纹理图集41存储到VRAM40中。
<配置信息生成处理S1122>
纹理配置部12生成表示各纹理311的配置信息的配置信息32。纹理配置部12将生成的配置信息32存储到主存储器30中。
图8是示出本实施方式的配置信息32的结构的一例的图。
在配置信息32中,针对各个纹理311设定配置信息(x,y,width,height)。配置信息32至少由存储纹理311的位置(x,y)以及由纹理扩张部11放大纹理311之前的宽度和高度(width,height)表示。
具体而言,纹理311d即描绘用纹理3110的配置信息32是(3,3,2,2)。即,表示在纹理图集41中,纹理311d的位置是(3,3),扩张之前的纹理311d的宽度和高度是(2,2)。
<描绘处理S120>
接着,使用图9对本实施方式的纹理映射装置100的描绘处理S120进行说明。
<顶点处理S121>
顶点处理部21从主存储器30的多边形信息存储部330取得要描绘的多边形信息33。
图10是示出本实施方式的多边形信息33的结构的一例的图。
如图10所示,多边形信息33至少由指定映射到多边形的纹理311的信息、多边形的各顶点信息、纹理循环模式构成。
具体而言,在指定描绘中使用的描绘用纹理3110的信息中设定识别纹理311d的标识符即311d。
在多边形的顶点信息中至少设定表示构成多边形的各顶点的位置的顶点坐标V1、表示与顶点坐标V1对应的纹理311d的位置的顶点纹理坐标T1。
纹理循环模式是表示重复和钳制中的任意一方的信息。
在纹理循环模式为重复的情况下,在多边形中描绘假设通过对纹理311d进行重复而描绘的描绘图像3111。并且,在纹理循环模式为钳制的情况下,在多边形中描绘假设通过对纹理311d进行钳制而描绘的描绘图像3111。
即,描绘图像3111意味着假设使用描绘用纹理3110描绘于多边形的图像。
如图10所示,2个多边形由16×16像素表示,假设描绘于该多边形的描绘图像3111通过顶点纹理坐标T1而由4×4像素表示。在纹理循环模式为重复的情况下,由4×4像素表示的描绘图像3111能够假定是排列纵横各2个合计4个图5的纹理311d而得到的图像。
图10所示的多边形信息33意味着在16×16像素的多边形中描绘由4×4像素表示的假想描绘图像3111。
图10的多边形信息33表示利用2个三角形的多边形构成矩形的多边形信息。另外,多边形的顶点坐标也可以是三维以上。
顶点处理部21根据取得的多边形信息33中包含的指定描绘用纹理3110的信息,取得存储于主存储器30的配置信息32中的、与多边形信息33所示的纹理311d对应的配置信息32d。
在使用图10的多边形信息33的情况下,顶点处理部21取得纹理311d的配置信息32d(3,3,2,2)。
并且,顶点处理部21对各顶点实施任意处理。例如,可举出在多边形的顶点位置应用任意矩阵的处理、在三维多边形的情况下对顶点位置进行投影转换的处理等。这里,设顶点处理部21直接输出多边形信息33。
<像素坐标计算处理S122>
像素坐标计算部22根据多边形信息33,检测在输出图像42中多边形对应的像素即多边形涂满的像素。并且,像素坐标计算部22执行像素坐标计算处理S122,计算在描绘图像3111中与表示检测到的像素的位置的像素坐标V2对应的坐标作为像素对应纹理坐标T2。像素坐标计算处理S122也被称作栅格处理。
像素坐标计算部22检测在存储于VRAM40的输出图像42中多边形信息33的多边形涂满的像素。
图11利用斜线区域示出在32×24像素的输出图像42中由图10所示的多边形信息33涂满的像素的范围。
像素坐标计算部22计算在描绘图像3111中表示与检测到的像素的像素坐标V2对应的位置的像素对应纹理坐标T2。像素坐标V2例如是表示像素中心的坐标。
像素坐标计算部22计算像素坐标V2和与该像素对应的像素对应纹理坐标T2作为片元信息。
像素坐标计算部22根据像素的位置对顶点信息进行插值,由此计算各像素的片元信息。插值方法是任意的,但是,例如在三角形的多边形的2个边上对顶点信息进行线性插值,进而在2个边之间进行线性插值,由此进行计算。
图12中图示出计算由输出图像42上的像素坐标V2(6.5,7.5)表示的像素的片元信息的步骤的例子。
<坐标转换处理S123>
坐标转换部23根据配置信息32d,将像素对应纹理坐标T2转换成纹理图集41的坐标即包含纹理图集41中结合的描绘用纹理3110的范围内的坐标。包含描绘用纹理3110的范围内是指纹理图集41中的扩张纹理312的范围内。即,转换坐标T21可取的坐标成为根据描绘用纹理3110求出的包含描绘用纹理3110的范围即不会从扩张纹理312d溢出的范围。然后,坐标转换部23执行输出转换后的坐标作为转换坐标T21的坐标转换处理S123。
坐标转换部23根据多边形信息具有的纹理循环模式对各片元信息具有的像素对应纹理坐标T2进行转换。当设片元信息具有的像素对应纹理坐标为T2(xt,yt),顶点处理部21读出的配置信息为32d(Xt,Yt,Wt,Ht),转换坐标为T21(xt’,yt’)时,纹理循环模式为重复时的转换式成为以下的(1)、(2)式。
xt’=Xt+frac((xt+Wt-0.5)/Wt)*Wt+0.5 (1)
yt’=Yt+frac((yt+Ht-0.5)/Ht)*Ht+0.5 (2)
在(1)、(2)式中,frac(a)是取出实数a的小数部分的运算。
另一方面,纹理循环模式为钳制时的转换式成为以下的(3)、(4)。
Xt’=Xt+min(max(0.5,xt),Wt-0.5) (3)
Yt’=Yt+min(max(0.5,yt),Ht-0.5) (4)
在(3)、(4)式中,min(a,b)和max(a,b)是选择实数a、b中的较小一方和较大一方的运算。
根据上述式子,坐标转换部23将像素对应纹理坐标T2转换成纹理图集41的坐标即不会从对描绘用纹理3110进行扩张后的范围溢出的范围的转换坐标T21。如图7所示,转换坐标T21不会从对纹理311d进行扩张后的扩张纹理312d的范围溢出。
在图7中,转换坐标T21的范围成为从扩张纹理312d的周缘即与其他扩张纹理312之间的边界分开0.5像素的范围。
这样,设转换坐标T21的范围为从与其他扩张纹理312之间的边界分开的范围是为了在GPU对颜色进行插值时不会使相邻的纹理的颜色混合。
另外,在图5、6的例子中,纹理扩张部11在XY方向各自的正方向上一个像素一个像素地对纹理进行扩张,但是,也可以在负方向上进行扩张。但是,在X轴负方向上进行扩张的情况下,在坐标转换部23中代替(1)式而使用以下的(5)式。
xt’=Xt+frac((xt+0.5)/Wt)*Wt-0.5 (5)
同样,在Y轴负方向上进行扩张的情况下,代替(2)式而使用以下的(6)式。
yt’=Yt+frac((yt+0.5)/Ht)*Ht-0.5 (6)
进而,纹理扩张部11也可以在XY方向的正负方向上分别一个像素一个像素地进行扩张。该情况下,可以使用(1)、(2)式和(5)、(6)式中的任意一方,也可以利用以下的(7)、(8)式。
xt’=Xt+frac(xt/Wt)*Wt (7)
yt’=Yt+frac(yt/Ht)*Ht (8)
在XY方向的正负方向上分别一个像素一个像素地进行扩张的情况下,纹理图集的尺寸增大,存储器使用量增加,但是另一方面,通过使用(7)、(8)式,能够减少计算量。
并且,要扩张的像素数也可以在XY轴的正负方向上分别为2个像素以上。
<纹理拾取处理S124>
纹理拾取部24根据由坐标转换部23输出的转换坐标T21,从纹理图集41中提取颜色信息411,根据提取出的颜色信息411涂满像素。
纹理拾取部24针对各片元信息,从纹理图集41中取出位于坐标转换部23校正后的转换坐标T21的位置的颜色。此时,转换坐标T21不一定指纹理图集41的像素的中心,因此,纹理拾取部24计算并取出根据转换坐标T21的位置附近的像素的颜色进行插值后的颜色。插值方法是任意的,但是,例如能够利用针对周围4个像素的颜色的双线性插值。然后,纹理拾取部24利用取得的颜色涂满与片元信息对应的像素。
图13示出描绘图10的多边形信息33的结果、以及针对若干个像素在纹理图集41内取得颜色的位置。
并且,图14示出图10的多边形信息33的纹理循环模式为钳制时的描绘结果的一例。
以上,结束与描绘处理S120有关的说明。
<输出处理S130>
最后,输出部5执行将存储于VRAM40的输出图像42输出到监视器等视频显示装置的输出处理S130。
以上,结束与本实施方式的纹理映射装置100的纹理映射处理S100有关的说明。
***效果的说明***
在本实施方式的纹理映射装置中,在将多个纹理分别映射到不同的多边形进行描绘的情况下,不需要进行按照每个多边形指定要映射的纹理的处理。由此,根据本实施方式的纹理映射装置,能够高速进行描绘,并且,能够得到与原来的对纹理进行重复或钳制来进行映射的情况相同的结果。
实施方式2
在本实施方式中,主要对与实施方式1的差异点进行说明。
在实施方式1中,纹理扩张部11需要在XY轴方向上分别至少一个像素一个像素地对纹理311进行扩张。其结果是,纹理图集41的尺寸增大,VRAM40的使用量增加。
因此,在本实施方式中,纹理拾取部24不对转换坐标T21所示的位置附近的像素的颜色进行插值,而使用位于转换坐标T21所示的位置的最近处的像素的颜色。通过采用这种处理,不需要进行纹理311的扩张,能够防止VRAM40的使用量增大。
***结构的说明***
图15是示出本实施方式的纹理映射装置100a的块结构的图。图15是与实施方式1中说明的图1对应的图。
在本实施方式中,对具有与实施方式1中说明的结构部相同功能的结构部标注相同标号,有时省略其说明。
与图1相比,图15不具有纹理扩张部11。
纹理图集生成部10取得存储于主存储器30的纹理组31,结合取得的多个纹理311,生成纹理图集41a。然后,纹理图集生成部10将生成的纹理图集41a存储到VRAM40中。并且,纹理图集生成部10将表示纹理图集41a内的各纹理311的配置的配置信息32存储到主存储器30中。
描绘部20从主存储器30取得多边形信息33以及配置信息32中的要映射的纹理即描绘用纹理3110的配置信息,从VRAM40取得纹理图集41a。
然后,描绘部20对纹理图集41a的一部分进行重复或钳制,将其映射到输出图像42上的多边形进行描绘,作为输出图像42输出到VRAM40。此时,纹理拾取部24提取表示最接近转换坐标T21所示的位置的像素的颜色的信息作为颜色信息411。即,纹理拾取部24使用位于转换坐标T21所示的位置的最近处的像素的颜色。
转换坐标T21成为在纹理图集41中包含描绘用纹理3110的范围内。在本实施方式中,在纹理图集41中包含描绘用纹理3110的范围成为描绘用纹理3110本身的范围。
输出部50将VRAM40中描绘的输出图像42输出到监视器等视频显示装置。
***动作的说明***
使用图16、17对纹理图集生成部10的处理进行说明。
纹理配置部12的动作与实施方式1中的纹理配置部12相同。作为例子,图16示出根据图5的纹理311a、311b、311c、311d生成纹理图集41a的结果。并且,图17示出图16所示的纹理图集41a的配置信息32。
如图16所示,纹理311a、311b、311c、311d不进行扩张而以原来的尺寸直接结合。与实施方式1同样,设描绘用纹理3110为纹理311d时,纹理311d的配置信息成为(2,2,2,2)。
使用图18、19对描绘部20的处理进行说明。顶点处理部21、像素坐标计算部22的动作与实施方式1相同,检测到的像素和生成的片元信息也与实施方式1相同。
坐标转换部23根据多边形信息33具有的纹理循环模式对各片元信息具有的像素对应纹理坐标T2进行转换。
纹理循环模式为重复时的转换式成为以下的(9)、(10)式。
xt’=Xt+frac(xt/Wt)*Wt (9)
yt’=Yt+frac(yt/Ht)*Ht (10)
此时,设像素对应纹理坐标为T2(xt,yt),顶点处理部21读出的配置信息32为(Xt,Yt,Wt,Ht),转换坐标为T21(xt’,yt’)。并且,在(9)、(10)式中,frac(a)是取出实数a的小数部分的运算。
另一方面,纹理循环模式为钳制时的转换式成为以下的(11)、(12)。
Xt’=Xt+min(max(0,xt),Wt) (11)
Yt’=Yt+min(max(0,yt),Ht) (12)
在(11)、(12)式中,min(a,b)和max(a,b)是选择实数a、b中的较小一方和较大一方的运算。
纹理拾取部24针对各片元信息,从纹理图集41a中取出坐标转换部23计算出的转换坐标T21的位置的颜色。此时,纹理拾取部24取出在纹理图集41a的各像素中像素中心最接近转换坐标T21的像素的颜色。然后,纹理拾取部24利用取得的颜色涂满与片元信息对应的像素。
图18示出描绘图10的多边形信息33的结果以及针对若干个像素在纹理图集41a内取得颜色的位置。并且,图19示出图10的多边形信息33的纹理循环模式为钳制时的描绘结果的一例。
最后,输出部50将存储于VRAM40的输出图像42输出到监视器等视频显示装置。
***效果的说明***
根据本实施方式的纹理映射装置,在将多个纹理映射到多个多边形进行描绘的情况下,不需要进行切换纹理的处理,因此,能够高速进行描绘。进而,根据本实施方式的纹理映射装置,能够得到与原来的对纹理进行重复或钳制来进行映射的情况相同的描绘结果。进而,根据本实施方式的纹理映射装置,在生成纹理图集时不需要对纹理进行扩张,因此,能够抑制使用存储量的增大。
实施方式3
在本实施方式中,对与实施方式1、2不同之处进行说明。
在实施方式1中,纹理扩张部11需要在XY轴方向上分别至少一个像素一个像素地对纹理311进行扩张。其结果是,纹理图集41的尺寸增大,VRAM40的使用量增加。
在本实施方式中,对如下的纹理映射装置进行说明:在要利用的纹理循环模式仅为钳制的情况下不需要进行纹理的扩张,能够防止存储器使用量增大。
***结构的说明***
本实施方式的纹理映射装置100b的结构与实施方式2中说明的图15的结构相同。
在本实施方式中,对具有与实施方式1、2中说明的结构部相同功能的结构部标注相同标号,有时省略其说明。
***动作的说明***
纹理图集生成部10的处理与实施方式2相同。
对描绘部20的处理进行说明。
顶点处理部21、像素坐标计算部22的动作与实施方式1、2相同,检测到的像素和生成的片元信息也与实施方式1、2相同。
但是,在本实施方式的多边形信息33中,由于纹理循环模式仅为钳制,因此,不需要纹理循环模式。
坐标转换部23使用实施方式1中说明的(3)、(4)式,将各片元信息具有的像素对应纹理坐标T2转换成转换坐标T21。
纹理拾取部24的处理与实施方式1相同。
最后,输出部50将存储于VRAM40的输出图像输出到监视器等视频显示装置。
***效果的说明***
根据本实施方式的纹理映射装置,在将多个纹理映射到多个多边形进行描绘的情况下,不需要进行切换纹理的处理,因此,能够高速进行描绘。进而,根据本实施方式的纹理映射装置,能够得到与原来的对纹理进行钳制来进行映射的情况相同的描绘结果。进而,根据本实施方式的纹理映射装置,在生成纹理图集时不需要对纹理进行扩张,因此,能够抑制使用存储量的增大。
在上述实施方式中,纹理扩张部11、纹理配置部12、顶点处理部21、像素坐标计算部22、纹理坐标转换部23、纹理拾取部24分别作为独立的功能块来构成纹理映射装置。但是,纹理映射装置也可以不是上述的结构,纹理映射装置的结构是任意的。
例如,也可以将纹理扩张部11和纹理配置部12设为一个功能块,将顶点处理部21、像素坐标计算部22、坐标转换部23、纹理拾取部24设为一个功能块。纹理映射装置的功能块只要能够实现上述实施方式中说明的功能即可,是任意的。关于这些功能块,也可以通过其他任意组合或任意块结构来构成通信装置。
并且,纹理映射装置也可以不是一个装置,而是由多个装置构成的通信系统。
并且,对实施方式1~3进行了说明,但是,也可以部分地组合实施这3个实施方式中的多个实施方式。或者,也可以部分地实施这3个实施方式中的一个实施方式。而且,也可以作为整体或部分地任意组合实施这3个实施方式。
另外,上述实施方式是本质上优选的例示,并不意图限制本发明及其应用物和用途的范围,能够根据需要进行各种变更。
标号说明
10:纹理图集生成部;11:纹理扩张部;12:纹理配置部;20:描绘部;21:顶点处理部;22:像素坐标计算部;23:坐标转换部;24:纹理拾取部;30:主存储器;31:纹理组;32、32d:配置信息;33:多边形信息;40:VRAM;41、41a:纹理图集;42:输出图像;50:输出部;100、100a、100b:纹理映射装置;901:处理器;902:辅助存储装置;903:存储器;904:通信装置;905:输入接口;906:显示器接口;907:输入装置;908:显示器;910:信号线;911、912:缆线;311、311a、311b、311c、311d:纹理;312、312a、312b、312c、312d:扩张纹理;330:多边形信息存储部;411:颜色信息;3110:描绘用纹理;3111:描绘图像;9041:接收机;9042:发送机;S100:纹理映射处理;S110:纹理图集生成处理;S111:纹理扩张处理;S112:纹理配置处理;S120:描绘处理;S121:顶点处理;S122:像素坐标计算处理;S123:坐标转换处理;S124:纹理拾取处理;S130:输出处理;S1121:配置处理;S1122:配置信息生成处理;T1:顶点纹理坐标;T2:像素对应纹理坐标;T21:转换坐标;V1:顶点坐标;V2:坐标。
Claims (11)
1.一种纹理映射装置,该纹理映射装置具有:
纹理图集生成部,其结合包含在向作为多边形区域的多边形的描绘中使用的描绘用纹理在内的多个纹理而生成纹理图集,并且,生成表示所述纹理图集中的所述描绘用纹理的配置的配置信息;
多边形信息存储部,其存储设定有顶点坐标和顶点纹理坐标的多边形信息,该顶点坐标表示由多个像素构成的输出图像中的所述多边形的顶点的位置,该顶点纹理坐标表示根据所述描绘用纹理而描绘于所述多边形的图像中的与所述顶点坐标对应的位置;
像素坐标计算部,其根据所述多边形信息,检测表示在所述输出图像中所述多边形对应的像素的像素坐标,计算在描绘于所述多边形的图像中与所述像素坐标对应的坐标作为像素对应纹理坐标;以及
坐标转换部,其根据所述配置信息,将所述像素对应纹理坐标转换成包含所述纹理图集中结合的所述描绘用纹理的范围内的坐标,输出转换后的坐标作为转换坐标。
2.根据权利要求1所述的纹理映射装置,其中,
所述纹理映射装置具有纹理拾取部,该纹理拾取部根据由所述坐标转换部输出的所述转换坐标,从所述纹理图集中提取颜色信息,根据提取出的颜色信息涂满由所述像素坐标表示的像素。
3.根据权利要求2所述的纹理映射装置,其中,
所述纹理图集生成部具有:
纹理扩张部,其对所述多个纹理的各纹理进行扩张;以及
纹理配置部,其结合由所述纹理扩张部扩张后的纹理而生成所述纹理图集,并且,生成表示所述纹理图集中的所述描绘用纹理的配置的配置信息,
所述坐标转换部根据所述配置信息,将所述像素对应纹理坐标转换成作为包含所述描绘用纹理的对所述描绘用纹理进行扩张后的范围内的坐标的所述转换坐标。
4.根据权利要求3所述的纹理映射装置,其中,
所述纹理扩张部在X轴方向和Y轴方向上一个像素一个像素地对所述多个纹理的各纹理进行扩张。
5.根据权利要求3或4所述的纹理映射装置,其中,
所述纹理拾取部对所述转换坐标所示的位置的像素周围的多个像素的颜色进行插值,由此提取所述颜色信息。
6.根据权利要求1~5中的任意一项所述的纹理映射装置,其中,
在所述多边形信息中设定通过重复所述描绘用纹理而描绘于所述多边形的图像中的所述顶点纹理坐标。
7.根据权利要求1~5中的任意一项所述的纹理映射装置,其中,
在所述多边形信息中设定通过钳制所述描绘用纹理而描绘于所述多边形的图像中的所述顶点纹理坐标。
8.根据权利要求1~7中的任意一项所述的纹理映射装置,其中,
所述坐标转换部使用与纹理循环模式对应的转换式,将所述像素对应纹理坐标转换成所述转换坐标。
9.根据权利要求2所述的纹理映射装置,其中,
所述纹理拾取部提取表示所述转换坐标所示的位置的像素的颜色的信息作为所述颜色信息。
10.一种纹理映射装置的纹理映射方法,在作为多边形区域的多边形中使用描绘用纹理进行描绘,其中,
所述纹理映射装置具有多边形信息存储部,该多边形信息存储部存储设定有顶点坐标和顶点纹理坐标的多边形信息,该顶点坐标表示由多个像素构成的输出图像中的所述多边形的顶点的位置,该顶点纹理坐标表示根据所述描绘用纹理而描绘于所述多边形的图像中的与所述顶点坐标对应的位置,
纹理图集生成部结合包含所述描绘用纹理在内的多个纹理而生成纹理图集,并且,生成表示所述纹理图集中的所述描绘用纹理的配置的配置信息,
像素坐标计算部根据所述多边形信息,检测表示在所述输出图像中所述多边形对应的像素的像素坐标,计算在描绘于所述多边形的图像中与所述像素坐标对应的坐标作为像素对应纹理坐标,
坐标转换部根据所述配置信息,将所述像素对应纹理坐标转换成所述纹理图集的坐标即包含所述纹理图集中结合的所述描绘用纹理的范围内的坐标,输出转换后的坐标作为转换坐标。
11.一种纹理映射装置的程序,在作为多边形区域的多边形中使用描绘用纹理进行描绘,其中,
所述纹理映射装置具有多边形信息存储部,该多边形信息存储部存储设定有顶点坐标和顶点纹理坐标的多边形信息,该顶点坐标表示由多个像素构成的输出图像中的所述多边形的顶点的位置,该顶点纹理坐标表示根据所述描绘用纹理而描绘于所述多边形的图像中的与所述顶点坐标对应的位置,
所述程序使计算机执行以下处理:
纹理图集生成处理,结合包含所述描绘用纹理在内的多个纹理而生成纹理图集,并且,生成表示所述纹理图集中的所述描绘用纹理的配置的配置信息;
像素坐标计算处理,根据所述多边形信息,检测表示在所述输出图像中所述多边形对应的像素的像素坐标,计算在描绘于所述多边形的图像中与所述像素坐标对应的坐标作为像素对应纹理坐标;以及
坐标转换处理,根据所述配置信息,将所述像素对应纹理坐标转换成所述纹理图集的坐标即包含所述纹理图集中结合的所述描绘用纹理的范围内的坐标,输出转换后的坐标作为转换坐标。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2015/059083 WO2016151790A1 (ja) | 2015-03-25 | 2015-03-25 | テクスチャマッピング装置、テクスチャマッピング方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107430783A true CN107430783A (zh) | 2017-12-01 |
Family
ID=56978097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580077771.3A Withdrawn CN107430783A (zh) | 2015-03-25 | 2015-03-25 | 纹理映射装置、纹理映射方法和程序 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20180033185A1 (zh) |
JP (1) | JP6320624B2 (zh) |
CN (1) | CN107430783A (zh) |
DE (1) | DE112015006360T5 (zh) |
WO (1) | WO2016151790A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115830091A (zh) * | 2023-02-20 | 2023-03-21 | 腾讯科技(深圳)有限公司 | 纹理图像的生成方法、装置、设备、存储介质及产品 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107463398B (zh) * | 2017-07-21 | 2018-08-17 | 腾讯科技(深圳)有限公司 | 游戏渲染方法、装置、存储设备及终端 |
WO2020129201A1 (ja) * | 2018-12-20 | 2020-06-25 | 三菱電機株式会社 | 情報処理装置、プログラム及び情報処理方法 |
US11823421B2 (en) * | 2019-03-14 | 2023-11-21 | Nokia Technologies Oy | Signalling of metadata for volumetric video |
JP7312040B2 (ja) | 2019-06-28 | 2023-07-20 | Biprogy株式会社 | テクスチャマッピング装置およびテクスチャマッピング用プログラム |
CN114565941A (zh) * | 2021-08-24 | 2022-05-31 | 商汤国际私人有限公司 | 纹理生成方法、装置、设备及计算机可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006244426A (ja) * | 2005-03-07 | 2006-09-14 | Sony Computer Entertainment Inc | テクスチャ処理装置、描画処理装置、およびテクスチャ処理方法 |
-
2015
- 2015-03-25 JP JP2017507238A patent/JP6320624B2/ja active Active
- 2015-03-25 DE DE112015006360.9T patent/DE112015006360T5/de not_active Withdrawn
- 2015-03-25 US US15/549,940 patent/US20180033185A1/en not_active Abandoned
- 2015-03-25 CN CN201580077771.3A patent/CN107430783A/zh not_active Withdrawn
- 2015-03-25 WO PCT/JP2015/059083 patent/WO2016151790A1/ja active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115830091A (zh) * | 2023-02-20 | 2023-03-21 | 腾讯科技(深圳)有限公司 | 纹理图像的生成方法、装置、设备、存储介质及产品 |
Also Published As
Publication number | Publication date |
---|---|
JP6320624B2 (ja) | 2018-05-09 |
WO2016151790A1 (ja) | 2016-09-29 |
JPWO2016151790A1 (ja) | 2017-06-15 |
US20180033185A1 (en) | 2018-02-01 |
DE112015006360T5 (de) | 2017-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107430783A (zh) | 纹理映射装置、纹理映射方法和程序 | |
JP6563048B2 (ja) | スクリーンの位置によって異なる解像度のターゲットの複数レンダリングのテクスチャ・マッピングの傾き調整 | |
KR101925292B1 (ko) | 비-정규 직교 그리드로의 텍스처 매핑을 위한 그라디언트 조정 | |
KR20080050279A (ko) | 다단계 해상도 지형의 이미지 튐 현상 완화 장치 및 방법 | |
TW201101228A (en) | Image processing method and related apparatus for rendering two-dimensional image to show three-dimensional effect | |
US20200279415A1 (en) | Efficiently Computed Distance Fields | |
US20210005008A1 (en) | Gradient adjustment for texture mapping to non-orthonormal grid | |
KR20200054299A (ko) | 색 영역 매핑 방법 및 색 영역 매핑 장치 | |
JP5254250B2 (ja) | ベクトルグラフィックをラスター化するプロセスにおいて境界を発生させるための方法およびシステム、ならびに、システムを製造するための方法 | |
US20160314615A1 (en) | Graphic processing device and method for processing graphic images | |
US10109102B2 (en) | Rendering an infinite plane | |
CN113744364B (zh) | 图像处理方法和装置 | |
CN103839217A (zh) | 一种水印图片的实现方法 | |
CN109155074B (zh) | 用于无缝隙地渲染点的系统和方法 | |
JP5788028B2 (ja) | グラデーション描画装置 | |
CN117726711A (zh) | 特效图像生成方法、装置、电子设备及存储介质 | |
JP6174873B2 (ja) | 画像処理装置、画像処理装置の制御方法及びプログラム | |
JP2006127368A (ja) | 奥行き値によるガンマ補正機能を備えたグラフィックス描画装置 | |
KR100927131B1 (ko) | 안티 알리어싱 방법 및 장치 | |
JP2008090853A (ja) | 映像信号処理装置および映像信号処理方法 | |
JPH03194671A (ja) | 図形処理システム | |
JP2011114381A (ja) | 映像信号処理装置、仮想現実感生成システム | |
KR20160077559A (ko) | 실시간 집적 영상 생성 방법 | |
JP2008059608A (ja) | 映像信号処理装置および映像信号処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20171201 |
|
WW01 | Invention patent application withdrawn after publication |