JP2012174089A - Program, and image processor with computer for executing program - Google Patents

Program, and image processor with computer for executing program Download PDF

Info

Publication number
JP2012174089A
JP2012174089A JP2011036781A JP2011036781A JP2012174089A JP 2012174089 A JP2012174089 A JP 2012174089A JP 2011036781 A JP2011036781 A JP 2011036781A JP 2011036781 A JP2011036781 A JP 2011036781A JP 2012174089 A JP2012174089 A JP 2012174089A
Authority
JP
Japan
Prior art keywords
data
character
virtual camera
player character
game
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.)
Granted
Application number
JP2011036781A
Other languages
Japanese (ja)
Other versions
JP5775323B2 (en
Inventor
Kimihiro Tomino
公洋 冨野
Masaki Nishimasu
将希 西増
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.)
Capcom Co Ltd
Original Assignee
Capcom Co Ltd
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 Capcom Co Ltd filed Critical Capcom Co Ltd
Priority to JP2011036781A priority Critical patent/JP5775323B2/en
Publication of JP2012174089A publication Critical patent/JP2012174089A/en
Application granted granted Critical
Publication of JP5775323B2 publication Critical patent/JP5775323B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To display objects by composition similar to the one assumed by a game creator without increasing pieces of data on a position and a photographing direction of a virtual camera even when sizes of the objects to be displayed are different from each other.SOLUTION: Difference ΔL=L'-L between height L' of a player character PC and height L of a reference character is added to a height component of position coordinates of a virtual camera C as a correction value. In addition, correction according to the difference ΔL is performed so that a photographing direction of the virtual camera C turns to the head of an enemy character EC. When the height of the player character PC is higher (refer to a selected figure (b)), ΔL (>0) is added to the height component, and the virtual camera C is arranged at an upper part by ΔL rather than a reference camera position shown by broken lines. The photographing direction of the virtual camera C is corrected so as to turn to the head of the enemy character EC. Thus, an image by composition similar to that in the case of the reference character (refer to a selected figure (a)) is photographed.

Description

本発明は、プログラム、および、当該プログラムを実行するコンピュータを備えた画像処理装置に関し、特に、仮想カメラの位置または撮影方向の補正に関する。   The present invention relates to a program and an image processing apparatus including a computer that executes the program, and more particularly to correction of the position or shooting direction of a virtual camera.

従来、プレイヤが所定のキャラクタを操作し、三次元仮想ゲーム空間上で活動させるゲームが開発されている。以下では、プレイヤが操作するキャラクタを「プレイヤキャラクタ」とする。三次元仮想ゲーム空間上に配置されたキャラクタおよびオブジェクト(「オブジェクト」は「キャラクタ」を含む概念なので、以下で総称する場合は、単に「オブジェクト」とする。)を二次元画像として画面に表示するため、一般的に、所定の位置座標に基づいた投影処理が行われる。この場合、所定の位置座標にある仮想カメラで撮影したような画像が生成されるので、三次元仮想ゲーム空間上のオブジェクトを二次元画像で表示することを仮想カメラで撮影すると表現する。   Conventionally, a game in which a player operates a predetermined character and activates in a three-dimensional virtual game space has been developed. Hereinafter, the character operated by the player is referred to as “player character”. Characters and objects arranged in the three-dimensional virtual game space (“object” is a concept including “character”, and hence will be simply referred to as “object” when collectively referred to below) are displayed as a two-dimensional image on the screen. Therefore, in general, a projection process based on predetermined position coordinates is performed. In this case, an image as if it was shot with a virtual camera at a predetermined position coordinate is generated, and thus displaying an object on the three-dimensional virtual game space as a two-dimensional image is expressed as shooting with a virtual camera.

仮想カメラの位置をプレイヤキャラクタから離れた位置とプレイヤキャラクタの視点位置とで切り替えて、客観視点から撮影した画像と主観視点から撮影した画像とを切り替えるゲームが開発されている(特許文献1参照)。また、プレイヤが選択したオブジェクトに注視点を設定して、仮想カメラの撮影方向を変更するゲームが開発されている(特許文献2参照)。   A game has been developed in which the position of the virtual camera is switched between a position away from the player character and the viewpoint position of the player character to switch between an image photographed from an objective viewpoint and an image photographed from a subjective viewpoint (see Patent Document 1). . In addition, a game has been developed in which a gazing point is set on an object selected by the player and the shooting direction of the virtual camera is changed (see Patent Document 2).

各キャラクタに所定の動作を行わせる場合、あらかじめ設定されている各動作のためのデータ(以下では、「モーションデータ」とする。)を用いることが、一般的に行われている。モーションデータは、各動作(モーション)のフレーム毎(例えば1/60秒毎)のデータを記録したものである(図9参照)。一般に、コンピュータグラフィックスを用いたアニメーションでは、人や動物などの多関節物体は身体の各パーツを関節で連結した階層構造のスケルトンモデル(図4および図5参照)で表現される。モーションデータはこのスケルトンモデルの各関節の位置データまたは各関節の回転角度のデータをフレーム毎に記録している。各関節の位置に応じてキャラクタの各パーツを配置することで当該キャラクタを三次元仮想ゲーム空間上に配置し、これをフレーム毎に行うことで当該キャラクタに所定の動作を行わせる。   When causing each character to perform a predetermined action, it is common practice to use preset data for each action (hereinafter referred to as “motion data”). The motion data is obtained by recording data for each frame of motion (motion) (for example, every 1/60 seconds) (see FIG. 9). In general, in an animation using computer graphics, a multi-joint object such as a person or an animal is represented by a skeleton model (see FIGS. 4 and 5) having a hierarchical structure in which body parts are connected by joints. As the motion data, position data of each joint of the skeleton model or rotation angle data of each joint is recorded for each frame. By placing each part of the character in accordance with the position of each joint, the character is placed in the three-dimensional virtual game space, and this is performed for each frame to cause the character to perform a predetermined action.

例えば、剣を振り下ろして敵キャラクタを切り倒す動作をプレイヤキャラクタにさせる場合、プレイヤキャラクタ固有の画像データやモデルデータなど(以下では、「キャラクタデータ」とする。詳細は後述する。)と、剣を振り下ろすモーションデータとを組み合わせて、当該動作を行わせる。このとき、仮想カメラの位置および撮影方向についてフレーム毎に記録したデータ(以下では、「仮想カメラモーションデータ」とする。)に応じて、仮想カメラの位置および撮影方向を変化させながら撮影させる場合がある。仮想カメラモーションデータの詳細は後述する。仮想カメラが、仮想カメラモーションデータに応じて位置および撮影方向を変化させながらプレイヤキャラクタを撮影することで、プレイヤキャラクタを中心とした構図で迫力ある映像が生成される。例えば、関節構造を有するキャラクタの骨格モデルの一部に仮想カメラを組み込んで、仮想カメラのモーションを制御するゲームが開発されている(特許文献3参照)。   For example, when the player character is caused to swing down the enemy character by swinging down the sword, image data and model data unique to the player character (hereinafter referred to as “character data”, details will be described later), and the sword. The operation is performed in combination with the motion data to be shaken down. At this time, there is a case where shooting is performed while changing the position and the shooting direction of the virtual camera according to the data recorded for each frame regarding the position and the shooting direction of the virtual camera (hereinafter referred to as “virtual camera motion data”). is there. Details of the virtual camera motion data will be described later. The virtual camera shoots the player character while changing the position and the shooting direction according to the virtual camera motion data, thereby generating a powerful video with a composition centered on the player character. For example, a game has been developed in which a virtual camera is incorporated into a part of a skeleton model of a character having a joint structure to control the motion of the virtual camera (see Patent Document 3).

特許第3964884号公報Japanese Patent No. 3964484 特許第4144017号公報Japanese Patent No. 4144017 特開2009−28188号公報JP 2009-28188 A

しかしながら、プレイヤがプレイヤキャラクタを選択できるゲームや、プレイヤがプレイヤキャラクタの体の各パーツを編集できるゲームの場合、所定の仮想カメラモーションデータに応じて撮影を行っても、ゲーム作製者が想定した構図での映像が生成されない場合がある。例えば、プレイヤキャラクタの背が高いなど体型が通常より大きい場合、プレイヤキャラクタが画面からはみ出したり、他のキャラクタがプレイヤキャラクタに隠れて見えなくなることがある。また、プレイヤキャラクタの背が低いなど体型が通常より小さい場合、プレイヤキャラクタが画面の下の方に表示されることがある。   However, in the case of a game in which the player can select a player character or a game in which the player can edit each part of the player character's body, the composition assumed by the game creator even if shooting is performed according to predetermined virtual camera motion data Video may not be generated. For example, when the body shape is larger than usual, such as when the player character is tall, the player character may protrude from the screen or other characters may be hidden behind the player character and become invisible. Further, when the body shape is smaller than usual, such as when the player character is short, the player character may be displayed at the bottom of the screen.

図17は、プレイヤキャラクタと敵キャラクタとが向かい合って、プレイヤキャラクタがある動作を行っているデモ映像の1コマの画像を示している。   FIG. 17 shows a one-frame image of a demonstration video in which the player character and the enemy character face each other and the player character performs an action.

図17(a)は、プレイヤキャラクタPCの体型が通常の体型の場合を示している。仮想カメラモーションデータはプレイヤキャラクタPCの体型が通常の体型の場合を基準として設定されているので、プレイヤキャラクタPCと敵キャラクタECとがゲーム作製者が想定した構図で表示されている。   FIG. 17A shows a case where the body shape of the player character PC is a normal body shape. Since the virtual camera motion data is set based on the case where the body shape of the player character PC is a normal body shape, the player character PC and the enemy character EC are displayed in a composition assumed by the game creator.

図17(b)は、プレイヤキャラクタPCが通常の体型より背の高い体型である場合を示している。仮想カメラは、図17(a)の場合と同じ位置で同じ撮影方向で撮影を行っている。そのため、プレイヤキャラクタPCの頭部が画面からはみ出して、図17(a)の場合とは大幅に異なる構図になっている。   FIG. 17B shows a case where the player character PC has a taller body shape than the normal body shape. The virtual camera is shooting in the same shooting direction at the same position as in FIG. Therefore, the head of the player character PC protrudes from the screen, and the composition is significantly different from the case of FIG.

図17(c)は、プレイヤキャラクタPCが通常の体型より背の低い体型である場合を示している。仮想カメラは、図17(a)の場合と同じ位置で同じ撮影方向で撮影を行っている。そのため、プレイヤキャラクタPCが画面の下方に位置しており、図17(a)の場合とは大幅に異なる構図になっている。   FIG. 17C shows a case where the player character PC has a shorter body shape than the normal body shape. The virtual camera is shooting in the same shooting direction at the same position as in FIG. Therefore, the player character PC is positioned below the screen, and the composition is significantly different from that in the case of FIG.

図17(b)および(c)の場合において、図17(a)と同様の構図となるような仮想カメラモーションデータをあらかじめ用意して用いるようにすれば、プレイヤキャラクタPCの体型にかかわらず同様の構図で表示することができる。しかし、プレイヤキャラクタPCの体型毎にそれぞれ仮想カメラモーションデータを作成すると、データを作成するための作業量が増大する。また、記録するデータ量が膨大になる。   In the cases of FIGS. 17B and 17C, if virtual camera motion data having the same composition as in FIG. 17A is prepared and used in advance, the same is true regardless of the body shape of the player character PC. It can be displayed in the composition. However, if virtual camera motion data is created for each body shape of the player character PC, the amount of work for creating the data increases. In addition, the amount of data to be recorded becomes enormous.

また、プレイヤキャラクタPCの体型にかかわらず、プレイヤキャラクタPCの全体が確実に画面内に収まるように、仮想カメラの位置を予めプレイヤキャラクタPCから離れた位置に設定しておく方法もある。しかし、この場合、仮想カメラ位置は最も大きいプレイヤキャラクタPCの体型に基づいた位置が基準となる。そのため、体型が異なるプレイヤキャラクタPCを撮像する場合、単調で迫力がない映像になり、ゲーム作製者が想定した構図をとることができない。   Also, there is a method in which the position of the virtual camera is previously set at a position away from the player character PC so that the entire player character PC can be surely fit within the screen regardless of the body shape of the player character PC. However, in this case, the virtual camera position is based on the position based on the body shape of the largest player character PC. For this reason, when the player character PC having a different body shape is imaged, the image is monotonous and not powerful, and the composition assumed by the game creator cannot be taken.

プレイヤキャラクタPC以外のキャラクタやオブジェクトが編集や選択可能な場合にも、同様の問題が生じる場合がある。また、上記問題はゲームに限られるものではない。ゲーム以外においても、共通の仮想カメラモーションデータに基づいて大きさの異なるオブジェクトを表示する場合に、同様の問題が生じる。   A similar problem may occur when a character or object other than the player character PC can be edited or selected. The above problem is not limited to games. Other than the game, the same problem occurs when displaying objects of different sizes based on common virtual camera motion data.

上述したデモ映像の再生方法は、あらかじめ作成されて記憶されているデモ映像をそのまま再生する「プリレンダムービー」に対して、リアルタイムに処理を行ってデモ映像を再生するので、「リアルタイムレンダリングムービー」といわれる。「リアルタイムレンダリングムービー」では、あらかじめ記憶されているモーションデータにキャラクタデータを組み合わせ、キャラクタをリアルタイムに動作させて撮影するので、プレイヤがゲーム中に選択したキャラクタの武器や服装などの装備品をデモ映像に反映することができる。しかしながら、プレイヤが選択した装備品が大きい場合、再生されたデモ映像において、装備品の一部が画面からはみ出したり、他のキャラクタが当該装備品に隠されて見えなくなることがある。この場合も、同様の問題が生じる。   The demo video playback method described above is a “pre-render movie” that plays back a demo video that has been created and stored in advance. Is called. In “Real-time rendering movie”, character data is combined with pre-stored motion data and the character is moved in real time to shoot, so a demonstration video showing equipment such as weapons and clothes selected by the player during the game Can be reflected. However, when the equipment selected by the player is large, in the reproduced demo video, a part of the equipment may protrude from the screen or other characters may be hidden by the equipment and become invisible. In this case, the same problem occurs.

本発明は上記した事情のもとで考え出されたものであって、表示されるオブジェクトの大きさが異なる場合であっても、仮想カメラの位置および撮影方向のデータを増加させることなく、ゲーム作製者が想定した構図と同様の構図でオブジェクトを表示させることができるプログラムを提供することをその目的としている。   The present invention has been conceived under the circumstances described above, and it is possible to play a game without increasing the data of the position and shooting direction of the virtual camera even when the size of the displayed object is different. The object is to provide a program capable of displaying an object with a composition similar to the composition assumed by the creator.

上記課題を解決するため、本発明では、次の技術的手段を講じている。   In order to solve the above problems, the present invention takes the following technical means.

本発明の第1の側面によって提供されるプログラムは、三次元仮想空間に配置されるオブジェクトの画像を表示装置に表示させる画像処理装置のコンピュータで実行されるプログラムであって、前記コンピュータを、記録部にあらかじめ記録されている、基準となる基準オブジェクトを撮影するために設定された仮想カメラの基準位置および基準撮影方向を読み出す読出手段と、前記基準オブジェクトの所定部分の大きさに対する前記オブジェクトの前記所定部分の大きさに関する情報である補正情報を演算する演算手段と、前記演算手段によって演算された補正情報に応じて、前記読出手段によって読み出された前記基準位置および基準撮影方向の少なくとも一方を補正する補正手段と、補正後の仮想カメラの位置および撮影方向を、前記オブジェクトを撮影するための仮想カメラの位置および撮影方向として設定する設定手段として機能させることを特徴とする。   A program provided by the first aspect of the present invention is a program executed by a computer of an image processing apparatus that causes an image of an object arranged in a three-dimensional virtual space to be displayed on a display device. Reading means for reading out a reference position and a reference shooting direction of a virtual camera set for shooting a reference object that is recorded in advance in the unit, and the object relative to the size of a predetermined portion of the reference object A calculation unit that calculates correction information that is information relating to the size of the predetermined portion, and at least one of the reference position and the reference photographing direction read by the reading unit according to the correction information calculated by the calculation unit. Correction means for correcting, the corrected virtual camera position and shooting direction, Characterized in that to function as a setting means for setting a position and imaging direction of the virtual camera for capturing objects.

なお、本発明における「オブジェクトの所定部分の大きさ」には、オブジェクト全体の垂直方向の長さ(高さ)や水平方向の長さなどや、オブジェクトの一部分の長さなどが含まれる。例えば、オブジェクトが人物などのキャラクタの場合、当該キャラクタの身長や肩幅、脚の長さ、腕の長さなどが、「オブジェクトの所定部分の大きさ」に含まれる。また、キャラクタが装備品を装着している場合、装着している装備品も含めたキャラクタ全体を1つのオブジェクトと考えることができる。したがって、兜をかぶっているキャラクタの兜の先端までの高さや、ハイヒールを履いているキャラクタのヒールの先端を基準とした頭の先までの高さ(すなわち、ハイヒールを履いた状態での身長)も、「オブジェクトの所定部分の大きさ」に含まれる。また、キャラクタが槍などの武器を所持している場合、武器を構えたキャラクタの武器の先端までの高さが「オブジェクトの所定部分の大きさ」に含まれ、武器そのものの長さも「オブジェクトの所定部分の大きさ」に含まれる。また、本発明における「補正情報」には、大きさの差に基づく差分情報および大きさの割合に基づく割合情報などが含まれる。   The “size of a predetermined part of the object” in the present invention includes the vertical length (height) of the entire object, the horizontal length, the length of a part of the object, and the like. For example, when the object is a character such as a person, the height, shoulder width, leg length, arm length, and the like of the character are included in the “size of a predetermined portion of the object”. Further, when the character wears equipment, the entire character including the equipped equipment can be considered as one object. Therefore, the height of the character wearing the heel to the tip of the heel and the height to the tip of the head relative to the heel tip of the character wearing the high heel (that is, the height when wearing the high heel) Is also included in the “size of a predetermined portion of the object”. If the character has a weapon such as a spear, the height of the character holding the weapon up to the tip of the weapon is included in the “size of the predetermined part of the object”, and the length of the weapon itself is also “ It is included in the “size of the predetermined portion”. Further, the “correction information” in the present invention includes difference information based on the size difference, ratio information based on the size ratio, and the like.

本発明の好ましい実施の形態においては、前記演算手段は、前記基準オブジェクトの垂直方向の長さに対する前記オブジェクトの垂直方向の長さに関する情報を前記補正情報として演算する。   In a preferred embodiment of the present invention, the computing means computes information relating to the vertical length of the object relative to the vertical length of the reference object as the correction information.

本発明の好ましい実施の形態においては、前記補正手段は、前記補正情報に応じて前記基準位置の垂直成分および基準撮影方向の垂直成分の少なくとも一方を補正する。   In a preferred embodiment of the present invention, the correction unit corrects at least one of a vertical component of the reference position and a vertical component of the reference photographing direction in accordance with the correction information.

本発明の好ましい実施の形態においては、前記オブジェクトは複数のオブジェクトであり、前記演算手段は、前記基準オブジェクトの前記所定部分の大きさに対する前記複数のオブジェクトのそれぞれの所定部分の平均の大きさに関する情報を前記補正情報として演算する。   In a preferred embodiment of the present invention, the object is a plurality of objects, and the computing means relates to an average size of each predetermined portion of the plurality of objects with respect to the size of the predetermined portion of the reference object. Information is calculated as the correction information.

本発明の好ましい実施の形態においては、前記オブジェクト以外の他のオブジェクトが前記三次元仮想空間に配置されており、前記演算手段は、さらに前記オブジェクトの前記他のオブジェクトに対する相対位置の情報を演算し、前記補正手段は、前記相対位置の情報に応じて前記基準位置および基準撮影方向の少なくとも一方を補正する。   In a preferred embodiment of the present invention, another object other than the object is arranged in the three-dimensional virtual space, and the calculation means further calculates information on a relative position of the object with respect to the other object. The correction unit corrects at least one of the reference position and the reference photographing direction according to the information on the relative position.

本発明の好ましい実施の形態においては、前記基準位置および基準撮影方向は、前記記録部にフレームごとに記録されており、前記読出手段は、前記基準位置および基準撮影方向を、フレームごとに読み出し、前記補正手段は、前記補正情報に応じて、前記読出手段によって読み出されたフレームごとの前記基準位置および基準撮影方向を補正する。   In a preferred embodiment of the present invention, the reference position and the reference photographing direction are recorded in the recording unit for each frame, and the reading unit reads the reference position and the reference photographing direction for each frame, The correction unit corrects the reference position and the reference photographing direction for each frame read by the reading unit according to the correction information.

本発明の第2の側面によって提供される画像処理装置は、本発明の第1の側面によって提供されるプログラムを記録したプログラム記録部と、前記プログラム記録部に記録されたプログラムを実行するコンピュータとを備えていることを特徴とする。   An image processing apparatus provided by the second aspect of the present invention includes a program recording unit that records the program provided by the first aspect of the present invention, and a computer that executes the program recorded in the program recording unit. It is characterized by having.

本発明によれば、あらかじめ記録されている基準位置や基準撮影方向が補正情報に応じて補正される。したがって、オブジェクトの大きさが異なる毎に仮想カメラの位置および撮影方向を記録しておかなくても、ゲーム作製者が想定した構図と同様の構図でオブジェクトを表示させることができる。   According to the present invention, the reference position and reference photographing direction recorded in advance are corrected according to the correction information. Therefore, the object can be displayed in the same composition as the composition assumed by the game creator without having to record the position and shooting direction of the virtual camera every time the size of the object is different.

例えば、プレイヤキャラクタの身長に応じて仮想カメラの位置の垂直成分と撮影方向の垂直成分とを補正して撮影することで、ゲーム作製者が想定した構図と同様の構図でプレイヤキャラクタを表示することができる。   For example, by correcting the vertical component of the position of the virtual camera and the vertical component of the shooting direction according to the height of the player character and shooting, the player character is displayed with a composition similar to the composition assumed by the game creator. Can do.

また、オブジェクトの大きさが異なる毎に仮想カメラの位置および撮影方向を記録しておかなくてもいいので、ゲーム開発時のデータ作成の作業量を抑制して、開発コストを抑制することができる。また、データを記憶しておくためのRAMの記憶領域の増大を抑制することができる。   In addition, since it is not necessary to record the position and shooting direction of the virtual camera every time the size of the object is different, it is possible to reduce the development cost by suppressing the amount of data creation work during game development. . Further, an increase in the storage area of the RAM for storing data can be suppressed.

本発明のその他の特徴および利点は、添付図面を参照して以下に行う詳細な説明によって、より明らかとなろう。   Other features and advantages of the present invention will become more apparent from the detailed description given below with reference to the accompanying drawings.

プレイヤキャラクタの大きさに応じた仮想カメラの位置および撮影方向を説明するための図である。It is a figure for demonstrating the position and imaging | photography direction of a virtual camera according to the magnitude | size of a player character. 図1(b)および(c)の場合において、仮想カメラで撮影された画像を示す図である。It is a figure which shows the image image | photographed with the virtual camera in the case of FIG.1 (b) and (c). 本実施形態に係るゲーム装置を示す構成図である。It is a lineblock diagram showing the game device concerning this embodiment. キャラクタが標準姿勢を取っているときの各関節のリンク構造を示す図である。It is a figure which shows the link structure of each joint when a character is taking the standard posture. 各関節の親子関係の階層構造を示す図である。It is a figure which shows the hierarchical structure of the parent-child relationship of each joint. 基準キャラクタデータの一例を説明するための図である。It is a figure for demonstrating an example of reference character data. ポジションデータを説明するための図である。It is a figure for demonstrating position data. プレイヤキャラクタデータの一例を説明するための図である。It is a figure for demonstrating an example of player character data. 基準キャラクタモーションデータの一例を説明するための図である。It is a figure for demonstrating an example of reference character motion data. 仮想カメラデータの一例を説明するための図である。It is a figure for demonstrating an example of virtual camera data. 基準仮想カメラモーションデータの一例を説明するための図である。It is a figure for demonstrating an example of reference | standard virtual camera motion data. デモ映像のためのゲーム画像データを生成する処理を説明するためのフローチャートである。It is a flowchart for demonstrating the process which produces | generates the game image data for a demonstration image | video. スケルトンデータの一例を説明するための図である。It is a figure for demonstrating an example of skeleton data. 敵キャラクタの身長に応じて仮想カメラの撮影方向を補正する場合の例を説明するための図である。It is a figure for demonstrating the example in the case of correct | amending the imaging | photography direction of a virtual camera according to the height of an enemy character. 複数の敵キャラクタの身長に応じて仮想カメラの位置を補正する場合の例を説明するための図である。It is a figure for demonstrating the example in the case of correct | amending the position of a virtual camera according to the height of several enemy characters. プレイヤキャラクタと敵キャラクタの位置関係に応じて、仮想カメラの位置および撮影方向を補正する場合の例を説明するための図である。It is a figure for demonstrating the example in the case of correct | amending the position and imaging | photography direction of a virtual camera according to the positional relationship of a player character and an enemy character. プレイヤキャラクタがある動作を行っているデモ映像の1コマの画像を示す図である。It is a figure which shows the image of one frame of the demonstration image | video which a player character is performing a certain operation | movement.

以下、本発明の好ましい実施の形態として、本発明に係るプログラムをゲームソフトに適用した場合について、添付図面を参照して具体的に説明する。以下の説明では、家庭用ゲーム装置(以下では、「ゲーム装置」とする。)において、アクションゲームを進行している場合を例として説明する。   Hereinafter, as a preferred embodiment of the present invention, a case where a program according to the present invention is applied to game software will be specifically described with reference to the accompanying drawings. In the following description, a case where an action game is progressing in a home game device (hereinafter referred to as “game device”) will be described as an example.

本実施形態に係るアクションゲームは、三次元仮想ゲーム空間上でプレイヤキャラクタを敵キャラクタと戦わせ、プレイヤキャラクタが敵キャラクタを倒すことにより進行する。また、このアクションゲームには、プレイヤキャラクタを編集する機能が設けられている。プレイヤは、編集機能を用いてプレイヤキャラクタを好みの形状に変更することができる。   The action game according to the present embodiment proceeds by causing the player character to fight the enemy character in the three-dimensional virtual game space and the player character defeating the enemy character. Further, this action game is provided with a function of editing the player character. The player can change the player character into a desired shape using the editing function.

編集機能では、プレイヤキャラクタの基準となるキャラクタ(以下では、「基準キャラクタ」とする。)の腕や脚、胴体などの各パーツの形状(長さ、太さなど)を変更したり、基準キャラクタの顔を構成する目や鼻などの各パーツの形状および配置位置を変更したりすることができる。また、編集機能では、武器や服装などの装備品を選択して、プレイヤキャラクタに装備させることもできる。プレイヤは、編集後の基準キャラクタを自分のプレイヤキャラクタとして三次元仮想ゲーム空間上で使用することができる。例えば、腕のパーツの編集では、肩から肘までの上腕部分と肘から手首までの前腕部分とを、それぞれ個別に長くしたり短くしたり、太くしたり細くしたりすることができる。編集機能の詳細については後述する。   In the editing function, the shape (length, thickness, etc.) of each part such as the arm, leg, and trunk of the character (hereinafter referred to as “reference character”) that is the reference of the player character is changed, or the reference character The shape and arrangement position of each part such as eyes and nose constituting the face can be changed. Further, in the editing function, equipment such as weapons and clothes can be selected, and the player character can be equipped. The player can use the edited reference character as his player character in the three-dimensional virtual game space. For example, when editing arm parts, the upper arm portion from the shoulder to the elbow and the forearm portion from the elbow to the wrist can be individually lengthened, shortened, thickened or thinned. Details of the editing function will be described later.

プレイヤキャラクタの動作には、予め設定されている基準キャラクタの動作のためのモーションデータが用いられる。モーションデータを用いた具体的な動作の再生方法については後述する。また、仮想カメラモーションデータに応じて位置および撮影方向を変化させながら仮想カメラがプレイヤキャラクタを撮影する。当該仮想カメラモーションデータは、基準キャラクタが動作を行ったときに迫力ある映像が生成されるように、ゲーム作製者によって構図が決められて作製される。すなわち、基準キャラクタの動作を仮想カメラモーションデータに基づいて撮影した構図が、ゲーム作製者が想定した構図である。本実施形態では、プレイヤキャラクタの体型に応じて仮想カメラの位置および撮影方向を補正する。これにより、プレイヤキャラクタの体型が編集によって変化していても、ゲーム作製者が想定した構図と同様の構図で迫力ある映像を生成することができる。   For the action of the player character, preset motion data for the action of the reference character is used. A specific operation reproduction method using motion data will be described later. The virtual camera shoots the player character while changing the position and shooting direction according to the virtual camera motion data. The virtual camera motion data is created with a composition determined by the game creator so that a powerful video is generated when the reference character performs an action. In other words, the composition that the action of the reference character is photographed based on the virtual camera motion data is the composition assumed by the game creator. In this embodiment, the position of the virtual camera and the shooting direction are corrected according to the body shape of the player character. Thereby, even if the body shape of the player character is changed by editing, it is possible to generate a powerful video with a composition similar to the composition assumed by the game creator.

図1は、プレイヤキャラクタの体型に応じて補正された仮想カメラの位置および撮影方向を説明するための図である。図1においては、プレイヤキャラクタPCと敵キャラクタECとが向かい合っているところを、プレイヤキャラクタPCの右後方の所定の位置にある仮想カメラCで撮影している状態を示している。なお、図1の各キャラクタは図17の各キャラクタの手足を省略して簡略化したキャラクタとして記載されている(図14についても同様である。)。   FIG. 1 is a diagram for explaining the position of the virtual camera and the shooting direction corrected according to the body shape of the player character. FIG. 1 shows a state in which the player character PC and the enemy character EC face each other with the virtual camera C at a predetermined position on the right rear side of the player character PC. Each character in FIG. 1 is described as a simplified character by omitting the limbs of each character in FIG. 17 (the same applies to FIG. 14).

図1は、プレイヤキャラクタPCのローカル座標系のX軸の負方向から見たものである。ローカル座標系は、キャラクタ(例えば、プレイヤキャラクタPCや敵キャラクタECなどの、CPUによって動きが制御されているキャラクタ)毎に設定されている座標系であって、キャラクタの動きや姿勢を管理するために設けられている。プレイヤキャラクタPCのローカル座標系は、プレイヤキャラクタPCの上方向をY軸の正方向とし、プレイヤキャラクタPCの正面方向をZ軸の正方向とし、プレイヤキャラクタPCの左方向をX軸の正方向として設定されている。図1(a)の右側の矢印はローカル座標系を示しており、紙面表から裏の方向がX軸の正方向である。   FIG. 1 is viewed from the negative direction of the X axis of the local coordinate system of the player character PC. The local coordinate system is a coordinate system set for each character (for example, a character whose movement is controlled by the CPU, such as the player character PC or the enemy character EC), and manages the movement and posture of the character. Is provided. In the local coordinate system of the player character PC, the upward direction of the player character PC is the positive direction of the Y axis, the front direction of the player character PC is the positive direction of the Z axis, and the left direction of the player character PC is the positive direction of the X axis. Is set. The arrow on the right side of FIG. 1A indicates the local coordinate system, and the direction from the front to the back of the page is the positive direction of the X axis.

図1(a)は、プレイヤキャラクタPCが通常の体型(基準キャラクタの体型)である場合を示している。仮想カメラCは、プレイヤキャラクタPC後方のプレイヤキャラクタPCの頭部より少し高い位置(図においては左側の上方位置)に配置され、撮影方向は敵キャラクタECの頭部を向いている。この場合、仮想カメラCで撮影された画像は、図17(a)に示す画像のようになる。   FIG. 1A shows a case where the player character PC has a normal body shape (a body shape of a reference character). The virtual camera C is disposed at a position slightly higher than the head of the player character PC behind the player character PC (upward position on the left side in the figure), and the shooting direction faces the head of the enemy character EC. In this case, the image captured by the virtual camera C is as shown in FIG.

図1(b)は、プレイヤキャラクタPCが背の高い体型である場合を示している。仮想カメラCは、プレイヤキャラクタPCが基準キャラクタの体型であった場合の位置(図において破線で示す仮想カメラCの位置であり、以下では、「基準カメラ位置」とする。)より高い位置に配置されている。また、仮想カメラCの撮影方向が鉛直上方向となす角度(以下では、「撮影角度」とする。)α’は、プレイヤキャラクタPCが基準キャラクタの体型であった場合の撮影角度(以下では、「基準撮影角度」とする。)αより大きくなっている。この場合、仮想カメラCで撮影された画像は、図2(a)に示す画像のようになり、図17(a)に近い構図となっている。仮に、図1(b)の場合に、基準カメラ位置にある仮想カメラCで、撮影角度が基準撮影角度αになるようにして撮影した場合(すなわち、図において破線で示す仮想カメラCで撮影した場合)、撮影された画像は図17(b)に示す画像のように、プレイヤキャラクタPCの頭部がはみだした画像になってしまう。   FIG. 1B shows a case where the player character PC has a tall body shape. The virtual camera C is disposed at a position higher than the position (the position of the virtual camera C indicated by a broken line in the drawing, hereinafter referred to as “reference camera position”) when the player character PC is the body shape of the reference character. Has been. Further, the angle (hereinafter referred to as “shooting angle”) α ′ that the shooting direction of the virtual camera C is in the vertically upward direction is the shooting angle when the player character PC is the body shape of the reference character (hereinafter, referred to as “shooting angle”). “Reference shooting angle.”) It is larger than α. In this case, the image photographed by the virtual camera C looks like the image shown in FIG. 2A and has a composition close to that in FIG. In the case of FIG. 1B, the virtual camera C at the reference camera position is shot with the shooting angle equal to the reference shooting angle α (that is, shot with the virtual camera C indicated by a broken line in the figure). In this case, the photographed image is an image in which the head of the player character PC protrudes like the image shown in FIG.

図1(c)は、プレイヤキャラクタPCが背の低い体型である場合を示している。仮想カメラCは、プレイヤキャラクタPCが基準カメラ位置(図において破線で示す仮想カメラCの位置)より低い位置に配置されている。また、撮影角度α”は、基準撮影角度αより小さくなっている。この場合、仮想カメラCで撮影された画像は、図2(b)に示す画像のようになり、図17(a)に近い構図となっている。仮に、図1(c)の場合に、基準カメラ位置にある仮想カメラCで、撮影角度が基準撮影角度αになるようにして撮影した場合(すなわち、図において破線で示す仮想カメラCで撮影した場合)、撮影された画像は図17(c)に示す画像のように、プレイヤキャラクタPCが画像の下方に位置した画像になってしまう。   FIG. 1C shows a case where the player character PC has a short body shape. The virtual camera C is disposed at a position where the player character PC is lower than the reference camera position (the position of the virtual camera C indicated by a broken line in the drawing). Further, the shooting angle α ″ is smaller than the reference shooting angle α. In this case, the image shot by the virtual camera C looks like the image shown in FIG. 2B, and is shown in FIG. In the case of Fig. 1 (c), the virtual camera C at the reference camera position is shot with the shooting angle equal to the reference shooting angle α (that is, the broken line in the figure). When the image is taken by the virtual camera C shown), the taken image is an image in which the player character PC is positioned below the image, as shown in FIG. 17C.

本発明は、基準キャラクタとそれに基づいた基準となる仮想カメラモーションデータとを備えておき、基準キャラクタとは大きさの異なるキャラクタの映像を生成する場合に、その大きさの違いに基づいて、仮想カメラモーションデータを補正し、補正後の仮想カメラモーションデータに基づいて映像を生成するところに特徴がある。仮想カメラモーションデータの補正方法の詳細については後述する。   The present invention includes a reference character and virtual camera motion data serving as a reference based on the reference character. When a video of a character having a different size from the reference character is generated, the virtual character is generated based on the difference in size. It is characterized in that the camera motion data is corrected and an image is generated based on the corrected virtual camera motion data. Details of the virtual camera motion data correction method will be described later.

以下に、本実施形態のハード構成について説明する。   The hardware configuration of this embodiment will be described below.

図3は、本実施形態に係るゲーム装置を示す構成図である。ゲーム装置1は、本体11および操作コントローラ12を備えている。操作コントローラ12は短距離無線通信によって本体11に接続されている。本体11には、モニタ13が専用のケーブルによって接続される。また、本体11には、ゲームプログラムやゲームデータが記録されているディスク14が装着される。さらに、本体11には、必要に応じてゲームデータを保存するためのメモリカード15も装着される。   FIG. 3 is a configuration diagram showing the game device according to the present embodiment. The game apparatus 1 includes a main body 11 and an operation controller 12. The operation controller 12 is connected to the main body 11 by short-range wireless communication. A monitor 13 is connected to the main body 11 by a dedicated cable. The main body 11 is loaded with a disk 14 on which a game program and game data are recorded. Furthermore, a memory card 15 for storing game data is mounted on the main body 11 as necessary.

本体11は、制御部111、描画処理部112、音声処理部113、ディスクドライブユニット114、メモリカード接続ユニット115、I/Oインターフェース部116、通信処理部117、および信号送受信部118を備えている。制御部111には、描画処理部112、音声処理部113、I/Oインターフェース部116、および通信処理部117が接続されている。また、I/Oインターフェース部116には、ディスクドライブユニット114、メモリカード接続ユニット115、信号送受信部118、およびモニタ13が接続されている。   The main body 11 includes a control unit 111, a drawing processing unit 112, an audio processing unit 113, a disk drive unit 114, a memory card connection unit 115, an I / O interface unit 116, a communication processing unit 117, and a signal transmission / reception unit 118. The control unit 111 is connected to a drawing processing unit 112, an audio processing unit 113, an I / O interface unit 116, and a communication processing unit 117. In addition, a disk drive unit 114, a memory card connection unit 115, a signal transmission / reception unit 118, and a monitor 13 are connected to the I / O interface unit 116.

ゲーム装置1では、上記アクションゲームのソフトウェアが記録されたディスク14がディスクドライブユニット114に装着される。このディスクドライブユニット114によって、ディスク14内のゲームプログラムおよびゲームデータが制御部111内のRAM111c(後述)に読み込まれる。当該ゲームプログラムがCPU111a(後述)によって実行されることにより、プレイヤはゲーム内容を楽しむことができる。プレイヤは、操作コントローラ12(後述)を操作することによりプレイヤキャラクタを操作し、ゲームを進行させることができる。また、プレイヤは、編集画面で、操作コントローラ12を操作することにより、プレイヤキャラクタの編集を行うことができる。なお、プレイヤキャラクタの編集機能の詳細については後述する。   In the game apparatus 1, the disc 14 on which the action game software is recorded is mounted on the disc drive unit 114. By the disk drive unit 114, the game program and game data in the disk 14 are read into a RAM 111c (described later) in the control unit 111. When the game program is executed by a CPU 111a (described later), the player can enjoy the game contents. The player can operate the player character by operating an operation controller 12 (described later) to advance the game. Further, the player can edit the player character by operating the operation controller 12 on the editing screen. The details of the player character editing function will be described later.

ディスク14内のゲームデータには、基準キャラクタや敵キャラクタなどのキャラクタデータ(画像データ含む)、武器などのアイテムデータ(画像データ含む)、モーションデータ、背景などの画像データ、効果音などの音声データ、および、ゲーム進行や描画の際に参照される各種テーブルなどが含まれる。   The game data in the disc 14 includes character data (including image data) such as reference characters and enemy characters, item data (including image data) such as weapons, motion data, image data such as backgrounds, and sound data such as sound effects. And various tables to be referred to during game progress and drawing.

制御部111は、本体11の全体動作を制御するマイクロコンピュータを有している。マイクロコンピュータは、CPU111a、ROM111b、およびRAM111cなどからなる。これらは、それぞれバスラインで接続されている。   The control unit 111 has a microcomputer that controls the overall operation of the main body 11. The microcomputer includes a CPU 111a, a ROM 111b, a RAM 111c, and the like. These are each connected by a bus line.

CPU111aは、RAM111cに読み込まれたゲームプログラムを実行することより、ゲーム進行を統括的に制御する。より具体的には、プレイヤの操作による操作信号が操作コントローラ12から信号送受信部118を介して入力されると、CPU111aは、ゲームプログラムにしたがってその操作信号に対する所定のゲーム進行処理を行う。CPU111aは、その処理結果を例えば三次元空間を表現する二次元画像(以下では、「ゲーム画像」とする。)として、モニタ13の表示画面に表示させる。また、CPU111aは、処理結果を効果音などの音声として、モニタ13のスピーカ13a(後述)に出力させる。   The CPU 111a performs overall control of the game progress by executing the game program read into the RAM 111c. More specifically, when an operation signal by a player's operation is input from the operation controller 12 via the signal transmission / reception unit 118, the CPU 111a performs a predetermined game progress process for the operation signal in accordance with the game program. The CPU 111a displays the processing result on the display screen of the monitor 13 as, for example, a two-dimensional image (hereinafter referred to as “game image”) representing a three-dimensional space. Further, the CPU 111a causes the processing result to be output to a speaker 13a (described later) of the monitor 13 as a sound such as a sound effect.

ROM111bには、ゲーム装置1の基本的な機能を発揮させるための基本プログラムが記録されている。基本プログラムには、ディスク14に記録されたゲームプログラムおよびゲームデータを読み出すディスクローディング機能のためのプログラム等が含まれる。CPU111aは、ディスクドライブユニット114にディスク14が装着されると、ROM111bの基本プログラムにしたがってディスクドライブユニット114を動作させ、ディスク14からゲームプログラムおよびゲームデータをRAM111cに読み込み、ゲーム装置1をゲーム開始状態に設定する。   The ROM 111b stores a basic program for exerting basic functions of the game apparatus 1. The basic program includes a game program recorded on the disc 14, a program for a disc loading function for reading game data, and the like. When the disk 14 is loaded in the disk drive unit 114, the CPU 111a operates the disk drive unit 114 according to the basic program stored in the ROM 111b, reads the game program and game data from the disk 14 into the RAM 111c, and sets the game apparatus 1 to the game start state. To do.

RAM111cは、ディスク14から読み込まれたゲームプログラムやゲームデータが格納されるエリアと、CPU111aがゲームプログラムを実行するためのワークエリアとを提供する。   The RAM 111c provides an area for storing game programs and game data read from the disk 14, and a work area for the CPU 111a to execute the game programs.

ゲームプログラムは、例えばゲーム進行プログラムやグラフィック制御プログラム等の複数のプログラムが組み合わされて構成されている。ゲーム進行プログラムは、モニタ13に表示されているプレイヤキャラクタの動作をコントローラ12からの操作信号に基づいて制御するプログラムである。グラフィック制御プログラムは、モニタ13に表示すべきゲーム画像を制御するプログラムである。本実施形態においては、ゲームプログラムに、キャラクタ編集プログラム(編集画面を実行するためのプログラム)が含まれている。また、本実施形態において、RAM111cはゲームデータとして、ディスク14から読み込まれた基準キャラクタデータ(図6参照)、基準キャラクタモーションデータ(図9参照)、仮想カメラデータ(図12参照)、および基準仮想カメラモーションデータ(図11参照)などを記録しており、これらのデータから作成されたプレイヤキャラクタデータ(図8参照)およびスケルトンデータ(図13参照)などを記録する。 The game program is configured by combining a plurality of programs such as a game progress program and a graphic control program. The game progress program is a program for controlling the action of the player character displayed on the monitor 13 based on an operation signal from the controller 12. The graphic control program is a program for controlling a game image to be displayed on the monitor 13. In the present embodiment, the game program includes a character editing program (a program for executing an editing screen). Further, in the present embodiment, the RAM 111c stores, as game data, reference character data (see FIG. 6), reference character motion data (see FIG. 9), virtual camera data (see FIG. 12), and reference virtual data read from the disk 14. Camera motion data (see FIG. 11) is recorded, and player character data (see FIG. 8) and skeleton data (see FIG. 13) created from these data are recorded.

CPU111aは、操作コントローラ12からの操作信号に基づき、必要に応じてディスク14からゲームプログラムや画像データなどをRAM111cに読み込む。CPU111aは、これらのデータを処理したりゲームプログラムを実行したりすることにより、モニタ13に表示すべきゲーム画像の内容を決定する。   Based on the operation signal from the operation controller 12, the CPU 111a reads a game program, image data, and the like from the disk 14 into the RAM 111c as necessary. The CPU 111a determines the content of the game image to be displayed on the monitor 13 by processing these data and executing the game program.

描画処理部112は、描画処理に必要な各種の演算処理を行う。CPU111aは、例えば、1/60秒毎に、描画処理部112に描画指令を出力する。このとき、CPU111aは、モニタ13に表示すべき画像を決定し、その画像の描画に必要なキャラクタデータ、アイテムデータ、背景などの画像データ、モーションデータ、仮想カメラの位置と撮影方向のデータ、および光源データなどをRAM111cから読み出して描画処理部112に供給する。また、CPU111aは、各キャラクタの位置データや、操作コントローラ12から入力される操作信号を描画処理部112に供給する。   The drawing processing unit 112 performs various arithmetic processes necessary for the drawing process. For example, the CPU 111a outputs a drawing command to the drawing processing unit 112 every 1/60 seconds. At this time, the CPU 111a determines an image to be displayed on the monitor 13, character data necessary for drawing the image, item data, image data such as background, motion data, data of the position and shooting direction of the virtual camera, and Light source data and the like are read from the RAM 111 c and supplied to the drawing processing unit 112. Further, the CPU 111 a supplies position data of each character and operation signals input from the operation controller 12 to the drawing processing unit 112.

描画処理部112は、CPU111aからの描画命令に基づいて画像データなどを用いて、描画に必要なデータ(各オブジェクトおよび背景の位置関係、モニタ13の画面上における各オブジェクトを構成するポリゴンの座標、各ポリゴンに対応するテクスチャ、並びに各ポリゴンの反射特性などのデータ)の演算などを行い、その演算結果に基づいて描画処理部112内のVRAM(図示せず)に1コマ(1フレーム)のゲーム画像のデータを作成する。作成されたゲーム画像のデータは、例えば1/60秒毎に映像信号としてモニタ13に出力され、モニタ13に映像として表示される。   The drawing processing unit 112 uses image data or the like based on a drawing command from the CPU 111a, and uses data necessary for drawing (positional relationship between each object and background, coordinates of polygons constituting each object on the monitor 13 screen, The texture corresponding to each polygon and the data such as the reflection characteristic of each polygon are calculated, and one frame (one frame) game is stored in a VRAM (not shown) in the rendering processing unit 112 based on the calculation result. Create image data. The created game image data is output to the monitor 13 as a video signal every 1/60 seconds, for example, and displayed on the monitor 13 as a video.

音声処理部113は、効果音などの音声を発生させる処理に必要な各種の演算処理を行う。CPU111aは、モニタ13のスピーカ13aから出力すべき効果音若しくはBGMの音響内容を決定すると、音声処理部113に音声指令を出力する。音声処理部113は、音声指令に基づき、RAM111cから効果音もしくはBGMの音声データを読み出す。さらに、音声処理部113は、この音声データに所定の加工処理とデジタル/アナログ変換処理とを施した後、スピーカ13aに出力する。   The sound processing unit 113 performs various arithmetic processes necessary for processing to generate sound such as sound effects. When the CPU 111a determines a sound effect or BGM sound content to be output from the speaker 13a of the monitor 13, the CPU 111a outputs a voice command to the voice processing unit 113. The sound processing unit 113 reads sound effects or BGM sound data from the RAM 111c based on the sound command. Furthermore, the audio processing unit 113 performs predetermined processing and digital / analog conversion processing on the audio data, and then outputs the processed audio data to the speaker 13a.

ディスクドライブユニット114は、CPU111aからのローディング指令(ローディングすべきゲームプログラムとゲームデータを指定した読出指令)に基づき、ディスク14に記録されたゲームプログラムやゲームデータを読み出す。   The disk drive unit 114 reads the game program and game data recorded on the disk 14 based on a loading command from the CPU 111a (a read command designating a game program to be loaded and game data).

メモリカード接続ユニット115は、ゲーム進行に関する情報をメモリカード15に書き込んだり、読み出したりするためのユニットである。CPU111aは、ゲーム進行中やゲーム終了時にプレイヤから「データのセーブ」が指令されると、メモリカード接続ユニット115を介してメモリカード15に、ゲーム進行に関する情報(この情報には、例えば、編集機能で作成されたプレイヤキャラクタデータ(図8参照)や、獲得したポイントやアイテムなどの各種の特典などの情報が含まれる。)を記録する。また、CPU111aは、メモリカード15に記録されたゲーム進行に関する情報を、ゲーム開始前にRAM111cに読み出す。   The memory card connection unit 115 is a unit for writing / reading information relating to game progress to / from the memory card 15. When a “save data” command is issued from the player while the game is in progress or at the end of the game, the CPU 111a sends information related to the game progress to the memory card 15 via the memory card connection unit 115 (for example, an editing function And the player character data (see FIG. 8) created in step 1 and information such as various benefits such as acquired points and items are recorded. Further, the CPU 111a reads out information related to the game progress recorded in the memory card 15 to the RAM 111c before the game starts.

I/Oインターフェース部116は、ディスクドライブユニット114やメモリカード接続ユニット115によって読み出されたゲームプログラムやゲームデータ、および信号送受信部118が受信した操作コントローラ12からの操作信号を制御部111に伝送する。また、I/Oインターフェース部116は、制御部111、描画処理部112や音声処理部113からの映像信号や音声信号などをモニタ13やスピーカ13aに伝送する。   The I / O interface unit 116 transmits the game program and game data read by the disk drive unit 114 and the memory card connection unit 115 and the operation signal from the operation controller 12 received by the signal transmission / reception unit 118 to the control unit 111. . The I / O interface unit 116 transmits video signals, audio signals, and the like from the control unit 111, the drawing processing unit 112, and the audio processing unit 113 to the monitor 13 and the speaker 13a.

通信処理部117は、ゲーム装置1がネットワーク回線2を介して他のゲーム装置1と通信を行う場合に、データの送信および受信を行うための制御を行う。具体的には、通信処理部117は、操作コントローラ12から入力される操作信号やCPU111aから出力される信号をネットワーク回線2を介して他のゲーム装置1に送信する。また、通信処理部117は、ネットワーク回線2を介して他のゲーム装置1から送信される信号を受信してCPU111aに入力する。   The communication processing unit 117 performs control for transmitting and receiving data when the game apparatus 1 communicates with another game apparatus 1 via the network line 2. Specifically, the communication processing unit 117 transmits an operation signal input from the operation controller 12 or a signal output from the CPU 111 a to another game device 1 via the network line 2. Further, the communication processing unit 117 receives a signal transmitted from another game device 1 via the network line 2 and inputs the signal to the CPU 111a.

信号送受信部118は、操作コントローラ12から短距離無線通信により送信される信号を受信する。操作コントローラ12からの信号には、操作コントローラ12に設けられた操作ボタンの操作情報の他に、操作コントローラ12に設けられた各種センサ(図示しない)による検出データが含まれる。CPU111aはこの操作コントローラ12から送信される信号によりゲームを進行させる。また、信号送受信部118は、操作コントローラ12に各種信号(例えば、操作コントローラ12の振動部(図示しない)を振動させたり、発光部(図示しない)を発光させたり、音声出力部から音声を出力させたりするための信号など)を送信する。   The signal transmission / reception unit 118 receives a signal transmitted from the operation controller 12 by short-range wireless communication. The signal from the operation controller 12 includes detection data from various sensors (not shown) provided in the operation controller 12 in addition to the operation information of the operation buttons provided in the operation controller 12. The CPU 111a advances the game by a signal transmitted from the operation controller 12. In addition, the signal transmission / reception unit 118 causes the operation controller 12 to vibrate various signals (for example, a vibration unit (not shown) of the operation controller 12, a light emitting unit (not shown) emit light), and a sound output from the audio output unit. Send a signal for

操作コントローラ12は、プレイヤキャラクタを動作させたり、ゲームに関する各種の設定を行ったりするために、プレイヤによって操作される。プレイヤによって操作コントローラ12が操作されると、その操作信号が制御部111に伝送され、モニタ13に表示されたプレイヤキャラクタが所定の動作を行う。所定の動作としては、例えば、走る、しゃがむ、ジャンプするなどの移動動作や武器を使用して相手を攻撃する攻撃動作がある。操作コントローラ12は、自身の電源のオン状態とオフ状態とを切り替えるための電源ボタン、ゲームを開始させたりポーズメニューを開いたりするためのスタートボタン、デモをスキップしたりメニューを選択するためのセレクトボタン、および、プレイヤキャラクタの各動作やカメラ視点の移動操作のための操作ボタンなど(押圧して操作される操作ボタンと傾けることで操作される操作スティックとが含まれる。)を備えている。   The operation controller 12 is operated by the player in order to operate the player character and make various settings relating to the game. When the operation controller 12 is operated by the player, the operation signal is transmitted to the control unit 111, and the player character displayed on the monitor 13 performs a predetermined action. Examples of the predetermined operation include a movement operation such as running, squatting, and jumping, and an attack operation for attacking an opponent using a weapon. The operation controller 12 has a power button for switching between its own power on state and off state, a start button for starting a game or opening a pause menu, and a select for skipping a demo or selecting a menu. Buttons and operation buttons for moving the player character and camera viewpoint (including operation buttons that are operated by pressing and operation sticks that are operated by tilting).

モニタ13は、本体11から送られてきた映像信号に応じてゲーム進行状態を示すゲーム画像を表示画面に映し出したり、本体11から送られてきた音声信号に応じてスピーカ13aから効果音などの音声を出力するための装置である。モニタ13は、映像信号や音声信号を入力するための外部入力端子を備えた、例えばテレビジョン受像機によって構成されている。   The monitor 13 displays a game image indicating the game progress state on the display screen in accordance with the video signal sent from the main body 11, and sounds such as sound effects from the speaker 13 a in response to the voice signal sent from the main body 11. Is a device for outputting. The monitor 13 is composed of, for example, a television receiver having an external input terminal for inputting a video signal and an audio signal.

ディスク14は、例えばDVD−ROMまたはCD−ROMなどの光ディスクである。ディスク14には、ゲームプログラムやそのゲームプログラムの実行に必要な種々のデータや画像データが記録されている。メモリカード15は、例えばフラッシュメモリなどのデータの書き換えが可能な不揮発性の記録媒体である。RAM111cのワークエリアに記録された情報はゲーム装置本体11の電源を切ると消滅してしまうことから、当該情報のうち消滅させずに残しておくべきゲーム進行に関する情報(例えば、プレイヤキャラクタデータなど)などが、メモリカード15に記録される。   The disk 14 is an optical disk such as a DVD-ROM or a CD-ROM. The disc 14 stores a game program and various data and image data necessary for executing the game program. The memory card 15 is a non-volatile recording medium capable of rewriting data, such as a flash memory. Information recorded in the work area of the RAM 111c disappears when the game apparatus main body 11 is turned off, and therefore information on the game progress that should be left without disappearing (for example, player character data). Are recorded in the memory card 15.

なお、ゲーム装置1がHDD(Hard Disk Drive)を備えている場合、ゲーム進行に関する情報やゲームプログラム、ゲームプログラムの実行に必要な種々のデータや画像データの一部を、HDDに記憶することができる。   When the game apparatus 1 includes an HDD (Hard Disk Drive), information relating to game progress, a game program, various data necessary for execution of the game program, and part of image data may be stored in the HDD. it can.

ゲーム装置1は、ネットワークアダプタ16を介して、インターネット回線などのネットワーク回線2に接続することができる。この場合、ネットワーク回線2を介して、複数のゲーム装置1間でゲームを行うこともできる(いわゆる「オンラインゲーム」)。本実施形態では、ゲーム装置1単独で行うゲームについて説明しているが、このようなオンラインゲームでも本発明を適用することができる。   The game apparatus 1 can be connected to the network line 2 such as the Internet line via the network adapter 16. In this case, it is also possible to play a game between a plurality of game devices 1 via the network line 2 (so-called “online game”). In the present embodiment, a game performed by the game apparatus 1 alone has been described, but the present invention can also be applied to such an online game.

次に、キャラクタの編集処理について、図4〜図8を参照して説明する。   Next, the character editing process will be described with reference to FIGS.

上述したように、本実施形態に係るアクションゲームには、プレイヤキャラクタを編集する機能が設けられている。編集機能には、プレイヤキャラクタの体のパーツ(腕や脚、胴体など)の形状を変更する機能や、プレイヤキャラクタの顔のパーツ(目や鼻など)の形状や配置を変更する機能、プレイヤキャラクタの装備品を選択する機能などがある。以下では、プレイヤキャラクタの体のパーツの編集処理について説明する。なお、顔のパーツの編集処理および装備品の選択処理については、説明を省略する。   As described above, the action game according to the present embodiment is provided with a function of editing the player character. The editing function includes a function for changing the shape of the player character's body parts (arms, legs, torso, etc.), a function for changing the shape and arrangement of the player character's face parts (eyes, nose, etc.), and the player character. There is a function to select the equipment. Hereinafter, the editing process of the body part of the player character will be described. The description of the face part editing process and the equipment selection process is omitted.

図4および図5は、キャラクタのスケルトンモデルを説明するための図である。図4は、キャラクタが標準姿勢を取っているときの各関節のリンク構造を示す図である。図5は、各関節の親子関係の階層構造を示す図である。本実施形態ではプレイヤキャラクタが人のキャラクタなのでスケルトンモデルは人のスケルトンモデルであり、図4および図5はそれぞれ一般的な人のスケルトンモデルのリンク構造および階層構造を示している。   4 and 5 are diagrams for explaining a skeleton model of a character. FIG. 4 is a diagram illustrating the link structure of each joint when the character is in the standard posture. FIG. 5 is a diagram showing a hierarchical structure of parent-child relationships of each joint. In this embodiment, since the player character is a human character, the skeleton model is a human skeleton model, and FIGS. 4 and 5 show a link structure and a hierarchical structure of a general human skeleton model, respectively.

図4において、a〜qが記載されている丸は各関節を示している。各関節a〜qの名称は図5と共通しており、図4においては各名称の記載を省略している。以下の記載でも、各関節a〜qの名称を省略して、例えば、「関節a」とのみ記載する場合がある。各関節間の接続は実線で示されており、例えば、右肩eと右肘fとが接続されていることを示している。腰関節aはスケルトンモデルの基点(連結構造の基準となる部位)となるものである。なお、各関節とリンク構造はこれに限定されるものではない。関節を省略してより単純な構造としてもよいし、関節を増やしてより複雑な構造としてもよい。また、基点は腰関節aに限定されるわけではなく、胴関節b、首cや左肩iとしてもよいし、各関節とは別の点を設定してもよい。ただし、基点は、体幹などのキャラクタの左右に偏らない点、例えば、中心軸(首c、胴関節b、腰関節aを結ぶ直線)に位置する点が望ましい。図4に示す矢印は、スケルトンモデルの身長を示している。   In FIG. 4, circles in which a to q are described indicate each joint. The names of the joints a to q are the same as those in FIG. 5, and the names are not shown in FIG. 4. Also in the following description, the names of the joints a to q may be omitted and, for example, only “joint a” may be described. The connection between the joints is indicated by a solid line, for example, indicating that the right shoulder e and the right elbow f are connected. The hip joint a serves as a base point of the skeleton model (a part serving as a reference for the connection structure). In addition, each joint and link structure are not limited to this. The joints may be omitted to form a simpler structure, or the number of joints may be increased to form a more complicated structure. Further, the base point is not limited to the hip joint a, but may be the torso joint b, the neck c, the left shoulder i, or a point different from each joint. However, the base point is preferably a point that does not deviate to the left and right of the character such as the trunk, for example, a point located on the central axis (a straight line connecting the neck c, the torso joint b, and the hip joint a). The arrows shown in FIG. 4 indicate the height of the skeleton model.

図5において、上位にある関節が下位にある関節の親であり、下位にある関節は上位にある関節の子である。例えば、右鎖骨dは、右肩eの親であり、胴関節bの子である。各関節の位置は、親である関節の位置を基準に設定される。腰関節a(基点)は1番上位の関節であり、腰関節aの位置はローカル座標系の原点を基準に設定される。   In FIG. 5, the upper joint is the parent of the lower joint, and the lower joint is the child of the upper joint. For example, the right clavicle d is the parent of the right shoulder e and the child of the trunk joint b. The position of each joint is set with reference to the position of the parent joint. The hip joint a (base point) is the highest joint, and the position of the hip joint a is set based on the origin of the local coordinate system.

プレイヤキャラクタの体のパーツの編集処理は、基準キャラクタのキャラクタデータからプレイヤが使用するプレイヤキャラクタのキャラクタデータを新たに生成したり、生成されたプレイヤキャラクタのキャラクタデータを変更したりすることで行われる。なお、以下では、新たにプレイヤキャラクタのキャラクタデータを生成する場合について説明する。   The editing process of the body part of the player character is performed by newly generating the character data of the player character used by the player from the character data of the reference character or changing the generated character data of the player character. . Hereinafter, a case where character data of a player character is newly generated will be described.

図6は基準キャラクタデータの一例を説明するための図である。   FIG. 6 is a diagram for explaining an example of the reference character data.

基準キャラクタデータは基準キャラクタのキャラクタデータであり、プレイヤが編集機能を用いてプレイヤキャラクタを編集するための元のキャラクタデータである。基準キャラクタデータは、ディスク14にゲームデータとして記録されており、ディスクドライブユニット114によって読み出されて、RAM111cに格納される。   The reference character data is character data of the reference character, and is original character data for the player to edit the player character using the editing function. The reference character data is recorded as game data on the disk 14, read by the disk drive unit 114, and stored in the RAM 111c.

図6に示すように、基準キャラクタデータはモデルデータと画像データなどを含んでいる。モデルデータは関節データと身長データを含んでいる。関節データは関節a〜q毎のポジションデータとリンクデータとを含んでいる。ポジションデータはキャラクタが標準姿勢を取っているときの各関節の位置データであり、リンクデータは親である関節を特定するためのデータである。例えば、同図においては、関節bのポジションデータは(Xb,Yb,Zb)となっており、リンクデータは親関節である関節aを示す「a」となっている。   As shown in FIG. 6, the reference character data includes model data and image data. Model data includes joint data and height data. The joint data includes position data and link data for each joint a to q. The position data is position data of each joint when the character is in the standard posture, and the link data is data for specifying the parent joint. For example, in the figure, the position data of the joint b is (Xb, Yb, Zb), and the link data is “a” indicating the joint a which is the parent joint.

関節aは基点であって親である関節がないので、リンクデータを有しない。関節aのポジションデータは、ローカル座標系における位置座標で示されている。本実施形態では、標準姿勢における関節aがローカル座標系の原点の真上(Y軸上)に設定されているので、Xa=Za=0である(図7参照)。関節b〜qのポジションデータは、ローカル座標系における、親である関節の位置を基準とした相対位置を示すデータである。   Since the joint a is a base point and there is no parent joint, it does not have link data. The position data of the joint a is indicated by position coordinates in the local coordinate system. In this embodiment, since the joint a in the standard posture is set right above the origin of the local coordinate system (on the Y axis), Xa = Za = 0 (see FIG. 7). The position data of the joints b to q is data indicating a relative position with respect to the position of the parent joint in the local coordinate system.

図7は、ポジションデータを説明するための図であり、ローカル座標系上の関節a、関節b、および関節hの位置座標を示すものである。   FIG. 7 is a diagram for explaining the position data, and shows the position coordinates of the joint a, the joint b, and the joint h on the local coordinate system.

関節hのポジションデータ(Xh,Yh,Zh)は、親の関節である関節b(図5参照)の位置座標B(XB,YB,ZB)を基準とした相対位置を示している。したがって、関節hの位置座標Hは、H(XB+Xh,YB+Yh,ZB+Zh)となる。なお、関節bの親の関節である関節a(基点)の位置座標Aは関節aのポジションデータなのでA(Xa,Ya,Za)であり、関節bのポジションデータが(Xb,Yb,Zb)なので、位置座標B(XB,YB,ZB)は(Xa+Xb,Ya+Yb,Za+Zb)となる。したがって、位置座標Hは、H(Xa+Xb+Xh,Ya+Yb+Yh,Za+Zb+Zh)となる。   The position data (Xh, Yh, Zh) of the joint h indicates a relative position based on the position coordinates B (XB, YB, ZB) of the joint b (see FIG. 5) which is the parent joint. Therefore, the position coordinate H of the joint h is H (XB + Xh, YB + Yh, ZB + Zh). The position coordinate A of the joint a (base point), which is the parent joint of the joint b, is A (Xa, Ya, Za) because it is position data of the joint a, and the position data of the joint b is (Xb, Yb, Zb). Therefore, the position coordinates B (XB, YB, ZB) are (Xa + Xb, Ya + Yb, Za + Zb). Therefore, the position coordinate H is H (Xa + Xb + Xh, Ya + Yb + Yh, Za + Zb + Zh).

なお、各関節のポジションデータは、親である関節の位置を基準とした相対位置で表す場合に限られない。例えば、ローカル座標系の位置座標としてもよいし、親関節との距離情報であってもよい。   Note that the position data of each joint is not limited to the case where the position data is expressed as a relative position based on the position of the parent joint. For example, position coordinates in the local coordinate system may be used, or distance information from the parent joint may be used.

身長データは、基準キャラクタの身長を示す情報であり、仮想カメラの位置および撮影方向の補正において用いられる。身長データは、関節c(首)のローカル座標系における位置座標のY座標(すなわち、関節cのローカル座標系の原点からの高さ成分)が関節a,b,cの各ポジションデータから算出されて、予め設定されている。関節a,b,cの各ポジションデータをそれぞれ(Xa,Ya,Za),(Xb,Yb,Zb),(Xc,Yc,Zc)とすると、身長データは下記(1)式で算出することができる。なお、身長データは、関節のポジションデータと下記(1)式とから算出できるので、基準キャラクタデータに含めていなくてもよく、必要の都度算出するようにしてもよい。また、身長データは、別の方法で算出するようにしてもよい。

L=Ya+Yb+Yc ・・・・・ (1)
The height data is information indicating the height of the reference character, and is used in correcting the position and shooting direction of the virtual camera. In the height data, the Y coordinate of the position coordinate in the local coordinate system of the joint c (neck) (that is, the height component from the origin of the local coordinate system of the joint c) is calculated from the position data of the joints a, b, and c. Are set in advance. If the position data of the joints a, b, and c are (Xa, Ya, Za), (Xb, Yb, Zb), and (Xc, Yc, Zc), the height data should be calculated by the following equation (1). Can do. Since the height data can be calculated from the joint position data and the following equation (1), it may not be included in the reference character data, and may be calculated whenever necessary. Further, the height data may be calculated by another method.

L = Ya + Yb + Yc (1)

画像データは、キャラクタを構成する各パーツのポリゴンデータおよびテクスチャデータなどを含んでいる。   The image data includes polygon data and texture data of each part constituting the character.

図8は、プレイヤキャラクタデータの一例を説明するための図である。   FIG. 8 is a diagram for explaining an example of player character data.

プレイヤキャラクタデータは、プレイヤキャラクタのキャラクタデータであり、プレイヤが編集機能を用いて基準キャラクタデータを編集することで作成される。作成されたプレイヤキャラクタデータは、例えばメモリカード15などに記録される。プレイヤが同じプレイヤキャラクタを使用してゲームを行う場合(新たに編集機能を用いてプレイヤキャラクタを作成しない場合)は、メモリカード15に記録されているプレイヤキャラクタデータをRAM111cに読み込んで使用する。   The player character data is character data of the player character, and is created by the player editing the reference character data using the editing function. The created player character data is recorded, for example, on the memory card 15 or the like. When the player plays a game using the same player character (when a new player character is not created using the editing function), the player character data recorded on the memory card 15 is read into the RAM 111c and used.

プレイヤキャラクタデータは、モデルデータおよび画像データなどを含んでいる。プレイヤキャラクタデータのモデルデータは、基準キャラクタデータのモデルデータをコピーしたものが最初に記録され、プレイヤによるプレイヤキャラクタの編集に応じて変更される。   The player character data includes model data and image data. The model data of the player character data is first recorded as a copy of the model data of the reference character data, and is changed according to the editing of the player character by the player.

モデルデータの各関節のポジションデータはプレイヤによる編集作業によって変更される。例えば、同図においては、関節aのポジションデータは編集によって(Xa’,Ya’,Za’)に変更されている。また、身長データは、編集後の関節a,b,cの各ポジションデータから算出されて設定される。編集後の関節a,b,cの各ポジションデータをそれぞれ(Xa’,Ya’,Za’),(Xb’,Yb’,Zb’),(Xc’,Yc’,Zc’)とすると、身長データは下記(2)式で算出することができる。なお、基準キャラクタの身長データと区別するために、プレイヤキャラクタの身長データはL’で表している。なお、身長データは、関節のポジションデータと下記(2)式とから算出できるので、プレイヤキャラクタデータに含めていなくてもよく、必要の都度算出するようにしてもよい。また、身長データは、別の方法で算出するようにしてもよい。

L’=Ya’+Yb’+Yc’ ・・・・・ (2)
The position data of each joint in the model data is changed by editing work by the player. For example, in the figure, the position data of the joint a is changed to (Xa ′, Ya ′, Za ′) by editing. The height data is calculated and set from the position data of the joints a, b, and c after editing. If the position data of the joints a, b, and c after editing are (Xa ′, Ya ′, Za ′), (Xb ′, Yb ′, Zb ′), (Xc ′, Yc ′, Zc ′), Height data can be calculated by the following equation (2). In order to distinguish from the height data of the reference character, the height data of the player character is represented by L ′. Since the height data can be calculated from the joint position data and the following equation (2), it may not be included in the player character data, and may be calculated whenever necessary. Further, the height data may be calculated by another method.

L ′ = Ya ′ + Yb ′ + Yc ′ (2)

プレイヤは、初めてゲームを行うときなどに自分のプレイヤキャラクタを作成するために、編集画面でプレイヤキャラクタの編集を行う。編集画面は、メインメニューで「プレイヤキャラクタの編集」を選択することで開始される。編集画面において、プレイヤは編集するパーツを選択する。選択できるパーツは、例えば、左上腕、左前腕、右上腕、右前腕、左大腿、左下腿、右大腿、右下腿、腹、胸などがある。なお、選択できるパーツはこれらに限られない。本実施形態では、編集画面上に表示されている基準キャラクタの各パーツにカーソルを合わせて所定のボタンを押圧することで、プレイヤはパーツを選択することができる。選択されたパーツは、選択されたことが判るように点滅表示され、編集のためのマーカが表示される。なお、パーツの選択方法はこれに限られず、番号や文字列でパーツを指定して選択するようにしてもよい。   The player edits the player character on the editing screen in order to create his or her player character when playing a game for the first time. The edit screen is started by selecting “edit player character” in the main menu. On the editing screen, the player selects a part to be edited. The selectable parts include, for example, the left upper arm, left forearm, upper right arm, right forearm, left thigh, left lower leg, right thigh, right lower leg, abdomen, and chest. The parts that can be selected are not limited to these. In the present embodiment, the player can select a part by placing the cursor on each part of the reference character displayed on the editing screen and pressing a predetermined button. The selected part blinks so that it can be seen that it has been selected, and a marker for editing is displayed. Note that the method of selecting parts is not limited to this, and the parts may be selected and designated by numbers or character strings.

次に、プレイヤは、選択したパーツの長さ(長くするか短くするか)およびその太さ(太くするか細くするか)などを調整する。本実施形態では、選択したパーツに表示されているマーカを移動させることで、当該パーツの長さおよび太さを調整する。なお、選択したパーツの調整方法はこれに限られず、直接数字を入力することで調整するようにしてもよい。また、本実施形態では、プレイヤキャラクタが左右対称となるように、編集したパーツに対応するパーツ(例えば、右上腕を編集した場合は左上腕)にも同じ編集が自動的に行われる。なお、これに限られず、左右別々に編集できるようにしてもよい。   Next, the player adjusts the length of the selected part (lengthening or shortening), the thickness (whether thickening or thinning), and the like. In the present embodiment, the length and thickness of the part are adjusted by moving the marker displayed on the selected part. Note that the method of adjusting the selected part is not limited to this, and it may be adjusted by directly inputting a number. In the present embodiment, the same editing is automatically performed on the part corresponding to the edited part (for example, the upper left arm when the upper right arm is edited) so that the player character is symmetrical. However, the present invention is not limited to this, and editing may be performed separately on the left and right.

プレイヤによってプレイヤキャラクタのパーツの長さの編集が行われた場合、プレイヤキャラクタデータの所定の関節のポジションデータが変更される。例えば、右上腕の長さを変更した場合、プレイヤキャラクタの右肘の位置が変化するので、関節f(右肘)のポジションデータが変更される。なお、右肘に対する右手首の相対位置は変化しないので、関節g(右手首)のポジションデータは変更されない。また、プレイヤキャラクタを左右対称とするために、左上腕の長さも自動的に変更されて左肘の位置も変化するので、関節j(左肘)のポジションデータも変更される。   When the player edits the length of the part of the player character, the position data of a predetermined joint in the player character data is changed. For example, if the length of the upper right arm is changed, the position of the right elbow of the player character changes, so that the position data of the joint f (right elbow) is changed. Since the relative position of the right wrist with respect to the right elbow does not change, the position data of the joint g (right wrist) is not changed. Further, in order to make the player character symmetrical, the length of the left upper arm is automatically changed and the position of the left elbow is also changed, so that the position data of the joint j (left elbow) is also changed.

大腿、下腿、腹、胸などの長さが変更された場合、プレイヤキャラクタの身長が変化して、身長データL’も変更される。例えば、右大腿の長さを変更した場合、プレイヤキャラクタの右膝の位置が変化するので、関節m(右膝)のポジションデータが変更される。また、プレイヤキャラクタを左右対称とするために、左大腿の長さも自動的に変更されて左膝の位置も変化するので、関節p(左膝)のポジションデータも変更される。そして、プレイヤキャラクタの足が適切に接地するように、関節a(基点)のポジションデータの高さ位置(ローカル座標系におけるY座標)も自動的に変更される。関節aのポジションデータのY座標Ya’が変更されるので、身長データL’も変更される(上記(2)式参照)。なお、プレイヤキャラクタのパーツの太さの編集が行われた場合、プレイヤキャラクタデータの各関節のポジションデータおよび身長データは変更されない。   When the length of the thigh, lower leg, abdomen, chest, etc. is changed, the height of the player character is changed and the height data L ′ is also changed. For example, when the length of the right thigh is changed, the position of the player character's right knee changes, so the position data of the joint m (right knee) is changed. Further, in order to make the player character symmetrical, the length of the left thigh is automatically changed and the position of the left knee is also changed, so that the position data of the joint p (left knee) is also changed. Then, the height position (Y coordinate in the local coordinate system) of the position data of the joint a (base point) is also automatically changed so that the player character's foot is properly grounded. Since the Y coordinate Ya ′ of the position data of the joint a is changed, the height data L ′ is also changed (see the above formula (2)). When the thickness of the part of the player character is edited, the position data and the height data of each joint of the player character data are not changed.

画像データは、基準キャラクタの画像データをコピーしたものが最初に記録され、プレイヤによるプレイヤキャラクタの編集に応じて変更される。例えば、編集されたパーツを構成するポリゴンの各頂点の座標は、当該パーツの編集内容に応じて変更される。なお、編集時には画像データを変更せず、編集内容の情報をプレイヤキャラクタデータとして記録しておき、画像生成時に当該編集内容の情報に基づいて画像データを変更して用いるようにしてもよい。また、プレイヤキャラクタデータを記録しておくのではなく、編集内容の情報を記録しておき、必要の都度、基準キャラクタデータと編集内容の情報とからプレイヤキャラクタのモデルデータおよび画像データを算出するようにしてもよい。   As the image data, a copy of the image data of the reference character is recorded first, and is changed according to the editing of the player character by the player. For example, the coordinates of the vertices of the polygons constituting the edited part are changed according to the editing content of the part. It should be noted that the editing data information may be recorded as player character data without changing the image data during editing, and the image data may be changed and used based on the editing content information during image generation. Further, instead of recording the player character data, information on the editing content is recorded, and model data and image data of the player character are calculated from the reference character data and the editing content information whenever necessary. It may be.

次に、モーションデータを用いたプレイヤキャラクタの動作の再生方法について、図8〜図9を参照して説明する。   Next, a player character motion reproduction method using motion data will be described with reference to FIGS.

プレイヤキャラクタの動作の再生は、プレイヤキャラクタデータ(図8参照)と基準キャラクタのモーションデータ(図9参照)とを用いて行われる。すなわち、プレイヤキャラクタデータと基準キャラクタのモーションデータに基づいて、プレイヤキャラクタの各関節の位置データを算出したスケルトンデータをフレーム毎に生成する。スケルトンデータに基づいてプレイヤキャラクタデータの各パーツを三次元仮想ゲーム空間上に配置する。これをフレーム毎に行うことでプレイヤキャラクタに所定の動作を行わせる。   The reproduction of the action of the player character is performed using the player character data (see FIG. 8) and the motion data of the reference character (see FIG. 9). That is, skeleton data obtained by calculating the position data of each joint of the player character is generated for each frame based on the player character data and the motion data of the reference character. Each part of the player character data is arranged on the three-dimensional virtual game space based on the skeleton data. By performing this for each frame, the player character is caused to perform a predetermined action.

図9は、基準キャラクタモーションデータの一例を説明するための図である。   FIG. 9 is a diagram for explaining an example of the reference character motion data.

基準キャラクタモーションデータは、基準キャラクタのモーションデータであり、基準キャラクタの各動作を再生するためのデータである。基準キャラクタモーションデータは、プレイヤキャラクタのモーションデータとしても用いられる。基準キャラクタモーションデータは、動作(モーション)毎に設定されており、フレーム毎の各関節の位置データまたは各関節の回転角度を示すデータを含んでいる。関節a(基点)のデータには、ローカル座標系における位置座標であるポジションデータと、ローカル座標系における関節aの回転角度を示すローテーションデータとが含まれている。また、関節b〜qのデータには、ローカル座標系における各関節の回転角度を示すローテーションデータが含まれている。基準キャラクタモーションデータの各関節のローテーションデータと、プレイヤキャラクタデータ(図8参照)の各関節のポジションデータとから、各関節のローカル座標系における位置を算出することができる。このようにして関節の位置と回転角度から順に子の関節の位置を算出していく方法は、フォワードキネマティクス技術として周知なので、詳細な説明を省略する。   The reference character motion data is motion data of the reference character and data for reproducing each action of the reference character. The reference character motion data is also used as motion data for the player character. The reference character motion data is set for each motion (motion) and includes position data of each joint for each frame or data indicating a rotation angle of each joint. The data of the joint a (base point) includes position data that is position coordinates in the local coordinate system and rotation data that indicates the rotation angle of the joint a in the local coordinate system. The data of the joints b to q includes rotation data indicating the rotation angle of each joint in the local coordinate system. The position of each joint in the local coordinate system can be calculated from the rotation data of each joint of the reference character motion data and the position data of each joint of the player character data (see FIG. 8). Since the method of calculating the position of the child joint in this order from the position of the joint and the rotation angle in this manner is known as a forward kinematics technique, detailed description thereof is omitted.

なお、基準キャラクタモーションデータがすべてのフレームのデータを備えていなくてもよく、キーフレームのデータのみを備えておいて、線形補間やスプライン補間などで間のフレームのデータを補間するようにしてもよい。   Note that the reference character motion data may not include all the frame data, but only the key frame data may be included, and the inter-frame data may be interpolated by linear interpolation or spline interpolation. Good.

スケルトンデータに基づいてプレイヤキャラクタの各パーツが三次元仮想ゲーム空間上に配置されることで、プレイヤキャラクタが三次元仮想ゲーム空間上に配置される。同時に、その他のキャラクタやオブジェクトなども三次元仮想ゲーム空間上に配置される。そして、三次元仮想ゲーム空間上を仮想カメラで撮影することで、二次元画像のゲーム画像が生成される。   Each part of the player character is arranged on the three-dimensional virtual game space based on the skeleton data, so that the player character is arranged on the three-dimensional virtual game space. At the same time, other characters and objects are also arranged in the three-dimensional virtual game space. Then, by shooting the 3D virtual game space with a virtual camera, a 2D game image is generated.

通常時(例えば、プレイヤキャラクタが単に歩いている場面や、通常の技で敵キャラクタと戦っている場面など)、仮想カメラは所定のオフセット位置(例えば、プレイヤキャラクタの右後方上部の所定の位置など)に配置され、プレイヤキャラクタが画面の中心に位置するように撮影方向が設定される。一方、プレイヤキャラクタが必殺技を繰り出す場合などのデモ映像を撮影する場合には、プレイヤキャラクタにモーションデータに基づいた動作を行わせ、同時に、仮想カメラの位置および撮影方向を仮想カメラモーションデータに基づいて変化させる。仮想カメラモーションデータは、プレイヤキャラクタの動作を迫力ある映像として撮影できるように構図などが考慮されて、ゲーム作製者によってあらかじめ設定されている。   During normal times (for example, a scene where the player character is simply walking, a scene where the player character is fighting against an enemy character, etc.), the virtual camera has a predetermined offset position (for example, a predetermined position at the upper right rear of the player character). ) And the shooting direction is set so that the player character is positioned at the center of the screen. On the other hand, when shooting a demo video such as when the player character performs a special move, the player character performs an action based on the motion data, and at the same time, the position and shooting direction of the virtual camera are based on the virtual camera motion data. Change. The virtual camera motion data is set in advance by the game creator in consideration of the composition so that the action of the player character can be captured as a powerful video.

図10は、仮想カメラデータの一例を説明するための図である。   FIG. 10 is a diagram for explaining an example of virtual camera data.

仮想カメラデータは、通常時の仮想カメラの位置および撮影方向を示すデータである。仮想カメラデータは、ディスク14にゲームデータとして記録されており、ディスクドライブユニット114によって読み出されて、RAM111cに格納される。   The virtual camera data is data indicating the position and shooting direction of the virtual camera at normal times. The virtual camera data is recorded as game data on the disk 14, read by the disk drive unit 114, and stored in the RAM 111c.

図10に示すように、仮想カメラデータは、ポジションデータおよびローテーションデータなどを含んでいる。ポジションデータは、仮想カメラの位置を設定するためのデータであり、プレイヤキャラクタのローカル座標系における位置座標が設定されている。ローテーションデータは、仮想カメラの撮影方向を設定するためのデータであり、プレイヤキャラクタのローカル座標系における方向ベクトルが設定されている。   As shown in FIG. 10, the virtual camera data includes position data, rotation data, and the like. The position data is data for setting the position of the virtual camera, and the position coordinates of the player character in the local coordinate system are set. The rotation data is data for setting the shooting direction of the virtual camera, and a direction vector in the local coordinate system of the player character is set.

なお、仮想カメラの位置および撮影方向を切り替える場合は、切り替える位置および撮影方向毎に仮想カメラデータを用意しておき、プレイヤの操作やゲームの進行に応じて仮想カメラデータを切り替えるようにすればよい。   When switching the position and shooting direction of the virtual camera, virtual camera data may be prepared for each switching position and shooting direction, and the virtual camera data may be switched according to the operation of the player or the progress of the game. .

図11は、基準仮想カメラモーションデータの一例を説明するための図である。   FIG. 11 is a diagram for explaining an example of reference virtual camera motion data.

基準仮想カメラモーションデータは、デモ映像を撮影する場合の、仮想カメラの位置および撮影方向を示すデータである。各基準仮想カメラモーションデータは、各基準キャラクタモーションデータに対応して設定されている。通常、デモ映像のためのプレイヤキャラクタの動作は複数のモーションデータを組み合わせて作成されている。デモ映像の撮影には、それぞれのモーションデータに対応する基準仮想カメラモーションデータが用いられる。   The reference virtual camera motion data is data indicating the position and shooting direction of the virtual camera when shooting a demo video. Each reference virtual camera motion data is set corresponding to each reference character motion data. Usually, the action of the player character for the demonstration video is created by combining a plurality of motion data. Reference virtual camera motion data corresponding to each motion data is used for shooting the demo video.

図11に示すように、基準仮想カメラモーションデータは、フレーム毎のポジションデータおよびローテーションデータなどを含んでいる。ポジションデータは、仮想カメラの位置を設定するためのデータであり、プレイヤキャラクタのローカル座標系における位置座標が設定されている。ローテーションデータは、仮想カメラの撮影方向を設定するためのデータであり、ローカル座標系における方向ベクトルが設定されている。   As shown in FIG. 11, the reference virtual camera motion data includes position data and rotation data for each frame. The position data is data for setting the position of the virtual camera, and the position coordinates of the player character in the local coordinate system are set. The rotation data is data for setting the shooting direction of the virtual camera, and a direction vector in the local coordinate system is set.

基準仮想カメラモーションデータは、基準キャラクタが動作を行った場合に適切な構図で撮影できるように設定されている。したがって、プレイヤキャラクタの体型が基準キャラクタと異なる場合、基準仮想カメラモーションデータをそのまま用いても、適切な構図にならない。したがって、本実施形態では、基準仮想カメラモーションデータのポジションデータおよびローテーションデータに、プレイヤキャラクタの身長データに応じた補正を行って用いている。当該「プレイヤキャラクタの身長データ」が本発明の「オブジェクトの所定部分の大きさ」に対応するものであり、基準キャラクタの身長データが本発明の「基準となるオブジェクトの所定部分の大きさ」に対応するものである。また、「身長データ」は本発明の「垂直方向の長さ」に対応するものである。   The reference virtual camera motion data is set so that an image can be shot with an appropriate composition when the reference character performs an action. Therefore, when the body shape of the player character is different from that of the reference character, even if the reference virtual camera motion data is used as it is, an appropriate composition is not obtained. Therefore, in this embodiment, the position data and the rotation data of the reference virtual camera motion data are used after being corrected according to the height data of the player character. The “player character height data” corresponds to the “size of the predetermined portion of the object” of the present invention, and the height data of the reference character corresponds to the “size of the predetermined portion of the reference object” of the present invention. Corresponding. “Height data” corresponds to “vertical length” of the present invention.

例えば、図1に示す例では、プレイヤキャラクタPCの身長データL’と基準キャラクタの身長データLとの差ΔL=L’−Lを補正値として、基準仮想カメラモーションデータのポジションデータの高さ成分(Y座標値)に加算する。プレイヤキャラクタPCが背の高い体型である場合(図1(b)参照)、ΔL(=L’−L>0)がポジションデータのY座標値に加算されて、仮想カメラCが破線で示す基準カメラ位置よりΔLだけ上方に配置される。また、プレイヤキャラクタPCが背の低い体型である場合(図1(c)参照)、ΔL(=L’−L<0)がポジションデータのY座標値に加算されて(|ΔL|だけ減算されて)、仮想カメラCが破線で示す基準カメラ位置より|ΔL|だけ下方に配置される。また、図1に示す例では、仮想カメラCの撮影方向が敵キャラクタECの頭部を向くように、差ΔLに応じて基準仮想カメラモーションデータのローテーションデータの補正を行っている。この場合、「差ΔL」が本発明の「補正情報」に対応するものである。   For example, in the example shown in FIG. 1, the difference component between the height data L ′ of the player character PC and the height data L of the reference character ΔL = L′−L is used as a correction value, and the height component of the position data of the reference virtual camera motion data. Add to (Y coordinate value). When the player character PC has a tall body shape (see FIG. 1B), ΔL (= L′−L> 0) is added to the Y coordinate value of the position data, and the virtual camera C is a reference indicated by a broken line. It is arranged above the camera position by ΔL. Further, when the player character PC has a short body shape (see FIG. 1C), ΔL (= L′−L <0) is added to the Y coordinate value of the position data (| ΔL |). The virtual camera C is arranged | ΔL | below the reference camera position indicated by the broken line. In the example shown in FIG. 1, the rotation data of the reference virtual camera motion data is corrected according to the difference ΔL so that the shooting direction of the virtual camera C faces the head of the enemy character EC. In this case, “difference ΔL” corresponds to “correction information” of the present invention.

なお、身長データの差に応じて補正するのではなく、身長データの割合に応じて補正するようにしてもよい。例えば、図1に示す例で、基準キャラクタの身長データLに対するプレイヤキャラクタPCの身長データL’の割合R=L’/Lを補正値として、基準仮想カメラモーションデータのポジションデータの高さ成分(Y座標値)に乗算するようにしてもよい。また、この場合、撮影角度(仮想カメラCの撮影方向が鉛直上方向となす角度)が基準撮影角度αに割合Rを乗算した値となるように、基準仮想カメラモーションデータのローテーションデータの補正を行うようにしてもよい。プレイヤキャラクタPCが背の高い体型である場合(図1(b)参照)、R(=L’/L>1)がポジションデータのY座標値に乗算されて、仮想カメラCが基準カメラ位置より上方に配置される。また、撮影角度α’(=α・R)は、基準撮影角度αより大きくなる。一方、プレイヤキャラクタPCが背の低い体型である場合(図1(c)参照)、R(=L’/L<1)がポジションデータのY座標値に乗算されて、仮想カメラCが基準カメラ位置より下方に配置される。また、撮影角度α”(=α・R)は、基準撮影角度αより小さくなる。この場合、「割合R」が本発明の「補正情報」に対応するものである。   In addition, you may make it correct | amend according to the ratio of height data instead of correct | amending according to the difference of height data. For example, in the example shown in FIG. 1, the height component of the position data of the reference virtual camera motion data (R = L ′ / L) is used as a correction value, with the ratio R = L ′ / L of the height data L ′ of the player character PC to the height data L of the reference character (Y coordinate value) may be multiplied. In this case, the rotation data of the reference virtual camera motion data is corrected so that the shooting angle (the angle at which the shooting direction of the virtual camera C is in the vertical upward direction) is a value obtained by multiplying the reference shooting angle α by the ratio R. You may make it perform. When the player character PC has a tall figure (see FIG. 1B), R (= L ′ / L> 1) is multiplied by the Y coordinate value of the position data, so that the virtual camera C is compared with the reference camera position. Arranged above. Further, the photographing angle α ′ (= α · R) is larger than the reference photographing angle α. On the other hand, when the player character PC has a short body shape (see FIG. 1C), R (= L ′ / L <1) is multiplied by the Y coordinate value of the position data, and the virtual camera C becomes the reference camera. It is arranged below the position. Further, the shooting angle α ″ (= α · R) is smaller than the reference shooting angle α. In this case, “Ratio R” corresponds to “correction information” of the present invention.

なお、仮想カメラCの位置および撮影方向の補正値は、差ΔL=L’−L(または、割合R=L’/L)に応じて連続的に変化させる場合に限られず、段階的に変化させるようにしてもよい。例えば、プレイヤキャラクタの身長が151〜170cmの場合は補正値を「0」とし、150cm以下の場合は負の所定値とし、171cm以上の場合は正の所定値としてもよい。   Note that the correction value of the position and the shooting direction of the virtual camera C is not limited to the case where it is continuously changed according to the difference ΔL = L′−L (or the ratio R = L ′ / L), but changes step by step. You may make it make it. For example, the correction value may be “0” when the height of the player character is 151 to 170 cm, a negative predetermined value when the height is 150 cm or less, and a positive predetermined value when the height is 171 cm or more.

図12は、ゲーム装置1の例えば制御部111および描画処理部112で行われる、デモ映像のためのゲーム画像データを生成する処理(以下では、「デモ画像データ生成処理」とする。)を説明するためのフローチャートである。   FIG. 12 illustrates a process of generating game image data for a demo video (hereinafter referred to as “demo image data generation process”) performed by, for example, the control unit 111 and the drawing processing unit 112 of the game apparatus 1. It is a flowchart for doing.

デモ画像データ生成処理は、フレーム毎に実施される。まず、実行される動作に対応するモーションデータの該当するフレームのデータ(例えば、図9に示すモーション1のフレーム1の処理の場合、ポジションデータα1、ローテーションデータa1、およびローテーションデータb1〜q1)と、プレイヤキャラクタデータ(図8参照)とが、CPU111aによってRAM111cから読み出されて、描画処理部112に入力される(S1)。次に、入力されたデータからスケルトンデータが生成される(S2)。   The demo image data generation process is performed for each frame. First, data of a corresponding frame of motion data corresponding to the operation to be executed (for example, in the case of processing of frame 1 of motion 1 shown in FIG. 9, position data α1, rotation data a1, and rotation data b1 to q1) and The player character data (see FIG. 8) is read from the RAM 111c by the CPU 111a and input to the drawing processing unit 112 (S1). Next, skeleton data is generated from the input data (S2).

図13は、スケルトンデータの一例を説明するための図である。   FIG. 13 is a diagram for explaining an example of skeleton data.

スケルトンデータは、各関節の位置データ(ポジションデータ)および親である関節を示すデータ(リンクデータ)を含んでいる。関節a(基点)のデータには、ポジションデータのみが含まれている。関節aのポジションデータは、ローカル座標系における関節aの位置座標であり、基準キャラクタモーションデータの関節aのポジションデータと、基準キャラクタの脚の長さ(大腿と下腿を合わせた長さ)に対するプレイヤキャラクタの脚の長さの比率Tとから算出される。具体的には、基準キャラクタモーションデータの関節aのポジションデータの各座標成分に比率Tを乗算したものが、補正前スケルトンデータの関節aのポジションデータの各座標成分となる。なお、比率Tは、標準姿勢をとった基準キャラクタおよびプレイヤキャラクタの脚の長さから算出されるが、詳細は省略する。   The skeleton data includes position data (position data) of each joint and data (link data) indicating a joint that is a parent. The data of the joint a (base point) includes only position data. The position data of the joint a is the position coordinate of the joint a in the local coordinate system, and the player has the position data of the joint a in the reference character motion data and the length of the leg of the reference character (the length of the thigh and the lower leg combined). It is calculated from the ratio T of the leg length of the character. Specifically, each coordinate component of the position data of the joint a in the pre-correction skeleton data is obtained by multiplying each coordinate component of the position data of the joint a in the reference character motion data by the ratio T. The ratio T is calculated from the leg length of the reference character and the player character taking the standard posture, but the details are omitted.

例えば、図9に示すモーション1のフレーム1の処理の場合、スケルトンデータの関節aのポジションデータは、ポジションデータα1が(Xα1,Yα1,Zα1)の場合、(Xα1・T,Yα1・T,Zα1・T)となる。ローカル座標系の鉛直方向を示すY座標の値が基準キャラクタモーションデータにおける値に比率Tを乗じた値となっているので、関節aの高さ位置がプレイヤキャラクタの脚の長さに応じた位置となっている。これにより、プレイヤキャラクタの足が適切に地面に接するようになる。 For example, in the case of the processing of frame 1 of motion 1 shown in FIG. 9, the position data of the joint a in the skeleton data is (Xα 1 · T, Yα) when the position data α1 is (Xα 1 , Yα 1 , Zα 1 ). 1 · T, Zα 1 · T). Since the value of the Y coordinate indicating the vertical direction of the local coordinate system is a value obtained by multiplying the value in the reference character motion data by the ratio T, the height position of the joint a is a position corresponding to the leg length of the player character. It has become. As a result, the player character's feet come into proper contact with the ground.

関節b〜qのデータには、ポジションデータおよびリンクデータが含まれている。関節b〜qのポジションデータは、ローカル座標系における、親である関節の位置を基準とした相対位置を示すデータであり、プレイヤキャラクタデータの関節b〜qのポジションデータと基準キャラクタモーションデータの関節b〜qのローテーションデータとからフォワードキネマティクス技術を用いて算出される。スケルトンデータの関節b〜qのリンクデータは、プレイヤキャラクタデータの関節b〜qのリンクデータを用いる。   The data of the joints b to q includes position data and link data. The position data of the joints b to q is data indicating a relative position with respect to the position of the parent joint in the local coordinate system. The position data of the joints b to q of the player character data and the joint of the reference character motion data. It calculates using a forward kinematics technique from the rotation data of b-q. The link data of the joints b to q of the skeleton data uses the link data of the joints b to q of the player character data.

図12に戻って、ステップS2で生成されたスケルトンデータのワールド座標変換が行われる(S3)。当該座標変換は、ローカル座標系の位置データをワールド座標系の位置データに変換するものである。これにより、ローカル座標系におけるデータであるスケルトンデータが、ワールド座標系のデータに変換される。なお、ワールド座標系は、三次元仮想ゲーム空間上に設定された固定の座標系であり、三次元仮想ゲーム空間上での位置や向きを表すために用いられる。ステップS3のワールド座標変換では、プレイヤキャラクタの「現在位置データ」および「現在向きデータ」が用いられる。   Returning to FIG. 12, world coordinate transformation of the skeleton data generated in step S2 is performed (S3). The coordinate conversion is to convert position data in the local coordinate system into position data in the world coordinate system. As a result, skeleton data that is data in the local coordinate system is converted into data in the world coordinate system. The world coordinate system is a fixed coordinate system set on the three-dimensional virtual game space, and is used to represent the position and orientation on the three-dimensional virtual game space. In the world coordinate conversion in step S3, the “current position data” and “current direction data” of the player character are used.

「現在位置データ」および「現在向きデータ」は、それぞれ、ワールド座標系におけるプレイヤキャラクタの位置および向き(正確には、プレイヤキャラクタに設定されているローカル座標系の原点の位置およびローカル座標系の向き)を示すデータであり、RAM111cに記録されている。「現在位置データ」および「現在向きデータ」は、プレイヤキャラクタが三次元仮想ゲーム空間上を移動することで更新される。例えば、プレイヤキャラクタが走って移動する場合、「現在位置データ」および「現在向きデータ」に基づくローカル座標系を基準として走るモーションが実行される。当該走るモーションが終了したとき(最後のフレームが処理されたとき)のプレイヤキャラクタのワールド座標系における位置および向きに基づいて、「現在位置データ」および「現在向きデータ」が更新される。プレイヤキャラクタが走って移動している間、走るモーションの実行と「現在位置データ」および「現在向きデータ」の更新とが繰り返される。   “Current position data” and “current direction data” are respectively the position and orientation of the player character in the world coordinate system (more precisely, the position of the origin of the local coordinate system and the orientation of the local coordinate system set for the player character). ) And is recorded in the RAM 111c. “Current position data” and “current direction data” are updated when the player character moves in the three-dimensional virtual game space. For example, when the player character runs and moves, a motion that runs on the basis of the local coordinate system based on “current position data” and “current direction data” is executed. “Current position data” and “current direction data” are updated based on the position and orientation of the player character in the world coordinate system when the running motion ends (when the last frame is processed). While the player character is running and moving, execution of the running motion and updating of the “current position data” and “current direction data” are repeated.

次に、プレイヤキャラクタ以外のキャラクタやオブジェクトの画像データが読み出されて、ワールド座標変換が行われる(S4)。他のキャラクタが動作を行っている場合は、対応するモーションデータに基づいた処理もなされる。この場合、他のキャラクタのキャラクタデータとして、基準キャラクタデータ(図6参照)を変更したものを用いるようにしてもよいし、別途設けられている基準キャラクタデータやこれを変更したものを用いるようにしてもよい。また、他のキャラクタの動作のためのモーションデータは、基準キャラクタモーションデータ(図9参照)を用いるようにしてもよいし、別途設けられているモーションデータを用いるようにしてもよい。   Next, image data of characters and objects other than the player character is read out, and world coordinate conversion is performed (S4). When another character is moving, processing based on the corresponding motion data is also performed. In this case, the character data of other characters may be changed from the reference character data (see FIG. 6), or may be used separately provided reference character data or a modified version thereof. May be. In addition, the reference character motion data (see FIG. 9) may be used as the motion data for the motion of another character, or separately provided motion data may be used.

次に、基準仮想カメラモーションデータの対応するフレームのデータ(例えば、図11に示すモーション1のフレーム1の処理の場合、ポジションデータβ1およびローテーションデータw1)が、CPU111aによってRAM111cから読み出されて、描画処理部112に入力される(S5)。当該データも、ワールド座標変換される。次に、プレイヤキャラクタデータの身長データに応じて、基準仮想カメラモーションデータのポジションデータおよびローテーションデータが補正される(S6)。   Next, the data of the frame corresponding to the reference virtual camera motion data (for example, the position data β1 and the rotation data w1 in the case of the processing of frame 1 of motion 1 shown in FIG. 11) is read from the RAM 111c by the CPU 111a, The image is input to the drawing processing unit 112 (S5). This data is also converted into world coordinates. Next, the position data and rotation data of the reference virtual camera motion data are corrected according to the height data of the player character data (S6).

次に、仮想カメラの補正後のポジションデータおよびローテーションデータに基づいて、各画像データの投影変換が行われて(S7)、デモ画像データ生成処理は終了される。   Next, projection conversion of each image data is performed based on the corrected position data and rotation data of the virtual camera (S7), and the demo image data generation process is ended.

投影変換された各画像データからなるゲーム画像データが映像信号としてモニタ13に出力される。これをフレーム毎に繰り返すことで、デモ映像が表示される。   Game image data composed of each image data subjected to projection conversion is output to the monitor 13 as a video signal. By repeating this for each frame, a demonstration video is displayed.

本実施形態によると、基準仮想カメラモーションデータのポジションデータの高さ成分に、プレイヤキャラクタPCの身長データL’と基準キャラクタの身長データLとの差ΔL=L’−Lが補正値として加算される。これにより、仮想カメラCの位置がプレイヤキャラクタPCの身長に応じて補正される。また、仮想カメラCの撮影方向は、差ΔLに応じて、敵キャラクタECの頭部を向くように補正される。したがって、プレイヤキャラクタPCの身長に係わらず、ゲーム作製者が想定した構図と同様の構図でゲーム画像を生成することができる。また、基準仮想カメラモーションデータを補正して用いるので、身長の異なるプレイヤキャラクタPC毎に仮想カメラCのモーションデータを作成して記録しておく必要がない。したがって、ゲーム開発時の仮想カメラモーションデータ作成の作業量を抑制することができるので、開発コストを抑制することができる。また、仮想カメラモーションデータを記憶しておくためのRAMの記憶領域の増大を抑制することができる。   According to this embodiment, the difference ΔL = L′−L between the height data L ′ of the player character PC and the height data L of the reference character is added as a correction value to the height component of the position data of the reference virtual camera motion data. The Thereby, the position of the virtual camera C is corrected according to the height of the player character PC. Further, the shooting direction of the virtual camera C is corrected so as to face the head of the enemy character EC according to the difference ΔL. Therefore, regardless of the height of the player character PC, a game image can be generated with a composition similar to the composition assumed by the game creator. Further, since the reference virtual camera motion data is corrected and used, it is not necessary to create and record the motion data of the virtual camera C for each player character PC having a different height. Therefore, the amount of work for creating virtual camera motion data at the time of game development can be suppressed, so that development costs can be suppressed. In addition, an increase in the storage area of the RAM for storing virtual camera motion data can be suppressed.

なお、上記実施形態では、編集機能によって編集されたプレイヤキャラクタの身長が変化する場合について説明したが、これに限られない。例えば、予め用意された身長の異なる複数のプレイヤキャラクタの中から、プレイヤがプレイヤキャラクタを選択する場合にも、本発明を適用することができる。   In addition, although the said embodiment demonstrated the case where the height of the player character edited by the edit function changed, it is not restricted to this. For example, the present invention can also be applied when the player selects a player character from among a plurality of player characters having different heights prepared in advance.

また、装着した装備品によってプレイヤキャラクタの身長(すなわち、装備品を装着した状態のプレイヤキャラクタの垂直方向の長さ)が変化する場合にも、本発明を適用することができる。この場合、身長差であるΔL(=L’−L)に、装備品によって変化する高さの値を加えたものを、補正値として用いればよい。例えば、プレイヤキャラクタが兜を装着している場合、兜の高さに基づく値をΔLに加算して、補正値とすればよい。また、プレイヤキャラクタが所持する槍が基準キャラクタが所持する槍より長い場合、槍の長さの差をΔLに加算して、補正値としてもよい。   The present invention can also be applied to the case where the height of the player character (that is, the length in the vertical direction of the player character in the state in which the equipment is worn) varies depending on the equipment that has been worn. In this case, ΔL (= L′−L), which is the height difference, and a height value that varies depending on the equipment may be used as the correction value. For example, when the player character wears a heel, a value based on the height of the heel may be added to ΔL to obtain a correction value. In addition, when the heel possessed by the player character is longer than the heel possessed by the reference character, the difference between the heel lengths may be added to ΔL to obtain a correction value.

上記実施形態では、デモ映像のためのゲーム画像データを生成する場合について説明したが、これに限られない。通常時のゲーム画像データを生成する場合にも、本発明を適用することができる。例えば、仮想カメラがプレイヤキャラクタの後方から追従する客観視点形式(サードパーソンシューティング)では、仮想カメラのオフセット位置が所定のプレイヤキャラクタに基づいた位置に設定される。この場合、プレイヤキャラクタの身長が高くなるように編集されると、プレイヤキャラクタの一部が画面からはみ出すなどして、ゲーム作製者の想定した構図でプレイヤキャラクタを表示することができなくなる。このような場合にも、プレイヤキャラクタの身長に応じて仮想カメラの位置および撮影方向を補正することは有効である。   In the above embodiment, the case where the game image data for the demo video is generated has been described. The present invention can also be applied when generating normal game image data. For example, in an objective viewpoint format (third-person shooting) in which the virtual camera follows from behind the player character, the offset position of the virtual camera is set to a position based on a predetermined player character. In this case, if the height of the player character is edited to be higher, a part of the player character protrudes from the screen and the player character cannot be displayed with the composition assumed by the game creator. Even in such a case, it is effective to correct the position and shooting direction of the virtual camera in accordance with the height of the player character.

一方、仮想カメラの位置をプレイヤキャラクタの視点位置に設定する主観視点形式(ファーストパーソンシューティング)では、デモ映像または通常時のゲーム画像データを生成するとき、通常時の仮想カメラのオフセット位置が、基準となるプレイヤキャラクタに基づいた位置(目の位置)に設定される。この場合、プレイヤキャラクタの身長が高くなるように編集されると、実際に表示されるゲーム画像が、当該プレイヤキャラクタの身長にあった目線の高さで三次元仮想ゲーム空間を見た場合のゲーム画像と一致しなくなる。このような場合にも、プレイヤキャラクタの身長に応じて仮想カメラの位置および撮影方向を補正することは有効である。   On the other hand, in the subjective viewpoint format (first person shooting) in which the position of the virtual camera is set to the viewpoint position of the player character, when generating the demo video or the normal game image data, the offset position of the normal virtual camera is the reference position. Is set to a position (eye position) based on the player character. In this case, if the height of the player character is edited so that the height is high, the game image that is actually displayed is a game in which the three-dimensional virtual game space is viewed at a height that matches the height of the player character. Does not match the image. Even in such a case, it is effective to correct the position and shooting direction of the virtual camera in accordance with the height of the player character.

上記実施形態では、仮想カメラの位置および撮影方向を補正する場合について説明したが、これに限られない。仮想カメラの位置のみを補正するようにしてもよいし、仮想カメラの撮影方向のみを補正するようにしてもよい。   In the embodiment described above, the case where the position of the virtual camera and the shooting direction are corrected has been described, but the present invention is not limited to this. Only the position of the virtual camera may be corrected, or only the shooting direction of the virtual camera may be corrected.

上記実施形態では、プレイヤキャラクタの身長に応じて補正する場合について説明したが、これに限られない。プレイヤキャラクタ以外のキャラクタの身長に応じて補正するようにしてもよい。また、プレイヤキャラクタの身長に応じた補正と、他のキャラクタの身長に応じた補正とを、重ねて行うようにしてもよい。   In the above embodiment, the case where correction is performed according to the height of the player character has been described, but the present invention is not limited to this. You may make it correct | amend according to the height of characters other than a player character. Further, the correction according to the height of the player character and the correction according to the height of another character may be performed in an overlapping manner.

図14は、敵キャラクタの身長に応じて仮想カメラの撮影方向を補正する場合の例を説明するための図である。   FIG. 14 is a diagram for explaining an example of correcting the shooting direction of the virtual camera according to the height of the enemy character.

図14(a)は、図1(a)と同様の状態において、敵キャラクタECが身長の高い体型である場合を示している。この場合、仮想カメラCの配置場所は基準カメラ位置(図において破線で示す仮想カメラCの位置)から変更されていないが、仮想カメラCの撮影方向が敵キャラクタECの身長と基準キャラクタの身長との差に応じて補正され、撮影角度βが基準撮影角度αより小さくなっている。この場合、仮想カメラCで撮影された画像は、図17(a)に近い構図となる。   FIG. 14A shows a case where the enemy character EC has a high body shape in the same state as in FIG. In this case, the placement location of the virtual camera C is not changed from the reference camera position (the position of the virtual camera C indicated by a broken line in the figure), but the shooting direction of the virtual camera C is the height of the enemy character EC and the height of the reference character. The shooting angle β is smaller than the reference shooting angle α. In this case, the image captured by the virtual camera C has a composition close to that shown in FIG.

図14(b)は、図1(a)と同様の状態において、プレイヤキャラクタPCおよび敵キャラクタECがともに身長の高い体型である場合を示している。この場合、仮想カメラCは、プレイヤキャラクタPCの身長と基準キャラクタの身長との差に応じて、基準カメラ位置(図において破線で示す仮想カメラCの位置)より高い位置に配置されている。また、仮想カメラCの撮影角度は、プレイヤキャラクタPCの身長と基準キャラクタの身長との差に応じて大きくなるように補正され、さらに、敵キャラクタECの身長と基準キャラクタの身長との差に応じて小さくなるように補正されるので、結果的に基準撮影角度αと同じ角度になっている。この場合も、仮想カメラCで撮影された画像は、図17(a)に近い構図となる。   FIG. 14B shows a case where the player character PC and the enemy character EC are both tall in the same state as in FIG. In this case, the virtual camera C is arranged at a position higher than the reference camera position (the position of the virtual camera C indicated by a broken line in the drawing) according to the difference between the height of the player character PC and the height of the reference character. Further, the shooting angle of the virtual camera C is corrected so as to increase according to the difference between the height of the player character PC and the height of the reference character, and further according to the difference between the height of the enemy character EC and the height of the reference character. As a result, the angle is the same as the reference shooting angle α. Also in this case, the image captured by the virtual camera C has a composition close to that shown in FIG.

また、キャラクタの身長に応じて補正する場合に限られず、オブジェクトの高さに応じて補正するようにしてもよい。例えば、ゲーム画像に所定のオブジェクトを表示させたい場合に、当該オブジェクトの高さに応じて仮想カメラの位置や撮影方向を補正するようにしてもよい。この場合、「オブジェクトの高さ」が本発明の「オブジェクトの所定部分の大きさ」に対応するものである。   Further, the correction is not limited to the case of correcting according to the height of the character, and the correction may be performed according to the height of the object. For example, when a predetermined object is to be displayed on the game image, the position of the virtual camera and the shooting direction may be corrected according to the height of the object. In this case, “the height of the object” corresponds to “the size of the predetermined portion of the object” of the present invention.

上記実施形態では、一人のキャラクタの身長に応じて補正する場合について説明したが、これに限られず、複数のキャラクタの身長に応じて補正するようにしてもよい。この場合、例えば、各キャラクタの身長の平均値に応じて、仮想カメラの位置や撮影方向を補正するようにすればよい。   In the above embodiment, the case of correcting according to the height of one character has been described. However, the present invention is not limited to this, and correction may be made according to the height of a plurality of characters. In this case, for example, the position and shooting direction of the virtual camera may be corrected according to the average height of each character.

図15は、複数の敵キャラクタの身長に応じて仮想カメラの位置を補正する場合の例を説明するための図である。   FIG. 15 is a diagram for explaining an example of correcting the position of the virtual camera according to the heights of a plurality of enemy characters.

図15(a)は、敵キャラクタEC1〜EC3の身長がいずれも基準キャラクタの身長と同じ場合に、仮想カメラで撮影された画像を示している。この場合、敵キャラクタEC1〜EC3の身長の平均値は基準キャラクタの身長と同一なので、仮想カメラの位置は補正されていない。   FIG. 15A shows an image taken by a virtual camera when the heights of the enemy characters EC1 to EC3 are all the same as the height of the reference character. In this case, since the average height of the enemy characters EC1 to EC3 is the same as the height of the reference character, the position of the virtual camera is not corrected.

図15(b)は、敵キャラクタEC1およびEC3の身長が基準キャラクタの身長と同じであるが、敵キャラクタEC2の身長が基準キャラクタの身長より高い場合に、仮想カメラで撮影された画像を示している。この場合、敵キャラクタEC1〜EC3の身長の平均値は基準キャラクタの身長より大きいので、仮想カメラは基準カメラ位置より高い位置に配置されている。したがって、敵キャラクタEC1〜EC3が、図15(a)の場合と比べて、画面上で下方に位置するように表示されている。これにより、図15(a)の構図に近い構図となっている。仮に、敵キャラクタEC1の身長のみに応じて仮想カメラの位置を補正した場合、敵キャラクタEC1の身長は基準キャラクタの身長と同じであるので仮想カメラの位置の補正が行われず、敵キャラクタEC2の頭の先が画面からはみ出して表示されることになる。一方、敵キャラクタEC2の身長のみに応じて仮想カメラの位置を補正した場合、仮想カメラは基準カメラ位置よりかなり高い位置に配置され、敵キャラクタEC1〜EC3の脚の先が画面からはみ出して表示されることになる。   FIG. 15B shows an image taken by a virtual camera when the heights of the enemy characters EC1 and EC3 are the same as the height of the reference character, but the height of the enemy character EC2 is higher than the height of the reference character. Yes. In this case, since the average height of the enemy characters EC1 to EC3 is larger than the height of the reference character, the virtual camera is arranged at a position higher than the reference camera position. Accordingly, the enemy characters EC1 to EC3 are displayed so as to be positioned on the lower side of the screen as compared with the case of FIG. As a result, the composition is close to the composition of FIG. If the position of the virtual camera is corrected only according to the height of the enemy character EC1, only the height of the enemy character EC1 is the same as the height of the reference character, so the position of the virtual camera is not corrected and the head of the enemy character EC2 is corrected. The tip of the screen will be displayed outside the screen. On the other hand, when the position of the virtual camera is corrected only according to the height of the enemy character EC2, the virtual camera is arranged at a position considerably higher than the reference camera position, and the tip of the leg of the enemy characters EC1 to EC3 is displayed outside the screen. Will be.

図15(c)は、敵キャラクタEC1の身長が基準キャラクタの身長と同じであるが、敵キャラクタEC2およびEC3の身長が基準キャラクタの身長より低い場合に、仮想カメラで撮影された画像を示している。この場合、敵キャラクタEC1〜EC3の身長の平均値は基準キャラクタの身長より小さいので、仮想カメラは基準カメラ位置より低い位置に配置されている。したがって、敵キャラクタEC1〜EC3が、図15(a)の場合と比べて、画面上で上方に位置するように表示されている。これにより、図15(a)の構図に近い構図となっている。仮に、敵キャラクタEC1の身長のみに応じて仮想カメラの位置を補正した場合、敵キャラクタEC1の身長は基準キャラクタの身長と同じであるので仮想カメラの位置の補正が行われず、敵キャラクタEC2およびEC3が画面の下方に表示されることになる。一方、敵キャラクタEC2の身長のみに応じて仮想カメラの位置を補正した場合、仮想カメラは基準カメラ位置よりかなり低い位置に配置され、敵キャラクタEC1の頭の先が画面からはみ出して表示されることになる。   FIG. 15C shows an image taken by the virtual camera when the height of the enemy character EC1 is the same as the height of the reference character but the heights of the enemy characters EC2 and EC3 are lower than the height of the reference character. Yes. In this case, since the average height of the enemy characters EC1 to EC3 is smaller than the height of the reference character, the virtual camera is arranged at a position lower than the reference camera position. Accordingly, the enemy characters EC1 to EC3 are displayed so as to be positioned above the screen as compared with the case of FIG. As a result, the composition is close to the composition of FIG. If the position of the virtual camera is corrected only according to the height of the enemy character EC1, the height of the enemy character EC1 is the same as the height of the reference character, so the position of the virtual camera is not corrected, and the enemy characters EC2 and EC3 are not corrected. Will be displayed at the bottom of the screen. On the other hand, when the position of the virtual camera is corrected only according to the height of the enemy character EC2, the virtual camera is arranged at a position considerably lower than the reference camera position, and the head of the enemy character EC1 is displayed outside the screen. become.

なお、図15の例においては、仮想カメラの位置のみを補正する場合について説明したが、合わせて仮想カメラの撮影方向も補正するようにしてもよい。   In the example of FIG. 15, the case where only the position of the virtual camera is corrected has been described. However, the shooting direction of the virtual camera may also be corrected.

上記実施形態では、プレイヤキャラクタの身長に応じて補正する場合について説明したが、キャラクタの身長以外の要素に応じて補正するようにしてもよい。例えば、プレイヤキャラクタの肩幅などに応じて、仮想カメラの水平位置を補正するようにしてもよい。この場合、プレイヤキャラクタの肩幅が広く(体型が横に大きい)なるように編集されていても、仮想カメラの水平位置が補正されるので、プレイヤキャラクタの体が仮想カメラによる撮影の邪魔になることを抑制し、ゲーム作製者が想定した構図に近い構図にすることができる。この場合、「プレイヤキャラクタの肩幅」が本発明の「オブジェクトの所定部分の大きさ」に対応するものである。   In the above embodiment, the case where correction is performed according to the height of the player character has been described. However, correction may be performed according to elements other than the height of the character. For example, the horizontal position of the virtual camera may be corrected according to the shoulder width of the player character. In this case, even if the player character is edited so that the shoulder width is wide (the body shape is large horizontally), the horizontal position of the virtual camera is corrected, so that the player character's body interferes with shooting by the virtual camera. The composition can be made close to the composition assumed by the game creator. In this case, “the shoulder width of the player character” corresponds to “the size of the predetermined portion of the object” of the present invention.

また、例えば、仮想カメラの位置をプレイヤキャラクタの視点位置として、プレイヤキャラクタが腕を伸ばして手の平を見ている場合のゲーム画像の生成においては、プレイヤキャラクタの腕の長さに応じて仮想カメラの撮影方向を補正するようにしてもよい。この場合、プレイヤキャラクタの腕の長さが編集されていても、手の平が画面の適切な位置にくるように表示することができる。この場合、「プレイヤキャラクタの腕の長さ」が本発明の「オブジェクトの所定部分の大きさ」に対応するものである。   Further, for example, in the generation of a game image when the position of the virtual camera is the viewpoint position of the player character and the player character is looking at the palm with his arms extended, the virtual camera is set according to the arm length of the player character. The shooting direction may be corrected. In this case, even if the arm length of the player character is edited, it can be displayed so that the palm is at an appropriate position on the screen. In this case, “the length of the arm of the player character” corresponds to “the size of the predetermined portion of the object” of the present invention.

上記では、プレイヤキャラクタの身長に応じて仮想カメラの高さ位置を補正する場合や、プレイヤキャラクタの肩幅などに応じて仮想カメラの水平位置を補正する場合など、編集によって長さが変わる方向と同じ方向に仮想カメラの位置を変化させる場合について説明したが、これに限られない。例えば、プレイヤキャラクタの身長(または肩幅)に応じて、仮想カメラとプレイヤキャラクタとの距離を離す方向(プレイヤキャラクタのローカル座標系のZ軸の負方向)に仮想カメラの位置を補正するようにしてもよい。この場合、プレイヤキャラクタの身長が長く(肩幅が広く)なるように編集されていても、仮想カメラの位置がプレイヤキャラクタから離れるように補正されるので、プレイヤキャラクタの体の一部が画面からはみ出すなどの不都合を抑制して、ゲーム作製者が想定した構図に近い構図にすることができる。   In the above, when the height position of the virtual camera is corrected according to the height of the player character, or when the horizontal position of the virtual camera is corrected according to the shoulder width of the player character, etc. Although the case of changing the position of the virtual camera in the direction has been described, the present invention is not limited to this. For example, according to the height (or shoulder width) of the player character, the position of the virtual camera is corrected in a direction in which the distance between the virtual camera and the player character is increased (a negative direction of the Z axis in the local coordinate system of the player character). Also good. In this case, even if the player character is edited so that the height of the player character is long (the shoulder width is wide), the position of the virtual camera is corrected so as to move away from the player character, so that part of the player character's body protrudes from the screen. It is possible to make the composition close to the composition assumed by the game creator.

また、プレイヤキャラクタと敵キャラクタの位置関係に応じて、仮想カメラの位置および撮影方向を補正するようにしてもよい。   Further, the position of the virtual camera and the shooting direction may be corrected according to the positional relationship between the player character and the enemy character.

プレイヤキャラクタが敵キャラクタを倒したときのデモ映像を仮想カメラモーションデータを用いて撮影する場合、敵キャラクタが倒れた位置によっては、ゲーム作製者が想定した構図にならない場合がある。例えば、敵キャラクタがプレイヤキャラクタの体に隠れてしまう場合がある。この問題を解消するために、敵キャラクタが倒れた位置によって異なる仮想カメラモーションデータをあらかじめ作成することは、データ作成のための作業量が増大し、記録するデータ量が膨大になることから、現実的でない。このような問題を解決するために、プレイヤキャラクタと敵キャラクタの位置関係に応じて、仮想カメラの位置および撮影方向を補正して用いるようにしてもよい。   When a demo video when a player character defeats an enemy character is shot using virtual camera motion data, the composition assumed by the game creator may not be obtained depending on the position where the enemy character has collapsed. For example, the enemy character may be hidden behind the player character's body. In order to solve this problem, creating virtual camera motion data that differs depending on the position where the enemy character fell in advance increases the amount of work for data creation and the amount of data to be recorded increases. Not right. In order to solve such a problem, the position of the virtual camera and the shooting direction may be corrected according to the positional relationship between the player character and the enemy character.

図16は、プレイヤキャラクタと敵キャラクタの位置関係に応じて、仮想カメラの位置および撮影方向を補正する場合の例を説明するための図である。図16では、プレイヤキャラクタが敵キャラクタを倒したときのデモ映像を撮影する場合を例としており、倒された敵キャラクタとプレイヤキャラクタとがゲーム画像に表示されるように仮想カメラの位置および撮影方向を補正する場合について説明する。   FIG. 16 is a diagram for explaining an example of correcting the position and shooting direction of the virtual camera in accordance with the positional relationship between the player character and the enemy character. FIG. 16 shows an example of shooting a demo video when the player character defeats an enemy character. The position and shooting direction of the virtual camera so that the defeated enemy character and the player character are displayed in the game image. A case of correcting the will be described.

図16(a)は三次元仮想ゲーム空間を上から見た図であり、プレイヤキャラクタPCおよび敵キャラクタECの位置と仮想カメラCの位置および撮影方向とが示されている。図の右側の矢印は、プレイヤキャラクタPCのローカル座標系を示しており、紙面裏から表の方向がY軸の正方向である。点P1はプレイヤキャラクタPCの左前方にあらかじめ設定されている点を示している。点P2は敵キャラクタECの基準の位置である。敵キャラクタECが点P2の位置に倒れている場合を基準として、仮想カメラCの位置を示す点P3があらかじめ設定されている。点P3は、点P1を中心とした所定半径の円Eと、点P1と点P2とを結ぶ直線とが交わる点のうち、点P2から離れた位置にある点である。敵キャラクタECが点P2の位置に倒れている場合、仮想カメラCは点P3に配置され、点P3から点P1に向かう方向を撮影方向として撮影を行う。図16(b)はこの場合のデモ映像の1コマを示しており、倒された敵キャラクタECとプレイヤキャラクタPCとがゲーム画像に表示されている。   FIG. 16A is a top view of the three-dimensional virtual game space, and shows the positions of the player character PC and enemy character EC, the position of the virtual camera C, and the shooting direction. The arrow on the right side of the figure indicates the local coordinate system of the player character PC, and the front direction from the back of the page is the positive direction of the Y axis. A point P1 indicates a point set in advance on the left front side of the player character PC. Point P2 is the reference position of the enemy character EC. A point P3 indicating the position of the virtual camera C is set in advance with reference to the case where the enemy character EC has fallen to the position of the point P2. The point P3 is a point at a position away from the point P2 among points where a circle E having a predetermined radius centered on the point P1 and a straight line connecting the points P1 and P2 intersect. When the enemy character EC is tilted to the position of the point P2, the virtual camera C is placed at the point P3, and shooting is performed with the direction from the point P3 toward the point P1 as the shooting direction. FIG. 16B shows one frame of the demonstration video in this case, and the defeated enemy character EC and the player character PC are displayed in the game image.

敵キャラクタECが倒れる場所は、プレイヤキャラクタPCとの戦いの状況によるので、一定していない。すなわち、敵キャラクタECは、必ずしも点P2の位置に倒れるわけではない。敵キャラクタECが点P2以外の位置に倒れている場合、倒れている位置(プレイヤキャラクタPCの位置に対する相対位置)に応じて、仮想カメラCの位置が点P3から補正され、撮影方向が点P3から点P1に向かう方向から補正される。例えば、敵キャラクタECが点P2’の位置に倒れている場合、点P1と点P2’とを結ぶ直線と円Eとが交わる点のうち、点P2’から離れた位置にある点P3’が演算され、仮想カメラCの位置が点P3から点P3’に補正される。また、撮影方向が点P3’から点P1に向かう方向に補正される。   The place where the enemy character EC falls is not constant because it depends on the situation of the battle with the player character PC. That is, the enemy character EC does not necessarily fall to the position of the point P2. When the enemy character EC is tilted to a position other than the point P2, the position of the virtual camera C is corrected from the point P3 according to the tilted position (relative position with respect to the position of the player character PC), and the shooting direction is the point P3. Is corrected from the direction toward the point P1. For example, when the enemy character EC has fallen to the position of the point P2 ′, a point P3 ′ at a position away from the point P2 ′ among the points where the line E connecting the point P1 and the point P2 ′ intersects the circle E is the point P3 ′. The position of the virtual camera C is corrected from the point P3 to the point P3 ′. Further, the photographing direction is corrected in a direction from the point P3 'to the point P1.

図16(c)はこの場合のデモ映像の1コマを示している。図16(c)に示す画像では、倒された敵キャラクタECとプレイヤキャラクタPCとが、図16(b)に示す構図と同様の構図で表示されている。仮に、仮想カメラCの位置および撮影方向が補正されなかった場合(すなわち、仮想カメラCが点P3に配置され、点P3から点P1に向かう方向を撮影方向として撮影を行った場合)、敵キャラクタECはプレイヤキャラクタPCの体に隠れて表示されなくなり、図16(b)に示す構図と全く異なる構図になる。   FIG. 16C shows one frame of the demonstration video in this case. In the image shown in FIG. 16C, the defeated enemy character EC and the player character PC are displayed in the same composition as the composition shown in FIG. If the position and shooting direction of the virtual camera C are not corrected (that is, the virtual camera C is placed at the point P3 and shooting is performed with the shooting direction as the shooting direction from the point P3 to the point P1), the enemy character The EC is hidden from being displayed in the body of the player character PC, and has a completely different composition from that shown in FIG.

このように、敵キャラクタECとプレイヤキャラクタPCとの位置関係に応じて仮想カメラCの位置および撮影方向を補正することで、ゲーム作製者が想定した構図と同様の構図でゲーム画像を生成することができる。また、基準となる仮想カメラCの位置および撮影方向(図16の例では、点P3の位置および点P3から点P1に向かう方向)を補正して用いるので、敵キャラクタECの位置毎に仮想カメラCの位置および撮影方向の情報を作成して記録しておく必要がない。図16の例の場合、「プレイヤキャラクタPCの位置に対する敵キャラクタECの相対位置」が本発明の「オブジェクトの他のオブジェクトに対する相対位置の情報」に対応するものである。   In this way, by correcting the position and shooting direction of the virtual camera C according to the positional relationship between the enemy character EC and the player character PC, a game image is generated with a composition similar to the composition assumed by the game creator. Can do. Further, since the position and the shooting direction of the reference virtual camera C (in the example of FIG. 16, the position of the point P3 and the direction from the point P3 to the point P1) are corrected and used, the virtual camera is used for each position of the enemy character EC. It is not necessary to create and record information on the position of C and the shooting direction. In the case of the example in FIG. 16, “the relative position of the enemy character EC with respect to the position of the player character PC” corresponds to “information of the relative position of the object with respect to other objects” of the present invention.

なお、上記図16の例では、三次元仮想ゲーム空間を上から見た図(図16(a)参照)を用いて、高さの要素を考慮せずに説明した。敵キャラクタECの倒れている位置の高さが変化する場合、仮想カメラCの位置および撮影方向の補正において、高さ方向の補正も行うようにしてもよい。この場合、円Eの代わりに点P1を中心とした所定半径の球に基づいて仮想カメラCの位置を補正すればよい。また、図16の例の場合でも、仮想カメラCの位置および撮影方向を、プレイヤキャラクタPCの身長データに応じて補正するようにしてもよい。   In the example of FIG. 16 described above, the three-dimensional virtual game space is viewed from above (see FIG. 16A) and is described without considering the height element. When the height of the position where the enemy character EC is tilted changes, the height direction may be corrected in the correction of the position of the virtual camera C and the shooting direction. In this case, the position of the virtual camera C may be corrected based on a sphere having a predetermined radius centered on the point P1 instead of the circle E. Also in the example of FIG. 16, the position and shooting direction of the virtual camera C may be corrected according to the height data of the player character PC.

上記実施形態では、アクションゲームを例に説明したが、これに限られない。例えば、スポーツゲーム、RPG(ロールプレイングゲーム)、シューティングゲーム、格闘ゲーム、アドベンチャーゲームなどの様々なジャンルのゲームにおいても、本発明を適用することができる。例えば、野球ゲームであれば、ピッチャーまたはバッターのキャラクタの体型に基づいて仮想カメラの位置および撮影方向を補正することができる。また、ピッチャー、バッター、キャッチャー、審判などの複数のキャラクタの体型の平均に基づいて仮想カメラの位置および撮影方向を補正することができる。また、本発明は、複数のプレイヤの操作するキャラクタ若しくはCPUの制御するキャラクタがチームを組んで協同して敵キャラクタと対戦するようなゲームや、敵キャラクタとしての他のプレイヤの操作するキャラクタと対戦するようなゲームにも適用することができる。   Although the action game has been described as an example in the above embodiment, the present invention is not limited to this. For example, the present invention can be applied to games of various genres such as sports games, RPG (role playing games), shooting games, fighting games, and adventure games. For example, in the case of a baseball game, the position and shooting direction of the virtual camera can be corrected based on the body shape of the pitcher or batter character. Further, the position and shooting direction of the virtual camera can be corrected based on the average of the body shapes of a plurality of characters such as a pitcher, batter, catcher, and referee. Further, the present invention is a game in which a character operated by a plurality of players or a character controlled by a CPU forms a team and cooperates with an enemy character, or a character operated by another player as an enemy character. It can also be applied to such games.

上記実施形態では、家庭用ゲーム装置でゲームを実施する場合について説明したが、これに限られない。本発明は、例えば、アーケードゲーム装置、携帯型ゲーム装置、および、ゲームソフトが搭載されているパーソナルコンピュータなどでゲームを実施する場合にも適用することができる。   In the above embodiment, the case where the game is executed on the home game device has been described, but the present invention is not limited thereto. The present invention can also be applied to a case where a game is executed on, for example, an arcade game device, a portable game device, and a personal computer equipped with game software.

上記実施形態では、本発明をゲームプログラムに適用した場合について説明したが、ゲーム以外のプログラムに適用してもよい。本発明は、三次元仮想空間上のオブジェクトを仮想カメラで撮影した画像を表示するあらゆるプログラムに適用することができる。   Although the case where the present invention is applied to a game program has been described in the above embodiment, the present invention may be applied to a program other than a game. The present invention can be applied to any program that displays an image obtained by photographing an object in a three-dimensional virtual space with a virtual camera.

なお、本発明は、ゲーム実行時における映像の生成などに用いられるだけでなく、ゲームの開発時にも用いることができる。例えば、ゲーム作成者がゲームを開発する際に、体型の異なる複数のキャラクタを使って、それぞれの動作を確認する場合などにも用いることができる。このとき、一連の動作の映像としてではなく、フレーム毎の画像としても確認できるようにしてもよい。   It should be noted that the present invention can be used not only for video generation at the time of game execution but also for game development. For example, when a game creator develops a game, it can also be used when confirming each action using a plurality of characters having different body shapes. At this time, it may be possible to confirm not only as a video of a series of operations but also as an image for each frame.

本発明に係るプログラムおよび画像処理装置は、上述した実施形態に限定されるものではない。本発明に係るプログラムおよび画像処理装置の具体的な構成は、種々に設計変更自在である。   The program and the image processing apparatus according to the present invention are not limited to the above-described embodiments. The specific configuration of the program and the image processing apparatus according to the present invention can be varied in design in various ways.

1 ゲーム装置
11 本体(画像処理装置)
111 制御部
111a CPU(演算手段、読出手段、補正手段、表示制御手段)
111b ROM
111c RAM(記録部、プログラム記録部)
112 描画処理部
113 音声処理部
114 ディスクドライブユニット
115 メモリカード接続ユニット
116 I/Oインターフェース部
117 通信処理部
118 信号送受信部
12 操作コントローラ
13 モニタ(表示装置)
14 ディスク
15 メモリカード
16 ネットワークアダプタ
2 ネットワーク回線
1 Game device 11 Main body (image processing device)
111 control unit 111a CPU (calculation means, reading means, correction means, display control means)
111b ROM
111c RAM (recording unit, program recording unit)
112 Drawing processing unit 113 Audio processing unit 114 Disk drive unit 115 Memory card connection unit 116 I / O interface unit 117 Communication processing unit 118 Signal transmission / reception unit 12 Operation controller 13 Monitor (display device)
14 disk 15 memory card 16 network adapter 2 network line

Claims (7)

三次元仮想空間に配置されるオブジェクトの画像を表示装置に表示させる画像処理装置のコンピュータで実行されるプログラムであって、
前記コンピュータを、
記録部にあらかじめ記録されている、基準となる基準オブジェクトを撮影するために設定された仮想カメラの基準位置および基準撮影方向を読み出す読出手段と、
前記基準オブジェクトの所定部分の大きさに対する前記オブジェクトの前記所定部分の大きさに関する情報である補正情報を演算する演算手段と、
前記演算手段によって演算された補正情報に応じて、前記読出手段によって読み出された前記基準位置および基準撮影方向の少なくとも一方を補正する補正手段と、
補正後の仮想カメラの位置および撮影方向を、前記オブジェクトを撮影するための仮想カメラの位置および撮影方向として設定する設定手段と、
して機能させることを特徴とするプログラム。
A program executed by a computer of an image processing apparatus that causes an image of an object arranged in a three-dimensional virtual space to be displayed on a display device,
The computer,
Reading means for reading out the reference position and the reference shooting direction of the virtual camera set for shooting the reference object as a reference, which is recorded in advance in the recording unit;
Computing means for computing correction information which is information relating to the size of the predetermined portion of the object with respect to the size of the predetermined portion of the reference object;
Correction means for correcting at least one of the reference position and the reference photographing direction read by the reading means according to the correction information calculated by the calculation means;
Setting means for setting the corrected virtual camera position and shooting direction as the virtual camera position and shooting direction for shooting the object;
A program characterized by making it function.
前記演算手段は、前記基準オブジェクトの垂直方向の長さに対する前記オブジェクトの垂直方向の長さに関する情報を前記補正情報として演算する、
請求項1に記載のプログラム。
The calculation means calculates, as the correction information, information related to the vertical length of the object with respect to the vertical length of the reference object.
The program according to claim 1.
前記補正手段は、前記補正情報に応じて前記基準位置の垂直成分および基準撮影方向の垂直成分の少なくとも一方を補正する、
請求項1または2に記載のプログラム。
The correcting unit corrects at least one of a vertical component of the reference position and a vertical component of a reference photographing direction according to the correction information;
The program according to claim 1 or 2.
前記オブジェクトは複数のオブジェクトであり、
前記演算手段は、前記基準オブジェクトの前記所定部分の大きさに対する前記複数のオブジェクトのそれぞれの所定部分の平均の大きさに関する情報を前記補正情報として演算する、
請求項1ないし3のいずれかに記載のプログラム。
The object is a plurality of objects;
The calculation means calculates, as the correction information, information related to an average size of each predetermined portion of the plurality of objects with respect to the size of the predetermined portion of the reference object.
The program according to any one of claims 1 to 3.
前記オブジェクト以外の他のオブジェクトが前記三次元仮想空間に配置されており、
前記演算手段は、さらに前記オブジェクトの前記他のオブジェクトに対する相対位置の情報を演算し、
前記補正手段は、前記相対位置の情報に応じて前記基準位置および基準撮影方向の少なくとも一方を補正する、
請求項1ないし4のいずれかに記載のプログラム。
Other objects other than the object are arranged in the three-dimensional virtual space,
The calculation means further calculates information of a relative position of the object with respect to the other object,
The correcting unit corrects at least one of the reference position and the reference photographing direction according to the information on the relative position;
The program according to any one of claims 1 to 4.
前記基準位置および基準撮影方向は、前記記録部にフレームごとに記録されており、
前記読出手段は、前記基準位置および基準撮影方向を、フレームごとに読み出し、
前記補正手段は、前記補正情報に応じて、前記読出手段によって読み出されたフレームごとの前記基準位置および基準撮影方向を補正する、
請求項1ないし5のいずれかに記載のプログラム。
The reference position and the reference shooting direction are recorded for each frame in the recording unit,
The reading means reads the reference position and the reference photographing direction for each frame,
The correction unit corrects the reference position and the reference photographing direction for each frame read by the reading unit according to the correction information.
The program according to any one of claims 1 to 5.
請求項1ないし6のいずれかに記載のプログラムを記録したプログラム記録部と、
前記プログラム記録部に記録されたプログラムを実行するコンピュータと、
を備えていることを特徴とする画像処理装置。
A program recording unit that records the program according to any one of claims 1 to 6,
A computer for executing the program recorded in the program recording unit;
An image processing apparatus comprising:
JP2011036781A 2011-02-23 2011-02-23 Program and image processing apparatus provided with computer for executing the program Active JP5775323B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011036781A JP5775323B2 (en) 2011-02-23 2011-02-23 Program and image processing apparatus provided with computer for executing the program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011036781A JP5775323B2 (en) 2011-02-23 2011-02-23 Program and image processing apparatus provided with computer for executing the program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015134043A Division JP6042495B2 (en) 2015-07-03 2015-07-03 Program and image processing apparatus provided with computer for executing the program

Publications (2)

Publication Number Publication Date
JP2012174089A true JP2012174089A (en) 2012-09-10
JP5775323B2 JP5775323B2 (en) 2015-09-09

Family

ID=46976932

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011036781A Active JP5775323B2 (en) 2011-02-23 2011-02-23 Program and image processing apparatus provided with computer for executing the program

Country Status (1)

Country Link
JP (1) JP5775323B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014068663A (en) * 2012-09-27 2014-04-21 Konami Digital Entertainment Co Ltd Game machine, control method used therefor, and computer program
JP2018060377A (en) * 2016-10-05 2018-04-12 株式会社コーエーテクモゲームス Screen control program
JP2018108150A (en) * 2016-12-28 2018-07-12 株式会社バンダイナムコエンターテインメント Program, game device, and server device
JP2018112924A (en) * 2017-01-12 2018-07-19 株式会社コナミデジタルエンタテインメント Game device and program
JP2019017662A (en) * 2017-07-14 2019-02-07 グリー株式会社 Game processing program, game processing method, and game processor

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7323315B2 (en) 2019-03-27 2023-08-08 株式会社コーエーテクモゲームス Information processing device, information processing method and program

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0785312A (en) * 1993-09-20 1995-03-31 Toshiba Corp Three-dimensional time-varying picture generation device
WO1998036261A1 (en) * 1997-02-14 1998-08-20 Arcturus Engineering, Inc. Broadband absorbing film for laser capture microdissection
JPH117543A (en) * 1997-06-13 1999-01-12 Namco Ltd Information storage medium and image generator
JPH11235466A (en) * 1997-12-18 1999-08-31 Sega Enterp Ltd Computer game device
JPH11235644A (en) * 1998-02-20 1999-08-31 Toyoda Mach Works Ltd Numerical control device
JP2003290550A (en) * 2002-04-03 2003-10-14 Nintendo Co Ltd Game device and game program
JP2004267247A (en) * 2003-03-05 2004-09-30 Square Enix Co Ltd 3d video game apparatus, control method for virtual camera in 3d video game and program and recording medium
JP2005095324A (en) * 2003-09-24 2005-04-14 Namco Ltd Program, information storage medium and game device
JP2006320419A (en) * 2005-05-17 2006-11-30 Sega Corp Game device and program
JP2009028188A (en) * 2007-07-25 2009-02-12 Namco Bandai Games Inc Program, information storage medium and game machine

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0785312A (en) * 1993-09-20 1995-03-31 Toshiba Corp Three-dimensional time-varying picture generation device
WO1998036261A1 (en) * 1997-02-14 1998-08-20 Arcturus Engineering, Inc. Broadband absorbing film for laser capture microdissection
JPH117543A (en) * 1997-06-13 1999-01-12 Namco Ltd Information storage medium and image generator
JPH11235466A (en) * 1997-12-18 1999-08-31 Sega Enterp Ltd Computer game device
JPH11235644A (en) * 1998-02-20 1999-08-31 Toyoda Mach Works Ltd Numerical control device
JP2003290550A (en) * 2002-04-03 2003-10-14 Nintendo Co Ltd Game device and game program
JP2004267247A (en) * 2003-03-05 2004-09-30 Square Enix Co Ltd 3d video game apparatus, control method for virtual camera in 3d video game and program and recording medium
JP2005095324A (en) * 2003-09-24 2005-04-14 Namco Ltd Program, information storage medium and game device
JP2006320419A (en) * 2005-05-17 2006-11-30 Sega Corp Game device and program
JP2009028188A (en) * 2007-07-25 2009-02-12 Namco Bandai Games Inc Program, information storage medium and game machine

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014068663A (en) * 2012-09-27 2014-04-21 Konami Digital Entertainment Co Ltd Game machine, control method used therefor, and computer program
JP2018060377A (en) * 2016-10-05 2018-04-12 株式会社コーエーテクモゲームス Screen control program
JP2018108150A (en) * 2016-12-28 2018-07-12 株式会社バンダイナムコエンターテインメント Program, game device, and server device
JP2018112924A (en) * 2017-01-12 2018-07-19 株式会社コナミデジタルエンタテインメント Game device and program
US11192026B2 (en) 2017-01-12 2021-12-07 Konami Digital Entertainment Co., Ltd. Game apparatus and program
JP2019017662A (en) * 2017-07-14 2019-02-07 グリー株式会社 Game processing program, game processing method, and game processor
US11020663B2 (en) 2017-07-14 2021-06-01 Gree, Inc. Video game with automated screen shots
JP2022000180A (en) * 2017-07-14 2022-01-04 グリー株式会社 Game processing program, game processing method, and game processing device
US11890539B2 (en) 2017-07-14 2024-02-06 Gree, Inc. Video game with automated screen shots

Also Published As

Publication number Publication date
JP5775323B2 (en) 2015-09-09

Similar Documents

Publication Publication Date Title
JP5775323B2 (en) Program and image processing apparatus provided with computer for executing the program
JP3934074B2 (en) PROGRAM, INFORMATION STORAGE MEDIUM, AND GAME DEVICE
JP6643775B2 (en) Game machine, game system and program
JP4474640B2 (en) Image processing program, game processing program, and game information processing apparatus
JP4187182B2 (en) Image generation system, program, and information storage medium
JP2010233671A (en) Program, information storage medium and game device
JP2006320419A (en) Game device and program
JP4962978B2 (en) GAME IMAGE DISPLAY CONTROL PROGRAM, GAME DEVICE, AND GAME IMAGE DISPLAY CONTROL METHOD
JP5785414B2 (en) Program and image processing apparatus provided with program recording unit recording the program
JP5767682B2 (en) Game program and game system
JP6042495B2 (en) Program and image processing apparatus provided with computer for executing the program
JP5491971B2 (en) Program, recording medium recording the program, and computer executing the program
JP2009028188A (en) Program, information storage medium and game machine
JP2008295970A (en) Game device, control method for game device, and program
JP5676030B2 (en) Program and game device for executing the program
JP2009045273A (en) Program, information storage medium, and game system
JP4543054B2 (en) GAME PROGRAM, GAME DEVICE, AND GAME CONTROL METHOD
JP4451897B2 (en) GAME PROGRAM, GAME DEVICE, AND GAME CONTROL METHOD
JP5575553B2 (en) Program, recording medium storing the program, and image processing apparatus provided with program storage means storing the program
JP6310516B2 (en) Game program and game system
JP4892454B2 (en) Image processing apparatus, image processing apparatus control method, and program
JP4975720B2 (en) GAME PROGRAM, GAME CONTROL METHOD, AND GAME DEVICE
JP2009104522A (en) Game device, program for executing the game device, and recording medium with the program recorded thereon
JP5363669B2 (en) Image generation system, program, and information storage medium
JP6267295B1 (en) Game program and game system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141211

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150202

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150609

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150703

R150 Certificate of patent or registration of utility model

Ref document number: 5775323

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S802 Written request for registration of partial abandonment of right

Free format text: JAPANESE INTERMEDIATE CODE: R311802