发明内容
本发明鉴于以上问题,其第1目的在于,提供一种能够通过简单的图像处理来表示出游戏人物的头发等毛发长出来的样子的图像处理装置以及图像处理方法。
另外,其第2目的在于,提供一种能够通过简单的图像处理来改变显示图像的全部或一部分的图像处理装置以及图像处理方法。
为了解决上述问题,本发明中的图像处理装置,是显示人物的图像的图像处理装置,其特征在于,具有:毛发纹理图像存储机构,其存储表示上述人物的毛发的毛发纹理图像;底肤纹理图像存储机构,其存储表示上述人物的底层肌肤的底肤纹理图像;显示优先级存储机构,其存储构成上述毛发纹理图像的各个像素的显示优先级;阈值存储机构,其存储上述显示优先级的阈值;底肤纹理图像绘制机构,其对表示上述人物的多边形,绘制存储在上述底肤纹理图像存储机构中的上述底肤纹理图像;以及,毛发纹理图像绘制机构,对被上述底肤纹理图像绘制机构绘制了上述底肤纹理图像的上述多边形,根据上述显示优先级存储机构中存储的显示优先级、与上述阈值存储机构中存储的上述阈值的比较结果,绘制存储在上述毛发纹理图像存储机构中的上述毛发纹理图像。
另外,本发明中的图像处理方法,是显示人物的图像的图像处理方法,其特征在于,具有:将表示上述人物的毛发的毛发纹理图像,存储到毛发纹理图像存储机构中的毛发纹理图像存储步骤;将表示上述人物的底层肌肤的底肤纹理图像,存储到底肤纹理图像存储机构中的底肤纹理图像存储步骤;将构成上述毛发纹理图像的各个像素的显示优先级,存储到显示优先级存储机构中的显示优先级存储步骤;将上述显示优先级的阈值,存储到阈值存储机构中的阈值存储步骤;对表示上述人物的多边形,绘制存储在上述底肤纹理图像存储机构中的上述底肤纹理图像的底肤纹理图像绘制步骤;以及,对被上述底肤纹理图像绘制机构绘制了上述底肤纹理图像的上述多边形,根据上述显示优先级存储机构中所保存的显示优先级、与上述阈值存储机构中所保存的上述阈值的比较结果,绘制存储在上述毛发纹理图像存储机构中的上述毛发纹理图像的毛发纹理图像绘制步骤。
另外,本发明中的计算机可读信息存储媒体,是一种存储有用来让个人计算机、家用游戏机、商用游戏机、便携游戏机、便携信息终端、移动电话机、家庭服务器等计算机具有作为显示出人物的图像的图像处理装置的功能的计算机可读信息存储媒体,其特征在于,存储有包括用来让上述计算机起到作为如下机构的功能的命令的程序:毛发纹理图像存储机构,其存储表示上述人物的毛发的毛发纹理图像;底肤纹理图像存储机构,其存储表示上述人物的底层肌肤的底肤纹理图像;显示优先级存储机构,其存储构成上述毛发纹理图像的各个像素的显示优先级;阈值存储机构,其存储上述显示优先级的阈值;底肤纹理图像绘制机构,其对表示上述人物的多边形,绘制存储在上述底肤纹理图像存储机构中的上述底肤纹理图像;以及,毛发纹理图像绘制机构,对被上述底肤纹理图像绘制机构绘制了上述底肤纹理图像的上述多边形,根据上述显示优先级存储机构中存储的显示优先级、与上述阈值存储机构中存储的上述阈值的比较结果,绘制存储在上述毛发纹理图像存储机构中的上述毛发纹理图像。
本发明中,例如将表示毛发未长出的样子等的底肤纹理图像,对表示人物的多边形绘制。而且,本发明中,存储有构成毛发纹理图像的各个像素的显示优先级,对应于该显示优先级与阈值之间的比较结果,再绘制毛发纹理图像。毛发纹理图像,例如表示毛发长出来的样子等。根据本发明,能够通过比较简单的图像处理,恰当显示出长出了毛发(头发与胡须等)的样子。
另外,上述毛发纹理图像绘制机构,可对被上述底肤纹理图像绘制机构绘制了上述底肤纹理图像的上述多边形,根据上述显示优先级存储机构中所保存的各个像素的显示优先级与上述阈值存储机构中所保存的上述阈值之间的比较结果,进行该像素的绘制。另外,上述显示优先级存储机构,可以将各个像素的显示优先级作为上述毛发纹理图像的阿尔法值存储起来。
另外,本发明中的图像处理装置,其特征在于,具有:存储第1纹理图像的第1纹理图像存储机构;存储第2纹理图像的第2纹理图像存储机构;显示优先级存储机构,其存储构成上述第1纹理图像的各个像素的显示优先级;存储上述显示优先级的阈值的阈值存储机构;第2纹理图像绘制机构,其对与上述第1与第2纹理图像相关联的多边形,绘制存储在上述第2纹理图像存储机构中的上述第2纹理图像;以及,第1纹理图像绘制机构,其对被上述第2纹理图像绘制机构绘制了上述第2纹理图像的上述多边形,根据上述显示优先级存储机构中所保存的显示优先级与上述阈值存储机构中所保存的上述阈值的比较结果,绘制存储在上述第1纹理图像存储机构中的上述第1纹理图像。
另外,本发明中的图像处理方法,其特征在于,具有:将第1纹理图像存储到第1纹理图像存储机构中的第1纹理图像存储步骤;将第2纹理图像存储到第2纹理图像存储机构中的第2纹理图像存储步骤;将构成上述第2纹理图像的各个像素的显示优先级,存储到显示优先级存储机构中的显示优先级存储步骤;将上述显示优先级的阈值的存储到阈值存储机构中的阈值存储步骤;对与上述第1和第2纹理图像相关联的多边形,绘制存储在上述第2纹理图像存储机构中的上述第2纹理图像的第2纹理图像绘制步骤;以及,对被上述第2纹理图像绘制机构绘制了上述第2纹理图像的上述多边形,根据上述显示优先级存储机构中所保存的显示优先级、与上述阈值存储机构中所保存的上述阈值的比较结果,绘制存储在上述第1纹理图像存储机构中的上述第1纹理图像的第1纹理图像绘制步骤。
另外,本发明中的计算机可读信息存储媒体,其特征在于,存储有用来让个人计算机、家用游戏机、商用游戏机、便携游戏机、便携信息终端、移动电话机、家庭服务器等计算机起到作为如下机构的功能的程序:存储第1纹理图像的第1纹理图像存储机构;存储第2纹理图像的第2纹理图像存储机构;显示优先级存储机构,其存储构成上述第1纹理图像的各个像素的显示优先级;存储上述显示优先级的阈值的阈值存储机构;第2纹理图像绘制机构,其对与上述第1与第2纹理图像相关联的多边形,绘制存储在上述第2纹理图像存储机构中的上述第2纹理图像;以及,第1纹理图像绘制机构,其对被上述第2纹理图像绘制机构绘制了上述第2纹理图像的上述多边形,根据上述显示优先级存储机构中所保存的显示优先级与上述阈值存储机构中所保存的上述阈值的比较结果,绘制存储在上述第1纹理图像存储机构中的上述第1纹理图像。
本发明中,绘制第2纹理图像。存储有构成第1纹理图像的各个像素的显示优先级,根据该显示优先级与阈值的比较结果,再绘制第2纹理图像。根据本发明,能够通过比较简单的图像处理,将第2纹理图像的全部或一部分,按照上述显示优先级存储机构的存储内容,替换为第1纹理图像,表现出图像的全部或一部分发生了变化的样子。
本发明的一个方式中,上述第1纹理图像,为表示与上述多边形相关联的对象中出现了给定变化之后的该对象的图像;上述第2纹理图像,为表示与上述多边形相关联的对象中出现上述给定变化之前的该对象的图像;上述显示优先级存储机构,按照上述给定变化的方向存储显示优先级。例如,在表示物体被液体弄湿的样子时,或表现液体从物体中渗出的样子时,可以使用例如表示被液体弄湿后的物体的图像或表示渗出了液体之后的物体的图像,作为第1纹理图像,使用例如表示被液体湿润前的物体的图像或表示渗出液体之前的物体的图像,作为第2纹理图像。这种情况下,显示优先级存储机构中,可以按照首先被液体弄湿的方向来存储显示优先级。另外,在表现草的生长的样子的情况下,可以使用例如表示长出草之后的地面的图像作为第1纹理图像,使用例如表示长出草之前的地面的图像作为第2纹理图像。这种情况下,显示优先级存储机构中,可以按照草生长的方向来存储显示优先级。
具体实施方式
下面对照附图对本发明的实施方式进行详细说明。
图1为说明本发明的一个实施方式中的游戏装置的构成的图。该图中所示的游戏装置(图像处理装置)10,通过在连接有监视器18以及扬声器22的家用游戏机(计算机游戏系统)11中,安装作为信息存储媒体的DVD-ROM25而构成。这里,虽然将游戏程序或游戏数据存储在DVD-ROM25中,将其读出并提供给家用游戏机11,但同样也可以使用CD-ROM以及ROM卡等其他任何信息存储媒体。另外,还可以经通信网络远程地将游戏程序以及游戏数据提供给家用游戏机11。
家用游戏机11中,微处理器14、图像处理部16、主存储器26以及输入输出处理部30,经总线12相连接,能够互相进行数据通信,再有,输入输出处理部30中,连接有控制器32、声音处理部20以及DVD-ROM再生部24。控制器32以外的家用游戏机11的各个构成要素,收置在机箱中。监视器18例如使用家用电视机,扬声器22例如使用内置于其中的扬声器。
微处理器14,基于存储于图中未显示的ROM中的操作系统、以及从DVD-ROM25(计算机可读取的信息存储媒体)中读出的游戏程序,对家用游戏机11的各个部分进行控制。总线12用来在家用游戏机11的各个部中交换地址以及数据。另外,主存储器26中包含有RAM,其根据需要写入从DVD-ROM25中读取的游戏程序以及游戏数据,或用于辅助微处理器14的工作。
图像处理部16包含有VRAM构成,接收自微处理器14所发送的图像数据后在VRAM上描绘游戏画面,同时,将其内容变换成视频信号,在给定时刻输出给监视器18。
即图像处理部16,从微处理器14接收视点坐标系中的各个多边形的顶点坐标(X,Y,Z)、顶点颜色信息(R,G,B)、纹理坐标(VX,VY)以及阿尔法值等。之后,将使用这些信息构成显示图像的各个像素的颜色信息、Z值(浓度信息)以及阿尔法值(α)值等,绘制在VRAM中。该显示图像被在给定时刻输出给监视器18。
在VRAM中绘制像素(颜色信息、Z值、阿尔法值)时,能够任意执行像素测试。像素测试中具有阿尔法测试、目的地阿尔法测试、以及浓度测试,根据来自微处理器14的指示,实施任意的像素测试。其中,阿尔法测试中,将绘制像素的阿尔法值与所赋予的基准阿尔法值进行比较,在不满足指定条件的情况下,限制该像素的绘制。目的地阿尔法测试中,将绘图目的地的像素(VRAM的绘图目的地地址中已绘制的像素)的阿尔法值(目的地阿尔法值)、与给定值(0×80)进行比较,在不满足指定条件的情况下,限制该像素的绘制。浓度测试中,将绘图像素的Z值、与(准备在VRAM中)Z缓存的Z值进行比较,在不满足给定条件的情况下,限制该像素的绘制。另外,在向VRAM中绘制像素的情况下,能够实施屏蔽,能够任意禁止对各个像素的颜色信息、Z值以及阿尔法值的写入。
输入输出处理部30,为用来对控制器32、声音处理部20以及DVD-ROM再生部24的每一个与微处理器14之间的数据通信进行中转的接口。控制器32,为玩者用来操作游戏的输入机构。输入输出处理部30,以一定的周期(例如每1/60秒)对控制器32的各种按钮的操作状态进行扫描,将表示该扫描结果的操作信号,经总线12发送给微处理器14。微处理器14根据该操作信号来判断玩者的游戏操作。声音处理部20包含有声音缓存,对从DVD-ROM25中读出并存储在声音缓存中的音乐以及游戏音效等数据进行再生,从扬声器22输出。DVD-ROM再生部24,按照来自微处理器14的指示,读取存储在DVD-ROM25中的游戏程序以及游戏数据。
下面,对使用具有该硬件结构的游戏装置10,恰当地表现出设置在虚拟三维空间的游戏人物对象的毛发(例如头发或胡须等)的技术进行说明。
图2展示的是表示游戏人物的对象,由游戏装置10将其样子显示在监视器18中。该游戏人物对象50由多边形构成,设置在构建于游戏装置10的主存储器26上的虚拟三维空间(游戏空间)中。另外,构成该游戏人物对象50的各个多边形上,粘贴(映射)有表示游戏人物的容貌的纹理图像。图3中表示的是,粘贴有纹理图像的游戏人物对象50。其中,特别是在构成头部(头皮部)52的多边形上,粘贴有表示游戏人物的底层肌肤的底肤纹理图像,之后再重叠着粘贴表示毛发完全生长的状态的毛发纹理图像。然后,在粘贴毛发纹理图像时,只对构成它的像素中、满足给定条件的覆盖在底肤纹理图像上,除此以外底肤纹理图像的颜色信息保留。另外,构成对象的多边形(数据)、与粘贴在该多边形上的底肤纹理图像(数据)以及毛发纹理图像(数据),被在游戏装置10中彼此关联。这样,就算使用相同的底肤纹理图像以及毛发纹理图像,也可如该图(a)以及(b)所示,以不同头发长度显示游戏人物对象50。
图4(a)为表示毛发纹理图像之一例的图,该图(b)为表示对应于该毛发纹理图像的显示优先级映象(map)之一例的图,该图(c)为表示对应于该毛发纹理图像的底肤纹理图像之一例的图。它们均由对应于同一个像素群的信息构成。该图(a)中所示的毛发纹理图像52a,表示游戏人物的头发完全生长的状态,全部像素上与表示头发颜色的颜色信息相对应。另外,该图(b)中所示的显示优先级映象52b,表示的是在显示毛发纹理图像52a的各个像素的颜色信息(在VRAM中绘制)时的优先级(显示优先级),是与各个像素对应着存储显示优先级形成的。这里,从毛发纹理图像52a的一方向另一方,表示显示优先级的数值减少。另外,本实施方式中,可对毛发纹理图像52a设定阿尔法通道,将显示优先级映象52b用该阿尔法通道构成。这种情况下,将各个像素的显示优先级作为该像素的阿尔法值存储起来。另一方面,该图(c)中所示的底肤纹理图像52c,表示游戏人物的底肤,在各个象素中被与表示底肤颜色的颜色信息对应。
本实施方式中,在构成游戏人物对象50的头部52的多边形上,映射底肤纹理图像52c来在VRAM中描绘显示图像,之后,再参照对应于底肤纹理图像52c的显示优先级映象52b,对显示优先级为毛发量参数(给定阈值)以上的像素,覆盖记录在对应于底肤纹理图像52c的毛发纹理图像52a的数据中的、该像素的颜色信息(改写像素的颜色信息)。上述毛发量参数,可以在图中未表示的设定画面中根据控制器32的操作输入来设定,并保存在主存储器26或存储卡(图中未表示)等存储机构中。另外,还可以根据图中未表示的计时器或日历的输出,设定或更新上述毛发量参数。
这里,对游戏装置10的游戏画面生成处理进行说明。图5为表示游戏装置10中执行的游戏画面生成处理的流程图。该处理在游戏装置10中,根据存储在DVD-ROM25中的程序,间隔给定时间(例如1/60秒)实施。
首先,如图5所示,游戏装置10中,根据微处理器14从DVD-ROM25中读出的游戏程序以及游戏数据,首先进行游戏环境处理(S101)。在游戏环境处理中,运算出虚拟三维空间的所有静态对象以及动态对象的位置与姿势。静态对象例如为建筑物对象等这种,即使游戏进行其位置也不会发生变化的对象。与此相对,动态对象为游戏人物对象50或交通工具对象等这种,随着游戏的进行其位置与姿势都会发生变化的对象。动态对象的位置与姿势,根据游戏程序以及从控制器32输入的操作信号变化。另外,在游戏环境处理中,还计算出视点与视野范围。然后,对离开视野范围的对象,从以后的游戏处理的对象中排除。
接下来,微处理器14进行几何处理(S102)。几何处理中进行从完全坐标系到视点坐标系的坐标变换。另外,构成对象的各个多边形的顶点的颜色信息,被根据光源信息(光源的颜色以及位置)修正。再有,还实施剪辑(clipping)处理。
之后,微处理器14从主存储器26等存储机构中读出已经设定的毛发量参数(S103)。毛发量参数,既可以对每一个游戏人物对象设定,也可以对出现在游戏中的所有游戏人物共通设定,还可以对每一个毛发纹理图像来进行设定。S103中,可以只读出以后的处理中所需要的毛发量参数。
接下来,微处理器14进行着色处理(S104)。该处理中,微处理器14将属于视野范围内的各个多边形的顶点坐标、顶点颜色信息、纹理坐标以及阿尔法值,发送给图像处理部16,图像处理部16中根据这些信息在VRAM上形成显示图像。此时,在对构成游戏人物50的头部52的多边形,映射毛发纹理图像52a的情况下,进行对应于S103中所读出的毛发量参数的绘图处理。在给定时刻读出形成在图像处理部16的VRAM中的游戏图像,通过监视器18来显示。
图6为详细说明图5中所示的游戏画面生成处理中的着色处理(S104)的流程图。如该图所示,着色处理中,首先判断当前的绘图对象是否为应当映射毛发纹理图像的多边形(S201)。然后,如果不是这样的多边形,便像通常一样,映射对应于该多边形的纹理图像(通过纹理坐标来确定)来在VRAM中绘图(形成显示图像)(S202),如果有未处理的多边形(S203),便将处理对象移至下个多边形(S204),再次回到S201的判断。
另一方面,判断为当前的绘图对象是应当映射毛发纹理图像的多边形后,接着根据纹理坐标读出底肤纹理图像,将其绘制在VRAM中(S205)。再实施使用S103所读出的毛发量参数的阿尔法测试,同时根据测试结果,将对应于底肤纹理图像的毛发纹理图像,覆盖在该底肤纹理图像的绘图部分上。具体来说,读出对应于毛发纹理图像的各个像素的显示优先级,对该显示优先级与毛发量参数进行比较。然后,如果显示优先级为毛发量参数以上,便将毛发纹理图像中所记录的该像素的颜色信息,代替底肤纹理图像中的对应像素的颜色信息,写入到VRAM中。
之后,如果有未处理的多边形(S203),便将处理对象移至下个多边形(S204),再次回到S201的判断。另外,如果没有未处理的多边形,便结束着色处理。
根据以上所说明的游戏装置10,即使没有准备多个毛发图像,也能够根据控制器32上的操作、或根据时间经过,来改变毛发量参数,将对应于该值的量的毛发,显示在游戏人物对象50的头部52上。
另外,本发明并不仅限于以上实施方式。例如,本发明并不仅限于涉及游戏的图像处理,还能够适用于所有的三维图像处理。例如,在三维CG动画、飞行模拟器、驾驶模拟器等中,也能够应用本发明。
另外,虽然以上的说明中,取了在毛发的变化中应用本发明的示例,但在各种物体的各种变化中均能够应用本发明。即,只要预先准备好表示物体变化前的外观的第1纹理图像、表示物体变化后的外观的第2纹理图像、以及按照该物体中的该变化的方向设定的显示优先级映象,就能够简单地表现物体的变化。
图7(a)为说明第1纹理图像的一例的图,该图(b)为表示对应于该第1纹理图像的显示优先级映象的一例的图,该图(c)为表示对应于第1纹理图像的第2纹理图像的一例的图。另外,该图(d)为表示使用这些图像以及映象的显示图像的一例的图。
第1以及第2纹理图像,以及显示优先级映象,均由对应同一个像素群的信息构成。该图(a)所示的第1纹理图像60a,例如为粘贴在地板多边形上的图像,是表示地板全部被弄湿的状态的图像等。另外,该图(b)中所示的显示优先级映象60b,表示显示(在VRAM中绘制)第1纹理图像60a的各个像素的颜色信息时的优先级(显示优先级),是对应着各个像素存储显示优先级形成的。而且,显示优先级映象60b,表示与第1以及第2纹理图像相关联的对象中产生的变化的方向,被作成为值按照该变化的方向来变化。这里,从第1纹理图像60a的中心向周边部,表示显示优先级的数值减少。即,显示优先级映象60b,划分为区域62-1~62-4,按照该顺序,位于各个区域内的像素所对应的显示优先级减少。这里,虽然在区域单位中改变显示优先级,但当然也可以用像素单位来改变显示优先级。
另外,本实施方式中,可在第1纹理图像60a中设定阿尔法通道,显示优先级映象60b由该阿尔法通道构成。这种情况下,将各个像素的显示优先级作为该像素的阿尔法值存储起来。另一方面,该图(c)中所示的第2纹理图像60c,例如为表示地板完全没被弄湿的状态的图像等。如果使用第1纹理图像60a、第2纹理图像60c、显示优先级映象60b,便能够得到例如该图(d)所示的显示图像。该图(d)中所示的显示图像,显示的是阈值被如下设定的情况:对位于区域62-1以及62-2的内部的像素,实际绘制第1纹理图像60a,除此之外在VRAM中保留第2纹理图像60c的颜色信息。通过以上这样,能够恰当地显示出各种物体的各种变化。
如上所述,本发明能够用于游戏机等计算机中,存储有表示人物的毛发的毛发纹理图像、表示人物的底层肌肤的底肤纹理图像、构成毛发纹理图像的各个像素的显示优先级、以及显示优先级的阈值,在对表示人物的多边形绘制底肤纹理图像的同时,还对该多边形,根据上述显示优先级与上述阈值的比较结果,绘制上述毛发纹理图像,因此,能够用简单的图像处理,通过变更阈值,来显示头发生长的样子。
另外,根据本发明,存储有第1纹理图像、第2纹理图像、构成第1纹理图像的各个像素的显示优先级、以及显示优先级的阈值,在对与第1和第2纹理图像关联的多边形绘制第2纹理图像的同时,还对该多边形,根据上述显示优先级与上述阈值的比较结果,绘制上述第1纹理图像,因此,能够用简单的图像处理,通过变更阈值来显示出显示图像的全部或一部分发生变化的样子。