以下,参照图1~13,详细说明本发明的实施例。
图1是本发明一实施例的游戏机***的构成图。本实施例的战斗图场内,可显示多个敌方动画人物。游戏者操作控制器的十字键,可变动我方动画人物的位置。而且,游戏者可对该动画人物发出向与其对峙的敌人进攻的命令。各动画人物均预先付与了能量值,而且从图场内可清除能量值变为“0”的动画人物。为结束一场战斗,必须打败敌方的大将。而自方的大将被打败时,则游戏完毕。
图1所示的游戏机***是由游戏机本体1和记录由图像、声音、以及程序数据组成的游戏数据的记录媒体30构成的。游戏机本体1是由以下部分构成的,即:与CPU1连接的图形数据生成处理器3;由地址、数据及控制流路组成的总线2;分别与该总线2连接的接口电路4、主存储器5、ROM6、扩展电路7、并行端口8、串行端口9、描图处理器10及缓冲器11;声音处理器13及缓冲器14;译码器17及缓冲器18;和接口电路20及存储器21。而描图处理器10与电视监视器12连接;声音处理器13经放大电路15与扬声器16连接;译码器17与记录媒体驱动器19连接,接口电路20与控制器22连接。
所述游戏器***根据用途的不同,可做成不同的形态。即,当所述游戏机是家庭用的构成时,电视监视器及扬声器可与游戏机***本体做成相互独立的部分。而当所述游戏机的是业务用的构成***时,则将图1所示构成要件全部都收纳在做成的整体的体积中。而在所述游戏机是以个人电脑或工作站为核心构成的情况下,所述电视监视器12与计算机用的显示器对应,所述描图处理器10、声音处理器13、扩展电路7分别与所述记录体30中记录的游戏程序数据的一部分或插在计算机扩展槽中的扩展板上的硬件对应,所述接口电路4、所述并行端口8、所述串行端口9及接口电路20与插在计算机扩展槽中的扩展板上的硬件对应。而所述缓冲器11、14、及18,分别与主存储器5或图中未示的扩展存储器的各区域对应。本实施例的所述游戏机***以家庭用的构成为例进行说明。
以下,详细说明图1所示的各构成要素。图形数据生成处理器3,如称之为CPU1,则起协处理器的作用,即,该图形数据生成处理器3是用并行处理进行坐标变换、光源计算,例如,定点形式的矩阵、矢量运算的。该图形数据生成处理器3的主要处理是坐标变换处理及光源计算处理。坐标变换处理是,将由CPU供给的图像数据的二维或者三维面内的各顶点的绝对坐标数据,根据移动量数据及旋转量数据,求出处理对象图像的显示区域地址,并将该地址数据再度送回到CPU的处理。有关该坐标变换处理将在后面详述。
而光源计算处理,是根据光线矢量数据、显示屏向多边形面的法线数据以及显示屏的颜色数据,计算图像辉度的处理。
所述接口电路4是用于外部设备,例如,鼠标、跟踪球等指令设备的接口电路,所述ROM6存储游戏机***的操作***的程序数据。对个人电脑而言,相当于BIOS(基本输入输出***)。
所述扩展电路7可对参照MPEG(运动图像专家组)、JPEG(联合图像专家组)的帧内编码压缩的图像进行解压缩处理。解压缩处理是译码处理(利用VLC:可变字长码编码数据的译码)、反量化处理、IDCT(Inverse DiscreteCosine Transform,反离散余弦变换)处理等帧内图像的复原处理等。
描图处理器10根据CPU1的描画命令进行对应缓冲器11的描画处理。缓冲器11由显示区和非显示区组成。显示区是电视机监视器12显示屏上所显示数据的展开区。而非显示区是纹理数据、彩色调色板数据等的存储区。这里,纹理数据是二维图像数据。而彩色调色板数据是用于指定纹理数据等颜色的数据。由CPU1从记录体30中一次读取或根据游戏器***的状态而分多次读取这些数据,并将其预存储在缓冲器11的非显示区。
描画命令有例如描画线的命令、用多边形描画立体图像的描画命令、描画普通二维图像的描画命令。这里,多边形是多角形的二维图像,本实施例可用三角形或四角形。
用于描绘线的描画命令是由描绘线的开始地址及结束地址、颜色及表示线描画的数据组成的,该线描画命令是由CPU1直接对描画处理器10发出的。
用多边形描绘立体图像的命令是由以下数据组成的,即:缓冲器11的显示区中的多边形顶点地址数据、表示贴在多边形上的纹理数据在缓冲器11中的存储位置的纹理地址数据、表示纹理数据颜色的调色板数据在缓冲器11中的存储位置的调色板地址数据以及表示纹理辉度的辉度数据。在这些数据中,多边形顶点地址数据是由图形数据生成处理器3根据CPU1来的多边形绝对坐标数据和表示多边形变动的数据、以及表示视点位置变动的数据进行运算而得到的。以下,说明如何求多边形顶点地址数据。
电视监视器12的显示屏上的物体的变动是由物体本身的变动和对该物体的视点的变动决定的。例如,仅物体变动而视点固定,则电视监视器12的显示屏上的物体的变动就是物体的变动。相反,物体不动而仅视点位置动,则电视监视器12的显示屏上的变动就是视点位置本身的变动。而将“视点位置”换成“照像机”则更易于理解。即,电视监视器12的显示屏上,好像是在进行照相机边动边拍摄物体的显示。为使说明简单,就物体或视点中的一方变动的情况进行说明。但通常,是按物体及视点的两方都在变动进行处理并显示其结果的。
另外,所述物体的“变动”由“旋转量”及“移动量”组成,对视点位置的物体的旋转量可由物体的转角、视点位置的转角生成。
这里,对旋转量、转角,对可用二维坐标系的处理,可用2×2的矩阵表示,而对用三维坐标系的处理,可用3×3的矩阵表示。而对视点位置的物体的变动量则利用物***置(坐标值)、视点位置的位置(坐标值)和视点的转角生成。这里,转角和上述相同。对用二维坐标系的处理按2×2的矩阵表示,对用三维坐标系的处理按3×3的矩阵表示。另外,按控制器22操作的物体转角、视点位置的转角,可分别做成表格保存。CPU1根据控制器22的操作,从表格读出对应的物体的转角、视点位置的转角,并将所读出的转角用于求相对视点位置的物体的旋转量、移动量等。
从以上的说明中可知,显示区上的多边形的顶点地址数据可按以下的方法求出,即,由CPU1根据控制器的操作,可求物体的转角及位置、以及视点转角和位置,由CPU1根据物体的转角和视点位置的转角,求相对视点位置的物体的旋转量。然后,由CPU1根据物体的位置和视点位置的位置及转角,求相对视点位置的物体的移动量。该物体的旋转量及移动量数据,如已说明的,用三维坐标系处理时,可用3×3矩阵表示。
所述物体的旋转量及移动量数据、和多边形的绝对坐标数据,可加到图形数据生成处理器3上。图形数据生成处理器3根据所述物体的旋转量及移动量数据,将多边形的绝对坐标数据变换成多边形顶点的地址数据。以上,是可获得多边形顶点的地址数据之前的处理。
所述多边形的顶点地址数据表示缓冲器11的显示区上的地址。描画处理器10在缓冲器11的显示区上设定以3或4个多边形的顶点地址数据表示出的三角形或四角形的范围,并在该范围中写入对应的纹理数据。该处理一般被称为纹理的粘贴等。由此,在电视监视器12的显示屏上,可显示多个粘贴纹理数据的多边形物体。
通常描画二维图像的描画命令,是由顶点地址数据、纹理地址数据、彩色调色板地址数据及表示纹理辉度的辉度数据组成的。在这些数据中,顶点地址数据是由图形数据生成处理器3将CPU1来的平面上的顶点坐标数据按照CPU1来的移动量数据变换后而得到的坐标数据。以下,有关描画处理用“发描画命令”表示,以简化描述。
声音处理器13将由记录媒体30读出的ADPCM数据存储在缓冲器14中,再以该缓冲器14中存储的ADPCM数据作为声源。而后,声音处理器13将ADPCM数据按照例如44.1KHZ频率的时钟读出。声音处理器13对从缓冲器14读出的ADPCM数据进行音调变换、附加杂音、设定包迹线、设定音平、附加混响等处理。在从记录媒体30读出的声音数据为PCM数据的情况下,由CPU1将该PCM数据变换成ADPCM数据。而且对PCM数据的程序数据的处理,可直接在主存储器5中进行。将经主存储器5中处理的、并对ADPCM形式的数据进行了编码的声音数据供给声音处理器13,再经上述的处理后,从扬声器16输出声音。
记录媒体驱动器19为例如硬磁盘驱动器、光盘驱动器、软磁盘驱动器、硅盘驱动器、盒式存储器媒体读取机等。记录媒体30为例如硬磁盘、光盘、软磁盘、半导体存储器等。记录媒体驱动器19从记录媒体30读出声音、游戏程序数据,再将读出的数据供给译码器17。对来自记录媒体驱动器19的再生数据,利用ECC进行纠错处理,并将实行纠错处理后的数据送到主存储器5或声音处理器13。
存储器21由例如托架及卡片型的存储器组成。卡片型的存储器用于保存游戏的各种参数,例如保存结束时刻的状态等。
控制器22是以下部分组成,即:由左键L、右键R、上键U、下键D组成的十字键和第一左按钮22L1、第二左按钮22L2、第一右按钮22R1、第二右按钮22R2、启动按钮22a、选择按钮22b、第一按钮22c、第二按钮22d、第三按钮22e、第四按钮22f。十字键是游戏者用来对CPU1给出表示上下左右的指令的。启动按钮22a是游戏者用于命令CPU1开始从记录媒体30加载游戏程序数据的。选择按钮22b是游戏者用于命令CPU1从记录媒体30向主存储器加载游戏程序数据的各种选择的。而第一左按钮22L1、第二左按钮22L2、第一右按钮22R1、第二右按钮22R2、启动按钮22a、选择按钮22b、第一按钮22c、第二按钮22d、第三按钮22e、第四按钮22f的功能则根据记录媒体30加载的游戏程序数据的不同而不同。
接通电源开关(图中未示),游戏机***电源投入使用。此时,如记录媒体30已由记录媒体驱动器19装填,则CPU1按照ROM6中存储的操作***,命令记录媒体驱动器19从记录媒体30读出游戏数据。由此,记录媒体驱动器19从记录媒体30中读出图像、声音及游戏程序数据。将所读出的图像、声音及游戏程序数据供给译码器17,并在其处进行纠错处理。译码器17中经过纠错处理的图像数据经总线2供给扩展电路7,在那里进行扩展处理后,供给描画处理器10,再由该描画处理器10写入缓冲器11的非显示区。
将译码器17中经过纠错处理的声音数据供给主存储器5或声音处理器13,并写入到主存储器5或缓冲器14中。而将译码器17中经过纠错处理的程序数据供给主存储器5并写入主存储器5。然后,CPU1根据主存储器5存储的游戏数据及游戏者经控制器22命令的内容进行游戏。即,CPU1根据主存储器5存储的游戏数据及游戏者经控制器22命令的内容,适当地进行图像处理控制、声音处理的控制、内部处理的控制。图像处理的控制,是将上述的旋转量及移动量数据、绝对坐标数据供给图形数据生成处理器3,并且发出由图形数据生成处理器3求出的、包含缓冲器11显示区的地址数据、辉度数据的描画命令等。声音处理控制是对声音处理器13发出输出声音的命令以及指定声平、混响等。内部处理控制为例如根据控制器22操作的运算等。
图2是图1所示的CPU1的机能的说明图。CPU1通过读从记录媒体30读取并存储在主存储器5的程序数据,而具有图2所示的功能。图2中的CPU1的功能是由以下装置构成的,即:按钮操作检测装置1a、运算装置1b、判断装置1c、变量设定装置1d、描画命令发布装置1e、操作信息,视点位置变换装置1f、图场信息管理装置1g、动画人物信息管理装置1h、光标信息管理装置1i。这些装置为后述的控制本体。
图3是图1所示游戏***用的表格一例的说明图,图3A是由图场数据组成的表格,图3B是由表示图场内的动画人物的位置和状态的数据组成的表格,图3C是按视点位置构成图场多边形的顶点地址数据、旋转量数据、移动量数据组成的表格。
图3A是可登录图场各位置高度的表格,该表格数据是从记录媒体30读出的,并被存储在主存储器5中。
图3B是由表示所述图场中的敌方或我方动画人物的位置、敌方的标志、能否行动的标志、设定能量以及现有能量组成的表格。该表格数据是从记录媒体30读出的,并被存储在主存储器5中。主存储器5存储的表格数据,根据各动画人物的状态、游戏进行的状况可随时改写其内容。图3C是将所述图场用多边形表示的表格。
这里动画人物的标志是表示在地址(x,y)所示的位置上是否存在动画人物,如存在动画人物,则该值为高电平“1”,而不存在时,该值为低电平“0”。设定能量依动画人物种类的不同而不同。战斗是将随机产生的减数值,从设定能量值中减去。现有的能量值是现在残存的能量值,如其变为“0”,则表示该动画人物已被打倒而可以去除。此时,该动画人物的人物标志变成低电平“0”。行动标志是表示地址(X,Y)所示位置的动画人物,行动是否结束的标志,当行动结束时,其值为高电平的“1”,而没结束时,该值为低电平“0”。这里,“行动”例如,所示的是攻击。
本实施例中,所述图场可显示多边形,而且,该图场按照控制器22第一左按钮22L1、第二左按钮22L2、第一右按钮22R1、第二右按钮22R2的操作而变动。即,当按压第一左按钮22L1时,所述图场顺序地可向左方旋转。当按压第二右按钮22R2时,所述图场顺序地向右方向旋转,而如按压第一右按钮22R1时,所述图场的眼前侧,被向上方抬起,而面向侧被向下方降落。而当按压第二右按钮22R2时,所述图场的面向侧向上方抬起,而眼前侧向下方降下。而且,本实施形态伴随以上说明的变动,光标图像的形状也可以变更。
当按压控制器22的第一左按钮22L1、第二左按钮22L2、第一右按钮22R1、第二右按钮22R2的任一个开关时,被按压按钮的种类和按压的次数可变换成视点位置。图3C所示的表格将所述视点位置数据取成指数,以便得到主存储器5上的多边形顶点的绝对坐标地址数据、旋转量数据及移动量。按所述地址数据从主存储器5读出的多边形顶点的绝对坐标数据(x,y,z)、旋转量数据及移动量数据,分别供给图形数据生成处理器3,作为生成描画命令的信息使用。
图4~图7是用于说明本实施例画面的显示例的。本实施例的图场可用模拟三维显示。如用模拟三维显示图场,对面向起伏侧的情况下,因该起伏的遮挡而看不清光标的位置。本实施例中,在图场的高度方向上,做成用模拟三维显示的多个光标。即,在高度方向将所显示的多个光标做成烟筒状,这样光标即使面向起伏侧,也能看清光标所在的位置。
图4是图场上所示的模拟三维显示的光标图像的一例的说明图。如图4所示,光标图像是由离图场F最近的位置显示的基本上是白色的菱形光标图像Cal、和在该光标Cal之上的所显示的多个半透明的光标图像组成的,画面上最高的位置,向下数第n个光标图形的符号为Can。由于作图的限制,图中未能示出,但对每帧,光标可以显示成不同样式的光标图像。因此,视觉上光标内可做成旋转进行显示。而除基本光标图像之外的光标图像的地址,对每帧是可变的。由此,在视觉上,恰好可被显示成竖起的烟,当然,所有的光标图像也可以做成半透明的,或变更所有的光标的位置。
通过操作十字键,可以在图场中移动图4所示的光标。图5是利用光标图像Cal选择动画人物CA的状态。光标图像Cal~Can呈烟筒状,如图6所示,光标图像Cal的位置虽面向起伏侧,但能看见其上部的Can以下的4个光标图像,因此,游戏者可以识别光标Cal的位置。而且本实施例通过操作第一左按钮22L1、第二左按钮22L2、第一右按钮22R1、第二右按钮22R2,可变更相对图场F的视点位置。换句话说,通过操作所述按钮,图场可按三维变形。而且,如图7所示,光标图像Cal~Can也可以与所述按钮连动地进行变形。
图8~图10是说明用游戏机***主例程控制动作的程序流程图。
只有步骤S1是由ROM6中存储的操作***来控制动作的。其他的步骤是由从记录媒体30读出的游戏程序数据控制动作的。而游戏程序数据控制的本体是已说明的图2所示的CPU1功能的各装置。
在步骤S1,记录媒体驱动器19按照操作***的命令,从记录媒体30读出图像、声音及游戏程序数据,并将该读出数据中的游戏程序数据存储到主存储器5。由此,使CPUl具有图2所示的功能。
另外,此时,图像及纹理数据被存储在描画处理器10的缓冲器11的非显示区,并分别付与纹理编号。而声音数据被存储在声音处理器13的缓冲器14中,并分别付与了声音编号数据。通常,所有的图像及声音数据在步骤S1并没有被保存在缓冲器11及14中,但为说明简便,在步骤S1,全部图像及声音是作为已被加载的。
在步骤S2,按钮操作检测装置1a判断控制器22的启动按钮22a是不是被按钮,如为“是”,则进入步骤S3。
在步骤S3,描画命令发布装置1e对图1所示的描画处理器10发布表示选择图像描画的描画命令,描画处理器10根据所述描画命令,将选择图像的图像数据在缓冲器11的显示屏上展开。由此,在电视监视器12的显示屏上,可显示选择图像。
在步骤S4,按钮操作装置1a判断控制器22的启动按钮22a是不是被按压,如为“是”,则进入步骤S5。
在步骤S5,CPU1对所选择的游戏进行设置。所选择的含意是,游戏者参照在步骤S3的选择图像,用十字键选择游戏,之后,按压启动按钮22a。而这里的“游戏”,除该游戏外,还包含,例如进行新游戏或进行存储卡里存储的上次的游戏等。实际上,主要是开始游戏前的选择事项。为说明简便,步骤S5选择的是进行新游戏。
在步骤S6,描画命令发布装置1e对描画处理器10发出显示所选择的游戏初始图像描画的描画命令。由此,描画处理器10在缓冲器11的显示区上写入起始图像的图像数据,再在电视监视器12的显示屏上显示起始图像。
在步骤S7,变量设定装置1d分别对主存储器5保存的标志、变量进行复位。
在步骤S8,判断装置1c判断是不是选择了上次的参数,如“是”,则转到步骤S100,如“不是”,则转到步骤S9。这里,上次的参数,是存储卡中存储的参数,是为了从上次的状态开始游戏的数据。例如,用于特定图场的数据(编号数据等)、图3B中所示的表格数据等。
在步骤S9,CPU1从存储器21读出上次的参数数据,所读出的上次的参数数据经接口电路20及总线2被存储到主存储器5。由此,游戏***按上次的参数进行设置。游戏者就可以开始接着上次继续进行游戏。
在步骤S100,是利用前置部分的处理例程所进行的处理。而所说的前置部分是在实际开始游戏之前的梗概图像显示。游戏者通过操纵控制器22的第一按钮22c,可以进入到游戏的开头。然后,如跳离该例程S100,就可以开始游戏。
在步骤S10,CPU1从存储器21读出作为初始值的参数数据,所读出的作为初始值的参数数据经接口电路20及总线2被存储到主存储器5。由此,游戏***按初始值设置参数,游戏者就可以从头开始游戏。
在步骤S200,是图场图像显示的例程处理。有关该显示图场图像的例程200,将在后面予以详述。
在步骤S300,是动画人物图像显示的例程处理,本实施例的动画人物显示的例程S300是用二维进行动画人物的显示处理的。即,对每个动画人物预先准备数种图像图案,并按每帧轮流显示。由此,可以让游戏者看到活动的动画人物。
在步骤S400,是光标图像显示的例程进行的处理,后面将详述有关该光标图像显示的例程。
在步骤S11,按钮操作检测装置1a判断十字键是不是被按压,如“是”,则移到步骤S12,如“不是”,则移到S15。
在步骤S12,光标信息管理装置1i变更主存储器5的光标地址保存区中所保存的光标地址数据(x,y)。
在步骤S13,光标信息管理装置1i将光标地址数据(x,y)存储到主存储器5的光标地址存储区。
在步骤S14,光标信息管理装置1i,将主存储器5的光标地址存储区中存储的光标地址数据(x,y)值所表示的高度数据Y,保存在主存储器5的高度数据保存区。
在步骤S15,按钮操作检测装置1a判断左右键是不是被按压,如“是”,则移到步骤S16,如“不是”,则移到S18。这里,左右键是指:第1左按钮22L1、第2左按钮22L2、第1右按钮22R1、第2右按钮22R2。本实施例通过所述按钮的操作,可变更图场及相对光标的视点位置。换言之,通过所述按钮的操作,可改变图场及光标的形状。
在步骤S16,操作信息。视点位置变换装置1f将控制器22来的操作信息变换成视点位置数据。
在步骤S17,操作信息,视点位置变换装置1f将视点位置数据存储在主存储器5中。这里所存储的视点位置数据,可作为从图4所示的图场读出主存储器5上的多边形绝对坐标数据的地址、旋转量及移动量的索引用。
在步骤S18,按钮操作检测装置1a判断第1按钮是否被按压,如“是”,则移到S19,如“不是”,则移到S32。
在步骤S19,动画人物信息管理装置1h读出主存储器5的光标地址存储区中存储的光标地址数据(x,y)所示位置的动画人物。然后,判断装置1c判断动画人物的标志位是否是“1”,如“是”,则移到S20,如“不是”,则移到S28。
在步骤S20,动画人物信息管理装置1h读出主存储器5的光标地址存储区中存储的光标地址数据(x,y)所示位置的行动标志,然后,判断装置1c判断行动标志位是否为“0”,如“是”,则移到S21,如“不是”,则移到S28。
在步骤S21,描画命令发布装置1e对描画处理器10发出表示动画人物用指令选择图像输出的描画命令。
在步骤S22,按钮操作检测装置1a检测控制器22的操作状态,然后,判断装置1c判断是否已输入指令,如“是”则移到S23,如是“否”,则移到S32。
在步骤S23,判断装置1c判断指令的内容是否为“移动”,如“是”,则移到S24,如是“否”,则移到S25。
在步骤S24,描画命令发布装置1e对描画处理器10发出表示报告移动范围图像输出的描画命令。
在步骤S25,判断装置1c判断指令的内容是否为“攻击”,如“是”,则移到S26,如是“否”,则移到S27。
在步骤S26,变量设定装置1d,设置攻击模式的参数。这里,攻击模式的参数是指进行攻击的动画人物的攻击力等。
在步骤S27,变量设定装置1d设置其它的参数。这里,其它的参数是指保持、移动、防御等攻击以外行动的各种参数。
在步骤S28,按钮操作装置1a检测控制器22的操作状态。而后,由判断装置1c判断是否输入指令,如“是”,则移到S29,如“不是”,则移到S32。
在步骤S29,判断装置1c判断指令的内容是否为“结束”,如“是”则移到S30,如是“否”,则移到S31。
在步骤S30,CPU1将主存储器5中存储的参数存储到存储器21中,然后结束。
在步骤S31,变量设定装置1d设置其它的参数。这里,其它的参数是结束以外的参数。
在步骤S32,判断装置1c判断游戏是否完毕,如“是”,则移到S33,如“不是”,则再度移回到S20。
另外,本实施例中,将由步骤S200~S32的一次处理时间作为一帧,一帧的时间,NTSC制为1/30秒,而PAL制为1/25秒。
图11是用于说明图场图像显示例程200控制动作的程序流程图。
在步骤S201,图场信息管理装置1g根据图3C所示的表格,可得到与视点位置数据对应的、主存储器5存储的多边形顶点的绝对坐标数据的地址数据、移动量及旋转量。
在步骤S202,图场信息管理装置1g将由主存储器5读出的多边形顶点的绝对坐标、移动量、旋转量、光线矢量、多边形的法线数据,分别供给图形数据生成处理器3。图形数据生成处理器3根据所述各数据,分别求出变换后的多边形的地址数据(x,y)及辉度数据,并将这些数据分别供给图场信息管理装置1g。
在步骤S203,图场信息管理装置1g将来自图形生成处理器3的变换后的多边形地址数据(x,y)以及辉度数据分别写入主存储器5。
在步骤S204,判断装置1c判断多边形顶点的绝对坐标数据,是否全部都变换成了多边形的地址数据。如“是”,则移到S205,如“不是”,则移到S202。
在步骤S205,描画命令发布装置1e从主存储器5读出变换后的地址数据(x,y)及辉度数据,再将变换后的地址数据(x,y)及辉度数据和纹理地址数据、彩色调色板地址数据等一起,作为描画命令供给描画处理器10。由此,描画处理器10按照所述变换后的地址数据(x,y),将图场的纹理数据写入缓冲器11的显示区。从而电视监视器12的显示屏上可显示由多个多边形组成的图场图像。
在步骤S206,判断装置1c判断是否传送全部数据,如“是”,则跳离该多边形图像显示例程200,如“不是”,则再度移到步骤S205。
在步骤S400,是用于说明光标图像显示例程400控制动作的程序流程图。
在步骤S401,光标信息管理装置1i读出主存储器5的光标地址存储区中存储的光标地址(x,y),从表格中读出该光标地址(x,y)所示位置的高度数据。然后,变量设定装置1d将高度数据y代入高度变量Y。
在步骤S402,光标信息管理装置1i将地址(x,y,z)存储到主存储器5的设置地址用区。
在步骤S403,运算装置1b,在变量a1上加上基准值Ref。这里,该变量a1是将半透明的多个光标的显示位置按每帧错开的变量,而且该值按帧依次变大,当其大于最大值almax时,取为最小值aldef。
在步骤S404,判断装置1c判断变量a1是否大于变量最大值almax,如“是”,则移到步骤S405,如“不是”,则移到步骤S406。
在步骤S405,变量设定装置1d将最小值aldef代入变量a1。
在步骤S406,运算装置1b将变量a1加在高度变量Y上。
在步骤S407,运算装置1b在高度变量Y上加上变量a2。该变量a2用于在同一地址(x,y)上显示多个光标。
在步骤S408,光标信息管理装置1i将地址(x,y,z)存储到主存储器5的地址设置区。该地址只可设定所述高度变量Y的可取值。高度变量的可取值是从最小值到最大值Ymax的变量a2的分段值。
在步骤S409,运算装置1b在图像编号的数据P上,加上“1”。这里,图像编号数据P是为选择光标用的。本实施例为使游戏者能看清光标从左向右或从右向左移动,准备了不同样式的光标图像。当最大的图像编号数据P超过Pmax时,取为“0”,并再度按每帧步进。因而,每帧可得到不同的图像编号数据P,利用该图像数据P可选择光标图像。其结果是,游戏者可看到光标的内部从左向右或从右向左在进行变动。
在步骤S410,判断装置1c判断图像编号数据P值是否大于P的最大值Pmax,如“是”,则移到步骤S411,如“不是”,则移到步骤S412。
在步骤S411,变量设定装置1d将“0”代入图像编号数据P中。
在步骤S412,判断装置1c判断高度变量Y的值是否大于高度变量的最大值,如“是”,则移到步骤S413,如“不是”,则移到步骤S407。
在步骤S413,光标信息管理装置1i从图3c所示的表格中可得到与视点位置数据值对应的、在主存储器5上的多边形的顶点的绝对坐标数据的存储地址数据,旋转量数据以及移动量数据。
在步骤S414,光标信息管理装置1i,将从主存储器5读出的多边形的顶点的绝对坐标、移动量、旋转量、光线的矢量及多边形法线数据,分别供给图形数据生成处理器3。图形数据生成处理器3根据所述各数据,分别求出变换后的多边形地址数据(x,y)以及辉度数据,并将这些数据分别供给光标信息管理装置1i。
在步骤S415,光标信息管理装置1i,将来自图形数据生成处理器3的变换后的多边形的地址数据(x,y)及辉度数据,分别写入到主存储器5。
在步骤S416,判断装置1c判断是否将多边形的顶点的绝对坐标数据全都变换成变换后的多边形地址数据,如“是”,则移到步骤S417,如“不是”,则移到步骤S414。
在步骤S417,描画命令发布装置1e,从主存储器5读出变换后的地址数据(x,y)及辉度数据,将该变换后的地址数据(x,y)及辉度数据和纹理地址数据、彩色调色板地址数据作为描画命令,供给描画处理器10。由此,描画处理器10,按照所述变换后的地址(x,y),将图场的纹理数据写入到缓冲器11的显示区上。因而,在电视监视器12的显示画面上,可显示由多边形组成的光标图像。
在步骤S418,判断装置1c,判断所有的数据是否被传送,如“是”,则跳离该光标图像显示例程400,如“不是”,则再度移到步骤S417。
按以上说明的本实施例中,利用多边形描画图场,并且将该图场内显示的、选择动画人物用的光标的形状,做成从图场的下方朝上的烟筒状。因此,光标位置即使面向起伏侧,也可以确切地了解光标的所在处。
另外,由于是用多边形描画光标的,是可以与图场相匹配的,因而可以对游戏者提供较舒适的游戏空间。
而且,由于除显示的最低位置的基本光标外,其余的光标都被做成半透明的,即使图场与这些光标相重叠,也不会被遮挡住,因此对游戏者可提供较舒适的游戏环境。
另外,由于对每帧中的光标图像使用了不相同的光标图像,在视觉上可以看成光标的内部在进行旋转,而提高了光标的视认性,并便于使其与图场图像相区别,因此对游戏者可提供较舒适的游戏环境。
而且,由于是依照第1左按钮22L1、第2左按钮22L2、第1右按钮22R1,第2右按钮22R2的操作,来变更图场图像及相对光标图像的视点位置的,因而便于在图场内进行移动光标的操作。
变形例1
所述实施形态中,光标的形状是正方形的,光标的形状还可以是圆形的、三角形的、五角形的。而光标的颜色可以是上述的白色的,也可以是红色的或黄色的。
变形例2
还可以按照光标的位置变更视点的位置,即,以某个高度作为基准,当光标位于图场的高度比该基准值高时,则使视点位置仅增加该差值,而当比基准值低时,则使视点位置仅减少该差值。为实现此目的,可以将图9所示的程序流程的步骤S14中、求保存的高度数据与基准高度的差值的步骤,设置在步骤S14的下面,在步骤S16中,所述差值为正时,从视点位置数据的高度数据中减去该差值,而所述差值为负时,在视点位置数据的高度数据上加上该差值。
如以上所述,每次使光标移动时,都可以改变相对图场高度方向的视点位置,因此使游戏者有临场感。
按照上述发明,在三维空间的所述图场的高度方向的多个光标图像是按模拟三维显示的,因而具有即便光标位于面向图场的起伏侧,也可以确认光标位置的效果。
而且,所述发明中,对一个光标图像,准备了种类不同的多个光标图像,并可循环显示该多个光标图像,因而在视觉上可以看成光标的内部在进行变动,而此有利于图场和光标的区别和易于掌握的效果。
另外,所述发明中,多个光标图像内的一部分或全部光标的显示位置,每隔规定时间是可变更的,而且可看成依次出现的光标,因此具有可以提高光标的视认性的效果。
而且,所述发明中,由于光标的形状是根据所述图场的视点位置的变更而改变的,有关图场的光标图像的形状不会造成视觉上的不舒服感,因而具有便于在模拟三维显示的图场中进行移动的效果。
所述发明中,多个光标图像内的一部分或全部的光标图像可半透明显示,因而有不会遮盖图场、提高光标的视认性的效果。