CN1656518A - 三维图像处理程序、三维图像处理方法、以及视频游戏设备 - Google Patents

三维图像处理程序、三维图像处理方法、以及视频游戏设备 Download PDF

Info

Publication number
CN1656518A
CN1656518A CNA038115840A CN03811584A CN1656518A CN 1656518 A CN1656518 A CN 1656518A CN A038115840 A CNA038115840 A CN A038115840A CN 03811584 A CN03811584 A CN 03811584A CN 1656518 A CN1656518 A CN 1656518A
Authority
CN
China
Prior art keywords
position coordinates
objects
motion
viewing area
snowflake
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
Application number
CNA038115840A
Other languages
English (en)
Inventor
东山诚
永山贤太朗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konami Group Corp
Original Assignee
Konami Corp
Konami Computer Entertainment Studios Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Konami Corp, Konami Computer Entertainment Studios Inc filed Critical Konami Corp
Publication of CN1656518A publication Critical patent/CN1656518A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/603D [Three Dimensional] animation of natural phenomena, e.g. rain, snow, water or plants
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5258Changing parameters of virtual cameras by dynamically adapting the position of the virtual camera to keep a game object or game character in its viewing frustum, e.g. for tracking a character or a ball
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/30Clipping
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/663Methods for processing data by generating or executing the game program for rendering three dimensional images for simulating liquid objects, e.g. water, gas, fog, snow, clouds
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8041Skating using skis, skates or board

Abstract

提供了一种可以对大量对象进行渲染的三维图像处理程序、三维图像处理方法、以及视频游戏设备。图形数据生成处理器(3)计算虚拟三维空间中的对象的运动后位置坐标,修正由此计算出的对象的运动后位置坐标,以使得运动后位置坐标保持在显示对象的显示区内,并且渲染处理器(10)对该显示区内的对象进行渲染。

Description

三维图像处理程序、三维图像处理方法、以及视频游戏设备
技术领域
本发明涉及用于显示在虚拟三维空间中运动的多个对象的三维图像处理程序、三维图像处理方法以及视频游戏设备。
背景技术
近几年来,在监视器屏幕上所形成的虚拟三维空间中显示如角色等的多个对象的各种视频游戏越来越流行。这些视频游戏中的很多都具有与运动相关的主题,例如,滑雪、冲浪、滑冰、雪板等。为了满足玩家的愿望,具有这些类型的运动主题的视频游戏必须尽可能地再现各种运动的独特特性,并使玩家感觉他们确实在参与该运动。例如,具有滑雪或雪板主题的视频游戏应当使玩家感觉他或她正在下雪场景中比赛。
图6是示出用于再现下雪场景的现有技术的三维图像处理的示例的流程图。在视频游戏设备中采用并执行图6所示的现有技术的三维图像处理,该视频游戏设备包括:算术处理单元,其能够执行包括切换处理在内的各种处理;和渲染处理单元,其专门用于渲染处理。
在步骤S101中,算术处理单元初始化雪花参数。在步骤S102中,算术处理单元计算摄像机矩阵,以从世界坐标系转换到摄像机坐标系。注意到,可以采用视频游戏设备中预先存在的库来计算出对此摄像机矩阵进行计算的计算例程。
在步骤S103中,算术处理单元将值1赋予循环计数器i。在步骤S104中,算术处理单元将雪花运动的速度以及施加在雪花上的外力添加到它们的初始位置坐标上,以计算雪花的新的运动后位置坐标。在步骤S105中,算术处理单元将雪花的运动后位置坐标从世界坐标系转换到摄像机坐标系。在步骤S106中,算术处理单元确定雪花的运动后位置坐标是否在可以显示雪花的显示区中。如果雪花的运动后位置坐标在显示区之内(步骤S106为是),则处理转向步骤S108,如果雪花的运动后位置坐标在显示区之外(步骤S106为否),则处理转向步骤S107。
在步骤S107中,如果确定雪花的运动后位置坐标在显示区之外,则算术处理单元将重构雪花数据。在步骤S108中,渲染处理单元将对雪花执行渲染处理。在步骤S109中,算术处理单元将循环计数器i加1。
在步骤S110中,算术处理单元确定循环计数器i是否小于预定的雪花数。重复步骤S104到步骤S109的处理(重复次数等于该雪花数)来对所有雪花进行渲染。这表示,如果确定循环计数器i小于该雪花数(步骤S110为是),则还有尚未渲染的雪花,由此,处理返回到步骤S104。如果确定循环计数器i大于雪花数(步骤S110为否),则已经对所有雪花进行了渲染,处理转到步骤S111。在步骤S111中,算术处理单元将更新各个雪花参数。在步骤S112中,算术处理单元将进行游戏执行处理。然后,在进行了游戏执行处理之后,处理返回到步骤S102。
图7表示游戏画面的一个示例,其中显示了通过现有技术的三维图像处理而渲染的雪花。图7的游戏画面400表示了:角色401,其代表雪板竞技者并且由玩家操控;路线402,角色401在该路线401上滑下;以及雪花403,用于再现下雪场景。通过执行现有技术的三维图像处理来在游戏画面400上显示雪花403,并且再现下雪场景。
在图6所示的现有技术的三维图像处理流程图中,步骤S106的处理由渲染处理单元执行。步骤S101到S107以及步骤S109到S112的其它处理由算术处理单元执行,该算术处理单元能执行包括切换处理在内的多种处理。当现有技术的三维图像处理再现下雪场景时,当算术处理执行复杂的切换处理等时,其负担较大,由此,将花费很多时间来完成该算术处理。由此,如图7的游戏画面所示,现有技术的三维处理所产生的雪花数将会较少。由此,当再现大量雪花下落的环境时,由于可以再现的雪花的数目会减少,所以将很难提供下雪的真实感觉。据此,当再现下雪场景时,现有技术的视频游戏不能向玩家提供足够的真实感,从而不够有趣。
发明内容
为了解决上述问题,本发明的目的是提供一种三维图像处理程序、三维图像处理方法、以及视频游戏设备,其能够减轻视频游戏设备的算术处理设备的负担,并对大量对象进行渲染。
权利要求1中公开的本发明是一种三维图像处理程序,其用于对在三维空间内运动的多个对象进行渲染,并控制视频游戏设备,所述程序包括:
位置坐标计算装置,其计算虚拟三维空间中的对象的运动后位置坐标;
位置坐标修正装置,其对对象的运动后位置坐标进行修正,以使位置坐标保持在可显示这些对象的显示区内;以及
渲染装置,用于对所述显示区内的对象进行渲染。
根据权利要求1中公开的本发明,该三维图像处理程序对在虚拟三维空间中运动的多个对象进行渲染并且操作视频游戏设备,该三维图像处理程序包括:位置坐标计算装置,其计算虚拟三维空间中的对象的运动后位置坐标;位置坐标修正装置,其修正所述对象的运动后位置坐标,以使得由所述位置坐标计算装置计算出的所述对象的运动后位置坐标保持在预定显示区内;以及渲染装置,其对由所述位置坐标修正装置更新过从而保持在所述显示区内的对象进行渲染。
这里,对在所述虚拟三维空间中运动的所述对象的运动后位置坐标进行计算,并且对由此计算出的对象的运动后位置坐标进行修正,以使得运动后位置坐标保持在可以显示这些对象的显示区内。然后,对进行了运动后位置坐标修正从而保持在显示区内的对象进行渲染。
由此,在建立了对象的初始参数之后,计算虚拟三维空间中的对象的运动后位置坐标。接下来,对由此计算出的对象的运动后位置坐标进行修正,以使它们保持在可以显示这些对象的显示区内。此时,因为不再需要进行切换处理以确定对象的运动后位置坐标是否在显示区内,所以可以减轻算术运算单元的负担,并且可以对大量对象进行渲染。
根据权利要求2中公开的本发明,所述显示区为矩形;并且
位置坐标修正装置从对象的运动后位置坐标中减去显示区的至少一个边的长度,以此来修正对象的运动后位置坐标,以使对象的位置坐标保持在显示区内。
根据权利要求2中公开的本发明,可以显示对象的所述显示区为矩形,并且位置坐标修正装置从对象的运动后位置坐标中减去该矩形显示区的至少一个边的长度,以此来修正对象的运动后位置坐标,以使运动后位置坐标保持在显示区内。
换言之,通过从对象的运动后位置坐标中减去可以显示对象的矩形显示区的至少一个边的长度,可以使显示区之外的对象的运动后位置坐标返回到显示区内。由此,与现有技术不同,不需要采用切换处理来确定对象的运动后位置坐标是否在显示区内。
在权利要求3中公开的本发明中,以整数形式表示对象的位置坐标;并且
位置坐标修正装置通过获得位置坐标的低位的掩码处理来使对象保持在像素区内。
在根据权利要求3的本发明中,将对象的位置坐标表示成整数,并且位置坐标修正装置通过获得对象位置坐标的低位的掩码处理来使对象保持在显示区内。
换言之,因为将位置坐标表示成整数,所以可以采用位运算来计算对象的运动后位置坐标。由此,与采用浮点值表示对象的位置坐标的情况相比,可以提高计算速度。此外,通过对对象的运动后位置坐标进行掩码处理,当从对象的运动后位置坐标中减去矩形显示区的至少一个边的长度时,不但不必像现有技术一样进行切换处理来确定对象的运动后位置坐标是否在显示区内,而且可以通过简单的计算处理来把对象保持在显示区内。
在根据权利要求4的本发明中,还可以通过存储具有不同形状的多个纹理的纹理存储装置来控制该视频游戏设备;并且
渲染装置根据存储在纹理存储装置中的纹理对对象进行渲染。
在权利要求4中公开的本发明中,还可以通过存储具有不同形状的多个纹理的纹理存储装置来对视频游戏设备进行控制,并且渲染装置根据纹理存储装置中所存储的纹理对各个对象进行渲染。
换言之,由于根据存储在纹理存储装置中的纹理对各个对象进行渲染,所以,可以通过在其中存储具有不同形状的多个纹理来表示各种对象,并且可以使视频游戏的内容多样化。
在权利要求5中公开的本发明中,所述的纹理包括表示雪花的纹理。
根据权利要求5中公开的本发明,所述的纹理包括表示雪花的纹理。
换言之,可以利用表示雪花的纹理对多个对象进行渲染,以在视频游戏中再现下雪场景。由此,通过存储具有不同形状的多种不同类型的雪花纹理,可以采用多种不同类型的雪花纹理,并可以表示各种雪花形状。通过对以不同形状表示的雪花进行渲染,可以再现很多种不同的下雪场景,并且可以产生感觉真实的下雪场景。
在权利要求6中公开的本发明中,一种视频游戏设备包括:算术处理单元,其可以执行包括切换处理在内的各种处理;以及渲染处理单元,其专用于渲染处理;
其中,渲染处理单元用作所述位置坐标计算装置和所述位置坐标修正装置。
根据权利要求6中公开的本发明,视频游戏设备包括:算术处理单元,其可以执行包括切换处理在内的各种处理;以及渲染处理单元,其专用于渲染处理,并且渲染处理单元用作为所述位置坐标计算装置和所述位置坐标修正装置。
换言之,算术处理单元能够执行各种处理,包括切换处理。渲染处理单元不具有用于切换处理等的复杂的算术处理功能,而是具有简单的算术处理功能,从而其可以高速地进行简单的算术处理。这里,在计算虚拟三维空间中的对象的运动后位置坐标的处理中,以及在对由此计算出的对象的运动后位置坐标进行修正以使它们保持在显示对象的显示区内的处理中都不进行切换处理。从而,计算对象的运动后位置坐标的处理以及修正对象的运动后位置坐标的处理都不是由算术处理单元来执行,由此,因为由渲染处理单元(可以比算术处理单元更快地执行这些计算)来执行这些处理,所以可以减轻算术处理单元的负担。
在权利要求7中公开的本发明中,对在三维空间内运动的多个对象进行渲染的三维图像处理方法包括以下步骤:
位置坐标计算步骤,其中视频游戏设备计算虚拟三维空间中的对象的运动后位置坐标;
位置坐标修正步骤,其中视频游戏设备修正所述对象的运动后位置坐标,以使得所述运动后位置坐标保持在可以显示对象的显示区内;以及
渲染步骤,其中视频游戏设备对显示区内的对象进行渲染。
根据权利要求7中公开的本发明,该三维图像处理方法对在虚拟三维空间中运动的多个对象进行渲染,该方法包括:位置坐标计算步骤,其中视频游戏设备计算虚拟三维空间中的对象的运动后位置坐标;位置坐标修正步骤,其中视频游戏设备修正对象的运动后位置坐标,以使得在位置坐标计算步骤中计算出的对象的运动后位置坐标保持在预定的显示区内;以及渲染步骤,其中视频游戏设备对在位置坐标修正步骤中进行了修正从而保持在显示区内的对象进行渲染。
这里,计算在虚拟三维空间中运动的对象的运动后位置坐标,并且对由此计算出的对象的运动后位置坐标进行修正,以使运动后位置坐标保持在显示对象的显示区中。然后,对进行了坐标修正从而保持在显示区内的对象进行渲染。
换言之,在建立了对象的初始参数之后,计算虚拟三维空间中的对象的运动后位置坐标。接下来,对由此计算出的对象的运动后位置坐标进行修正,以使得它们保持在显示对象的显示区内。此时,由于不再需要执行切换处理来确定对象的运动后位置坐标是否处在显示区内,所以可以减轻算术处理单元的负担,并且可以对大量对象进行渲染。
在权利要求8中公开的本发明中,对在虚拟三维空间中运动的多个对象进行渲染的视频游戏设备包括:
位置坐标计算装置,其计算虚拟三维空间中的对象的运动后位置坐标;
位置坐标修正装置,其修正对象的运动后位置坐标,以使得对象的运动后位置坐标保持在显示对象的显示区内;以及
渲染装置,其对显示区内的对象进行渲染。
根据权利要求8中公开的本发明,该视频游戏设备对在虚拟三维空间中运动的多个对象进行渲染,该视频游戏设备包括:位置坐标计算装置,其计算虚拟三维空间中的对象的运动后位置坐标;位置坐标修正装置,其修正对象的运动后位置坐标,以使得由位置坐标计算装置计算出的对象的运动后位置坐标保持在预定的显示区内;以及渲染装置,其对由位置坐标修正装置进行了修正从而保持在显示区内的多个对象进行渲染。
这里,计算在三维空间内运动的对象的运动后位置坐标,并对由此计算出的对象的运动后位置坐标进行修正,以使运动后位置坐标保持在显示对象的显示区内。然后,对进行了运动后坐标修正从而保持在显示区内的对象进行渲染。
换言之,在建立了对象的初始参数后,计算虚拟三维空间中的对象的运动后位置坐标。接下来,对由此计算出的对象的运动后位置坐标进行修正,以使它们保持在显示对象的显示区内。此时,由于不再需要执行切换处理来确定对象的运动后位置坐标是否处在显示区内,所以可以减轻算术处理单元的负担,并可以对大量对象进行渲染。
通过下面结合附图对本发明的优选实施例进行的详细说明,本领域技术人员将更清楚地理解本发明的这些和其它目的、特征、方面和优点。
附图说明
下面说明构成此原始公开的一部分的附图:
图1是根据本发明一个实施例的视频游戏设备的结构框图;
图2是表示图1所示的视频游戏设备的主要功能的方框图;
图3表示本实施例中所使用的纹理的示例;
图4的流程图示出了图1所示的视频游戏设备中所使用的三维图像处理的一个示例;
图5表示游戏画面的一个示例,其中显示了通过本实施例的三维图像处理渲染的雪花;
图6的流程图示出了再现下雪场景的现有技术的三维图像处理的示例;以及
图7表示游戏画面的一个示例,其中显示了通过现有技术的三维图像处理渲染的雪花。
具体实施方式
下面参照附图对根据本发明一个实施例的视频游戏设备进行说明。
图1是表示根据本发明一个实施例的视频游戏设备的结构的方框图。注意,使用家用视频游戏设备作为本发明的视频游戏设备的示例,并且该家用视频游戏设备包括连接到标准家用电视机的家用视频游戏单元。但是,本发明并不限于此示例,还可以以相同方式应用于与监视器形成为一体的商用视频游戏设备、通过执行视频游戏程序而用作视频游戏设备的个人计算机、或者对于本领域普通技术人员显而易见的其它配置。
图1所示的视频游戏设备包括家用游戏单元100和标准家用电视机200。该家用游戏单元100包括存储有视频游戏程序和游戏数据的计算机可读存储介质300。根据需要从该存储介质300中读出视频游戏程序和游戏数据来执行游戏。
家用视频游戏单元100包括:CPU(中央处理单元)1、总线2、图形数据生成处理器3、接口电路(I/F)4、主存储器5、ROM(只读存储器)6、扩展电路7、并行端口8、串行端口9、渲染处理器19、声音处理器11、解码器12、接口电路(I/F)13、缓存14到16、存储介质驱动器17、存储器18和控制器19。家用电视机200包括电视机监视器21、放大器22和扬声器23。
CPU 1与总线2和图形数据生成处理器3相连。总线2包括与其相连的地址总线、数据总线、控制总线等,并且CPU 1、接口电路4、主存储器5、ROM 6、扩展电路7、并行端口8、串行端口9、渲染处理器10、声音处理器11、解码器12和接口电路13。
渲染处理器10与缓存14相连。声音处理器11与缓存15和放大器22相连。解码器12与缓存16和存储介质驱动器17相连。接口电路13与存储器18和控制器19相连。
家用电视机200的电视机监控器21与渲染处理器10相连。扬声器23与放大器22相连。注意到,对于商用视频游戏设备而言,可以将电视机监控器21、放大器22和扬声器23与构成家用游戏设备100的各个模块一起放在一个机壳内。
此外,如果个人计算机、工作站等构成视频游戏设备的核心,则计算机显示器将对应于电视机监控器21。此外,扩展电路7、渲染处理器10和声音处理器11对应于安装在计算机的扩展槽内的扩展板上的存储介质或硬件中所存储的一部分游戏数据。此外,接口电路4、并行端口8、串行端口9和接口电路13对应于安装在计算机的扩展槽中的扩展板上的硬件。此外,缓存14到16分别对应于主存储器5或者扩展存储器中的各个存储区。
接下来,对图1所示的各个系统部件进行说明。CPU 1解释来自视频游戏程序的指令,并执行各种数据处理和控制。例如,CPU 1将二维图像数据、虚拟三维空间中的各个顶点的坐标数据、运动数据、旋转数据等提供给图形数据生成处理器3。图形数据生成处理器3用作CPU 1的协处理器。换言之,图形数据生成处理器3进行并行处理来计算坐标转换、光源计算等,如,定点格式矩阵和向量。
图形数据生成处理器3所执行的主要处理是:根据CPU 1所提供的图像数据中的各个顶点的坐标数据、图像数据中的各个顶点的运动数据、以及图像数据中的各个顶点的旋转数据来计算目标图像处理的地址数据,并将其返回给CPU 1;以及根据距虚拟光源的来距离计算图像的亮度。
采用接口电路4作为诸如点击设备(例如鼠标、轨迹球等)的外围设备的接口。主存储器5包括RAM(随机访问存储器)等。将用作视频游戏设备的操作系统的程序数据存储在ROM 6中。该程序对应于个人计算机的BIOS(基本输入输出系统)。
扩展电路7对符合运动图像的MPEG(运动图像专家组)标准或静止图像的JPEG(联合图像专家组)标准的压缩图像进行扩展。这里,通过DCT(离散余弦变换)处理、量化处理、编码处理等方法压缩图像。通过逆编码处理、逆量化处理、IDCT(逆离散余弦变换)处理、解码处理(对通过可变长度编码进行编码的数据进行解码)等对压缩图像进行扩展。
渲染处理器10根据CPU 1每隔预定时间T(如,对于1帧为T=1/60秒)发出的渲染指令在缓存14中执行渲染处理。
缓存14包括例如RAM,并且分为显示区(帧缓存区)和非显示区。显示区用作将在电视机监视器21的显示屏幕上显示的数据的扩展区。非显示区用作存储区,用于存储:定义框架的数据、定义多边形的模型数据、在模型中产生运动的动画数据、表示各个动画的具体内容的模式数据、纹理数据、调色板数据等。
这里,纹理数据是二维图像数据。调色板数据是规定纹理数据等的颜色的数据。响应于游戏的执行状态,从存储介质300中一次或多次读出这些数据,并通过CPU 1将它们预先存储在缓存14的非显示区中。
这些渲染指令包括:对具有多边形的三维图像进行渲染的渲染指令、以及对常规二维图像进行渲染的渲染指令。这里,多边形是具有多个角的二维图形,如,三角形或正方形。表示多边形顶点坐标的坐标数据是多边形顶点坐标数据。
利用多边形顶点地址数据、纹理地址数据、调色板地址数据以及亮度数据来执行对具有多边形的三维图像进行渲染的渲染指令,其中该多边形顶点地址数据指出多边形顶点坐标数据在缓存14中的存储位置,该纹理地址数据指出多边形上的纹理在缓存14中的存储位置,调色板地址数据指出表示纹理颜色的调色板数据在缓存14中的存储位置,该亮度数据表示纹理的亮度。
多边形顶点地址数据指出多边形顶点坐标数据在缓存14的显示区中的地址。
图形数据生成处理器3利用该多边形顶点地址数据,根据运动数据和旋转数据来转换这些坐标值,将三维多边形顶点坐标数据转换成二维多边形顶点坐标数据。通过用二维多边形顶点坐标数据代替由图形数据生成处理器3根据运动数据和旋转数据转换的三维多边形顶点坐标数据,来估算该多边形顶点地址数据。图形数据生成处理器3根据经过坐标转换之后由多边形顶点坐标数据显示的图像距虚拟放置的光源的距离计算亮度数据。
渲染处理器10将纹理数据写到缓存14的显示区中由三维多边形顶点地址数据所指向的各个区域中。
游戏空间中的诸如角色等的对象由多个多边形构成。CPU 1将虚拟三维空间中的各个多边形的坐标数据链接到与其对应的框架的向量数据,并将此坐标数据存储在缓存14中。这里,通过操作控制器19(下面将要说明),当在电视机监视器21的显示屏幕上显示角色运动时或者当角色视点发生变化时,会进行下面的处理。
CPU 1向图形数据生成处理器3提供存储在缓存14的非显示区中的各个多边形的顶点的三维坐标数据、由框架坐标及其旋转数据获得的各个多边形的运动数据和旋转数据。
然后,图形数据生成处理器3根据各个多边形的顶点的三维坐标数据以及各个多边形的运动和旋转数据,依次获得各个多边形的运动后和旋转后三维坐标数据。
在以这种方式获得的各个多边形的三维坐标数据中,将水平和垂直方向的坐标数据提供给渲染处理器10,作为缓存14的显示区中的地址数据,或者换言之,作为多边形顶点地址数据。
此时,渲染处理器10将纹理地址数据所指出的纹理数据写到缓存14的显示区中由三维多边形顶点地址数据所指向的区域中。通过这种方式,将包括多个施加了纹理的多边形的对象显示在电视机监视器21的显示屏幕上。
利用顶点地址数据、纹理地址数据、调色板地址数据和亮度数据执行对常规二维图像进行渲染的渲染指令。这些数据中,由图形数据生成处理器3利用根据从CPU 1获取的运动数据和旋转数据而转换来的二维顶点坐标数据求出顶点地址数据。
声音处理器11将从存储介质300读出的ADPCM(自适应差分脉冲编码调制)数据存储在缓存15中。存储在缓存15中的ADPCM数据是声源。
此外,声音处理器11根据时钟信号(如,频率为44.1kHz的时钟信号)从缓存15读出ADPCM数据。声音处理器11对从缓存15中读出的ADPCM数据进行多种处理,例如,音调转换、噪音补充、包络设置、音量设置和混响设置等。
如果从存储介质300读出的声音数据是诸如CD-DA(光盘数字音频)的PCM(脉冲编码调制)数据,则声音处理器11将该PCM数据转换成ADPCM数据。在主存储器5中直接进行与PCM数据相关的程序的处理。将主存储器5中处理的PCM数据存储在声音处理器11中,并转换成ADPCM数据。在此之后,执行各个前述处理,并从扬声器23输出声音。
可以采用DVD-ROM驱动器、CD-ROM驱动器、硬盘驱动器、光盘驱动器、软盘驱动器、硅盘驱动器、磁带读取设备等作为存储介质驱动器17。在这种情况下,可以采用DVD-ROM、CD-ROM、硬盘、光盘、软盘、半导体存储器等作为存储介质300。
存储介质驱动器17从存储介质300读出图像数据、声音数据和程序数据,并将这些数据提供给解码器12。解码器12通过ECC(纠错码)对来自存储介质驱动器17的数据进行纠错处理。然后,将执行了纠错处理的数据提供给主存储器5或声音处理器11。
例如,可以采用卡式存储器作为存储器18。例如,采用卡式存储器来存储游戏中断点处的各种游戏参数。
控制器19是一种控制设备,玩家利用其输入各种操作指令,并且其响应于玩家的操作将操作信号发送到CPU 1。控制器19具有第一按钮19a、第二按钮19b、第三按钮19c、第四按钮19d、上移键19U、下移键19D、左移键19L、右移键19R、L1按钮19L1、L2按钮19L2、R1按钮19R1、R2按钮19R2、启动按钮19e、选择按钮19f、左杆19SL、和右杆19SR。
上移键19U、下移键19D、左移键19L、和右移键19R用于,例如,向CPU 1提供使角色和/或光标在电视机监视器21的屏幕上向上、向下、向左、向右运动的指令。
起动按钮19e用于,例如,指示CPU 1从存储介质300加载游戏程序。选择按钮19f用于,例如,指示CPU 1进行与从存储介质300加载到主存储器5中的游戏程序相关的各种选择。
除了左杆19SL和右杆19SR以外,控制器19上的各个按钮和键都由通/断开关组成,当施加外部压力将其从中间位置按下时,该开关导通,当外力解除时该开关断开,并且返回到中间位置。
左开关19SL和右开关19SR分别是与所谓的游戏杆具有相同的总体结构的杆式控制器。此杆式控制器具有直立的杆。将此杆构造为使其具有360度的运动范围,并且可以从中心直立位置向前、先后、向左和向右倾斜。响应于它们的倾斜方向和角度,左杆19SL和右杆19SR将通过接口电路13将操作信号送出到CPU 1。操作信号对应于左/右方向上的x坐标值以及前/后方向上的y坐标值,其中直立位置为原点。
注意到,第一按钮19a、第二按钮19b、第三按钮19c、第四按钮19d、L1按钮19L1、L2按钮19L2、R1按钮19R1、和R2按钮19R2用于从存储介质300加载的游戏程序的各种功能。
接下来,对视频游戏设备怎样工作进行概述。如果将存储介质300装载到存储介质驱动器17中,则当电源开关(图中未示出)打开并向视频游戏设备供电时,CPU 1将根据存储在ROM 6中的操作系统,指示存储介质设备17从存储介质300中读出游戏程序。此时,存储介质驱动器17将从存储介质300中读出图像数据、声音数据和程序数据。将从中读出的图像数据、声音数据和程序数据提供给解码器12,解码器12对各种数据进行纠错处理。
将解码器12进行了纠错处理的图像数据通过总线2提供给扩展电路7。扩展电路7进行了上述扩展处理之后,将图像数据提供给渲染处理器10,然后渲染处理器10将此数据读入缓存14的非显示区。将解码器12执行了纠错处理的声音数据通过缓存15读入主存储器5或声音处理器11。将解码器12进行了纠错处理的程序数据读入主存储器5。
在此之后,CPU 1根据存储在主存储器5中的游戏程序以及玩家通过控制器19发出的指令进行视频游戏。换言之,CPU 1根据玩家通过控制器19发出的指令,对图像处理、声音处理以及内部处理进行适当的控制。
图像处理的控制包括:例如,计算各个框架的坐标,或者根据为角色定制的各个动画的模式数据来计算多边形顶点坐标数据;将三维坐标数据和/或观察位置数据提供给图形数据生成处理器3;发出渲染指令,其包括图形数据生成处理器3所获得的缓存14的显示区中的地址数据和/或亮度数据。
声音处理的控制包括,例如,为声音处理器11选择,例如,发声、音量、混响等的声音输出命令。内部处理的控制包括,例如,响应于控制器19的操作进行计算。
最后,对根据存储在存储介质300中的游戏程序进行的视频游戏进行说明。本实施例的视频游戏的主题为雪板。由玩家控制的模拟雪板竞技者的角色沿着设置在虚拟三维空间中的路线滑下。显示了大量雪花在虚拟三维空间中运动的图像,此图像再现了雪板比赛中的下雪场景。由此,通过再现雪板比赛中的下雪场景,玩家可以体验到参与实际雪板比赛的感觉。注意到,在下面的说明中,在虚拟三维空间中运动的多个对象为雪花。
图2是表示图1所示的视频游戏设备的主要功能的方框图。如图2所示,该视频游戏设备按照功能包括:算术处理单元31、渲染算术处理单元32、渲染处理单元33、数据存储单元34、程序存储单元35、显示单元36和操作单元37。
算术处理单元31是,例如,由CPU 1实现的,并且当CPU 1执行存储在主存储器5中的三维图像处理程序时,其还用作游戏执行处理单元41。
游戏执行处理单元41根据来自玩家所操作的控制器19的输入信号,控制角色的运动,并执行与视频游戏的进行相关的各种处理。
渲染算术处理单元32是,例如,由图形数据生成处理器3实现的,并且当CPU 1执行存储在主存储器5中的三维图像处理程序时,其还用作位置坐标计算单元42和位置坐标修正单元43。
位置坐标计算单元42计算虚拟三维空间中的雪花(对象)的运动后位置坐标。注意到,雪花的位置坐标以整数表示。
位置坐标修正单元43修正由位置坐标计算单元42所计算的雪花的运动后位置坐标,以使雪花保持在要显示雪花的显示框(即,显示区)内。此显示框为矩形,例如,本实施例中是立方体1的一面。此显示框的中心设置有虚拟摄像机视点,并且此虚拟摄像机视点响应于角色的运动,在该虚拟三维空间中运动。注意到,为了进行位运算,显示框的一边的长度1的值是2的n次方。如果显示框的一边的长度1较短,则当虚拟摄像机的视角放大时,显示雪花的显示框的边界以及不显示雪花的三维虚拟空间的边界会变得很清楚,由此游戏画面会给人以不和谐的感觉。因此,为了显示不会给人以不和谐感觉的游戏画面,显示框的一边的长度1优选地为1024位(2n=210)。
此外,位置坐标修正单元43通过从雪花的运动后位置坐标中减去显示框的至少一边的长度,来向显示框提供雪花的位置坐标。此时,在位置坐标修正单元43中进行掩码处理,并且去除各个雪花的运动后位置坐标的低位。
渲染处理单元33是由,例如渲染处理器10来实现的,并且根据表示雪花的纹理对显示框内的雪花进行渲染。
数据存储单元34是由,例如主存储器5来实现的,并且包括雪花数据存储单元44。
雪花数据存储单元44存储与雪花相关的数据,还存储它们在虚拟三维空间中的初始位置坐标、雪花运动的速度、表示具有不同大小和形状的雪花的多种纹理类型等。
程序存储单元35是由,例如存储介质驱动器17来实现的,并且其中安装有计算机可读存储介质45。存储介质45是由,例如存储介质300来实现的,并且存储三维图像处理程序作为视频游戏程序。此外,视频游戏程序包括用于控制角色运动的控制程序,以及与所显示的角色和对象相关的显示数据。注意到,如果从存储介质45中读出三维图像处理程序,并且该程序存储在主存储器中,则主存储器5将用作程序存储单元35。
显示单元36是由,例如电视机监控器21来实现的。操作单元37是由,例如控制器19来实现的。
注意到,在本实施例中,位置坐标计算单元42对应于位置坐标计算装置,位置坐标修正单元43对应于位置坐标修正装置,渲染处理单元33对应于渲染处理装置,雪花数据存储单元44对应于纹理存储装置,CPU1对应于算术处理单元,而图形数据生成处理器3对应于渲染处理单元。
图3表示本实施例中所使用的纹理的示例。图3(a)是表示圆形雪花A1的纹理,图3(b)是表示近似圆形雪花A2的纹理(其中在圆形的外围具有多个凹部和凸部)。雪花A1、A2都是位图图像。雪花数据存储单元44可以存储多种纹理(其中对象的形状不相同),在本实施例中,将图3(a)和3(b)所示的具有两个不同形状的雪花A1和A2存储为纹理数据。注意到,存储在雪花数据存储单元44中的雪花纹理的数量并不限于上述两种,而是可以在其中只存储一种类型。此外,可以将具有不同于上述两种纹理的形状的多种纹理存储在其中,由此可以表示三种或更多种雪花。如果其中只存储了一种雪花纹理,则可以减小用于存储纹理的存储区的容量。此外,如果存储三种或更多种雪花纹理,则可以渲染多种不同形状的雪花,这可以提供更真实的下雪场景。
图4是表示图1所示的视频游戏设备中所使用的三维图像处理的示例的流程图。注意到,当CPU 1执行存储在存储介质300中的三维图像处理程序时,进行图3所示的三维图像处理。
注意到,在下面的处理中所使用的变量中,snow_max表示所显示的雪花的数目,snow[1~snow_max]表示雪花数据,雪花数据(snow)包括参数t(x,y,z),v(x,y,z),size和tex_id。t(x,y,z)表示虚拟三维空间中的雪花的初始位置坐标,v(x,y,z)表示雪花运动的速度,size表示雪花的大小,tex_id表示雪花纹理的类型。v_max(x,y,z)表示雪花运动的速度最大值,tex_id_max表示纹理类型的最大值,size_max表示雪花大小的最大值。tex_bitmap[1~tex_id_max]表示位图图像。cam(x,y,z)表示虚拟摄像机的位置坐标,look(x,y,z)表示把虚拟摄像机指向对象的坐标。cam_mtx表示4×4摄像机矩阵,其用于将世界坐标系转换成从虚拟摄像机的视点进行观察的摄像机坐标系。pow(x,y,z)表示诸如风力的外力,pow_total(x,y,z)表示外力的总值。field_length(x,y,z)表示显示框的一边的长度。这里,x、y和z分别表示成2的倍数。field_length_mask(x,y,z)是用于去除低位的位掩码值,field_length_mask(x,y,z)=field_length(x,y,z)-1。
在步骤S1中,CPU 1初始化雪花。具体地,将0和[field_length_mask(x,y,z)-1]之间的一随机数赋予snow[1~snow_max].t(x,y,z),把-v_max(x,z)和v_max(x,z)之间的一随机数赋予snow[1~snow_max].v(x,z),把1和v_max(y)之间的一随机数赋予snow[1~snow_max].v(y),把1和size_max之间的一随机数赋予snow[1~snow_max].size,并将1和tex_id_max之间的一随机数赋予snow[1~snow_max].tex_id。此外,将游戏开始时设置的诸如风力等的外力的初始值赋予pow(x,y_z),将值0赋予pow_total(x,y,z),并将值0赋予clock。
在步骤S2中,CPU 1计算摄像机矩阵cam_mtx,以从世界坐标系转换成摄像机坐标系。世界坐标系是对象处于三维空间中的坐标系。摄像机坐标系是以虚拟摄像机的视点作为原点并且观察方向沿着z轴而建立的坐标系。当试图在虚拟三维空间中显示对象时,必须将其坐标从世界坐标系转换成摄像机坐标系。由此,计算摄像机矩阵cam_mtx,以从世界坐标系转换成摄像机坐标系。根据虚拟摄像机的位置坐标cam(x,y,z)以及将虚拟摄像机指向对象的坐标look(x,y,z)计算摄像机矩阵cam_mtx。注意到,通过采用视频游戏设备中预先存在的库对计算摄像机矩阵cam_mtx的计算例程进行计算。
在步骤S3中,CPU 1将值1赋予循环计数器i。在步骤S4中,图形数据生成处理器3计算雪花的运动后位置坐标。换言之,图形数据生成处理器3将雪花运动(雪花运动速度snow[i].v(x,y,z)乘以时间clock)和外力pow_total(x,y,z)加到雪花的初始位置坐标snow[i].t(x,y,z)上,以此来计算雪花的新的运动后位置坐标t′(x,y,z)。由下面的公式(1)表示计算运动后雪花的新位置坐标t′(x,y,z)的方法。
t′(x,y,z)=snow[i].t(x,y,z)+snow[i].v(x,y,z)×clock+
pow_total(x,y,z)····(1)
注意到,上述公式(1)中的t′(x,y,z)是用于计算的临时处理,并存储在主存储器5中。
在步骤S5中,图形数据生成处理器3对位置坐标t′(x,y,z)进行掩码处理,以使雪花的运动后位置坐标t′(x,y,z)保持在虚拟摄像机的显示框内。此掩码处理由下面的公式(2)来表示。
t′(x,y,z)={(t′(x,y,z)-cam(x,y,z))AND field_length_mask(x,y,z)}-(field_length(x,y,z)/2)····(2)
注意到,上述公式(2)中的AND是表示t′(x,y,z)-cam(x,y,z)和field_length_mask(x,y,z)的逻辑乘的位运算符。
由此,通过获得从虚拟三维空间中的雪花的运动后位置坐标中减去表示虚拟摄像机的观察位置的摄像机坐标而计算出的值,与为了进行掩码处理而从中减去了值1的显示框的一个边的长度的逻辑乘,对雪花的运动后位置坐标进行掩码处理。此时,只能获得各个雪花的位置坐标的低位。此外,该显示框之外的雪花可以返回到该显示框内,并且由此可以总是显示固定数目的雪花。
在步骤S6中,图形数据生成处理器3将雪花的运动后位置坐标t′(x,y,z)从世界坐标系转换成摄像机坐标系。换言之,图形数据生成处理器3通过摄像机矩阵max_mtx仅进行雪花的运动后位置坐标的旋转坐标转换。通过获得雪花的运动后位置坐标t′(x,y,z)和摄像机矩阵cam_mtx的内积来执行此坐标转换,并且此坐标转换可以通过下面的公式(3)来表示。
t′(x,y,z)=t′(x,y,z)·cam_mtx····(3)
注意到,上述公式(3)中的“·”是表示内积的运算符。
在步骤S7中,图形数据生成处理器3将进行雪花渲染处理。通过如下操作来进行此渲染处理:从主存储器5中读取由snow[i].tex_id表示的纹理数据并将其记录在渲染处理器10中,然后将子画面显示坐标系的左上角坐标和右下角坐标同时记录在渲染处理器10中。这里,左上角子画面显示坐标由t′(x,y,z)-snow[i].size表示,而右下角子画面显示坐标由t′(x,y,z)+snow[i].size表示。渲染处理器10将纹理数据以及左上角子画面显示坐标以及右下角显示坐标写入缓存14的显示区中。通过这种方式,将雪花显示在电视机监视器21的显示屏上。
在步骤S8中,CPU 1将使循环计数器i加1。
在步骤S9中,CPU 1将确定循环计数器i是否小于snow_max。换言之,重复步骤S4到步骤S8的处理(重复次数等于snow_max,即,雪花的数目)来对所有的雪花进行渲染。这里,如果确定循环计数器i小于snow_max(步骤S9为是),则因为还有尚未渲染的雪花,所以处理返回到步骤S4,如果确定循环计数器i大于snow_max(步骤S9为否),则因为所有雪花都已经渲染,所以处理转向步骤S10。
在步骤S10,CPU 1将更新雪花参数。这里,经过更新的参数是虚拟摄像机位置坐标cam(x,y,z)、用于将虚拟摄像机指向目标的坐标look(x,y,z)、外力pow(x,y,z)以及时间clock。响应于虚拟摄像机的运动,通过各个运动后坐标对虚拟摄像机位置坐标cam(x,y,z)以及用于将虚拟摄像机指向目标的坐标look(x,y,z)进行更新。如果风向发生改变,则重设外力pow(x,y,z)。将时间clock设为clock=clock+1,以使时间前进。
在步骤S11中,CPU 1进行游戏执行处理。该游戏执行处理与雪花的渲染无关,例如,其响应于控制器19的输入信号进行移动角色的处理。然后,在进行了游戏执行处理之后,处理返回到步骤S2。
在图4所示的三维图像处理流程图中,从步骤S3到步骤S7的处理由渲染处理单元(本实施例中的图形数据生成处理器3)来执行。此外,步骤S1、步骤S2以及从步骤S8到S11的其它处理由能够执行各种处理(包括切换处理)的算术处理单元(本实施例中的CPU 1)来执行。在图6的流程图所示的现有技术的三维图像处理中,除了步骤S108的处理之外,步骤S101到S112的主要处理都由算术处理单元来执行。特别地,由于步骤S106所示的切换处理的复杂运算,在算术处理单元进行渲染处理之前将经过相对较长的一段时间,并且这些运算增加了算术处理单元的负担。另一方面,在根据本发明的三维图像处理中,因为不执行步骤S106中的切换处理的复杂计算,所以可以由渲染处理单元来进行这些主要处理。通过这种方式,可以减轻算术处理单元的负担。即使渲染处理单元不能执行诸如切换处理的复杂算术处理,其也可以比算术处理单元更快地执行算术处理。由此,因为渲染处理单元承担了主要处理的负担,所以执行算术处理所需的时间将比现有技术的三维图像处理短。从而,当通过三维图像处理再现下雪场景时,与算术处理单元承担对雪花进行渲染的主要处理的负担的情况相比,可以更快地对雪花进行渲染。此外,通过减轻算术处理单元的负担,可以对大量雪花进行渲染。
图5表示游戏画面的一个示例,其中显示了由本实施例的三维图像处理进行了渲染的雪花。图5所示的游戏画面410显示有:模拟雪板竞技者并由玩家操纵的角色401;路线402,角色401在其上滑下;以及雪花403。如图5所示,当由本实施例的三维图像处理对雪花进行渲染时,因为由能够比CPU 1更快地执行算术处理的图形数据生成处理器3来执行主要计算,所以CPU 1的负担减轻,并且可以显示大量雪花。由此,可以再现在雪板竞技过程中大量雪花正在下落的环境,由此,玩家可以尽情地玩视频游戏,同时体验足够的真实感。
接下来,将对再现下雪场景时本实施例的三维图像处理中的算术处理单元(CPU 1)和渲染处理单元(图形数据生成处理器3)的负担与现有技术的三维图像处理(图6的流程图所示)中的算术处理单元和渲染处理单元的负担进行比较。这里,snow_max=10000,针对渲染10000个雪花时算术处理单元和渲染处理单元的负担,对本实施例的三维图像处理和现有技术的三维图像处理进行比较。当由本实施例的三维图像处理对10000个雪花进行渲染时,算术处理单元的负担小于1%,渲染处理单元的负担为7%。当通过现有技术的三维图像处理对10000个雪花进行渲染时,算术处理单元的负担为70%,渲染处理单元的负担为4%。通常,算术处理单元的负担理想地为10%或更小。当考虑到这些事实时,很显然,通过算术处理单元执行现有技术的三维处理的复杂算术处理(如,切换处理)会使算术处理单元承担70%的负担,这即使对于算术处理单元也是一个相当大的负担。
另一方面,通过渲染处理单元执行本实施例的三维图像处理的主要算术处理,与施加在现有技术的算术处理单元上的负担相比,此算术处理单元的负担将减少69%。此外,虽然由渲染处理单元执行主要算术处理,与现有技术的渲染处理单元的负担相比,此渲染处理单元的负担将只增加3%。由此,很显然,与现有技术的三维图像处理相比,本实施例的三维图像处理更为高效,并且可以减轻算术处理单元的负担。
注意到,在本实施例中,雪花的位置坐标使用整数以便于位运算。然而,本发明并不具体限于此,可以使用浮点值来表示雪花的位置坐标。下面将对使用浮点值表示雪花的位置坐标的处理进行说明。当使用浮点值表示雪花的位置坐标时,图4所示的流程图中的步骤S5的处理中所使用的公式(2)由下面的公式(3)来代替。
t′(x,y,z)={(t′(x,y,z)-cam(x,y,z))MOD field_length(x,y,z)}-(field_length(x,y,z)/2)····(3)
注意到,上述公式(3)中的MOD为余数运算符,其表示相除之后的余数值。例如,如果x=a MOD b,则x的值为a除以b的余数。
如果在图4所示的流程图中的步骤S5的处理中使用上述公式(3),则即使使用浮点值表示雪花的位置坐标,也可以将雪花保持在显示框内。不必使field_length(x,y,z)中的x、y和z的值为2的n次幂,可以使用浮点值。此外,field_length_mask(x,y,z)变成非必要的。然而,如果使用浮点值,则因为进行除法,所以计算速度可能会低于位运算。
在本实施例中,雪花数据snow[1~snow_max]包括如下参数:初始位置坐标t(x,y,z)、运动速度v(x,y,z)、雪花大小、以及纹理类型tex_id。但是,本发明并不具体限于此,也可以使用其它参数。例如,可以使用水平方向和垂直方向的雪花大小size_x、size_y,雪花的旋转速度rot_speed,以及有关雪花的颜色的数据r、g、b等作为雪花数据snow[1~snow_max]的参数。此时,在图4所示的流程图的步骤S1中对这些参数赋予适当的随机数,并且在步骤S7的处理中使用。
当雪花的垂直和水平大小发生变化时,可以使用以size_x、size_y表示的变量。在图4所示的流程图的步骤S7中,子画面显示坐标系上的左上角的坐标x由x=t′(x)-snow[i].size_x表示,左上角的坐标y由y=t′(y)-snow[i].size_y表示,右下角的坐标x由x=t′(x)+snow[i].size_x表示,右下角的坐标y由y=t′(y)+snow[i].size_y表示。由此,通过设置子画面显示坐标系上的左上角和右下角的坐标x、y,可以将如图3(a)所示的圆形雪花的位图图像转换成各种形状。例如,可以对椭圆形雪花渲染。
当再现雪花的旋转时,可以使用表示成rot_speed的变量。在图4所示的流程图的步骤S7中,图形数据生成处理器3可以通过使用下面的公式(4)来计算按照时间clock旋转的旋转值rotate。
rotate=rot_speed×clock····(4)
由此,可以只通过旋转值rotate来旋转并渲染雪花的位图图像,从而表示雪花旋转落下的图像。
当改变雪花的颜色时,可以使用以r、g和b表示的变量。r表示R(红色)分量参数,g表示G(绿色)分量参数,b表示B(蓝色)分量参数。在图4所示的流程图的步骤S7中,图形数据生成处理器3通过对纹理数据增添或减去变量r、g和b表示的分量,从而改变雪花纹理数据的颜色并对其进行渲染。从而通过改变雪花纹理数据的颜色并进行渲染,可以表示具有各种颜色的雪花,由此可以落下红色雪花、蓝色雪花、黑色雪花等。
此外,在本实施例中将对象描述为雪花,但是本发明并不具体限定于此。例如,对象可以为雨点。在这种情况下,将表示雨点的位图图像存储为纹理数据,并且可以通过使雨点运动的速度v(x,y,z)快于雪花运动的速度,来再现下雨场景。此外,可以使对象为沙粒来再现沙暴。此外,可以使对象为尘粒来再现尘土飞扬的环境。
此外,在本实施例中,图4所示的三维图像处理的流程图中的步骤S3到步骤S7的处理由渲染处理单元(本实施例中的图形数据生成处理器3)来执行。但是,本实施例并不限于此,图4所示的三维图像处理的流程图中的步骤S3到步骤S7的处理可以由算术处理单元(本实施例中的CPU 1)来执行。在这种情况下,算术处理单元的负担将增加,但是与现有技术的三维图像处理相比,由于不执行切换处理,所以可以缩短处理时间。
此外,在本实施例中,所述视频游戏具有雪板主题,但是本发明并不限于此。例如,本发明可以应用于具有室外运动主题的视频游戏,例如滑雪、垒球、足球等,并且还可以应用于其它视频游戏,例如动作游戏、模拟游戏、射击游戏、角色扮演游戏以及战斗游戏。
根据权利要求1中公开的本发明,首先设置对象的初始参数;计算虚拟三维空间中的对象的运动后位置坐标;并且对由此计算出的对象的运动后位置坐标进行修正,使运动后位置坐标保持在显示对象的显示区内。此时,因为不必进行切换处理来确定对象的运动后位置坐标是否在显示区内,所以当例如视频游戏设备包括能够执行各种处理(包括切换处理)的通用算术处理单元时,可以减轻算术处理单元的负担,并且可以对大量对象进行渲染。
根据权利要求2中公开的本发明,通过从对象的运动后位置坐标中减去可以显示对象的矩形显示区的至少一边的长度,可以使显示区外面的对象的运动后位置坐标返回到显示区之内。由此,可以不必使用切换处理来确定对象的位置坐标是否在显示区内,即可将对象保持在显示区内。
根据权利要求3中公开的本发明,因为将对象的位置坐标表示成整数,所以可以使用位运算来计算对象的运动后位置坐标,并且与使用浮点值表示对象的位置坐标的情况相比,可以提高计算速度。此外,通过对对象的运动后位置坐标进行掩码处理,可以仅去除低位,由此,因为从对象的运动后位置坐标中减去了矩形显示区的至少一边的长度,所以不必进行切换处理来确定对象的位置坐标是否在显示区内。由此,可以通过简单的算术处理来把对象保持在显示区内。
根据图4中公开的本发明,由于根据存储在纹理存储装置中的纹理来对对象进行渲染,所以可以表示多种对象,并且可以通过存储具有不同形状的多个纹理来使视频游戏多样化。
根据图5中公开的本发明,通过使用表示雪的纹理对多个对象进行渲染,可以在视频游戏中再现下雪场景。如果存储有多个具有不同形状的雪花纹理,则可以通过改变这些纹理来表示各种雪花形状。此外,由于可以通过对各种类型的雪花执行同样的处理来再现很多种下雪场景,所以玩家的真实感将增强。
根据权利要求6中公开的本发明,算术处理单元能够执行包括切换处理在内的各种处理。渲染处理单元不具有用于进行切换处理等的复杂算术处理功能,而是只具有简单的算术处理功能,这使得其可以高速地执行算术处理。这里,在计算虚拟三维空间中的对象的运动后位置坐标的处理中,以及在对由此计算出的运动后位置坐标进行修正以使它们保持在显示对象的显示区内的处理中都不进行切换处理。由此,可以由不能执行切换处理的渲染处理单元(其可以比算术处理单元更快地进行运算),而不是由能够进行切换处理的算术处理单元来执行计算位置坐标的处理以及修正位置坐标的处理,从而减轻算术处理单元的负担。
根据权利要求7中公开的本发明,首先设置对象的初始参数;计算虚拟三维空间中的对象的运动后位置坐标;并且对由此计算出的对象的运动后位置坐标进行修正,以使得该运动后位置坐标保持在显示对象的显示区内。此时,因为不必进行切换处理来确定对象的运动后位置坐标是否在显示区内,所以当例如视频游戏设备包括能够执行各种处理(包括切换处理)的通用算术处理单元时,可以减轻算术处理单元的负担,并且可以对大量对象进行渲染。
根据权利要求8中公开的本发明,首先设置对象的初始参数;计算虚拟三维空间中的对象的运动后位置坐标;并且对由此计算出的对象的运动后位置坐标进行修正,以使得运动后位置坐标保持在显示对象的显示区内。此时,因为不必进行切换处理来确定对象的运动后位置坐标是否在该显示区内,所以当例如视频游戏设备包括能够执行各种处理(包括切换处理)的通用算术处理单元时,可以减轻算术处理单元的负担,并且可以对大量对象进行渲染。
本申请要求日本专利申请2002-146638号的优先权。在此通过引用并入日本专利申请2002-146638号的全部公开内容。
虽然只选择了一些特定的实施例来说明本发明,但是通过这里所进行的说明,本领域技术人员很容易理解可以在不脱离如所附权利要求限定的本发明范围的情况下进行各种变化和改进。此外,以上对根据本发明的这些实施例所进行的描述只用于说明的目的,而不是用于限制本发明的范围,本发明的范围仅由所附权利要求及其等同物限定。

Claims (8)

1.一种对在虚拟三维空间中运动的多个对象进行渲染并且对视频游戏设备进行控制的三维图像处理程序,包括:
位置坐标计算装置,其计算虚拟三维空间中的对象的运动后位置坐标;
位置坐标修正装置,其对所述对象的运动后位置坐标进行修正,以使所述运动后位置坐标保持在显示所述对象的显示区内;以及
渲染装置,其对所述显示区内的所述对象进行渲染。
2.根据权利要求1所述的三维图像处理程序,其中所述显示区为矩形;并且
所述位置坐标修正装置通过从所述对象的所述运动后位置坐标中减去所述显示区的至少一个边的长度,以此来对所述对象的运动后位置坐标进行修正,以使所述运动后位置坐标保持在所述显示区内。
3.根据权利要求2所述的三维图像处理程序,其中所述对象的位置坐标以整数表示;并且
所述位置坐标修正装置通过获得所述位置坐标的低位的掩码处理来使所述对象保持在所述显示区内。
4.根据权利要求1所述的三维图像处理程序,其中所述视频游戏设备还作为存储具有不同形状的多个纹理的纹理存储装置;并且
所述渲染装置根据存储在所述纹理存储装置中的所述纹理对所述对象进行渲染。
5.根据权利要求4所述的三维图像处理程序,其中所述纹理包括表示雪的纹理。
6.根据权利要求1到5中任意一项所述的三维图像处理程序,其中所述视频游戏设备包括可以执行包括切换处理在内的各种处理的算术处理单元,以及专用于渲染处理的渲染处理单元;并且
所述渲染处理单元作为所述位置坐标计算装置和所述位置坐标修正装置。
7.一种对在虚拟三维空间中运动的多个对象进行渲染的三维图像处理方法,包括以下步骤:
位置坐标计算步骤,其中所述视频游戏设备计算虚拟三维空间中的对象的运动后位置坐标;
位置坐标修正步骤,其中所述视频游戏设备对所述对象的所述运动后位置坐标进行修正,以使得所述运动后位置坐标保持在显示所述对象的显示区内;以及
渲染步骤,其中所述视频游戏设备对所述显示区内的所述对象进行渲染。
8.一种对在虚拟三维空间中运动的多个对象进行渲染的视频游戏设备,包括:
位置坐标计算装置,其计算虚拟三维空间中的对象的运动后位置坐标;
位置坐标修正装置,其对所述对象的所述运动后位置坐标进行修正,以使得所述运动后位置坐标保持在显示所述对象的显示区内;以及
渲染装置,其对所述显示区内的所述对象进行渲染。
CNA038115840A 2002-05-21 2003-05-16 三维图像处理程序、三维图像处理方法、以及视频游戏设备 Pending CN1656518A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP146638/2002 2002-05-21
JP2002146638A JP3686920B2 (ja) 2002-05-21 2002-05-21 3次元画像処理プログラム、3次元画像処理方法及びビデオゲーム装置

Publications (1)

Publication Number Publication Date
CN1656518A true CN1656518A (zh) 2005-08-17

Family

ID=29545142

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA038115840A Pending CN1656518A (zh) 2002-05-21 2003-05-16 三维图像处理程序、三维图像处理方法、以及视频游戏设备

Country Status (8)

Country Link
US (1) US20050181871A1 (zh)
EP (1) EP1506530B1 (zh)
JP (1) JP3686920B2 (zh)
KR (1) KR100650228B1 (zh)
CN (1) CN1656518A (zh)
AU (1) AU2003228105A1 (zh)
DE (1) DE60323968D1 (zh)
WO (1) WO2003098554A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100394448C (zh) * 2006-05-17 2008-06-11 浙江大学 基于图像传输的三维远程渲染系统及其方法
CN100463004C (zh) * 2006-02-24 2009-02-18 腾讯科技(深圳)有限公司 一种渲染模型残影效果的方法
CN101527051B (zh) * 2009-03-26 2011-11-16 北京像素软件科技股份有限公司 基于大气散射原理对天空进行渲染的方法和装置
CN102402115A (zh) * 2010-09-09 2012-04-04 腾讯科技(成都)有限公司 一种获得游戏3d图像的方法及装置
CN102867026A (zh) * 2012-08-23 2013-01-09 上海创图网络科技发展有限公司 一种三维网页的显示装置及其应用
CN106362398A (zh) * 2016-10-14 2017-02-01 网易(杭州)网络有限公司 摄像机镜头位置的确定方法及装置
CN107256531A (zh) * 2010-03-19 2017-10-17 想象技术有限公司 存储器管理系统和方法
CN112138378A (zh) * 2020-09-22 2020-12-29 网易(杭州)网络有限公司 2d游戏中闪光效果的实现方法、装置、设备及存储介质
CN114067071A (zh) * 2021-11-26 2022-02-18 湖南汽车工程职业学院 一种基于大数据的高精地图制作系统

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4563266B2 (ja) * 2005-06-29 2010-10-13 株式会社コナミデジタルエンタテインメント ネットワークゲームシステム、ゲーム装置、ゲーム装置の制御方法及びプログラム
TWI450749B (zh) * 2007-11-21 2014-09-01 Mstar Semiconductor Inc 遊戲處理裝置
US20100125552A1 (en) * 2008-10-30 2010-05-20 Peterson Barry L Method and system for updating viewer caches
JP5322717B2 (ja) * 2009-03-17 2013-10-23 東芝電波プロダクツ株式会社 降雪現象表示方法
KR101364133B1 (ko) * 2011-06-15 2014-02-21 주식회사 브이터치 가상터치를 이용한 3차원 장치 및 3차원 게임 장치
CN104866506B (zh) * 2014-02-25 2019-07-09 腾讯科技(深圳)有限公司 一种播放动画的方法及装置
US11861770B2 (en) 2019-07-11 2024-01-02 Sony Interactive Entertainment Inc. Image processing apparatus, image processing method, and program for changing image data from an initial display range to a target display range

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5522082A (en) * 1986-01-23 1996-05-28 Texas Instruments Incorporated Graphics display processor, a graphics display system and a method of processing graphics data with control signals connected to a central processing unit and graphics circuits
US6749509B1 (en) * 1994-06-20 2004-06-15 Sega Corporation Image processing method and apparatus
EP0715280B1 (en) * 1994-06-20 2003-05-21 Sega Corporation Method and apparatus for processing image
JP3187301B2 (ja) * 1994-12-02 2001-07-11 株式会社ナムコ ゲーム装置及び画像合成方法
US5764243A (en) * 1995-03-24 1998-06-09 3Dlabs Inc. Ltd. Rendering architecture with selectable processing of multi-pixel spans
US5781789A (en) * 1995-08-31 1998-07-14 Advanced Micro Devices, Inc. Superscaler microprocessor employing a parallel mask decoder
US5825368A (en) * 1995-12-27 1998-10-20 Lucent Technologies Inc. Method and apparatus for rendering graphical components on a display utilizing geometric constraints
JP3519216B2 (ja) * 1996-07-16 2004-04-12 株式会社ナムコ 3次元シミュレータ装置及び情報記憶媒体
CN1081471C (zh) * 1996-08-21 2002-03-27 科乐美股份有限公司 命令输入方法和记录介质
JP3695217B2 (ja) * 1999-04-30 2005-09-14 オムロン株式会社 画像処理装置及び画像入力装置
DE60112016T2 (de) * 2000-03-21 2006-04-20 Sony Computer Entertainment Inc. Unterhaltungsvorrichtung, speichermedium und verfahren zur wetterbestimmung
JP4443716B2 (ja) * 2000-03-29 2010-03-31 株式会社バンダイナムコゲームス ゲーム装置、および、情報記憶媒体
JP2002292116A (ja) * 2001-03-29 2002-10-08 Square Co Ltd ゲーム装置、ゲーム制御方法およびその記録媒体ならびにコンピュータプログラム
JP2002292115A (ja) * 2001-03-29 2002-10-08 Square Co Ltd ゲーム装置、ゲーム制御方法およびその記録媒体ならびにコンピュータプログラム
JP2002292119A (ja) * 2001-03-29 2002-10-08 Square Co Ltd ビデオゲームプログラム、ビデオゲームプログラムを記録した記録媒体、ビデオゲームにおけるキャラクタ移動制御方法及びゲーム装置
US6966837B1 (en) * 2001-05-10 2005-11-22 Best Robert M Linked portable and video game systems
JP4704622B2 (ja) * 2001-07-30 2011-06-15 株式会社バンダイナムコゲームス 画像生成システム、プログラム及び情報記憶媒体
JP3527489B2 (ja) * 2001-08-03 2004-05-17 株式会社ソニー・コンピュータエンタテインメント 描画処理方法及び装置、描画処理プログラムを記録した記録媒体、描画処理プログラム
JP3577016B2 (ja) * 2001-08-24 2004-10-13 コナミ株式会社 3次元画像処理プログラム、3次元画像処理方法及びビデオゲーム装置
JP3448042B2 (ja) * 2001-10-10 2003-09-16 コナミ株式会社 ゲーム画面表示プログラム、ゲーム画面表示方法及びビデオゲーム装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100463004C (zh) * 2006-02-24 2009-02-18 腾讯科技(深圳)有限公司 一种渲染模型残影效果的方法
CN100394448C (zh) * 2006-05-17 2008-06-11 浙江大学 基于图像传输的三维远程渲染系统及其方法
CN101527051B (zh) * 2009-03-26 2011-11-16 北京像素软件科技股份有限公司 基于大气散射原理对天空进行渲染的方法和装置
CN107256531A (zh) * 2010-03-19 2017-10-17 想象技术有限公司 存储器管理系统和方法
CN107256531B (zh) * 2010-03-19 2020-05-15 想象技术有限公司 存储器管理系统和方法
CN102402115A (zh) * 2010-09-09 2012-04-04 腾讯科技(成都)有限公司 一种获得游戏3d图像的方法及装置
CN102867026A (zh) * 2012-08-23 2013-01-09 上海创图网络科技发展有限公司 一种三维网页的显示装置及其应用
CN106362398A (zh) * 2016-10-14 2017-02-01 网易(杭州)网络有限公司 摄像机镜头位置的确定方法及装置
CN112138378A (zh) * 2020-09-22 2020-12-29 网易(杭州)网络有限公司 2d游戏中闪光效果的实现方法、装置、设备及存储介质
CN114067071A (zh) * 2021-11-26 2022-02-18 湖南汽车工程职业学院 一种基于大数据的高精地图制作系统
CN114067071B (zh) * 2021-11-26 2022-08-30 湖南汽车工程职业学院 一种基于大数据的高精地图制作系统

Also Published As

Publication number Publication date
US20050181871A1 (en) 2005-08-18
KR100650228B1 (ko) 2006-11-27
WO2003098554A1 (en) 2003-11-27
KR20050008730A (ko) 2005-01-21
AU2003228105A8 (en) 2003-12-02
EP1506530B1 (en) 2008-10-08
EP1506530A1 (en) 2005-02-16
JP3686920B2 (ja) 2005-08-24
AU2003228105A1 (en) 2003-12-02
DE60323968D1 (de) 2008-11-20
JP2003337958A (ja) 2003-11-28

Similar Documents

Publication Publication Date Title
CN1656518A (zh) 三维图像处理程序、三维图像处理方法、以及视频游戏设备
CN1114456C (zh) 游戏装置及游戏的重放方法
CN1118310C (zh) 模拟三维显示图场光标显示方法及游戏机系统
CN1211141C (zh) 一种控制游戏中角色动作的视频游戏装置及其控制方法
CN1103480C (zh) 图像信息处理系统和方法
JP3577016B2 (ja) 3次元画像処理プログラム、3次元画像処理方法及びビデオゲーム装置
CN1138231C (zh) 图象产生装置、其方法、游戏装置
CN1270279C (zh) 图像处理装置和游戏装置
CN1178724C (zh) 视频游戏机及其控制方法和环境图像装置
CN1194705A (zh) 图像处理装置,图像处理方法,游戏机,和存储介质
CN1547498A (zh) 考虑了网络游戏的目标时间设定游戏系统
CN1256675C (zh) 在音频存储器中预缓存数据的方法和装置
CN1199352A (zh) 命令输入方法和记录介质
JP3597803B2 (ja) 音量制御プログラム、音量制御方法及びビデオゲーム装置
CN1130667C (zh) 运动图象再生质量控制装置及其控制方法
CN1243326C (zh) 图象处理装置、处理方法及游戏装置
CN1170238C (zh) 视频游戏的装置与表示方法
CN1735909A (zh) 图像显示控制程序、图像显示控制方法及视频游戏装置
JP3597792B2 (ja) 3次元画像処理方法、装置、3次元画像処理プログラム及びビデオゲーム装置
US7576739B2 (en) Storage medium having game program stored therein, and game apparatus and game processing method therefor
CN1717704A (zh) 游戏软件和游戏装置
JP2002273049A (ja) ビデオゲーム装置、ビデオゲーム進行制御方法及びビデオゲーム進行制御プログラム
CN1295654C (zh) 图象产生方法和装置
JP3737784B2 (ja) 3次元画像処理プログラム、3次元画像処理方法及びビデオゲーム装置
JP2003051030A (ja) 動画像生成プログラム、動画像生成方法及び装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: KONAMI CO., LTD.

Free format text: FORMER OWNER: KONAMI CO., LTD.; APPLICANT

Effective date: 20051202

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20051202

Address after: Tokyo, Japan

Applicant after: Konami Co., Ltd.

Address before: Tokyo, Japan

Applicant before: Konami Co., Ltd.

Co-applicant before: Konami Computer Entertainment Studios, Inc.

REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1080973

Country of ref document: HK

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1080973

Country of ref document: HK