JP2002074396A - Method for expressing movement of crowd, storage medium and information processor - Google Patents

Method for expressing movement of crowd, storage medium and information processor

Info

Publication number
JP2002074396A
JP2002074396A JP2001182693A JP2001182693A JP2002074396A JP 2002074396 A JP2002074396 A JP 2002074396A JP 2001182693 A JP2001182693 A JP 2001182693A JP 2001182693 A JP2001182693 A JP 2001182693A JP 2002074396 A JP2002074396 A JP 2002074396A
Authority
JP
Japan
Prior art keywords
crowd
character
enemy character
individual
enemy
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
JP2001182693A
Other languages
Japanese (ja)
Other versions
JP3581673B2 (en
Inventor
Masanori Takano
政徳 高野
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.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Computer Entertainment Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Priority to JP2001182693A priority Critical patent/JP3581673B2/en
Publication of JP2002074396A publication Critical patent/JP2002074396A/en
Application granted granted Critical
Publication of JP3581673B2 publication Critical patent/JP3581673B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide technology for expressing a condition that individuals move as a crowd. SOLUTION: When plural individuals gather, an object control part 203 generates a crowd object, which is a virtual object. The crowd object applies instructions concerning the positions of respective individuals in the crowd object and a moving direction as a crowd to each of individuals comprising the crowd object. Each of individuals moves on the basis of the instruction.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、複数の個体の集ま
りである群集の振る舞いを擬似的に表現する技術に係
り、特に、情報処理装置を用いて、個体が群集となって
移動を行う様子を画像により表現する技術に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a technique for simulating the behavior of a crowd, which is a group of a plurality of individuals, and more particularly to a situation in which individuals move as a crowd using an information processing device. The present invention relates to a technique for expressing images by images.

【0002】[0002]

【従来の技術】群集とは、複数の個体が集まった状態で
あり、群集の移動とはその集まった状態を保ちながら各
個体が移動することである。情報処理装置上で、この群
集の移動を擬似的に表現するためには、群集を構成する
個々の個体に対して目的地に向う移動の指示を与える第
1の方法と、群集を一つのかたまりとみなし、群集に対
して目的地に向う移動の指示を与える第2の方法とが考
えられる。
2. Description of the Related Art The crowd is a state in which a plurality of individuals are gathered, and the movement of the crowd means that each individual moves while maintaining the gathered state. In order to simulate the movement of the crowd on the information processing apparatus, a first method of giving an instruction of movement toward a destination to each individual constituting the crowd, and the crowd as one lump And a second method of giving the crowd an instruction to move to the destination.

【0003】[0003]

【発明が解決しようとする課題】しかし、第1の場合、
各個体が群集内の他の個体との関係を考慮せずに移動を
行うことになり、群集としての振る舞いをうまく表現す
ることは困難である。
However, in the first case,
Each individual moves without considering the relationship with other individuals in the crowd, and it is difficult to express the behavior as a crowd well.

【0004】一方、第2の場合、群集自体は目的地に向
うが、例えば、群集内の各個体の分布がそのまま変化せ
ずに移動することとなり、群集が示す流体のような動き
を表現することができず、表現が不自然となる。
[0004] On the other hand, in the second case, the crowd itself goes to the destination, but, for example, the distribution of each individual in the crowd moves without change, and the movement of the crowd represented by a fluid is represented. And the expression is unnatural.

【0005】このため、群集を構成する個々の個体の振
る舞いを表現でき、なおかつ、群集としての自然な移動
を表現できる技術の開発が望まれている。
[0005] For this reason, there is a demand for the development of a technique capable of expressing the behavior of each individual constituting the crowd and expressing the natural movement of the crowd.

【0006】本発明の目的は、個体が群集となって移動
を行う様子を表現する技術を提供することにある。
An object of the present invention is to provide a technique for expressing a state in which individuals move as a crowd.

【0007】[0007]

【課題を解決するための手段】上記課題を解決するた
め、本発明は、情報処理装置において、複数の個体から
なる群集の移動を表現する方法であって、ある時点tに
おける群集を構成する個体の数と、各個体の位置とを取
得し、あらかじめ定められた配置規則にしたがって、次
の時点t+1における各個体の群集内における位置を割
り当てる段階と、ある時点tにおける群集を構成する個
体の位置により定められる群衆の基準点について、目的
方向を定める段階と、各個体について、上記配置処理に
より割り当てられた位置と上記目的方向に応じて次の時
点t+1における位置を決定する段階とを有することを
特徴とする群集の移動を表現する方法を提供する。
In order to solve the above-mentioned problems, the present invention relates to a method for expressing the movement of a crowd composed of a plurality of individuals in an information processing apparatus, comprising: And the position of each individual in the community at the next time point t + 1 according to a predetermined arrangement rule. For the reference point of the crowd defined by, the step of determining the destination direction, and for each individual, the step of determining the position at the next time point t + 1 according to the position allocated by the above-mentioned arrangement processing and the destination direction A method for expressing the movement of a characteristic crowd is provided.

【0008】[0008]

【発明の実施の形態】本発明の一実施形態について、図
面を参照して説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of the present invention will be described with reference to the drawings.

【0009】本実施形態においては、エンタテインメン
ト装置において、プレイヤが操作するキャラクタを、プ
レイヤの敵であるキャラクタが群集となって追いかける
という追跡ゲームに本発明を適用した場合を例とする。
In the present embodiment, an example in which the present invention is applied to a tracking game in which a character operated by a player follows a character operated by the player in a crowd in an entertainment apparatus.

【0010】まず、本実施例に係るエンタテインメント
装置10のハードウェア構成について図16を参照して
説明する。図16は、エンタテインメント装置のハード
ウェア構成を示すブロック図である。
First, a hardware configuration of the entertainment apparatus 10 according to the present embodiment will be described with reference to FIG. FIG. 16 is a block diagram illustrating a hardware configuration of the entertainment device.

【0011】本図に示すように、エンタテインメント装
置10は、メインCPU100と、グラフィックスプロ
セッサ(GP)110と、I/Oプロセッサ(IOP)
120と、CD/DVD読み出し部130と、サウンド
再生処理プロセッサ(SPU)140と、サウンドバッ
ファ141と、OS−ROM150と、メインメモリ1
60と、IOPメモリ170とを備える。
As shown in FIG. 1, the entertainment apparatus 10 includes a main CPU 100, a graphics processor (GP) 110, and an I / O processor (IOP).
120, a CD / DVD reading unit 130, a sound reproduction processor (SPU) 140, a sound buffer 141, an OS-ROM 150, and a main memory 1.
60 and an IOP memory 170.

【0012】そして、メインCPU100とGP110
とは、専用バス101によって接続されている。また、
メインCPU100とIOP120とは、バス102に
よって接続されている。また、IOP120とCD/D
VD読み出し部130とSPU140とOS−ROM1
50とは、バス103に接続されている。
The main CPU 100 and GP 110
Are connected by a dedicated bus 101. Also,
The main CPU 100 and the IOP 120 are connected by a bus 102. Also, IOP120 and CD / D
VD reading unit 130, SPU 140, and OS-ROM1
50 is connected to the bus 103.

【0013】メインCPU100には、メインメモリ1
60が接続され、IOP120には、IOPメモリ17
0が接続されている。さらに、IOP120には、コン
トローラ(PAD)180が接続される。
The main CPU 100 has a main memory 1
60, and the IOP 120 has an IOP memory 17
0 is connected. Further, a controller (PAD) 180 is connected to the IOP 120.

【0014】メインCPU100は、OS−ROM15
0に格納されたプログラム、あるいは、CD/DVD−
ROM等からメインメモリ160に転送されたプログラ
ムを実行することによって、所定の処理を行う。
The main CPU 100 has an OS-ROM 15
0 or a CD / DVD-
By executing a program transferred from the ROM or the like to the main memory 160, predetermined processing is performed.

【0015】GP110は、本エンタテインメント装置
のレンダリング機能を受け持つ描画プロセッサであり、
メインCPU100からの指示に従って、描画処理を行
う。
A GP 110 is a drawing processor having a rendering function of the entertainment apparatus.
Drawing processing is performed according to an instruction from the main CPU 100.

【0016】IOP120は、メインCPU100と、
周辺装置、例えばCD/DVD読み出し部130、SP
U140等との間のデータのやり取りを制御する入出力
用サブ・プロセッサである。
The IOP 120 includes a main CPU 100,
Peripheral device, for example, CD / DVD reading unit 130, SP
It is an input / output sub-processor that controls the exchange of data with U140 and the like.

【0017】CD/DVD読み出し部130は、CD/
DVDドライブに装着されたCD−ROM、DVD−R
OMからデータを読み出し、メインメモリ160に設け
られたバッファ領域161への転送を行う。
The CD / DVD reading section 130 is a
CD-ROM, DVD-R mounted on DVD drive
The data is read from the OM and transferred to the buffer area 161 provided in the main memory 160.

【0018】SPU140は、サウンドバッファ141
に格納された圧縮波形データ等を、メインCPU100
等からの発音命令に基づいて、所定のサンプリング周波
数で再生する。
The SPU 140 has a sound buffer 141
The compressed waveform data and the like stored in the
Playback at a predetermined sampling frequency based on a sounding instruction from the like.

【0019】OS−ROM150は、起動時にメインC
PU100およびIOP120が実行するプログラム等
が格納されている不揮発性メモリである。
The OS-ROM 150 stores the main C
This is a non-volatile memory in which programs executed by the PU 100 and the IOP 120 are stored.

【0020】メインメモリ160は、メインCPU10
0の主記憶装置であり、メインCPU100が実行する
命令、および、メインCPU100が利用するデータ等
が格納される。またメインメモリ160には、CD−R
OM、DVD−ROM等の記録媒体から読み出されたデ
ータを一時的に格納するバッファ領域161が設けられ
ている。
The main memory 160 stores the main CPU 10
0, which stores instructions executed by the main CPU 100, data used by the main CPU 100, and the like. The main memory 160 has a CD-R
A buffer area 161 for temporarily storing data read from a recording medium such as an OM or a DVD-ROM is provided.

【0021】IOPメモリ170は、IOP120の主
記憶装置であり、IOP120が実行する命令、およ
び、メインCPU100が利用するデータ等が格納され
る。
The IOP memory 170 is a main storage device of the IOP 120, and stores instructions executed by the IOP 120, data used by the main CPU 100, and the like.

【0022】コントローラ(PAD)180は、プレイ
ヤの指示を受付けるインタフェースである。コントロー
ラ180は、複数の操作ボタン、操作レバーからなる操
作部を有しており、それぞれの操作ボタン等が押下、あ
るいは操作レバーが傾けられた情報は、あらかじめ定め
られた信号によりメインCPU100に伝えられる。
The controller (PAD) 180 is an interface for receiving an instruction from the player. The controller 180 has an operation unit including a plurality of operation buttons and operation levers. Information indicating that each operation button or the like is pressed or the operation lever is tilted is transmitted to the main CPU 100 by a predetermined signal. .

【0023】図17は、エンタテインメント装置10の
使用状態を説明する図である。本図において、エンタテ
インメント装置本体11のコネクタ部12にコントロー
ラ(PAD)180が接続される。また、エンタテイン
メント装置本体11の画像音声出力端子13には、画像
音声出力用ケーブル14が接続される。このケーブル1
4の他端にはテレビ受信装置等の画像音声出力装置15
が接続される。エンタテインメント装置のプレイヤは、
コントローラ(PAD)180を用いて操作を指示す
る。エンタテインメント装置10は、コントローラ18
0を介して、プレイヤからの指示を受け付け、この指示
に対応した画像データと音声データを、画像音声出力装
置15に出力する。そして、画像音声出力装置15が画
像と音声を出力する。
FIG. 17 is a diagram illustrating a state of use of the entertainment apparatus 10. In the figure, a controller (PAD) 180 is connected to a connector section 12 of an entertainment apparatus main body 11. A video / audio output cable 14 is connected to the video / audio output terminal 13 of the entertainment apparatus main body 11. This cable 1
4 has an image / audio output device 15 such as a television receiver.
Is connected. The player of the entertainment device,
An operation is instructed using the controller (PAD) 180. The entertainment device 10 includes a controller 18
0, an instruction from the player is received, and image data and audio data corresponding to the instruction are output to the image and audio output device 15. Then, the image and sound output device 15 outputs the image and the sound.

【0024】次に、上記構成のエンタテインメント装置
10において、メインCPU100が、エンタテインメ
ント装置10内に装着されたCD/DVDから読み出さ
れたアプリケーションプログラムを実行することで、実
現される追跡ゲームについて説明する。
Next, a description will be given of a tracking game realized by the main CPU 100 of the entertainment apparatus 10 having the above-described configuration, by executing an application program read from a CD / DVD mounted in the entertainment apparatus 10. .

【0025】追跡ゲームにおいて、プレイヤはエンタテ
インメント装置10に接続されたコントローラ180を
使用して、操作対象オブジェクトであるプレイヤキャラ
クタを操作し、仮想的な世界を移動することができる。
一方、仮想世界310にはプレイヤキャラクタの敵であ
る敵キャラクタが複数存在している。敵キャラクタは、
通常は単独で、プレイヤキャラクタを追いかけるが、近
くに仲間である他の敵キャラクタを発見すると、群集を
形成して、プレイヤキャラクタを追いかける。ここで、
プレイヤキャラクタにとっての敵である敵キャラクタ
は、敵キャラクタ同士では仲間の関係となる。もちろ
ん、敵キャラクタ内に複数のグループを設け、同じグル
ープ内に属する敵キャラクタのみを仲間とするようにし
てもよい。
In the pursuit game, the player can use the controller 180 connected to the entertainment apparatus 10 to operate the player character as the operation target object and move in the virtual world.
On the other hand, in the virtual world 310, there are a plurality of enemy characters that are enemy of the player character. The enemy character
Normally, the player character chases the player character alone, but if another enemy character that is a friend is found nearby, a crowd is formed to chase the player character. here,
An enemy character that is an enemy to the player character has a friend relationship among the enemy characters. Of course, a plurality of groups may be provided in the enemy character, and only enemy characters belonging to the same group may be set as friends.

【0026】プレイヤはこれらの敵キャラクタにつかま
らないようにプレイヤキャラクタを操作することでゲー
ムを続けることができる。
The player can continue the game by operating the player character so as not to catch the enemy character.

【0027】エンタテインメント装置10は、この仮想
世界310を移動するプレイヤキャラクタと、敵キャラ
クタとを表現する画像を生成し、エンタテインメント装
置10に接続された画像音声出力装置15の表示画面に
表示する。
The entertainment device 10 generates an image representing the player character moving in the virtual world 310 and the enemy character, and displays the image on the display screen of the image and sound output device 15 connected to the entertainment device 10.

【0028】図1は、エンタテインメント装置10上に
構築される追跡ゲームを実現するためのソフトウェア構
成を示したブロック図である。なお、この図に示す各構
成要素は、CD/DVD読み出し部130により、エン
タテインメント装置10内に装着されたCD/DVDか
ら読み出され、メインメモリ160上に格納されたアプ
リケーションプログラムを、メインCPU100が実行
することにより、具現化される。
FIG. 1 is a block diagram showing a software configuration for realizing a chase game built on the entertainment apparatus 10. It should be noted that each component shown in this figure is read from the CD / DVD mounted in the entertainment apparatus 10 by the CD / DVD reading unit 130, and the main CPU 100 executes the application program stored in the main memory 160. It is embodied by executing.

【0029】図1において、仮想世界DB205は、追
跡ゲームが展開される仮想世界を形成するためのデータ
を格納する。
In FIG. 1, a virtual world DB 205 stores data for forming a virtual world in which a tracking game is developed.

【0030】ここで、図2で示すように、仮想世界31
0は、X−Y座標平面として管理される有限の2次元空
間である。すなわち、仮想世界310における位置は座
標(x,y)の形式で特定することができる。
Here, as shown in FIG.
0 is a finite two-dimensional space managed as an XY coordinate plane. That is, the position in the virtual world 310 can be specified in the form of coordinates (x, y).

【0031】仮想世界は、X軸に平行な一定間隔の直線
とY軸に平行な一定間隔の直線とによって区切られるブ
ロックに分割されている。ここでは、図2に示す仮想世
界310の左下を原点として、X軸Y軸に平行な直線を
座標間隔10で設け、ブロックに分割するものとする。
そして、Y軸に平行な直線で区切られる領域をX座標の
小さいほうからX1、X2・・・とし、X軸に平行な直
線で区切られる領域をY座標の小さいほうからY1、Y
2・・・とする。このように定義したことで、例えば、
左下のブロックはX1Y1として特定することできるよ
うに、個々のブロックは、XnYmの形式で特定するこ
とができる。
The virtual world is divided into blocks separated by straight lines at regular intervals parallel to the X axis and straight lines at regular intervals parallel to the Y axis. Here, it is assumed that a straight line parallel to the X axis and the Y axis is provided at a coordinate interval of 10 with the lower left of the virtual world 310 shown in FIG.
The areas separated by the straight line parallel to the Y axis are defined as X1, X2,... From the smaller X coordinate, and the areas defined by the straight line parallel to the X axis are defined as Y1, Y2 from the smaller Y coordinate.
2 and so on. With this definition, for example,
Individual blocks can be specified in the form XnYm, as the lower left block can be specified as X1Y1.

【0032】各ブロックは、図3に一例を示すようなデ
ータ構造を有している。
Each block has a data structure as shown in FIG.

【0033】本図においてブロックIDは、ブロックを
特定するためのXnYm形式によるデータである。
In the figure, a block ID is data in XnYm format for specifying a block.

【0034】ブロック属性は、ゲーム構成上の仮想世界
310の地理的情報を定めるためのブロック属性を定め
る情報で、例えば道、川、丘、草原等を表すコードとす
ることができる。
The block attribute is information for defining a block attribute for determining geographic information of the virtual world 310 in the game configuration, and may be a code representing a road, a river, a hill, a grassland, and the like.

【0035】表示用データは、ブロックを表示するため
の画像データである。画像生成部204は本データを用
いて、仮想世界310の画像を生成する。
The display data is image data for displaying a block. The image generation unit 204 generates an image of the virtual world 310 using the data.

【0036】図1において、操作内容受付部201は、
コントローラ180が受付けたプレイヤの指示にしたが
い、プレイヤの操作対象オブジェクトであるプレイヤキ
ャラクタの仮想世界310における移動方向を決定す
る。この処理は定期的に行われる。
In FIG. 1, the operation content receiving unit 201
In accordance with the instruction of the player received by the controller 180, the moving direction of the player character as the operation target object of the player in the virtual world 310 is determined. This process is performed periodically.

【0037】ここで、プレイヤキャラクタの移動方向
は、上下左右の方向をコントローラ180に設けられた
特定の操作ボタンあるいは操作レバーに対応させ、その
ボタン等の操作を受付けることで決定する。
Here, the moving direction of the player character is determined by associating the up, down, left, and right directions with a specific operation button or operation lever provided on the controller 180, and accepting the operation of the button or the like.

【0038】図1において、プレイヤキャラクタ位置算
出部202は、仮想世界310におけるプレイヤの操作
対象オブジェクトであるプレイヤキャラクタの位置を算
出する処理を行う。この処理は定期的に行われる。
In FIG. 1, a player character position calculation unit 202 performs a process of calculating a position of a player character which is an object to be operated by the player in the virtual world 310. This process is performed periodically.

【0039】具体的には、前回算出したプレイヤキャラ
クタの仮想世界310における位置と操作内容受付部2
01で決定されたプレイヤキャラクタの最新の移動方向
と、あらかじめ定められたプレイヤキャラクタの移動速
度とから、現時点でのプレイヤキャラクタの仮想世界3
10における位置を算出する。
More specifically, the position of the previously calculated player character in the virtual world 310 and the operation content receiving unit 2
From the latest moving direction of the player character determined in step 01 and the predetermined moving speed of the player character, the virtual world 3
The position at 10 is calculated.

【0040】画像生成部204は、仮想世界310の表
示用データに、プレイヤキャラクタおよび敵キャラクタ
の表示用データを重ね合わせて、2次元画像を生成す
る。
The image generating unit 204 generates a two-dimensional image by superimposing display data of the player character and the enemy character on display data of the virtual world 310.

【0041】表示制御部206は、画像生成部204で
生成された2次元画像をビデオ信号に変換し、エンタテ
インメント装置10に接続された画像音声出力装置15
の表示画面に表示する。
The display control unit 206 converts the two-dimensional image generated by the image generation unit 204 into a video signal, and outputs the video signal to the video / audio output device 15 connected to the entertainment device 10.
Is displayed on the display screen.

【0042】オブジェクト制御部203は、敵キャラク
タオブジェクトの仮想世界310内における移動を制御
する。その詳細について説明する。
The object control unit 203 controls the movement of the enemy character object in the virtual world 310. The details will be described.

【0043】敵オブジェクト制御部203が制御する対
象には、単独で行動する場合の敵キャラクタオブジェク
トと、敵キャラクタから構成される群集オブジェクトと
がある。敵オブジェクト制御部203は、制御するオブ
ジェクトをオブジェクトリストで管理する。図4(a)
は、オブジェクトリストの一例を示す図である。本図に
おいて、敵オブジェクト制御部203は、敵キャラクタ
オブジェクトE001とE002とE003とE004
とE005とを管理している。
The objects controlled by the enemy object control unit 203 include an enemy character object when acting alone and a crowd object composed of enemy characters. The enemy object control unit 203 manages objects to be controlled in an object list. FIG. 4 (a)
FIG. 4 is a diagram illustrating an example of an object list. In the figure, the enemy object control unit 203 includes enemy character objects E001, E002, E003, and E004.
And E005.

【0044】ここで、仮に敵キャラクタオブジェクトE
001とE002とE003とが群集を構成し、群集オ
ブジェクトG001となったとすると、オブジェクト制
御部203は、図4(b)に示すように、オブジェクト
リストからE001とE002とE003とを削除し
(削除したIDは、図9の敵キャラクタリスト281に
追加する。詳細については後述する。)、群集オブジェ
クトG001をオブジェクトリストの先頭に追加する。
Here, if the enemy character object E
Assuming that 001, E002, and E003 form a crowd and become a crowd object G001, the object control unit 203 deletes (deletes) E001, E002, and E003 from the object list as shown in FIG. 4B. The added ID is added to the enemy character list 281 in Fig. 9. The details will be described later.), And the crowd object G001 is added to the head of the object list.

【0045】この後、群集オブジェクトG001から敵
オブジェクトE003が分離したときは、図4(c)に
示すようにオブジェクト制御部203は、オブジェクト
リストに敵オブジェクトE003を追加する。そして、
敵キャラクタオブジェクトE003は単独で行動する。
なお、敵キャラクタが群集を構成する場合および群集か
ら敵キャラクタが分離する場合等の条件については後述
する。
Thereafter, when the enemy object E003 is separated from the crowd object G001, the object control unit 203 adds the enemy object E003 to the object list as shown in FIG. 4C. And
The enemy character object E003 acts alone.
Conditions such as a case where the enemy character forms a crowd and a case where the enemy character is separated from the crowd will be described later.

【0046】本実施形態において、敵キャラクタは個々
の独立したオブジェクトとして管理される。そして、あ
らかじめ定められた行動基準に基づいて移動を行う。行
動基準はルール化され、敵キャラクタオブジェクトに共
通に適用される。以下にその行動基準について図面を用
いて説明する。
In the present embodiment, enemy characters are managed as individual independent objects. Then, the user moves based on a predetermined action standard. The action standard is ruled and applied to enemy character objects in common. Hereinafter, the behavior standard will be described with reference to the drawings.

【0047】図5は、敵キャラクタオブジェクトが管理
するデータ構造の一例を模式的に説明するための図であ
る。
FIG. 5 is a diagram for schematically explaining an example of a data structure managed by the enemy character object.

【0048】本図に示すように、敵キャラクタオブジェ
クトは、データとしてオブジェクトID261と、モー
ド262と、存在位置263と、標準速度264とを有
している。
As shown in the figure, the enemy character object has an object ID 261, a mode 262, an existing position 263, and a standard speed 264 as data.

【0049】オブジェクトID261は、敵キャラクタ
オブジェクトを識別するためのコードで、例えばE00
1、E002とすることができる。
The object ID 261 is a code for identifying an enemy character object.
1, E002.

【0050】モード262は、敵キャラクタが個体とし
て行動しているか、群集の中の一員として行動している
かを識別するためのデータで、個体モードと群集モード
の2つの状態がある。敵キャラクタは初期状態において
は、個体モードとして行動しているが、他の敵キャラク
タを発見すると、その敵キャラクタと群集を形成し、群
集モードに遷移する。
Mode 262 is data for identifying whether an enemy character is acting as an individual or as a member of a crowd, and has two states, an individual mode and a crowd mode. In the initial state, the enemy character behaves in the individual mode. However, when another enemy character is found, the enemy character forms a crowd with the enemy character and transits to the crowd mode.

【0051】存在位置263は、仮想世界310内にお
ける敵キャラクタが存在している位置を表す座標データ
で、前回の存在位置と移動方向と移動速度とに基づい
て、例えばΔtごとの定期的に算出される。
The existence position 263 is coordinate data representing the position of the enemy character in the virtual world 310, and is calculated periodically, for example, for each Δt based on the previous existence position, the moving direction, and the moving speed. Is done.

【0052】標準速度264は敵キャラクタが移動する
とき速度の基準値を表すあらかじめ定められた値であ
る。例えば、Δtあたり仮想世界310の座標で10と
することができる。
The standard speed 264 is a predetermined value representing a reference value of the speed when the enemy character moves. For example, the coordinate of the virtual world 310 can be set to 10 per Δt.

【0053】敵キャラクタは、モード262によって行
動のパターンが変化する。
The behavior pattern of the enemy character changes depending on the mode 262.

【0054】まず、敵キャラクタオブジェクト(敵キャ
ラクタ)の個体モードでの行動について説明する。
First, the behavior of the enemy character object (enemy character) in the individual mode will be described.

【0055】個体モードである敵キャラクタは、時刻t
において、この仮想世界310上の、現在位置で定めら
れる位置に存在しているものとする。そして、時間間隔
Δtごとに離散的に位置を変えるものとする。ただし、
Δtは、敵キャラクタが連続して移動しているようにプ
レイヤに認識される程度に短い時間とする。このときの
移動距離は敵キャラクタの移動速度により定められる。
この、敵キャラクタの移動速度は、標準速度に基づいて
定められる。例えば、キャラクタが存在している座標点
を含むブロックの属性が道であれば、移動速度=標準速
度とし、属性が草原であれば移動速度=標準速度×0.
8などと、キャラクタの存在するブロックの属性に応じ
て変化させることができる。さらに、プレイヤキャラク
タを追いかけるときには速度を早くするように変化させ
ることもできる。
The enemy character in the individual mode is set at time t
It is assumed that the object exists at a position defined by the current position on the virtual world 310. Then, the position is discretely changed at each time interval Δt. However,
Δt is set to a time short enough for the player to recognize that the enemy character is moving continuously. The moving distance at this time is determined by the moving speed of the enemy character.
The moving speed of the enemy character is determined based on the standard speed. For example, if the attribute of the block including the coordinate point where the character exists is road, the moving speed is equal to the standard speed, and if the attribute is grassland, the moving speed is equal to standard speed × 0.
8 or the like, depending on the attribute of the block in which the character exists. Furthermore, when chasing the player character, the speed can be changed so as to increase the speed.

【0056】図6(a)は敵キャラクタの移動の様子を
説明するイメージ図である。本図において敵キャラクタ
300a、300b…は、2次元の仮想世界310を移
動する。本図において実線円はある時刻tにおける敵キ
ャラクタ300の位置で、破線円は時刻t+Δtにおけ
る敵キャラクタ300の位置である。
FIG. 6A is an image diagram for explaining the movement of the enemy character. In the figure, enemy characters 300a, 300b,... Move in a two-dimensional virtual world 310. In the figure, the solid line circle is the position of the enemy character 300 at a certain time t, and the broken line circle is the position of the enemy character 300 at a time t + Δt.

【0057】図7は敵キャラクタが個体モードとして行
動するときの1ターンにおける処理を説明するフローチ
ャートである。ここで、1ターンとは、時刻tにおける
オブジェクトごとの処理単位で、敵オブジェクト制御部
203により制御される。
FIG. 7 is a flowchart for explaining the processing in one turn when the enemy character acts in the individual mode. Here, one turn is a processing unit for each object at time t and is controlled by the enemy object control unit 203.

【0058】敵キャラクタ300は、個体モードとして
行動するとき、存在している位置を基準に図6(b)で
示すようなサーチエリア301を有している。このサー
チエリア310は、仮想世界310の敵キャラクタが存
在している位置の座標を中心とした半径aの円内の領域
とすることができる。
When acting in the individual mode, the enemy character 300 has a search area 301 as shown in FIG. 6B based on the existing position. The search area 310 can be an area within a circle having a radius a centered on the coordinates of the position where the enemy character of the virtual world 310 exists.

【0059】敵キャラクタ300は、サーチエリア30
1内における、プレイヤのキャラクタ350および他の
敵キャラクタ300aの存在を検出することができる
(S101)。具体的には、オブジェクトリストに登録
されているキャラクタの存在位置263を参照して、敵
キャラクタ300の存在位置263の座標を中心とした
半径aの円の中に、プレイヤキャラクタあるいは他の敵
キャラクタの存在位置263があるかどうかを判断でき
る。
The enemy character 300 is located in the search area 30
It is possible to detect the presence of the player character 350 and the other enemy character 300a in the area 1 (S101). Specifically, the player character or another enemy character is placed in a circle having a radius a centered on the coordinates of the enemy character 300's existence position 263 with reference to the existence position 263 of the character registered in the object list. It can be determined whether or not there is an existing position 263.

【0060】そして、サーチエリア内に他の敵キャラク
タが存在していることを検出すると、敵キャラクタは他
の敵キャラクタと群集を形成する(S107)。この処
理については後述する。
When detecting that another enemy character exists in the search area, the enemy character forms a crowd with the other enemy characters (S107). This processing will be described later.

【0061】一方、サーチエリア内にプレイヤキャラク
タが存在していることを検出すると(S102)、敵キ
ャラクタは、プレイヤキャラクタの座標と自己の座標の
位置関係から目的方向を定める(S103)。ここで、
定められる目的方向はプレイヤキャラクタが存在する方
向とする。すなわち、敵キャラクタは、プレイヤキャラ
クタの存在している座標を取得して、プレイヤキャラク
タを追いかける方向に目的方向を設定することとなる。
On the other hand, when detecting that the player character exists in the search area (S102), the enemy character determines the target direction from the positional relationship between the coordinates of the player character and its own coordinates (S103). here,
The determined target direction is a direction in which the player character exists. That is, the enemy character acquires the coordinates where the player character is present, and sets the target direction in a direction to follow the player character.

【0062】次に、敵キャラクタは、移動速度を定める
(S105)。移動速度は、例えば、標準速度の1.2
倍とすることができる。また、前述のように、敵キャラ
クタが存在しているブロックの属性252に応じて変化
させることとしてもよい。
Next, the enemy character determines the moving speed (S105). The moving speed is, for example, 1.2 of the standard speed.
Can be doubled. Further, as described above, it may be changed according to the attribute 252 of the block in which the enemy character exists.

【0063】そして、定めた目的方向と、移動速度とに
より時刻t+Δtの座標を算出する(106)。そし
て、その座標を現在位置に設定して時刻tにおけるター
ンを終了する。
Then, the coordinates at time t + Δt are calculated from the determined target direction and the moving speed (106). Then, the coordinates are set to the current position, and the turn at time t ends.

【0064】敵キャラクタは、サーチエリア内に他の敵
キャラクタおよびプレイヤキャラクタのいずれをも検出
しないときは、任意に、例えば乱数を用いて、目的方向
を定める(S104)。このとき、移動の様子を不自然
にしないため、時刻tにおける目的方向とあまり変わら
ないような方向に設定することが望ましい。
When neither the other enemy character nor the player character is detected in the search area, the enemy character arbitrarily determines the target direction using, for example, a random number (S104). At this time, in order not to make the movement unnatural, it is desirable to set the direction so as not to be much different from the target direction at the time t.

【0065】次に、敵キャラクタは、移動速度を定める
(S105)。移動速度は例えば標準速度とすることが
できる。もちろん、前述のようにブロックの属性252
に応じて変化させることとしてもよい。
Next, the enemy character determines the moving speed (S105). The moving speed can be, for example, a standard speed. Of course, as described above, the block attribute 252
May be changed according to

【0066】そして、定めた目的方向と、移動速度とに
より時刻t+Δtの座標を算出する(S106)。そし
て、その座標を現在位置に設定して時刻tにおけるター
ンを終了する。
Then, the coordinates at time t + Δt are calculated based on the determined target direction and the moving speed (S106). Then, the coordinates are set to the current position, and the turn at time t ends.

【0067】以上のように、1の敵キャラクタの時刻t
における1ターンが終了する。すなわち敵キャラクタは
時刻tにおける1ターンで、群集を形成するか、時刻t
+Δtにおける現在位置に移動するかのいずれかの行動
を行う。
As described above, the time t of one enemy character
One turn in ends. That is, the enemy character forms a crowd in one turn at time t, or
One of the actions of moving to the current position at + Δt is performed.

【0068】この行動は、時刻tにおいて個体モードに
あるすべての敵キャラクタが順番に行う。このときの制
御方法について説明する。
This action is sequentially performed by all the enemy characters in the individual mode at time t. The control method at this time will be described.

【0069】オブジェクト制御手段は、前述のように図
4(a)に示すようなオブジェクトリストを管理する。
そして、時刻tにおいて、オブジェクトリストに記録さ
れている敵キャラクタオブジェクトに対し、順番に1タ
ーンにおける処理を行わせる。例えば、本図のように、
オブジェクトリストに敵キャラクタE004、敵キャラ
クタE005が掲載されていたとすると、時刻tにおい
て、まず、敵キャラクタE004に前述の1ターンの処
理を行わせる。このターンが終了すると、次に敵キャラ
クタE005に1ターンの処理を行わせる。そして、敵
キャラクタE005のターンが終了すると、時刻tにお
ける処理を終了する。
The object control means manages an object list as shown in FIG.
Then, at time t, the enemy character objects recorded in the object list are sequentially processed in one turn. For example, as shown in this figure,
Assuming that the enemy character E004 and the enemy character E005 are listed in the object list, at time t, the enemy character E004 first performs the above-described one-turn processing. When this turn ends, the enemy character E005 is caused to perform one turn of processing. Then, when the turn of the enemy character E005 ends, the processing at the time t ends.

【0070】この処理をΔtごとに行うことにより、敵
キャラクタE004と敵キャラクタE005を連続的に
行動させることができる。なお、図4(b)(c)に示
すように、オブジェクトリストに群集オブジェクトが掲
載されている場合には、時刻tにおける敵キャラクタオ
ブジェクトのターンを行わせる前に、時刻tにおける群
集オブジェクトのターンが行われるが、この処理につい
ては後述する。
By performing this process for each Δt, the enemy character E004 and the enemy character E005 can be caused to act continuously. As shown in FIGS. 4B and 4C, when the crowd object is listed in the object list, the turn of the crowd object at time t is performed before the turn of the enemy character object at time t. This process will be described later.

【0071】前述のように、サーチエリア内に他の敵キ
ャラクタが存在することを検出すると、敵キャラクタ
は、サーチエリア内に存在する敵キャラクタと群集を形
成する(S107)。
As described above, when the presence of another enemy character in the search area is detected, the enemy character forms a crowd with the enemy characters existing in the search area (S107).

【0072】このときの群集を形成する処理について図
8を参照して説明する。本例では、図8(a)に示すよ
うに、敵キャラクタA(E006)が、時刻tにおける
ターンで、サーチエリア301内に存在する敵キャラク
タB(E007)と敵キャラクタC(E008)とを検
出して、3体で群集を形成するものとする。
The process for forming the crowd at this time will be described with reference to FIG. In this example, as shown in FIG. 8A, the enemy character A (E006) changes the enemy character B (E007) and the enemy character C (E008) existing in the search area 301 at the turn at time t. Upon detection, the three members form a crowd.

【0073】まず、オブジェクト制御手段203は、敵
キャラクタAから通知をうけ、図8(b)に示すよう
に、サーチエリア301内に存在する敵キャラクタにつ
いての仮想リーダたる群集オブジェクトG(G002)
302を作成する。そして、オブジェクトリストの先頭
に群集オブジェクトGのIDであるG002を追加し、
群集オブジェクトを構成する敵キャラクタA、敵キャラ
クタB、敵キャラクタCのIDをオブジェクトリストか
ら削除する。さらに、敵キャラクタA、敵キャラクタ
B、敵キャラクタCのモード262を、個体から群集に
変更する。そして、敵キャラクタAの時刻tにおけるタ
ーンを終了する。
First, the object control means 203 receives a notification from the enemy character A, and as shown in FIG. 8B, a crowd object G (G002) as a virtual leader for the enemy character existing in the search area 301.
Create 302. Then, G002, which is the ID of the crowd object G, is added to the head of the object list,
The IDs of the enemy character A, enemy character B, and enemy character C constituting the crowd object are deleted from the object list. Further, the mode 262 of the enemy character A, the enemy character B, and the enemy character C is changed from the individual to the crowd. Then, the turn at the time t of the enemy character A ends.

【0074】ここで、群集オブジェクトについて説明す
る。
Here, the crowd object will be described.

【0075】群集オブジェクトは仮想オブジェクトであ
り、表示は行わない。そして、群集オブジェクトの位置
は、図8(c)に示すように、その群集を構成する敵キ
ャラクタの位置の中心点(仮想世界310上における重
心座標)とする。すなわち、時刻tにおける群集オブジ
ェクトの位置は、群集を構成する敵キャラクタの時刻t
における位置により定まる。なお、プレイヤの選択に応
じて、群集オブジェクトを敵オブジェクトとは区別され
る図形で表示するようにしてもよい。
The crowd object is a virtual object and is not displayed. Then, as shown in FIG. 8C, the position of the crowd object is set to the center point of the position of the enemy character constituting the crowd (the barycentric coordinates on the virtual world 310). That is, the position of the crowd object at time t is determined by the time t
Is determined by the position at. It should be noted that the crowd object may be displayed in a figure distinguishable from the enemy object in accordance with the selection of the player.

【0076】さらに、群集オブジェクトは、その群集を
構成する敵キャラクタの数情報と位置情報を有してい
る。図9は、群集オブジェクトが管理する情報のデータ
構造を模式的に説明する図である。
Further, the crowd object has number information and position information of enemy characters constituting the crowd. FIG. 9 is a diagram schematically illustrating a data structure of information managed by the crowd object.

【0077】本図において群集オブジェクトは、群集オ
ブジェクトを識別するための群集オブジェクトID27
1と、群集を構成する敵キャラクタの数272と、群集
オブジェクトの存在位置273とを管理している。
In this figure, the crowd object is a crowd object ID 27 for identifying the crowd object.
1, the number 272 of enemy characters constituting the crowd, and the location 273 of the crowd object.

【0078】加えて、群集オブジェクトは、敵キャラク
タの数272に応じて、それぞれの敵キャラクタのID
と存在位置とを管理する情報を有している。敵キャラク
タの存在位置を管理する情報は、本例においては、28
1aで敵キャラクタAのIDと存在位置とを管理し、2
81bで敵キャラクタBのIDと存在位置を管理し、2
81bで敵キャラクタCのIDと存在位置を管理してい
るものとする。一方、これらの敵キャラクタの存在位置
情報を基に、群集オブジェクトの存在位置273の値が
定められる。これらの敵キャラクタの情報は、群集形成
時、その直前の敵キャラクタの情報を取得することで初
期値を形成することができる。
In addition, the crowd object indicates the ID of each enemy character according to the number 272 of enemy characters.
And information for managing the location. The information for managing the position of the enemy character is 28 in this example.
1a manages the enemy character A's ID and location,
81b manages the ID and location of the enemy character B,
It is assumed that the ID and the location of the enemy character C are managed in 81b. On the other hand, the value of the crowd object existence position 273 is determined based on the existence position information of these enemy characters. The information of these enemy characters can form an initial value by acquiring the information of the enemy character immediately before the crowd formation.

【0079】前述のようにオブジェクト制御部203
は、時刻tにおけるオブジェクトリストに群集オブジェ
クトが掲載されている場合には、時刻tにおける個体モ
ードの敵キャラクタオブジェクトのターンを行わせる前
に、時刻tにおける群集オブジェクトのターンを行わせ
る。以下に、群集オブジェクトが1ターンで行う処理に
ついて図10のフローチャートを参照して説明する。
As described above, the object control unit 203
Causes the crowd object to be turned at time t before the enemy character object in the individual mode is turned at time t when the crowd object is listed in the object list at time t. Hereinafter, the processing performed by the crowd object in one turn will be described with reference to the flowchart in FIG.

【0080】ここでは、敵キャラクタA、敵キャラクタ
B、敵キャラクタCとから構成される群集オブジェクト
Gを例にする。
Here, a crowd object G composed of an enemy character A, an enemy character B, and an enemy character C will be described as an example.

【0081】まず、群集オブジェクトGは、その群集を
構成する敵キャラクタの数262の情報を取得して(S
201)、その情報に基づき敵キャラクタの配置情報を
作成する(S202)。このときの処理について図11
を参照して説明する。
First, the crowd object G obtains information of the number 262 of enemy characters constituting the crowd (S
201), placement information of the enemy character is created based on the information (S202). The processing at this time is shown in FIG.
This will be described with reference to FIG.

【0082】まず、群集オブジェクトGは、配置形状を
定める。配置形状を定めるルールは任意であるが、ここ
では、群集の形状を見栄えよく表現するルールを用いる
ものとする。そのルールについて説明する。
First, an arrangement shape of the crowd object G is determined. The rule for determining the arrangement shape is arbitrary, but here, a rule that expresses the shape of the crowd with good appearance is used. The rules will be described.

【0083】群集オブジェクトGは、図11(a)に示
すように、群集オブジェクトGの位置を中心に所定の半
径を有する複数の同心円を仮定する。同心円は中心点に
近い方から第1層303a、第2層303b…とする。
なお、この同心円の大きさは固定とすることも、可変と
することもできる。可変とする場合には例えば、群集オ
ブジェクトの存在しているブロックの属性に応じて変化
させたり、プレイヤの操作内容に応じて変化させること
ができる。
As shown in FIG. 11A, a plurality of concentric circles having a predetermined radius centered on the position of the crowd object G are assumed for the crowd object G. The concentric circles are referred to as a first layer 303a, a second layer 303b,.
The size of the concentric circle can be fixed or variable. When it is variable, for example, it can be changed according to the attribute of the block where the crowd object exists, or can be changed according to the operation content of the player.

【0084】そして、例えば、図11(b)に示すよう
に、第1層303aには6体まで、第2層には12体ま
での敵キャラクタが配置できるものとする。以下同様に
N層には3×2N体までの敵キャラクタが配置できるも
のとする。
For example, as shown in FIG. 11B, up to six enemy characters can be arranged on the first layer 303a and up to 12 enemy characters can be arranged on the second layer 303a. Hereinafter, similarly, it is assumed that up to 3 × 2 N enemy characters can be arranged in the N layer.

【0085】この場合において、群集オブジェクトG
は、群集を構成する敵キャラクタを、第1層303aか
ら順番に分配していく。すなわち、群集を構成する敵キ
ャラクタが2〜6体のときは、すべてを第1層に分配す
る。敵キャラクタが7体〜18体のときは、6体を第1
層303aに分配し、残りの敵キャラクタを第2層30
3bに分配する。以下同様に中心点に近い層から順番に
分配していく。なお、この時点においては、どの敵キャ
ラクタがどの層に配置されるかは未確定である。
In this case, the crowd object G
Distributes the enemy characters constituting the crowd in order from the first layer 303a. That is, when there are two to six enemy characters constituting the crowd, all are distributed to the first layer. If there are 7 to 18 enemy characters, 6 are the first
The remaining enemy characters are distributed to the layer 303a and the second layer 30
3b. In the same manner, distribution is performed in order from the layer near the center point. At this point, it is undetermined which enemy character is to be placed on which layer.

【0086】次に、群集オブジェクトは、敵キャラクタ
が配置された層に関して、各敵キャラクタ同士の間隔が
等しくなるように配置を定める。例えば、群集オブジェ
クトGを構成する敵キャラクタが4体で、第1層303
aにすべての敵キャラクタが分配されたとすると、同心
円上で、これらの間隔が等しくなるよう配置を行うと、
図11(c)に示すように4体の敵キャラクタが同心円
上で正方形を描くような配置になる。同様に、6体では
同図(d)に示すように正六角形、10体では同図
(e)に示すように2層構造となり、第1層303aは
正六角形、第2層303bは正方形を描くような配置と
なる。
Next, the crowd objects are arranged such that the intervals between the enemy characters are equal on the layer where the enemy characters are arranged. For example, the crowd object G has four enemy characters and the first layer 303
Assuming that all the enemy characters have been distributed to a, if they are arranged on a concentric circle so that their intervals are equal,
As shown in FIG. 11C, the arrangement is such that four enemy characters draw a square on a concentric circle. Similarly, six bodies have a regular hexagonal shape as shown in FIG. 4D, and ten bodies have a two-layer structure as shown in FIG. 4E. The first layer 303a has a regular hexagonal shape and the second layer 303b has a square shape. The arrangement is like drawing.

【0087】次に、群集オブジェクトGは、群集を構成
する敵キャラクタのそれぞれに対して、上記のように定
められた配置を割り当てる。群集オブジェクトは、敵キ
ャラクタの位置と、定められた配置とを比較して、どの
敵キャラクタをどの配置に割り当てるかを定める。割り
当て方法は任意であるが、例えば、各敵キャラクタの現
在位置を参照して、全体として最も移動距離が短くなる
ように割り当てるようにすることができる。あるいは、
敵キャラクタと、配置に識別番号を付し、番号順に割り
当てを行うようにしてもよい。ここでは、それぞれの配
置位置に、最も近くにいる敵キャラクタを割り当てるこ
ととする。
Next, the crowd object G allocates the arrangement determined as described above to each of the enemy characters constituting the crowd. The crowd object compares the position of the enemy character with the determined arrangement to determine which enemy character is assigned to which arrangement. The assignment method is arbitrary, but, for example, the current position of each enemy character can be referred to and assigned such that the movement distance becomes the shortest as a whole. Or,
An identification number may be assigned to the enemy character and the arrangement, and the allocation may be performed in numerical order. Here, the closest enemy character is assigned to each arrangement position.

【0088】この処理により、各敵キャラクタの配置割
り当てを定めると、群集オブジェクトは、その割り当て
情報を各敵キャラクタに通知する。これにより、敵キャ
ラクタは自身が、仮想平面上のどの位置(座標)に割り
当てられたかを知ることができる。
When the arrangement assignment of each enemy character is determined by this processing, the crowd object notifies each enemy character of the assignment information. Thereby, the enemy character can know to which position (coordinate) on the virtual plane the enemy character has been assigned.

【0089】なお、仮想世界310のブロック属性に応
じて、割り当て位置を制限することもできる。例えば、
ブロックの属性が川であると、そのブロックには敵キャ
ラクタを配置できないようなルールを用いてもよい。
Note that the allocation position can be restricted according to the block attribute of the virtual world 310. For example,
If the attribute of the block is river, a rule may be used such that no enemy character can be placed in the block.

【0090】次に、群集オブジェクトは、目的方向を定
める処理を行う(S203)。群集オブジェクトの目的
方向は、プレイヤキャラクタの存在している方向とす
る。例えば、時刻tにおいて、図12に示すように、群
集オブジェクトの存在位置が(x1,y1)で、プレイヤ
キャラクタの存在位置が(x2,y2)であったとする
と、群集オブジェクトの目的方向は、目的方向とX軸と
のなす角をθとすると、 θ=tan-1(y2−y1)/(x2−x1) となる(ただしx2≠x1、x2=x1の場合はθ=90
°)。
Next, the crowd object performs a process for determining a destination direction (S203). The target direction of the crowd object is the direction in which the player character exists. For example, at time t, as shown in FIG. 12, if the existence position of the crowd object is (x 1 , y 1 ) and the existence position of the player character is (x 2 , y 2 ), the purpose of the crowd object Assuming that the angle between the target direction and the X axis is θ, θ = tan −1 (y 2 −y 1 ) / (x 2 −x 1 ) (where x 2 ≠ x 1 , x 2 = in the case of x 1 θ = 90
°).

【0091】群集オブジェクトは、この目的方向を、群
集オブジェクトを構成する各敵キャラクタに通知する。
The crowd object notifies each of the enemy characters constituting the crowd object of the target direction.

【0092】なお、群集オブジェクトがプレイヤキャラ
クタの存在している位置を検索する処理は、例えば、群
集オブジェクトが存在しているブロックを中心に、所定
の距離範囲内のブロックを順番に検索して、プレイヤキ
ャラクタがそのブロック内に存在しているかどうかを判
断することにより行うことができる。この結果、検索範
囲内のブロックでプレイヤキャラクタを発見した場合
は、その方向を目的方向とすることができる。一方、プ
レイヤキャラクタを発見できなかった場合は、直前の目
的方向を維持する、ランダムに目的方向を変える等の処
理を行って、目的方向を定めることができる。
The process of retrieving the position where the crowd object is present in the crowd object is performed, for example, by sequentially searching for blocks within a predetermined distance range centering on the block where the crowd object exists. The determination can be made by determining whether or not the player character exists in the block. As a result, when a player character is found in a block within the search range, that direction can be set as the target direction. On the other hand, if the player character cannot be found, the target direction can be determined by performing processing such as maintaining the previous target direction or randomly changing the target direction.

【0093】群集オブジェクトは、この目的方向を定め
るだけで、群集オブジェクト自身は主体的に移動は行わ
ない。群集オブジェクトの位置は、群集オブジェクトを
構成する敵キャラクタの中心点であるからである。した
がって、群集オブジェクトは、群集オブジェクトを構成
する個々の敵キャラクタが移動することにより結果的に
移動することになる。
The crowd object merely determines this destination direction, and the crowd object itself does not move independently. This is because the position of the crowd object is the center point of the enemy characters constituting the crowd object. Therefore, the crowd object moves as a result of the movement of the individual enemy characters constituting the crowd object.

【0094】以下に群集を構成する敵キャラクタの移動
について説明する。
Hereinafter, the movement of the enemy characters forming the crowd will be described.

【0095】群集を構成し、群集モードにある敵キャラ
クタは、前述のように、群集オブジェクトから仮想平面
上のどの座標に割り当てられたかという配置情報と目的
方向に関する情報を得ている。
An enemy character that forms a crowd and is in the crowd mode has obtained, from the crowd object, arrangement information indicating which coordinates on the virtual plane are assigned and information regarding the target direction.

【0096】群集を構成する敵キャラクタは、この配置
情報と目的方向から時刻t+Δtの存在位置が定まる
(S204)。
The location of the enemy character constituting the crowd at time t + Δt is determined from the arrangement information and the target direction (S204).

【0097】群集を構成する敵キャラクタの移動は時刻
tにおける群集オブジェクトのターンの、子ターンとし
て処理される。すなわち、ターンは入れ子構造を有して
いる。例えば、群集オブジェクトGが、敵キャラクタ
A、敵キャラクタB、敵キャラクタCから構成されてい
るとすると、オブジェクト制御部203から与えられた
群集オブジェクトGのターン中において、群集オブジェ
クトGは、敵キャラクタA・B・Cに対し、順番にター
ン(群集オブジェクトGのターンにおける子ターン)を
行わせる。
The movement of the enemy character constituting the crowd is processed as a child turn of the crowd object's turn at time t. That is, the turns have a nested structure. For example, assuming that the crowd object G is composed of an enemy character A, an enemy character B, and an enemy character C, during the turn of the crowd object G given from the object control unit 203, the crowd object G・ B and C are sequentially turned (child turns in the turn of the crowd object G).

【0098】ここで、敵キャラクタAを例に、子ターン
における敵キャラクタの移動処理の一例について図13
を用いて説明する。
Here, an example of the moving process of the enemy character in the child turn using the enemy character A as an example is shown in FIG.
This will be described with reference to FIG.

【0099】群集モードにある敵キャラクタAは、時刻
tに仮想平面上の座標(x1,y1)に存在したとする。
そして、群集オブジェクトから配置情報(x3,y3
と、目的方向θが与えられたとする。このとき敵キャラ
クタAの時刻t+Δtにおける存在位置は以下のように
定められる。
Assume that the enemy character A in the crowd mode exists at the coordinates (x 1 , y 1 ) on the virtual plane at time t.
Then, the arrangement information (x 3 , y 3 ) from the crowd object
And the target direction θ is given. At this time, the location of the enemy character A at time t + Δt is determined as follows.

【0100】ここで、簡単のため仮想世界310の座標
とは別の座標系を考え、図13(a)に示すように、時
刻tにおける敵キャラクタの存在位置(x1,y1)を
(0,0)として、目的方向をθ=90°とする。
Here, for simplicity, a coordinate system different from the coordinates of the virtual world 310 is considered, and as shown in FIG. 13A, the position (x 1 , y 1 ) of the enemy character at time t is represented by ( (0, 0), and the target direction is θ = 90 °.

【0101】まず、敵キャラクタAは、配置情報が、目
的方向を基準として、前方であるか、後方であるかを判
断する。本例の場合は、配置情報(x3,y3)のy3
0以上であるか、0未満であるかを判断する。
First, the enemy character A determines whether the arrangement information is forward or backward based on the target direction. For this example, if y 3 of the arrangement information (x 3, y 3) is 0 or more, it is determined whether less than 0.

【0102】そして、配置情報の座標が、目的方向を基
準として前方であると判断したときは、速い移動速度、
例えば、移動速度=基準速度×1.2で、配置情報の座
標(x3,y3)の方向に、移動速度×Δtの距離だけ移
動する。そして、図13(b)に示すように、その結果
得られる座標を、時刻t+Δtにおける存在位置とす
る。
When it is determined that the coordinates of the arrangement information are ahead with respect to the target direction, the moving speed, the moving speed,
For example, when the moving speed is equal to the reference speed × 1.2, the robot moves in the direction of the coordinates (x 3 , y 3 ) of the arrangement information by the distance of the moving speed × Δt. Then, as shown in FIG. 13B, the coordinates obtained as a result are set as the existing position at time t + Δt.

【0103】なお、本図において実線の円Aは時刻tに
おける敵キャラクタAの位置で、破線の円Aは時刻t+
Δtにおける敵キャラクタAの位置を表している。
In the figure, the solid circle A is the position of the enemy character A at the time t, and the broken circle A is the time t +
This represents the position of the enemy character A at Δt.

【0104】一方、配置情報の座標が、目的方向を基準
として後方であると判断したときは、遅い移動速度、例
えば、移動速度=基準速度×0.6で、座標(x3
0)の方向に、移動速度×Δtの距離だけ移動する。す
なわち、目的方向に対して後退しないで、配置情報の座
標(x3,y3)に近づくように移動を行う。そして、図
13(c)に示すように、その結果得られる座標を、時
刻t+Δtにおける存在位置とする。
On the other hand, if it is determined that the coordinates of the arrangement information are backward with respect to the destination direction, the coordinates (x 3 ,
It moves in the direction of 0) by the distance of the moving speed × Δt. That is, the movement is performed so as to approach the coordinates (x 3 , y 3 ) of the arrangement information without moving backward in the target direction. Then, as shown in FIG. 13C, the coordinates obtained as a result are set as the existing position at time t + Δt.

【0105】同様の、移動処理を敵キャラクタB、敵キ
ャラクタCも行うことにより(S205)、群集オブジ
ェクトGの時刻tにおけるターンが終了する。
By performing the same moving process for the enemy characters B and C (S205), the turn of the crowd object G at time t is completed.

【0106】そして、オブジェクトリストに別の群集オ
ブジェクトが登録されている場合には、その群集オブジ
ェクトに対しても同様のターンを行わせる(S20
6)。
If another crowd object is registered in the object list, the same turn is performed for that crowd object (S20).
6).

【0107】時刻tのターン終了後、時刻t+Δtにお
ける群集オブジェクトGのターンで、群集オブジェクト
Gは、群集を構成する敵キャラクタA、敵キャラクタ
B、敵キャラクタCの時刻t+Δtにおける存在位置と
から、自己の存在位置を求める。そして、配置情報と目
的方向を上述のように定め、群衆を構成する敵キャラク
タに通知する。このような処理を繰り返すことにより、
群集としてプレイヤキャラクタを追いかける様子を、エ
ンタテインメント装置上で表現することができる。
After the end of the turn at time t, at the turn of the crowd object G at time t + Δt, the crowd object G determines the position of the enemy character A, enemy character B, and enemy character C constituting the crowd at the time t + Δt. Find the location of. Then, the arrangement information and the target direction are determined as described above, and the enemy characters constituting the crowd are notified. By repeating such processing,
The state of chasing the player character as a crowd can be expressed on the entertainment device.

【0108】図14は、時刻tから時刻t+Δtで、敵
キャラクタA、敵キャラクタB、敵キャラクタCが群集
として移動する様子を表した図である。本図において実
線の円A、円B、円Cは時刻tにおける敵キャラクタの
位置を表し、点線の円A、円B、円Cは時刻t+Δtに
おける敵キャラクタの位置を表している。本図に示すよ
うに、敵キャラクタが群集を構成しながら目的方向の移
動している様子が表現できている。
FIG. 14 is a diagram showing how the enemy character A, the enemy character B, and the enemy character C move as a crowd from time t to time t + Δt. In this figure, solid-line circles A, B, and C represent the position of the enemy character at time t, and dotted-line circles A, B, and C represent the position of the enemy character at time t + Δt. As shown in the figure, it is possible to express a state in which the enemy character moves in the target direction while forming a crowd.

【0109】以上の例は、簡単のため、存在位置
(x1,y1)を(0,0)として、目的方向をθ=90
°としたが、この関係は、現在位置を原点とし、目的方
向にY軸を一致させた仮想的な座標軸を設定し、座標変
換を施すことで一般化できる。
In the above example, for simplicity, the existence position (x 1 , y 1 ) is set to (0, 0), and the target direction is set to θ = 90.
However, this relationship can be generalized by setting a virtual coordinate axis in which the current position is set as the origin, the Y axis is made coincident with the destination direction, and performing coordinate transformation.

【0110】なお、上記の敵キャラクタの移動処理は一
例であり、本発明の移動処理は本例に限られない。例え
ば、配置情報の座標が、目的方向を基準として前方であ
ると判断したときは、図15(a)に示すように、目的
方向と配置情報の座標方向とを合成した方向に移動させ
るようにしてもよい。また、配置情報の座標が、目的方
向を基準として後方であると判断したときでも、図15
(b)に示すように、目的方向に対して前進させるよう
にしてもよい。このようにすることで、よりプレイヤキ
ャラクタを追いかける様子を表現することができる。
The above enemy character movement processing is an example, and the movement processing of the present invention is not limited to this example. For example, when it is determined that the coordinates of the placement information are ahead with respect to the destination direction, as shown in FIG. 15A, the coordinates are moved in a direction in which the destination direction and the coordinate directions of the placement information are combined. You may. Further, even when it is determined that the coordinates of the arrangement information are backward with respect to the destination direction, FIG.
As shown in (b), it may be advanced in the target direction. By doing so, it is possible to more express the state of chasing the player character.

【0111】次に、群集の状態変化について説明する。
群集は個体から形成されるが、ある群集を構成する個体
は動的に変化する。
Next, a change in the state of the crowd will be described.
A crowd is formed from individuals, but the individuals that make up a certain crowd change dynamically.

【0112】まず、個体で行動している敵キャラクタ
が、群集に吸収される場合について説明する。個体で行
動している敵キャラクタは、ターン中に自身の存在位置
を中心とした半径bの円内に、群集オブジェクトを検知
すると、群集に吸収される。
First, a case where an enemy character acting as an individual is absorbed in a crowd will be described. When an enemy character acting as an individual detects a crowd object within a circle having a radius b centered on its own position during a turn, the enemy character is absorbed by the crowd.

【0113】具体的には、オブジェクト制御部203
が、オブジェクトリストから、その敵キャラクタのID
を削除するとともに、群集オブジェクトが管理する敵キ
ャラクタの数272に1を加え、その敵キャラクタのI
Dと、存在位置に関する情報を追加する。そして、敵キ
ャラクタのモードを群集モードに変更する。この処理に
より、個体で行動していた敵キャラクタが、群集に吸収
されることになる。
Specifically, the object control unit 203
Is the ID of the enemy character from the object list
Is deleted, and 1 is added to the number 272 of enemy characters managed by the crowd object.
D and information on the location are added. Then, the mode of the enemy character is changed to the crowd mode. By this processing, the enemy character acting as an individual is absorbed by the crowd.

【0114】次に、群集を構成してい敵キャラクタが、
群集から分離する場合について説明する。群集として行
動している敵キャラクタは、子ターン中に自身の存在位
置と群集の位置との距離がb以上になると、群集から分
離して、固体として行動するようになる。
Next, the enemy characters constituting the crowd are
The case of separating from the crowd will be described. An enemy character acting as a crowd separates from the crowd and behaves as a solid when the distance between its own position and the position of the crowd during the child turn becomes b or more.

【0115】具体的には、オブジェクト制御部203
が、オブジェクトリストに、その敵キャラクタのIDを
追加するとともに、群集オブジェクトが管理する敵キャ
ラクタの数272から1を引き、その敵キャラクタのI
Dと、存在位置に関する情報を削除する。そして、敵キ
ャラクタのモードを個体モードに変更する。この処理に
より、群集として行動していた敵キャラクタが、群集か
ら分離することになる。
More specifically, the object control unit 203
Adds the ID of the enemy character to the object list, subtracts 1 from the number 272 of enemy characters managed by the crowd object,
D and information on the location are deleted. Then, the mode of the enemy character is changed to the individual mode. By this processing, the enemy character acting as a crowd is separated from the crowd.

【0116】なお、吸収と分離の基準となる距離bの大
きさは、例えば、仮想世界310の座標においてある値
に固定させてもよいし、群集の大きさに応じて変化させ
るようにしてもよい。このようにすることで、群集が大
きければ、敵キャラクタを吸収しやすくしたり、群集が
小さければ、敵キャラクタが分離しやすくすることがで
きる。
The size of the distance b serving as a reference for absorption and separation may be fixed to a certain value in the coordinates of the virtual world 310, for example, or may be changed according to the size of the crowd. Good. In this way, if the crowd is large, the enemy character can be easily absorbed, and if the crowd is small, the enemy character can be easily separated.

【0117】また、プレイヤキャラクタを追いかける群
集について、一定の条件下で複数の群集に分散してプレ
イヤキャラクタを追いかけるようにしてもよい。このと
きの処理について説明する。
Further, the crowd chasing the player character may be distributed to a plurality of crowds under certain conditions to chase the player character. The processing at this time will be described.

【0118】上述のように、群集オブジェクトの目的方
向は、プレイヤキャラクタの存在している方向であるか
ら、通常は、群集としてはプレイヤキャラクタに向って
まっすぐ追いかけることとなる。
As described above, since the target direction of the crowd object is the direction in which the player character exists, the crowd normally follows the player character straight.

【0119】しかし、前述のように、仮想世界310の
ブロック属性に、例えば池のように敵キャラクタが通る
ことのできない属性を設定した場合は、このブロックを
避けなければならないため、プレイヤキャラクタを追い
かけるルートが複数存在することがある。
However, as described above, if an attribute that an enemy character cannot pass through, such as a pond, is set in the block attribute of the virtual world 310, this block must be avoided, so that the player character follows the player character. There may be multiple routes.

【0120】図18は、このときの様子の一例を説明す
る図である。本図において、群集オブジェクト401
が、プレイヤキャラクタ402を追いかけている。斜線
で示した4つのブロックからなるエリア410は、敵キ
ャラクタが通ることのできない属性を有している。通
常、群集オブジェクト401の目的方向は破線411で
示すように、プレイヤキャラクタ402の存在する方向
を向くが、本図の場合、エリア410は通ることができ
ないため、ルート412とルート413の2通りのルー
トが候補として挙げられる。
FIG. 18 is a diagram for explaining an example of this situation. In this figure, a crowd object 401
Is chasing the player character 402. An area 410 consisting of four hatched blocks has an attribute that an enemy character cannot pass through. Normally, the target direction of the crowd object 401 is oriented in the direction in which the player character 402 exists, as shown by a broken line 411, but in this case, since the area 410 cannot pass through, the two directions of the route 412 and the route 413 are shown. A route is a candidate.

【0121】オブジェクト制御部203は、このような
場合に群集Gを分割させる処理を行う。すなわち本例の
場合では、群集401を、ルート412を通る第1の群
衆と、ルート413を通る第2の群集とに分割する。も
ちろん3つ以上のルートが候補として挙げられる場合
は、3つ以上の群集に分割させることができる。
In such a case, the object control unit 203 performs a process of dividing the crowd G. That is, in the case of this example, the crowd 401 is divided into a first crowd passing the route 412 and a second crowd passing the route 413. Of course, when three or more routes are listed as candidates, the route can be divided into three or more crowds.

【0122】ここで、候補ルートの検索は、例えば、障
害物を避けるのに可能な手段、本図の例では、池410
の上側を通る手段と、池410の下側を通る手段のそれ
ぞれについての最短ルートを候補ルートと決定すること
ができる。
Here, the search for the candidate route is performed by, for example, a means capable of avoiding an obstacle. In the example of FIG.
The shortest route for each of the means that passes above the pool and the means that passes below the pond 410 can be determined as candidate routes.

【0123】分割に際して、群集を構成する敵キャラク
タの分配方法については、種々の方法を取ることができ
る。例えば、群集オブジェクトを構成する敵キャラクタ
の数を等分して、それぞれ新たな群集を構成させるこ
と、あるいは、それぞれのルートのプレイヤキャラクタ
までの距離の比、または、距離に反比例するような数に
分配して、それぞれ新たな群集を構成させることができ
る。
At the time of division, various methods can be used for distributing the enemy characters constituting the crowd. For example, divide the number of enemy characters that make up the crowd object into equal parts to form new crowds, or create ratios that are inversely proportional to the ratio of the distance to the player character on each route or the distance. Each can be distributed to form a new crowd.

【0124】オブジェクト制御部203は、分割処理に
おいて、分割前の群集オブジェクトをオブジェクトリス
トから削除し、分割した群集オブジェクトをオブジェク
トリストに追加し、群集を構成する敵キャラクタについ
ての情報を付加する。
In the dividing process, the object control unit 203 deletes the crowd object before the division from the object list, adds the divided crowd object to the object list, and adds information about the enemy characters constituting the crowd.

【0125】このとき、分割された群集に係る敵キャラ
クタは、一定時間の間は、新たに群集を形成する行動を
とらないようにさせる必要がある。そうしなければ、分
割直後に、再び群集が合流してしまう可能性があるから
である。
At this time, it is necessary to prevent the enemy character relating to the divided crowd from taking an action of forming a new crowd for a certain period of time. Otherwise, the crowd may join again immediately after the division.

【0126】また、例えば、ルート412を通った場合
と、ルート413を通った場合とで、プレイヤキャラク
タまでの移動距離の差が大きい場合、例えば、一方のル
ートが、他方のルートの1.5倍以上の距離があるよう
な場合には、群集を分割しないようにしてもよい。
Further, for example, when the difference in the moving distance to the player character between the case where the route 412 is passed and the case where the route 413 is passed is large, for example, one route is 1.5 times smaller than the other route. If the distance is twice or more, the crowd may not be divided.

【0127】エンタテインメント装置10の外観および
ハードウェア構成は図16、図17に示したものに限定
されない。エンタテインメント装置10は、例えば、C
PUとメモリとハードディスク装置などの外部記憶装置
と、CD/DVD−ROM等の可搬性を有する記憶媒体
からデータを読み取る読取装置と、キーボード、マウス
等の入力装置と、ディスプレイ等の表示装置と、インタ
ーネット等のネットワークを介して通信を行うためのデ
ータ通信装置と、上述した各装置間のデータ送受信をつ
かさどるインタフェースといった、一般的な情報処理装
置の構成を有するものであってもよい。この場合、エン
タテインメント装置10上に、図1に示すソフトウェア
構成を構築するためのプログラム、データは、読取装置
を介して、可搬性を有する記憶媒体から読み出され、メ
モリ、外部記憶装置に記憶されるようにしてもよいし、
あるいは、データ通信装置を介して、ネットワークから
ダウンロードされ、メモリ、外部記憶装置に記憶される
ようにしてもよい。
The appearance and the hardware configuration of the entertainment apparatus 10 are not limited to those shown in FIGS. The entertainment device 10 is, for example, C
An external storage device such as a PU, a memory, and a hard disk device, a reading device that reads data from a portable storage medium such as a CD / DVD-ROM, an input device such as a keyboard and a mouse, and a display device such as a display; The information processing device may have a general information processing device configuration such as a data communication device for performing communication via a network such as the Internet, and an interface for transmitting and receiving data between the devices described above. In this case, a program and data for constructing the software configuration shown in FIG. 1 on the entertainment device 10 are read from a portable storage medium via a reading device, and stored in a memory or an external storage device. Or you can
Alternatively, the program may be downloaded from a network via a data communication device and stored in a memory or an external storage device.

【0128】なお、本発明の表現技術は、前述した例に
限られず、多くの集合体の運動表現に適用することがで
きる。例えば、魚群、鳥群、昆虫等の群れの運動画像表
現にも適用できる。
Note that the expression technique of the present invention is not limited to the above-described example, and can be applied to the motion expression of many aggregates. For example, the present invention can be applied to a motion image representation of a school of fish, birds, insects and the like.

【0129】[0129]

【発明の効果】上述のように、本発明によれば、個体が
群集となって移動を行う場合の各個体の振る舞いと、群
集としての自然な移動の様子を、情報処理装置において
表現することができる。
As described above, according to the present invention, the behavior of each individual when the individual moves as a crowd and the state of the natural movement as the crowd are expressed in the information processing apparatus. Can be.

【図面の簡単な説明】[Brief description of the drawings]

【図1】エンタテインメント装置上に構築される追跡ゲ
ームを実現するためのソフトウェア構成を示したブロッ
ク図である。
FIG. 1 is a block diagram showing a software configuration for implementing a tracking game built on an entertainment device.

【図2】仮想世界を説明する図である。FIG. 2 is a diagram illustrating a virtual world.

【図3】仮想世界のブロックのデータ構造を説明する図
である。
FIG. 3 is a diagram illustrating a data structure of a block in a virtual world.

【図4】オブジェクトリストの例を説明する図である。FIG. 4 is a diagram illustrating an example of an object list.

【図5】敵キャラクタオブジェクトが管理するデータ構
造の一例を模式的に説明するための図である。
FIG. 5 is a diagram schematically illustrating an example of a data structure managed by an enemy character object.

【図6】敵キャラクタの移動の様子を説明する図であ
る。
FIG. 6 is a diagram illustrating a state of movement of an enemy character.

【図7】敵キャラクタが個体モードとして行動するとき
の1ターンにおける処理を説明するフローチャートであ
る。
FIG. 7 is a flowchart illustrating a process in one turn when an enemy character acts in an individual mode.

【図8】敵キャラクタが群集を構成するときの処理につ
いて説明するイメージ図である。
FIG. 8 is an image diagram illustrating a process when an enemy character forms a crowd.

【図9】群集オブジェクトが管理する情報を模式的に説
明する図である。
FIG. 9 is a diagram schematically illustrating information managed by a crowd object.

【図10】群集オブジェクトが1ターンで行う処理につ
いて説明するフローチャートである。
FIG. 10 is a flowchart illustrating a process performed by the crowd object in one turn.

【図11】群集オブジェクトが敵キャラクタの配置情報
を作成する処理について説明する図である。
FIG. 11 is a diagram illustrating a process in which a crowd object creates enemy character arrangement information.

【図12】群集オブジェクトの目的方向について説明す
る図である。
FIG. 12 is a diagram illustrating a target direction of a crowd object.

【図13】敵キャラクタの子ターンにおける移動処理の
一例について説明する図である。
FIG. 13 is a diagram illustrating an example of a movement process in a child turn of an enemy character.

【図14】時刻tから時刻t+Δtで、敵キャラクタ
A、敵キャラクタB、敵キャラクタCが群集として移動
する様子を表した図である。
FIG. 14 is a diagram illustrating a state in which an enemy character A, an enemy character B, and an enemy character C move as a crowd from time t to time t + Δt.

【図15】敵キャラクタの子ターンにおける移動処理の
別例について説明する図である。
FIG. 15 is a diagram illustrating another example of the movement process in the child turn of the enemy character.

【図16】エンタテインメント装置のハードウェア構成
を示すブロック図である。
FIG. 16 is a block diagram illustrating a hardware configuration of the entertainment device.

【図17】エンタテインメント装置の使用状態を説明す
る図である。
FIG. 17 is a diagram illustrating a use state of the entertainment device.

【図18】群集が分割する処理について説明する図であ
る。
FIG. 18 is a diagram illustrating processing for dividing a crowd.

【符号の説明】[Explanation of symbols]

201…操作内容受付部、202…プレイヤキャラクタ
位置算出部、203…オブジェクト制御部、204…画
像生成部、205…仮想世界DB、206…表示制御部
201: operation content receiving unit, 202: player character position calculation unit, 203: object control unit, 204: image generation unit, 205: virtual world DB, 206: display control unit

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】情報処理装置において、複数の個体からな
る群集の移動を表現する方法であって、 ある時点tにおける群集を構成する個体の数と、各個体
の位置とを取得し、あらかじめ定められた配置規則にし
たがって、次の時点t+1における各個体の群集内にお
ける位置を割り当てる段階と、 ある時点tにおける群集を構成する個体の位置により定
められる群衆の基準点について、目的方向を定める段階
と、 各個体について、上記配置処理により割り当てられた位
置と上記目的方向に応じて次の時点t+1における位置
を決定する段階と、を有することを特徴とする群集の移
動を表現する方法。
1. A method for expressing the movement of a crowd composed of a plurality of individuals in an information processing apparatus, comprising: acquiring a number of individuals constituting a crowd at a certain time t and a position of each individual; Assigning a position within the crowd of each individual at the next time point t + 1 in accordance with the arranged arrangement rule; and determining a destination direction with respect to a reference point of the crowd determined by the positions of the individuals constituting the crowd at a certain time point t. Determining a position at the next time point t + 1 in accordance with the position assigned by the arrangement processing and the destination direction for each individual, wherein the method comprises the steps of:
【請求項2】ある時点tにおける群集を構成する個体の
数と、各個体の位置とを取得し、あらかじめ定められた
配置規則にしたがって、次の時点t+1における各個体
の群集内における位置を割り当てる配置処理と、 ある時点tにおける群集を構成する個体の位置により定
められる群衆の基準点について、目的方向を定める処理
と、 各個体について、上記配置処理により割り当てられた位
置と上記目的方向に応じて次の時点t+1における位置
を決定する処理とを情報処理装置に実行させるためのプ
ログラム。
2. Obtaining the number of individuals constituting the crowd and the position of each individual at a certain time point t, and allocating the position of each individual within the crowd at the next time point t + 1 according to a predetermined arrangement rule. An arrangement process; a process of determining a target direction for a reference point of a crowd determined by the position of an individual constituting a crowd at a certain time point t; A program for causing an information processing apparatus to execute a process of determining a position at the next time point t + 1.
【請求項3】ある時点tにおける群集を構成する個体の
数と、各個体の位置とを取得し、あらかじめ定められた
配置規則にしたがって、次の時点t+1における各個体
の群集内における位置を割り当てる配置手段と、 ある時点tにおける群集を構成する個体の位置により定
められる群衆の基準点について、目的方向を定める手段
と、 各個体について、上記配置処理により割り当てられた位
置と上記目的方向に応じて次の時点t+1における位置
を決定する手段とを有することを特徴とする情報処理装
置。
3. The number of individuals constituting the crowd at a certain time point t and the position of each individual are obtained, and the position of each individual in the crowd at the next time point t + 1 is allocated according to a predetermined arrangement rule. Arranging means, means for determining a destination direction for a reference point of the crowd determined by the position of the individual constituting the crowd at a certain point in time t, Means for determining a position at the next time point t + 1.
【請求項4】仮想世界中を移動する複数のキャラクタの
動画像を、表示装置に表示するためのプログラムであっ
て、 それぞれのキャラクタが、個体として行動するか、群集
として行動するかを決定するモード決定処理と、 群集として行動すると決定した場合には、その群集を構
成するキャラクタ群を特定して、そのキャラクタ群に対
して移動に関する移動情報を与える仮想オブジェクトを
生成する仮想オブジェクト生成処理と、 前記移動情報に基づいて、キャラクタ群を移動させる群
集移動処理とを、情報処理装置に実行させることを特徴
とするプログラム。
4. A program for displaying, on a display device, moving images of a plurality of characters moving in a virtual world, and determines whether each character acts as an individual or as a crowd. A mode determination process; and a virtual object generation process for specifying a character group that constitutes the crowd when it is determined to act as a crowd, and generating a virtual object that gives movement information regarding movement to the character group; A program for causing an information processing apparatus to execute a crowd moving process of moving a character group based on the movement information.
【請求項5】請求項4記載のプログラムであって、 前記移動情報は、仮想世界中におけるキャラクタの割り
当て位置と、仮想オブジェクトの目的方向とに関する情
報を含むことを特徴とするプログラム。
5. The program according to claim 4, wherein the movement information includes information on a character allocation position in a virtual world and a destination direction of the virtual object.
【請求項6】請求項5記載のプログラムであって、 操作装置を介して受付けた操作者の操作内容にしたがい
仮想世界中を移動する操作者キャラクタの動画像を表示
装置の表示画面上に表示する操作者キャラクタ表示処理
を情報処理装置にさらに実行させ、 前記仮想オブジェクトの目的方向は、仮想世界中の前記
操作者キャラクタを追いかける方向であることを特徴と
するプログラム。
6. The program according to claim 5, wherein a moving image of an operator character moving in a virtual world is displayed on a display screen of the display device according to the operation content of the operator received via the operation device. A program for causing the information processing apparatus to further execute an operator character display process, wherein a target direction of the virtual object is a direction of following the operator character in a virtual world.
【請求項7】請求項4、5または6に記載のプログラム
であって、 前記モード決定処理により、あるキャラクタに対して個
体として行動すると決定した場合には、仮想世界中にお
いて、そのキャラクタを移動させるキャラクタ移動処理
と、 そのキャラクタの仮想世界中における位置に応じた、あ
らかじめ定められた範囲の領域内に、他のキャラクタが
存在しているかどうかを判断するキャラクタサーチ処理
と、 他のキャラクタが存在していると判断した場合には、当
該他のキャラクタと群集を形成する行動を行わせる群集
形成処理とを情報処理装置にさらに実行させることを特
徴とするプログラム。
7. The program according to claim 4, 5 or 6, wherein when it is determined by the mode determination processing that the character acts as an individual, the character is moved in a virtual world. Character movement processing, character search processing to determine whether or not another character exists within a predetermined range of regions according to the position of the character in the virtual world, and the presence of another character A program that causes the information processing apparatus to further execute a crowd formation process for performing an action of forming a crowd with the other characters when it is determined that the character is performing.
【請求項8】請求項5または6に記載のプログラムであ
って、 前記仮想世界中におけるキャラクタの割り当て位置は、
群集を形成するキャラクタ群の仮想世界中における位置
に基づいて定められる基準点を中心とした一の円上また
は複数の同心円上の位置であって、同一円上のキャラク
タ同士が等間隔になるような位置であることを特徴とす
るプログラム。
8. The program according to claim 5, wherein the assignment positions of the characters in the virtual world are:
Positions on a circle or a plurality of concentric circles centered on a reference point determined based on the position of the character group forming the crowd in the virtual world, so that the characters on the same circle are at equal intervals A program characterized by a unique position.
【請求項9】請求項2、4〜8のいずれか一項に記載の
プログラムを記録した情報処理装置読み取り可能な記録
媒体。
9. A recording medium readable by an information processing apparatus which records the program according to any one of claims 2, 4 to 8.
JP2001182693A 2000-06-16 2001-06-18 Method for expressing movement of crowd, storage medium, and information processing apparatus Expired - Fee Related JP3581673B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001182693A JP3581673B2 (en) 2000-06-16 2001-06-18 Method for expressing movement of crowd, storage medium, and information processing apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000181045 2000-06-16
JP2000-181045 2000-06-16
JP2001182693A JP3581673B2 (en) 2000-06-16 2001-06-18 Method for expressing movement of crowd, storage medium, and information processing apparatus

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2004035114A Division JP2004167273A (en) 2000-06-16 2004-02-12 Method for expressing movement of crowd of people, storage medium, and information processing apparatus

Publications (2)

Publication Number Publication Date
JP2002074396A true JP2002074396A (en) 2002-03-15
JP3581673B2 JP3581673B2 (en) 2004-10-27

Family

ID=26594069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001182693A Expired - Fee Related JP3581673B2 (en) 2000-06-16 2001-06-18 Method for expressing movement of crowd, storage medium, and information processing apparatus

Country Status (1)

Country Link
JP (1) JP3581673B2 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006109487A1 (en) * 2005-03-30 2006-10-19 Konami Digital Entertainment Co., Ltd. Character control device, character control method, recording medium, and program
JP2006314535A (en) * 2005-05-12 2006-11-24 Nintendo Co Ltd Game program and game device
JP2007207005A (en) * 2006-02-02 2007-08-16 Namco Bandai Games Inc Program, information storage medium, and image generating system
KR100885996B1 (en) * 2006-12-02 2009-03-03 한국전자통신연구원 Method and apparatus for capturing and editing motion of large crowd
KR100895199B1 (en) 2007-11-07 2009-04-24 에스케이 텔레콤주식회사 System and method for setting a character's moving path in virtual space world
JP2010277121A (en) * 2009-05-26 2010-12-09 Konami Digital Entertainment Co Ltd Image processing apparatus, image processing method, and program
WO2010143766A1 (en) * 2009-06-11 2010-12-16 서울대학교 산학협력단 System and method for motion editing multiple synchronized characters
JP2011131092A (en) * 2011-04-04 2011-07-07 Nintendo Co Ltd Game program and game device
CN110298908A (en) * 2019-05-16 2019-10-01 浙江万里学院 A kind of position method of sampling being easy to group's evolution

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006109487A1 (en) * 2005-03-30 2006-10-19 Konami Digital Entertainment Co., Ltd. Character control device, character control method, recording medium, and program
KR100915077B1 (en) * 2005-03-30 2009-09-02 가부시키가이샤 코나미 데지타루 엔타테인멘토 Character control device, character control method, and medium for recording the program
US8182341B2 (en) 2005-03-30 2012-05-22 Konami Digital Entertainment Co., Ltd. Character control device, character control method, recording medium, and program
JP2006314535A (en) * 2005-05-12 2006-11-24 Nintendo Co Ltd Game program and game device
JP2007207005A (en) * 2006-02-02 2007-08-16 Namco Bandai Games Inc Program, information storage medium, and image generating system
KR100885996B1 (en) * 2006-12-02 2009-03-03 한국전자통신연구원 Method and apparatus for capturing and editing motion of large crowd
KR100895199B1 (en) 2007-11-07 2009-04-24 에스케이 텔레콤주식회사 System and method for setting a character's moving path in virtual space world
JP2010277121A (en) * 2009-05-26 2010-12-09 Konami Digital Entertainment Co Ltd Image processing apparatus, image processing method, and program
WO2010143766A1 (en) * 2009-06-11 2010-12-16 서울대학교 산학협력단 System and method for motion editing multiple synchronized characters
KR101053395B1 (en) 2009-06-11 2011-08-01 서울대학교산학협력단 Motion Editing System and Method of Multiple Characters Synchronized
JP2011131092A (en) * 2011-04-04 2011-07-07 Nintendo Co Ltd Game program and game device
CN110298908A (en) * 2019-05-16 2019-10-01 浙江万里学院 A kind of position method of sampling being easy to group's evolution

Also Published As

Publication number Publication date
JP3581673B2 (en) 2004-10-27

Similar Documents

Publication Publication Date Title
JP5887458B1 (en) A game system for searching for a route of a non-player character based on a player's movement history
EP1164541A2 (en) Method of expressing crowd movement in game, storage medium, and information processing apparatus
US8203561B2 (en) Determining valued excursion corridors in virtual worlds
JP6281495B2 (en) Information processing apparatus, terminal apparatus, information processing method, and program
JP5076132B1 (en) Drawing control apparatus, control method therefor, program, recording medium, drawing server, and drawing system
KR101167058B1 (en) Apparatuse, method and computer-readable medium for use in creating an audio scene
JP5036797B2 (en) Pronunciation processing apparatus, pronunciation processing method, and pronunciation processing program
US7536655B2 (en) Three-dimensional-model processing apparatus, three-dimensional-model processing method, and computer program
JPWO2014119098A1 (en) Information processing apparatus, terminal apparatus, information processing method, and program
KR101932007B1 (en) Method and system for spatial messaging and content sharing
JP2018028789A (en) Server, information transmission method, and program thereof
JP2007172702A (en) Method and apparatus for selecting content
TW202130396A (en) Region division with cell merging using spanning tree
JP3581673B2 (en) Method for expressing movement of crowd, storage medium, and information processing apparatus
US20140089862A1 (en) Destination routing in a virtual world
JP2004167273A (en) Method for expressing movement of crowd of people, storage medium, and information processing apparatus
JP7368770B1 (en) Information processing system, information processing device and program
WO2024066723A1 (en) Location updating method for virtual scene, and device, medium and program product
WO2015158697A1 (en) Device, game and methods therefore
JP2005342360A (en) Group character movement control method, recording medium, simulation device and game device
US20150290535A1 (en) Device, game and methods therefor
JP7089005B2 (en) Video game processing program and video game processing system
KR102599862B1 (en) Cloud vr device for multiplayer interlaction based on beacon
KR100546865B1 (en) The method and system for rendering surface slope using a slope vector
JP2024007711A (en) Virtual space creation program, and virtual space creation device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040413

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040614

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: 20040713

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040723

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080730

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080730

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090730

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090730

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100730

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110730

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110730

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120730

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120730

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 9

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

LAPS Cancellation because of no payment of annual fees