JP4019240B2 - Image processing method, recording medium, and image processing apparatus - Google Patents

Image processing method, recording medium, and image processing apparatus Download PDF

Info

Publication number
JP4019240B2
JP4019240B2 JP12742299A JP12742299A JP4019240B2 JP 4019240 B2 JP4019240 B2 JP 4019240B2 JP 12742299 A JP12742299 A JP 12742299A JP 12742299 A JP12742299 A JP 12742299A JP 4019240 B2 JP4019240 B2 JP 4019240B2
Authority
JP
Japan
Prior art keywords
virtual viewpoint
game
virtual
image processing
moving speed
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.)
Expired - Fee Related
Application number
JP12742299A
Other languages
Japanese (ja)
Other versions
JP2000322591A (en
JP2000322591A5 (en
Inventor
良直 臼杵
康裕 林田
大志 安田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sega Corp
Original Assignee
Sega Corp
Sega Games 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 Sega Corp, Sega Games Co Ltd filed Critical Sega Corp
Priority to JP12742299A priority Critical patent/JP4019240B2/en
Priority to KR1020000018222A priority patent/KR100681278B1/en
Publication of JP2000322591A publication Critical patent/JP2000322591A/en
Publication of JP2000322591A5 publication Critical patent/JP2000322591A5/ja
Application granted granted Critical
Publication of JP4019240B2 publication Critical patent/JP4019240B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • A63F13/28Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
    • A63F13/285Generating tactile feedback signals via the game input device, e.g. force feedback
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2250/00Miscellaneous game characteristics
    • A63F2250/10Miscellaneous game characteristics with measuring devices
    • A63F2250/1036Miscellaneous game characteristics with measuring devices for distances
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2250/00Miscellaneous game characteristics
    • A63F2250/10Miscellaneous game characteristics with measuring devices
    • A63F2250/1094Miscellaneous game characteristics with measuring devices for velocity
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1062Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to a type of game, e.g. steering wheel
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6661Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6661Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera
    • A63F2300/6684Methods for processing data by generating or executing the game program for rendering three dimensional images for changing the position of the virtual camera by dynamically adapting its position to keep a game object in its viewing frustrum, e.g. for tracking a character or a ball
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8094Unusual game types, e.g. virtual cooking

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は仮想三次元空間内に設定された仮想視点の制御技術に係わり、特に、仮想三次元空間内の状況に応じて仮想視点の移動速度を制御する技術に関わる。また、本発明は業務用ゲーム装置に好適なゲームコントローラに係わり、特に、消防ホース型の外観を成したコントローラに関わる。
【0002】
【従来の技術】
家庭用或いはアミューズメント用のゲームとして、例えば、シューティングゲームが知られている。シューティングゲームとは、遊戯者(プレイヤ)が攻撃目標となる敵キャラクタ(エネミキャラクタ)にカーソルを当て、コントロールパッドのボタン操作等で弾丸を撃ち、エネミキャラクタを攻撃することで得点を競うゲームである。通常のシューティングゲームにおいては、エネミキャラクタは画面内を前後左右に動き回り、プレイヤキャラクタに対して攻撃をしかけてくる。また、一旦画面から消えたエネミキャラクタは再び画面に登場して攻撃をしかけてくる。プレイヤはコントロールパッドの操作によりプレイヤキャラクタを自由に操り、仮想三次元空間内でエネミキャラクタとの攻防を繰り広げる。
【0003】
従来のシューティングゲームにおいては、プレイヤの視点を代表する仮想視点の移動経路、及び、ゲーム場面毎に登場するエネミキャラクタの位置、数、行動パターン、ゲームストーリ等は予めゲームプログラムで設定されていたため、例えば、ゲーム中に特定のイベントが生じる等して次のゲームステージに強制的に移行する場合は、画面内のエネミキャラクタを全て倒さなくても次ステージに移行することが可能となる。また、エネミキャラクタはプレイヤによる攻撃で破壊されなくとも、ゲームプログラムの都合上(例えば、仮想視点の強制移動や、次ステージへの移行等)、画面から消去させることができる。
【0004】
【発明が解決しようとする課題】
このような背景の下、本発明者はシューティングゲームにヒントを得て“消防ゲーム”なるものを思案した。この消防ゲームとは、プレイヤが消防士に似せたプレイヤキャラクタを操り、火事になった建物の中を移動しながら炎を消火していくゲームである。この場合、プレイヤキャラクタの保持する“消防ホース”がシューティングゲームにおける“銃”に相当し、“炎”が“エネミキャラクタ”に相当する。従って、本消防ゲームは、シューティングゲームと類似する点があるため、シューティングゲームのアルゴリズムを利用することができる。
【0005】
しかし、本消防ゲームにおける仮想視点制御(カメラ制御)について、従来のシューティングゲームにおける仮想視点制御をそのまま利用することはできない。なぜならば、本消防ゲームにおける攻撃目標は“炎”であるから、時間の経過とともに次第に延焼はするが、シューティングゲームにおけるエネミキャラクタのように俊敏に動き回るものではない。従って、ゲーム場面に表示される炎は消火されない限りいつまでも延焼を続けることになる。通常、シューティングゲームの仮想視点制御においては、予め定められたパス(移動経路)上を予め定められた移動速度の下で仮想視点が移動するため、エネミキャラクタの数や位置等を考慮して仮想視点を制御することは配慮されてなかった。従って、かかる視点制御を本消防ゲームにおける仮想視点制御に応用すると、例えば、画面に表示された炎を全て消火しなければ次ステージに進むことができない等の不都合が生じる。このような状態になると、初心者の場合、いつまでも同じゲーム画面のままになり、ゲームの進行が非常に遅くなる。プレイヤにとっては精神的にストレスを受けることになり、さらには、ゲームへの興味感、臨場感等が失われてしまう結果になる。一方、ゲームプログラムの作成者側にとっては、ゲーム場面に登場する“炎”の中には、消火しなければ次ステージに移行できないような“炎”を設定したいとする要求もあるため、目前に大きな“炎”があるにも拘わらず不用意にカメラ移動をするのは不自然である。
【0006】
本発明はこのような問題点に鑑み、ゲーム場面に応じて適切なカメラ移動を実現する仮想視点制御装置を提供することを第1の課題とする。
【0007】
また、ビデオゲーム用ソフトの多様化に伴い、これに接続されるコントローラも、従来の指示ボタンや十字キーを備えた通常のコントローラから、ジョイスティック型コントローラや銃型コントローラ等、使用されるゲームソフトに対応して種々のものが市販されている。例えば、特許公報第2686675号には、ガンゲーム用として拳銃をモデル化した銃型コントローラが開示されている。
【0008】
しかしながら、上記消防ゲームにおいては、かかるゲームに好適なコントローラ、特に、消防ホース型の形状を成したコントローラは未だ提案されていない。
【0009】
そこで、本発明は、消防ゲームに好適なコントローラを提供することを第2の課題とする。
【0010】
また、従来のシューティングゲームにおいては、プレイヤ1が遊戯中においてもプレイヤ2が新たに参戦することができた。この場合、プレイヤ1、プレイヤ2に対して独立にゲームが進行するため、例えば、プレイヤ1のみが所定の許容量を超えるダメージを受けた場合にプレイヤ1のみがゲームオーバーになり、プレイヤ2は依然としてゲームを進行することができる。しかし、上記消防ゲームにおいては、“炎”がプレイヤキャラクタに対して攻撃をしかけてくるわけではないので、プレイヤ1とプレイヤ2が同時にゲームを進行させた場合、プレイヤ1のみがゲームオーバーになるとうことは不自然である。
【0011】
そこで、本発明は、複数のプレイヤがゲームを実行する場合において、ゲーム終了の時期を各プレイヤに対して同一になるように構成したゲーム装置を提供することを第3の課題とする。
【0012】
【課題を解決するための手段】
上記第1の課題を解決する本発明の仮想視点制御装置は、仮想視点の視野領域内に位置する特定のオブジェクトと仮想視点間の距離に応じて仮想視点の移動速度を制御する仮想視点移動速度制御手段を備える。
【0013】
ここで、仮想視点とは、仮想三次元空間内に仮想的に設定された視点をいい、いわゆる仮想カメラから見た視点と同義である。仮想カメラとは、コンピュータグラフィックスを描くときの視点や画角をカメラに例えたものを言う。現実のカメラでは光学的中心点である主点(principle point)が仮想視点に相当する。この仮想カメラのセッティングは、位置、光軸方向(レンズの向き)、画角(ズーム〜ワイド)、ツイスト(光軸回りの回転角)等を指定することで行なう。仮想カメラは、ディスプレイに表示する画像の視野方向を決定する仮想的な視野方向決定手段として理解される。オブジェクト固有の座標系であるボディ座標系から3次元空間内のオブジェクトの配置を定義するワールド座標系にモデリング変換されたオブジェクトが、この仮想カメラ(の位置及び角度等)によって定まる視野座標系に視野変換されて画面に表示される。
【0014】
また、特定のオブジェクトとは、仮想三次元空間内に配置されている様々なオブジェクトの中から仮想視点の移動速度制御に影響を与えるオブジェクトとして予め定められたものをいう。例えば、上記消防ゲームでは仮想三次元空間内に設定された“炎”が該当する。
【0015】
本発明の仮想視点制御技術は、コンピュータを本発明の仮想視点制御装置として機能させるプログラムを記録したコンピュータ読み取り可能な情報記録媒体によっても実現することができる。即ち、本明細書における「…部」、「…手段」は仮想視点制御において実現される概念であり、必ずしも特定のハードウエアやソフトウエアルーチンに1対1には対応してはいない。同一のハードウエア要素が複数の「…部」、「…手段」を実現する場合もあれば、複数のハードウエア要素の関連で1つの「…部」、「…手段」を実現する場合もある。
【0016】
ここで、情報記録媒体とは、何らかの物理的手段により情報、主に、デジタルデータ、プログラム等が記録されているものであって、コンピュータ、専用プロセッサ等に所望の機能を実現させることができるものをいう。従がって、何らかの手段でコンピュータにダウンロードし、所望の機能を実現させるものであればよい。例えば、フロッピーディスク(FD)、ハードディスク(HD)、CD−ROM、CD−R、DVD−ROM、DVD−RAM、DVD−R、PDディスク、MDディスク、MOディスク等を含む。また、有線又は無線の通信回線(公衆回線、データ専用線、衛星回線等)を介してホストコンピュータからデータの転送を受ける場合を含む。例えば、インターネット経由でサーバのデータベースからデータを転送する場合も含む。
【0017】
上記第2の課題を解決する本発明のコントローラは、本体と、本体に対して回動可能な把持部と、把持部の回動に対応して画面に表示される特定の画像の形態を変化させる制御信号を画像処理装置に送信する信号処理部とを備える。コントローラの本体(筐体)は棒状部材又は筒状部材で構成されることが好ましい。
【0018】
かかるコントローラは消防ホースの形状をしていることが好ましい。また、消防ホースから水が噴射している様子を再現するために、把持部の回動に対応して振動する振動発生機構を更に備えることが好ましい。この振動発生機構の一例として、例えば、偏心カムを備えた回転機構が好適である。また、仮想空間内において消防ホースから仮想的に噴射される“水”を表現するオブジェクトの形態を、把持部の回動に対応して変化させることもできる。尚、振動発生機構は、水が噴射している状態を示す画像の状態に合わせてコントローラを振動するように構成してもよい。
【0019】
上記第3の課題を解決する本発明のゲーム装置は、ゲーム開始時からプレイ時間を計測し、予め定められたプレイ時間を経過した場合にゲームを終了するゲーム装置において、あるプレイヤがゲームをしている最中に他のプレイヤがゲームに参加する都度に、プレイ時間に所定時間を加算し、加算された時間経過時にゲームを実行している全てのプレイヤのゲームを同時に終了させることを特徴とする。
【0020】
このような構成により、あるプレイヤがゲームを実行している最中に他のプレイヤがゲームに参加した場合であっても、全てのプレイヤに対して同時にゲームを終了させることができる。
【0021】
特に、前記所定時間の長さは、プレイ時間の残り時間に対応して設定することが好ましい。例えば、プレイ時間の残り時間が長いとき(ゲームを開始して間もない頃)に他のプレイヤがゲームに参加した場合には、追加されるプレイ時間を長く設定し、プレイ時間の残り時間が短いとき(ゲームを開始して相当時間が経過しているとき)に他のプレイヤが参加した場合には、追加されるプレイ時間を短く設定する。このように構成することで、ゲーム終了間際にプレイ時間を延長し、プレイ時間を必要以上に引き延ばすことを防止できる効果もある。
【0022】
【発明の実施の形態】
以下、各図を参照して本実施の形態について説明する。図1乃至図3は本ゲーム装置の外観を示しており、図1(A)は正面図、同図(B)は背面図、図2は右側面図、図3(A)は平面図、同図(B)は裏面図である。左側面図は右側面図と対称であるため省略する。
【0023】
ゲーム装置1はアミューズメント用に構成されており、前面には大型モニタ50が配置されている。ゲーム装置1には消防ホース型のコントローラ2が接続しており、プレイヤはこのコントローラ2を操作することでモニタ50に表示される仮想上の“炎”(オブジェクト)を消火する。モニタ50の周囲には計10個の発光素子52a〜52jが配置されている。後述するように、コントローラ2の先端側(ノズル側)には受光素子が取り付けられており、ゲーム装置1は、各発光素子52a〜52jからの受光量からコントローラの位置、角度等を計算してモニタ50にカーソルを表示する。このカーソルは画面上の消火位置を示すものであり、コントローラ2の操作によりカーソル位置に水が噴射される。また、ゲーム装置1の手前側には、スタートボタン等が配置されている操作パネル5が取り付けられている。ゲーム装置1は2人のプレイヤによる同時プレイを楽しむことができる。プレイヤ2によるゲームへのエントリーはプレイヤ1のプレイ中に行うこともできる。
【0024】
図4にコントローラ2の外観を示す。コントローラ2は主に外筒3、把持部4、ノズル5及びホース6から構成される。外筒3はアルミダイキャストで加工されており、実物の消防ホースと同じ外観、質感を演出している。ホース6は可撓性の材質から構成され、他端はゲーム装置1に接続している。プレイヤは外筒3の中央からやや後端側(ホース側)の部位と把持部4を持ち、ノズル5をモニタ50へ向けることで画面に表示されるカーソルをコントロールする。ノズル5の先端側には受光素子9が取り付けられており、各発光素子52a〜52jからの照射光を受光する。外筒3の略中央部にはスイッチ7が取り付けられており、プレイヤはこのスイッチ7を押下することでノズル5から仮想的に噴射される水の噴射タイミングを制御する。また、把持部4は外筒3に対して回動自在に取り付けられており、ノズル5から仮想的に噴射される水の形態(例えば、水柱状噴射と霧状噴射)を切り替える“切り替えスイッチ”の役割を担う。
【0025】
図10はモニタ50に表示されるゲーム画面の一例であり、例えば、同図(A)には、カーソル37、タイマ38、炎39等が表示されている。上述したように、カーソル37は消火位置を示すものであり、タイマ38はゲームの残り時間を示している。39は部屋を包むように燃え盛る炎であり、いま、プレイヤはこの炎39を消火することを意図しているものとする。この炎39を水柱状噴射により消火したい場合には、スイッチ7の押下により、カーソル37の位置に水40が柱状に噴射される(同図(B))。一方、炎39を霧状噴射により消火したい場合には、把持部4を回動し、水の噴射形態切り替えスイッチを“オン”にすることで霧状の水41が噴射される(同図(C))。このように、本実施の形態のコントローラ2によれば、水の噴射タイミング、噴射形状等を任意に制御することができる。
【0026】
また、図4に示すように、コントローラ2の外筒3の略中央内部には偏心カム8が取り付けられている。スイッチ7の押下によりコントローラ2からは仮想的に水が噴射されるのであるが、ホースから水が噴射されている状況をよりリアルに再現するため、外筒3の略中央内部に偏心カム8を取り付け、スイッチ7の押下と同時にこの偏心カム8を駆動させることでコントローラ2に振動が生じ、あたかも水が噴射されているような感覚を得ることができる。但し、振動を発生する機構を備えた機器であれば、偏心カムに限らず、各種バイブレータ等を適用できる。
【0027】
図5にゲーム装置1のブロック図を示す。本ゲーム装置においては、多数のポリゴンで生成されたモデルにレンダリング処理を高速に行い、かつ、そのモデルを高速に動かすために2つのCPUが装備されている。同図に示すように、CPU10、CPU11はそれぞれCPUバス42、CPUバス43を介してバスブリッジ12、バスブリッジ13に接続しており、コンピュータグラフィックスにおける画像処理、例えば、ワールド座標系へのモデリング変換、仮想視点への視野変換、三次元クリッピング処理、陰線処理、テクスチャマッピング処理、シェーディング処理、表示優先処理等を高速に実行する。
【0028】
CPUバス42、43にはそれぞれRAM14、15が接続されている。バスブリッジ12とバスブリッジ13はPCI(Peripheral Component Interconnect)バス(又はAGP(Accelerated Graphics Interconnect)バス)46を介して縦続に接続されている。また、バスブリッジ12には本ゲーム装置の機能を拡張するための拡張RAM16が接続されている。ビデオ処理部17はPCIバス(又はAGPバス)44及び45を介してバスブリッジ12及び13に接続しており、ポリゴンのレンダリング処理等を行い、そのデータをD/Aコンバータ18に出力する。D/Aコンバータ18からのビデオ信号を基にしてモニタ50にはゲーム画面が表示される。
【0029】
片方向バスバッファ19はバスブリッジ13に接続しており、アドレス信号等をアドレスデコーダ21、ROMボード22、I/O部23、通信ボード24及びサウンドボード25に供給する。アドレスデコーダ21は供給されたアドレス信号に従って、デバイス選択信号をROMボード22、I/O部23、通信ボード24及びサウンドボード25に供給する。双方向バスバッファ20はPCIバス(又はAGPバス)45の一部分(AD(address data)バス、CBE(command bit enable)バス)によりバスブリッジ13に接続し、データ信号の送受信をアドレスデコーダ21、ROMボード22、I/O部23、通信ボード24及びサウンドボード25間で行う。
【0030】
バスブリッジ12、13はそれそぞれCPU10、11から供給されたアドレス信号を予め定められた規則に従って変換し、ROMボード22内のブートプログラムを実行可能に構成される。この他、ROMボード22には予めゲームプログラムやポリゴンデータ等が格納されている。ROMボード22内の記憶領域確保のため、ブートプログラムを専用のブートROMに格納することもできる。
【0031】
I/O部23はコントローラ2からの操作信号を入力し、CPU10、11に外部入力の割り込み信号を供給する。CPU10、11はこの操作信号に基づいてゲームプログラムの実行をする。通信ボード24はホストコンピュータ26と接続可能に構成され、例えば、複数のゲーム装置との間で通信ゲームを行うことができる。サウンドボード25はスピーカ27に接続し、ゲーム上の効果音、BGM音等の各種音響信号を出力する。
【0032】
尚、本ゲーム装置においてはコンピュータグラフィックスによる画像処理を高速に実行するべく、複数(3基以上)のCPUをバスブリッジを介して縦続接続することも可能である。このような構成により、従来のコンピュータの処理能力では表現が困難であった炎や煙、水柱、水霧等の画像処理をより高精細に表現することができる。
【0033】
次に、図6を参照して本発明の仮想視点制御技術について説明する。同図はゲームプログラムによって予め定められたパス(仮想視点移動経路)36に沿って仮想視点28が進行する様子を示している。パス36付近には大小様々な炎29、30、…、等が所定位置に設定されている。仮想三次元空間内に設定される炎の内、プレイヤが消火しなければ次に進めない炎を特に“ターゲット”というものとする。同図に示す炎の中でターゲットは29,30,31、32及び35である。炎33、34は比較的小さい炎であるため、ターゲットにはならない。これら炎の位置、延焼の速さ、当該炎がターゲットであるか否かはゲームプログラムによって予め設定されている。ターゲットとなる炎は仮想視点28の移動速度制御に影響を与えるパラメータ演算に利用される。
【0034】
但し、仮想視点28はターゲットの有無に拘わらず、パス36の形状やゲーム場面に対応して移動速度が所定のパターンに従って変化するようにプログラムされている。例えば、直線上のパスでは仮想視点28の移動速度の最大値は大きく、曲線上又はその付近では仮想視点28の移動速度の最大値は小さくなる、…、という具合に設定される。同図に示す点A、点B、点C、点D、点E及び点Fはパス36上に仮想的に設定された速度変化点を表している。図7は区間AB、区間BC、…、等に対応する仮想視点28の移動速度の最大値(maxspd)を記述したテーブルである。このように、本発明においては、パスの形状等に応じて仮想視点28の移動速度を制御する他に、上述したターゲットを仮想視点28の移動速度のパラメータ演算に利用することで仮想視点28の移動速度を制御する。
【0035】
本発明の仮想視点28の移動速度制御について図8のフローチャートを参照しながら詳細に説明する。同図に示す一連のステップは各フレーム毎に(例えば、60分の1秒毎に)実行される。まず、カメラマトリクスが設定される(ステップS1)。カメラマトリクスの設定は、図6に示すように、仮想三次元空間内のオブジェクトのボディ座標系からワールド座標系への変換(ボディ座標系上でのスケーリング、回転、平行移動等)、ワールド座標系から視点座標系の変換(ワールド座標系の原点の仮想視点への平行移動、Z軸の回転等)、オブジェクトの陰線処理、クリッピング処理等を経て設定される。同図に示す一点鎖線が画角(視野角)θに設定された仮想視点28の視野領域を表している。画角θの大きさは画面のズーム〜ワイドに応じて適宜設定される。
【0036】
次に、視野領域に存在するターゲットを求め、仮想視点28からの距離の順にソートする(ステップS2)。図6を参照して本ステップを説明すると、仮想視点28の視野領域内にはターゲット29、30,31及び35が存在するが、ターゲット32は視野領域内に存在しないため、本ステップにおける処理対象にはならない。ターゲット29、30、31及び35について仮想視点28からの距離L、L、L及びLを求める。L≦L≦L≦Lであるから、ターゲット31、29、30及び35の順にソートされる。
【0037】
次に、視野領域に存在するターゲットの数が予め定められた指定数以上であるか否かを判定する(ステップS3)。指定数以上存在する場合は、パラメータAveLenにΣLen/Nを代入する(ステップS4)。パラメータAveLenは仮想視点28から距離の短い順に指定数分だけソートされた各ターゲットと仮想視点28間の距離の平均値である。また、Lenは仮想視点28と各ターゲット間の距離を表し、Nは指定数を表すものとする。ΣLenはN個のLenの値の合計値である。
本例の場合、指定数を3とすると、
ΣLen/N=(L+L+L)/3
である。一方、ターゲットの数が指定数Nに満たない場合は、パラメータAveLenにMinLenを代入する(ステップS8)。MinLenは仮想視点28と視野領域に存在するターゲット間の最小距離であり、本例の場合、Lの値が相当する。
【0038】
次に、視野領域に存在する指定数分のターゲットについて、仮想視点28からの最大距離と平均距離がどれだけ離れているかを示すパラメータratを演算する(ステップS5)。パラメータratは、
(MaxLen−AveLen)/MaxLen
の値を演算し、この値を代入することで得られる。MaxLenは仮想視点28からの最大距離であり、本例の場合、Lの値が相当する。
【0039】
次に、仮想視点28の移動速度camspdを求める(ステップS6)。時刻nにおける仮想視点28の移動速度camspdは、
camspdn−1−(maxspd/rat−camspdn−1)・SPDCHG RATE
の値を代入することで得られる。ここで、maxspdは前述したように、パス36上の所定区間毎に設定された、仮想視点28の移動速度の最大値である。SPDCHG RATEは定数であり、移動速度の変化率を表している。このパラメータの値として、例えば、0.0263が設定される。以上の各ステップにより仮想視点28の移動速度を求めた後、画面表示を行う(ステップS7)。
【0040】
このように、本発明によれば、ターゲットとなる“炎”の位置(又は距離)、数等を考慮してリアルタイムで仮想視点の移動速度を調整するとともに、ターゲットとならない“炎”に関しては仮想視点の移動速度に影響を与えないため、自然なカメラ移動が実現できるとともに、ゲームの進行が必要以上に遅くなる状態を回避することができる。さらに、仮想視点の移動速度を予め固定した場合に生じるゲームの単調さと、目前に“炎”があるにも拘わらず前進してしまうような不自然さを回避することができる。
【0041】
尚、本発明においては、上述したパラメータAveLenの演算の際に、仮想視点とターゲット間の距離に当該ターゲットに予め割り当てられた重み係数を乗じた値を利用することもできる。例えば、
(Len+Len+…Len)/N
の値をパラメータAveLenに代入して仮想視点の移動速度制御に利用する。Lenは仮想視点からの距離が短い順にソートした場合の、j番目のターゲットと仮想視点との距離、Cは当該ターゲットに割り当てられた重み係数である。ゲーム上、消火しなけらばならない“炎”(例えば、大きい炎や出口付近の炎など)について重み係数の値を小さく設定することで、かかる“炎”の近くでは仮想視点の移動速度が遅くなるため、適切なカメラ移動を実現できる。
【0042】
また、本消防ゲームは複数のプレイヤが同時にプレイすることができる。本消防ゲームにおいてはシューティングゲームと異なり、プレイヤがダメージを受けることでゲームが終了することはない。そこで、予めプレイ時間(例えば、5分)を設定し、かかるプレイ時間経過後に自動的にゲームオーバーとする。ここで、図9のフローチャートを参照しながら、二人のプレイヤがゲームを実行する場合のゲーム終了手順について説明する。ゲーム装置の電源が“オン”になると、ゲーム装置は入力待ち状態になる(ステップT1)。プレイヤ1が操作パネル5のボタン操作によりゲームエントリーすると(ステップT2:YES)、タイマが作動し、プレイ時間を計測する(ステップT3)。プレイヤ1のプレイ中において、プレイヤ2がゲームエントリーすると(ステップT4:YES)、プレイ時間に所定時間が加算される(ステップT5)。この所定時間は予め定められた長さの時間としてもよいが、前述したように、プレイ時間の残り時間に対応して設定してもよい。そして、加算されたプレイ時間経過後(ステップT6:YES)、プレイヤ1とプレイヤ2のゲーム実行を同時に終了する。一方、プレイヤ1のプレイ中にプレイヤ2がゲームエントリーしなかった場合には(ステップT4:NO)、プレイ時間経過後に(ステップT8:YES)、プレイヤ1のゲームを終了する(ステップT9)。このようなゲーム終了手順を採用することで、一人のプレイヤがゲームをしている最中に他のプレイヤがゲームエントリーした場合であっても、複数のプレイヤに対してゲーム終了時期を同時に設定することができる。
【0043】
尚、上記の説明においては、二人のプレイヤのゲームを同時に終了させる場合を説明したが、プレイヤの人数は二人に限らず、同時にプレイ可能な人数に対して適用することができる。
【0044】
【発明の効果】
本発明の仮想視点制御装置によれば、仮想三次元空間内に位置する特定のオブジェクトと仮想視点との距離に応じて適切に視点移動を制御することができる。
【0045】
本発明のコントローラによれば、消防ゲームに好適なコントローラを提供することができる。
【0046】
本発明のゲーム装置によれば、時間制限によりゲームオーバーするゲーム装置について、あるプレイヤがゲーム実行中において他のプレイヤがゲームエントリーした場合であっても、全てのプレイヤについてゲームを同時に終了させることができる。
【図面の簡単な説明】
【図1】本発明のゲーム装置の正面図及び背面図である。
【図2】本発明のゲーム装置の側面図である。
【図3】本発明のゲーム装置の平面図及び裏面図である。
【図4】本発明のコントローラの外観図である。
【図5】本発明のゲーム装置のブロック図である。
【図6】本発明の仮想視点制御の説明図である。
【図7】仮想視点のパス上の所定区間毎に、仮想視点の移動速度の最大値を登録したテーブルである。
【図8】本発明の仮想視点制御のフローチャートである。
【図9】本発明のゲーム終了を規定するフローチャートである。
【図10】消防ゲームの画面の説明図である。
【符号の説明】
1…ゲーム装置、2…コントローラ、3…外筒、4…把持部、5…ノズル、6…ホース、7…スイッチ、8…偏心カム、28…仮想視点、36…パス
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a control technique for a virtual viewpoint set in a virtual three-dimensional space, and particularly to a technique for controlling the moving speed of a virtual viewpoint according to the situation in the virtual three-dimensional space. The present invention also relates to a game controller suitable for an arcade game device, and more particularly, to a controller having a fire hose-type appearance.
[0002]
[Prior art]
As a game for home use or amusement, for example, a shooting game is known. A shooting game is a game in which a player (player) places a cursor on an enemy character (enemy character) as an attack target, shoots a bullet by operating a button on the control pad, etc., and competes for a score by attacking the enemy character. . In a normal shooting game, the enemy character moves back and forth and right and left in the screen and attacks the player character. Also, once the enemy character disappears from the screen, it appears on the screen again and attacks. The player freely manipulates the player character by operating the control pad, and develops a battle with the enemy character in the virtual three-dimensional space.
[0003]
In conventional shooting games, the movement path of the virtual viewpoint that represents the viewpoint of the player, and the position, number, action pattern, game story, etc. of the enemy character that appears for each game scene are set in advance in the game program. For example, when forcibly shifting to the next game stage due to a specific event occurring in the game, it is possible to shift to the next stage without defeating all the enemy characters on the screen. Even if the enemy character is not destroyed by an attack by the player, it can be erased from the screen for the convenience of the game program (for example, forced movement of the virtual viewpoint, transition to the next stage, etc.).
[0004]
[Problems to be solved by the invention]
Under such a background, the present inventor has conceived a “fire fighting game” based on a hint from a shooting game. This fire fighting game is a game in which a player manipulates a player character that resembles a fire fighter and extinguishes a flame while moving in a fired building. In this case, the “fire hose” held by the player character corresponds to a “gun” in the shooting game, and “flame” corresponds to an “enemi character”. Therefore, since this fire fighting game has similarities to the shooting game, the algorithm of the shooting game can be used.
[0005]
However, for the virtual viewpoint control (camera control) in the fire fighting game, the virtual viewpoint control in the conventional shooting game cannot be used as it is. Because the attack target in this fire fighting game is “flame”, the fire gradually spreads over time, but it does not move as quickly as the enemy character in the shooting game. Therefore, the flame displayed in the game scene will continue to spread as long as it is not extinguished. Usually, in the virtual viewpoint control of a shooting game, the virtual viewpoint moves on a predetermined path (movement route) at a predetermined moving speed, so that the virtual viewpoint is considered in consideration of the number and positions of the enemy characters. Controlling the viewpoint was not considered. Therefore, when this viewpoint control is applied to the virtual viewpoint control in the fire fighting game, for example, inconveniences such as being able to proceed to the next stage occur unless all the flames displayed on the screen are extinguished. If it becomes such a state, in the case of a beginner, the same game screen remains forever, and the progress of the game becomes very slow. The player is mentally stressed and further loses interest in the game and a sense of realism. On the other hand, the creator of the game program needs to set a “flame” that appears in the game scene so that it cannot move to the next stage unless it is extinguished. It is unnatural to move the camera carelessly despite the large “flame”.
[0006]
In view of such problems, it is a first object of the present invention to provide a virtual viewpoint control device that realizes appropriate camera movement according to a game scene.
[0007]
With the diversification of video game software, the controller connected to it will change from a conventional controller with an instruction button and a cross key to a game software to be used, such as a joystick controller or gun controller. Correspondingly, various products are commercially available. For example, Japanese Patent Publication No. 2686675 discloses a gun-type controller that models a handgun for a gun game.
[0008]
However, in the above-mentioned fire fighting game, a controller suitable for such a game, in particular, a controller having a fire hose type shape has not been proposed yet.
[0009]
Then, this invention makes it the 2nd subject to provide a controller suitable for a fire fighting game.
[0010]
Further, in the conventional shooting game, the player 2 can newly participate in the game even when the player 1 is playing. In this case, since the game proceeds independently of the player 1 and the player 2, for example, when only the player 1 receives damage exceeding a predetermined allowable amount, only the player 1 is over and the player 2 is still The game can proceed. However, in the above-mentioned fire fighting game, “flame” does not attack the player character. Therefore, if the player 1 and the player 2 simultaneously advance the game, only the player 1 is over. That is unnatural.
[0011]
Accordingly, a third object of the present invention is to provide a game apparatus configured such that when a plurality of players execute a game, the game end time is the same for each player.
[0012]
[Means for Solving the Problems]
The virtual viewpoint control apparatus of the present invention that solves the first problem is a virtual viewpoint movement speed that controls the movement speed of a virtual viewpoint according to the distance between a specific object located in the visual field of the virtual viewpoint and the virtual viewpoint. Control means are provided.
[0013]
Here, the virtual viewpoint refers to a viewpoint virtually set in a virtual three-dimensional space, and is synonymous with a viewpoint viewed from a so-called virtual camera. A virtual camera is a camera that compares the viewpoint and angle of view when drawing computer graphics. In an actual camera, a principal point that is an optical center point corresponds to a virtual viewpoint. This virtual camera setting is performed by designating the position, the optical axis direction (lens orientation), the angle of view (zoom to wide), the twist (rotation angle around the optical axis), and the like. A virtual camera is understood as a virtual visual field direction determining means for determining the visual field direction of an image displayed on a display. An object modeled and converted from the body coordinate system, which is an object-specific coordinate system, into a world coordinate system that defines the placement of objects in the three-dimensional space is displayed in the visual field coordinate system determined by this virtual camera (position and angle, etc.). It is converted and displayed on the screen.
[0014]
The specific object refers to an object that is predetermined as an object that affects the moving speed control of the virtual viewpoint from among various objects arranged in the virtual three-dimensional space. For example, in the fire fighting game, “flame” set in the virtual three-dimensional space is applicable.
[0015]
The virtual viewpoint control technique of the present invention can also be realized by a computer-readable information recording medium that records a program that causes a computer to function as the virtual viewpoint control apparatus of the present invention. In other words, “... Unit” and “... Means” in this specification are concepts realized in the virtual viewpoint control, and do not necessarily correspond to specific hardware and software routines on a one-to-one basis. The same hardware element may realize a plurality of "... parts" and "... means", or may realize a single "... part" and "... means" in relation to a plurality of hardware elements. .
[0016]
Here, the information recording medium is a medium in which information, mainly digital data, a program, or the like is recorded by some physical means, and can realize a desired function in a computer, a dedicated processor, or the like. Say. Therefore, it may be downloaded to a computer by some means to realize a desired function. For example, a floppy disk (FD), hard disk (HD), CD-ROM, CD-R, DVD-ROM, DVD-RAM, DVD-R, PD disk, MD disk, MO disk, and the like are included. Further, it includes a case where data transfer is received from a host computer via a wired or wireless communication line (public line, data dedicated line, satellite line, etc.). For example, it includes a case where data is transferred from a server database via the Internet.
[0017]
The controller of the present invention that solves the second problem changes a main body, a gripper that can rotate with respect to the main body, and a form of a specific image displayed on the screen corresponding to the rotation of the gripper. A signal processing unit that transmits a control signal to be transmitted to the image processing apparatus. The main body (housing) of the controller is preferably composed of a rod-shaped member or a cylindrical member.
[0018]
Such a controller is preferably in the form of a fire hose. Further, it is preferable to further include a vibration generating mechanism that vibrates in response to the rotation of the gripping part in order to reproduce the state in which water is jetted from the fire hose. As an example of the vibration generating mechanism, for example, a rotating mechanism including an eccentric cam is suitable. In addition, the form of the object representing “water” virtually ejected from the fire hose in the virtual space can be changed corresponding to the rotation of the gripping portion. Note that the vibration generating mechanism may be configured to vibrate the controller in accordance with the state of an image indicating a state where water is being jetted.
[0019]
The game device of the present invention that solves the third problem is a game device in which a play time is measured from the start of the game and the game is ended when a predetermined play time elapses. Each time another player participates in the game, a predetermined time is added to the play time, and the game of all the players who are executing the game is ended at the same time when the added time elapses. To do.
[0020]
With such a configuration, even if another player participates in the game while a certain player is executing the game, the game can be ended simultaneously for all the players.
[0021]
In particular, the length of the predetermined time is preferably set corresponding to the remaining time of play time. For example, when another player participates in the game when the remaining play time is long (a short time after the game is started), the added play time is set longer, and the remaining play time is set. When another player participates when the time is short (when a considerable time has elapsed since the game was started), the added play time is set short. By configuring in this way, it is possible to extend the play time just before the end of the game and prevent the play time from being unnecessarily extended.
[0022]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, the present embodiment will be described with reference to the drawings. 1 to 3 show the appearance of the game apparatus, FIG. 1 (A) is a front view, FIG. 1 (B) is a rear view, FIG. 2 is a right side view, and FIG. 3 (A) is a plan view. FIG. 2B is a rear view. The left side view is omitted because it is symmetrical with the right side view.
[0023]
The game apparatus 1 is configured for amusement, and a large monitor 50 is disposed on the front surface. A fire hose-type controller 2 is connected to the game apparatus 1, and the player operates the controller 2 to extinguish a virtual “flame” (object) displayed on the monitor 50. A total of ten light emitting elements 52 a to 52 j are arranged around the monitor 50. As will be described later, a light receiving element is attached to the front end side (nozzle side) of the controller 2, and the game apparatus 1 calculates the position, angle, etc. of the controller from the amount of light received from each of the light emitting elements 52a to 52j. A cursor is displayed on the monitor 50. This cursor indicates the fire extinguishing position on the screen, and water is jetted to the cursor position by the operation of the controller 2. Further, an operation panel 5 on which a start button and the like are arranged is attached to the front side of the game apparatus 1. The game apparatus 1 can enjoy simultaneous play by two players. The entry to the game by the player 2 can also be made while the player 1 is playing.
[0024]
FIG. 4 shows the external appearance of the controller 2. The controller 2 mainly includes an outer cylinder 3, a grip part 4, a nozzle 5 and a hose 6. The outer cylinder 3 is processed by aluminum die-casting to produce the same appearance and texture as a real fire hose. The hose 6 is made of a flexible material, and the other end is connected to the game apparatus 1. The player has a part slightly on the rear end side (hose side) from the center of the outer cylinder 3 and the grip portion 4, and controls the cursor displayed on the screen by pointing the nozzle 5 toward the monitor 50. A light receiving element 9 is attached to the tip side of the nozzle 5 and receives irradiation light from each of the light emitting elements 52a to 52j. A switch 7 is attached to a substantially central portion of the outer cylinder 3, and the player controls the injection timing of water that is virtually injected from the nozzle 5 by pressing the switch 7. Further, the grip 4 is rotatably attached to the outer cylinder 3, and is a “switch” for switching the form of water virtually ejected from the nozzle 5 (for example, water columnar spray and mist spray). Play the role of
[0025]
FIG. 10 shows an example of a game screen displayed on the monitor 50. For example, in FIG. 10A, a cursor 37, a timer 38, a flame 39, and the like are displayed. As described above, the cursor 37 indicates the fire extinguishing position, and the timer 38 indicates the remaining time of the game. Reference numeral 39 denotes a flame that burns like a room, and it is assumed that the player intends to extinguish the flame 39 now. When it is desired to extinguish the flame 39 by water column injection, when the switch 7 is pressed, water 40 is injected in a column shape at the position of the cursor 37 ((B) in the figure). On the other hand, when it is desired to extinguish the flame 39 by mist injection, the mist-like water 41 is injected by turning the grip 4 and turning on the water injection mode changeover switch (see FIG. C)). Thus, according to the controller 2 of this Embodiment, the injection timing of water, an injection shape, etc. can be controlled arbitrarily.
[0026]
Further, as shown in FIG. 4, an eccentric cam 8 is attached inside the substantially center of the outer cylinder 3 of the controller 2. When the switch 7 is pressed, water is virtually ejected from the controller 2, but in order to more realistically reproduce the situation where water is being ejected from the hose, the eccentric cam 8 is disposed approximately inside the outer cylinder 3. When the eccentric cam 8 is driven at the same time as mounting and pressing the switch 7, vibration is generated in the controller 2 and a feeling as if water is being injected can be obtained. However, as long as the device includes a mechanism that generates vibration, not only the eccentric cam but also various vibrators can be applied.
[0027]
FIG. 5 shows a block diagram of the game apparatus 1. In this game apparatus, two CPUs are equipped to perform rendering processing on a model generated by a large number of polygons at high speed and to move the model at high speed. As shown in the figure, the CPU 10 and the CPU 11 are connected to the bus bridge 12 and the bus bridge 13 via the CPU bus 42 and the CPU bus 43, respectively, and image processing in computer graphics, for example, modeling to the world coordinate system. Conversion, visual field conversion to a virtual viewpoint, three-dimensional clipping processing, hidden line processing, texture mapping processing, shading processing, display priority processing, etc. are executed at high speed.
[0028]
RAMs 14 and 15 are connected to the CPU buses 42 and 43, respectively. The bus bridge 12 and the bus bridge 13 are connected in cascade through a PCI (Peripheral Component Interconnect) bus (or an AGP (Accelerated Graphics Interconnect) bus) 46. The bus bridge 12 is connected to an expansion RAM 16 for expanding the functions of the game apparatus. The video processing unit 17 is connected to the bus bridges 12 and 13 via PCI buses (or AGP buses) 44 and 45, performs polygon rendering processing, and outputs the data to the D / A converter 18. A game screen is displayed on the monitor 50 based on the video signal from the D / A converter 18.
[0029]
The one-way bus buffer 19 is connected to the bus bridge 13 and supplies an address signal and the like to the address decoder 21, ROM board 22, I / O unit 23, communication board 24 and sound board 25. The address decoder 21 supplies a device selection signal to the ROM board 22, the I / O unit 23, the communication board 24, and the sound board 25 in accordance with the supplied address signal. The bidirectional bus buffer 20 is connected to the bus bridge 13 by a part of the PCI bus (or AGP bus) 45 (AD (address data) bus, CBE (command bit enable) bus), and transmits and receives data signals to the address decoder 21 and ROM. This is performed among the board 22, the I / O unit 23, the communication board 24, and the sound board 25.
[0030]
Each of the bus bridges 12 and 13 is configured to convert the address signal supplied from the CPUs 10 and 11 according to a predetermined rule and execute the boot program in the ROM board 22. In addition, the ROM board 22 stores a game program, polygon data, and the like in advance. In order to secure a storage area in the ROM board 22, the boot program can be stored in a dedicated boot ROM.
[0031]
The I / O unit 23 receives an operation signal from the controller 2 and supplies an external input interrupt signal to the CPUs 10 and 11. The CPUs 10 and 11 execute the game program based on the operation signal. The communication board 24 is configured to be connectable to the host computer 26, and for example, a communication game can be performed with a plurality of game devices. The sound board 25 is connected to the speaker 27 and outputs various sound signals such as sound effects on the game and BGM sounds.
[0032]
In this game apparatus, a plurality of (three or more) CPUs can be connected in cascade via a bus bridge in order to execute image processing by computer graphics at high speed. With such a configuration, it is possible to express image processing such as flame, smoke, water column, and water fog, which has been difficult to express with the processing capability of the conventional computer, with higher definition.
[0033]
Next, the virtual viewpoint control technique of the present invention will be described with reference to FIG. This figure shows a state in which the virtual viewpoint 28 travels along a path (virtual viewpoint movement route) 36 predetermined by the game program. In the vicinity of the path 36, various large and small flames 29, 30,... Are set at predetermined positions. Of the flames set in the virtual three-dimensional space, a flame that cannot be advanced unless the player extinguishes is called a “target”. In the flame shown in the figure, the targets are 29, 30, 31, 32 and 35. Since the flames 33 and 34 are relatively small flames, they are not targets. The position of the flame, the speed of fire spread, and whether or not the flame is the target are preset by the game program. The target flame is used for parameter calculation that affects the movement speed control of the virtual viewpoint 28.
[0034]
However, the virtual viewpoint 28 is programmed so that the moving speed changes according to a predetermined pattern corresponding to the shape of the path 36 and the game scene regardless of the presence or absence of the target. For example, the maximum value of the moving speed of the virtual viewpoint 28 is large in the path on the straight line, and the maximum value of the moving speed of the virtual viewpoint 28 is small on the curve or in the vicinity thereof. Point A, point B, point C, point D, point E and point F shown in the figure represent speed change points virtually set on the path 36. FIG. 7 is a table describing the maximum value (maxspd) of the moving speed of the virtual viewpoint 28 corresponding to the section AB, the section BC,. As described above, in the present invention, in addition to controlling the moving speed of the virtual viewpoint 28 according to the shape of the path, etc., the above-described target is used for calculating the moving speed parameter of the virtual viewpoint 28. Control the moving speed.
[0035]
The moving speed control of the virtual viewpoint 28 according to the present invention will be described in detail with reference to the flowchart of FIG. The series of steps shown in the figure is executed for each frame (for example, every 1/60 second). First, a camera matrix is set (step S1). As shown in FIG. 6, the camera matrix is set by converting the object in the virtual three-dimensional space from the body coordinate system to the world coordinate system (scaling, rotation, translation, etc. on the body coordinate system), the world coordinate system. To the viewpoint coordinate system (translation of the origin of the world coordinate system to the virtual viewpoint, rotation of the Z axis, etc.), hidden line processing of the object, clipping processing, and the like. The alternate long and short dash line shown in the figure represents the visual field region of the virtual viewpoint 28 set to the angle of view (viewing angle) θ. The size of the angle of view θ is appropriately set according to the zoom to the wide of the screen.
[0036]
Next, targets existing in the visual field region are obtained and sorted in the order of distance from the virtual viewpoint 28 (step S2). This step will be described with reference to FIG. 6. Although the targets 29, 30, 31, and 35 exist in the visual field region of the virtual viewpoint 28, the target 32 does not exist in the visual field region. It will not be. Distance L from the virtual viewpoint 28 for the targets 29, 30, 31, and 351, L2, L3And L4Ask for. L3≦ L1≦ L2≦ L4Therefore, the targets 31, 29, 30 and 35 are sorted in this order.
[0037]
Next, it is determined whether or not the number of targets existing in the visual field area is equal to or greater than a predetermined number (step S3). If there are more than the specified number, ΣLen / N is substituted for the parameter AveLen (step S4). The parameter AveLen is an average value of the distances between the targets and the virtual viewpoints 28 that are sorted by the designated number in order from the shortest distance from the virtual viewpoint 28. Len represents the distance between the virtual viewpoint 28 and each target, and N represents the specified number. ΣLen is a total value of N Len values.
In this example, if the specified number is 3,
ΣLen / N = (L3+ L1+ L2) / 3
It is. On the other hand, if the number of targets is less than the specified number N, MinLen is substituted for the parameter AveLen (step S8). MinLen is the minimum distance between the virtual viewpoint 28 and the target existing in the visual field region.3Corresponds to the value of.
[0038]
Next, a parameter rat indicating how far the maximum distance from the virtual viewpoint 28 is from the average distance is calculated for a specified number of targets existing in the visual field region (step S5). The parameter rat is
(MaxLen-AveLen) / MaxLen
It is obtained by calculating the value of and substituting this value. MaxLen is the maximum distance from the virtual viewpoint 28. In this example, L2Corresponds to the value of.
[0039]
Next, the moving speed camspd of the virtual viewpoint 28 is obtained (step S6). The moving speed camspd of the virtual viewpoint 28 at time nnIs
camspdn-1-(Maxspd / rat-camspdn-1) ・ SPDCHG RATE
It is obtained by substituting the value of. Here, maxspd is the maximum value of the moving speed of the virtual viewpoint 28 set for each predetermined section on the path 36 as described above. SPDCHG RATE is a constant and represents a change rate of the moving speed. As the value of this parameter, for example, 0.0263 is set. After obtaining the moving speed of the virtual viewpoint 28 by the above steps, screen display is performed (step S7).
[0040]
As described above, according to the present invention, the moving speed of the virtual viewpoint is adjusted in real time in consideration of the position (or distance), the number, etc. of the target “flame”, and the “flame” that is not the target is virtual. Since the movement speed of the viewpoint is not affected, natural camera movement can be realized, and a situation in which the progress of the game becomes slower than necessary can be avoided. Furthermore, it is possible to avoid the monotonousness of the game that occurs when the moving speed of the virtual viewpoint is fixed in advance and the unnaturalness that moves forward despite the presence of “flame”.
[0041]
In the present invention, a value obtained by multiplying the distance between the virtual viewpoint and the target by a weighting factor assigned in advance to the target can be used in the calculation of the parameter AveLen. For example,
(Len1C1+ Len2C2+ ... LenNCN) / N
Is substituted for the parameter AveLen and used to control the moving speed of the virtual viewpoint. LenjIs the distance between the jth target and the virtual viewpoint when the distance from the virtual viewpoint is sorted in ascending order, CjIs a weighting factor assigned to the target. In the game, by setting a small weighting factor for the “flame” that must be extinguished (for example, a large flame or a flame near the exit), the virtual viewpoint moves slowly near the “flame”. Therefore, appropriate camera movement can be realized.
[0042]
In addition, the fire fighting game can be played simultaneously by a plurality of players. In this fire fighting game, unlike the shooting game, the game does not end when the player receives damage. Therefore, a play time (for example, 5 minutes) is set in advance, and the game is automatically over after the play time has elapsed. Here, with reference to the flowchart of FIG. 9, a game end procedure when two players execute a game will be described. When the game device is turned on, the game device waits for input (step T1). When the player 1 enters a game by operating a button on the operation panel 5 (step T2: YES), the timer is activated and the play time is measured (step T3). If the player 2 enters the game during play by the player 1 (step T4: YES), a predetermined time is added to the play time (step T5). The predetermined time may be a predetermined length of time, but may be set corresponding to the remaining time of the play time as described above. Then, after the added play time has elapsed (step T6: YES), the game execution of the player 1 and the player 2 is ended simultaneously. On the other hand, when the player 2 does not enter the game during the play of the player 1 (step T4: NO), after the play time has elapsed (step T8: YES), the game of the player 1 is ended (step T9). By adopting such a game end procedure, even when another player enters a game while one player is playing a game, the game end time is set simultaneously for a plurality of players. be able to.
[0043]
In the above description, the case where the game of two players is ended at the same time has been described. However, the number of players is not limited to two, and can be applied to the number of players who can play simultaneously.
[0044]
【The invention's effect】
According to the virtual viewpoint control apparatus of the present invention, viewpoint movement can be appropriately controlled according to the distance between a specific object located in the virtual three-dimensional space and the virtual viewpoint.
[0045]
According to the controller of the present invention, a controller suitable for a fire fighting game can be provided.
[0046]
According to the game device of the present invention, with respect to a game device in which the game is over due to time limitation, even when a player is executing a game and another player enters a game, the game can be ended simultaneously for all players. it can.
[Brief description of the drawings]
FIG. 1 is a front view and a rear view of a game apparatus of the present invention.
FIG. 2 is a side view of the game apparatus of the present invention.
FIG. 3 is a plan view and a back view of the game apparatus of the present invention.
FIG. 4 is an external view of a controller of the present invention.
FIG. 5 is a block diagram of the game device of the present invention.
FIG. 6 is an explanatory diagram of virtual viewpoint control according to the present invention.
FIG. 7 is a table in which the maximum value of the moving speed of the virtual viewpoint is registered for each predetermined section on the virtual viewpoint path.
FIG. 8 is a flowchart of virtual viewpoint control according to the present invention.
FIG. 9 is a flowchart defining the end of the game according to the present invention.
FIG. 10 is an explanatory diagram of a screen of a fire fighting game.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Game device, 2 ... Controller, 3 ... Outer cylinder, 4 ... Holding part, 5 ... Nozzle, 6 ... Hose, 7 ... Switch, 8 ... Eccentric cam, 28 ... Virtual viewpoint, 36 ... Pass

Claims (5)

画像制御手段によって実行される画像制御ステップを、記憶手段に記憶されたゲームプログラムに基づいて実行するように構成された画像処理方法において、
この画像制御ステップは、
仮想三次元空間内に仮想視点と複数のオブジェクトを設定するステップと、
前記仮想視点を仮想空間内で移動させるステップと、
前記仮想視点の視野領域内に存在する前記複数のオブジェクトの中から、予め前記ゲームプログラムによって設定されたターゲットを求めるステップと、
前記ターゲットと仮想視点との間の距離を演算するステップと、
前記ターゲットの数が、予め定められた指定数以上であるか否かを判定するステップと、
前記ターゲットの数が予め定められた数以上の場合に、当該ターゲットと前記仮想視点間の最大距離と平均距離とが、どれだけ離れているかを演算し、この演算結果を基に前記仮想視点の移動速度を求めるステップと、
移動する仮想視点から、当該仮想空間内に配置された複数のオブジェクトを捉え、これを表示手段の画面に、前記仮想視点から捉えた視界の様子として表示するステップと
を備えて構成されてなる画像処理方法。
In the image processing method configured to execute the image control step executed by the image control unit based on the game program stored in the storage unit,
This image control step
Setting a virtual viewpoint and a plurality of objects in a virtual three-dimensional space;
Moving the virtual viewpoint in a virtual space;
Obtaining a target set in advance by the game program from the plurality of objects existing in the visual field of the virtual viewpoint;
Calculating a distance between the target and a virtual viewpoint;
Determining whether the number of targets is equal to or greater than a predetermined number;
When the number of the targets is equal to or greater than a predetermined number, the maximum distance between the target and the virtual viewpoint and the average distance are calculated, and based on the calculation result, the virtual viewpoint is calculated. Determining the moving speed;
An image configured to capture a plurality of objects arranged in the virtual space from a moving virtual viewpoint, and display them on the screen of the display means as a state of view captured from the virtual viewpoint. Processing method.
前記画像制御ステップは、前記ターゲットの各々に対して、予め重み係数割り当てるステップをさらに備え、
前記移動速度を求めるステップにおいては、前記ターゲットに予め割り当てられた重み係数を考慮して前記仮想視点の移動速度を求める、請求項1記載の画像処理方法。
The image control step further includes a step of assigning a weighting factor in advance to each of the targets,
The image processing method according to claim 1 , wherein in the step of obtaining the moving speed, the moving speed of the virtual viewpoint is obtained in consideration of a weighting factor previously assigned to the target .
前記画像処理方法が、前記仮想視点を予め定められた経路上を移動させる場合の処理方法であって、
前記画像制御ステップは、前記ゲームプログラムに基づいて前記経路上の所定区間毎に前記仮想視点の速度の変化点を複数設定するステップと、当該変化点の区間毎に前記仮想視点の移動速度の最大値を設定するステップとをさらに備え、
前記移動速度を求めるステップにおいては、前記仮想視点の移動速度の最大値を考慮して前記仮想視点の移動速度を求める、請求項1記載の画像処理方法。
The image processing method is a processing method when moving the virtual viewpoint on a predetermined route,
The image control step includes a step of setting a plurality of speed change points of the virtual viewpoint for each predetermined section on the route based on the game program, and a maximum moving speed of the virtual viewpoint for each section of the change points. And setting a value ,
The image processing method according to claim 1 , wherein in the step of obtaining the moving speed, the moving speed of the virtual viewpoint is obtained in consideration of a maximum value of the moving speed of the virtual viewpoint .
請求項1に記載の画像処理方法をコンピュータに実行させる画像処理プログラムを記録したコンピュータ読取り可能な記録媒体。  A computer-readable recording medium on which an image processing program for causing a computer to execute the image processing method according to claim 1 is recorded. 記憶手段に記憶されたゲームプログラムに基づいて、画像制御手段が画像処理を実行するように構成された画像処理装置において、
仮想三次元空間内に仮想視点と複数のオブジェクトを設定する手段と、
前記仮想視点を仮想空間内で移動させる手段と、
前記仮想視点の視野領域内に存在する前記複数のオブジェクトの中から、予め前記ゲームプログラムによって設定されたターゲットを求める手段と、
前記ターゲットと仮想視点との間の距離を演算する手段と、
前記ターゲットの数が、予め定められた指定数以上であるか否かを判定する手段と、
前記ターゲットの数が予め定められた数以上の場合に、当該ターゲットと前記仮想視点間の最大距離と平均距離とが、どれだけ離れているかを演算し、この演算結果を基に前記仮想視点の移動速度を求める手段と、
移動する仮想視点から、当該仮想空間内に配置された複数のオブジェクトを捉え、これを表示手段の画面に、前記仮想視点から捉えた視界の様子として表示する手段と
を備えて構成されてなる画像処理装置。
In the image processing apparatus configured to execute image processing by the image control unit based on the game program stored in the storage unit,
Means for setting a virtual viewpoint and a plurality of objects in a virtual three-dimensional space;
Means for moving the virtual viewpoint in a virtual space;
Means for obtaining a target set in advance by the game program from among the plurality of objects existing in the visual field of the virtual viewpoint;
Means for calculating a distance between the target and the virtual viewpoint;
Means for determining whether or not the number of targets is equal to or greater than a predetermined number;
When the number of the targets is equal to or greater than a predetermined number, the maximum distance between the target and the virtual viewpoint and the average distance are calculated, and based on the calculation result, the virtual viewpoint is calculated. Means for determining the moving speed;
An image comprising: means for capturing a plurality of objects arranged in the virtual space from a moving virtual viewpoint, and displaying the objects as a visual field captured from the virtual viewpoint on a screen of the display means. Processing equipment.
JP12742299A 1999-05-07 1999-05-07 Image processing method, recording medium, and image processing apparatus Expired - Fee Related JP4019240B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP12742299A JP4019240B2 (en) 1999-05-07 1999-05-07 Image processing method, recording medium, and image processing apparatus
KR1020000018222A KR100681278B1 (en) 1999-05-07 2000-04-07 Image processing method, computer-readable recording medium and image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12742299A JP4019240B2 (en) 1999-05-07 1999-05-07 Image processing method, recording medium, and image processing apparatus

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2006128290A Division JP2006218318A (en) 2006-05-02 2006-05-02 Controller
JP2006128292A Division JP4022775B2 (en) 2006-05-02 2006-05-02 Game processing method and recording medium

Publications (3)

Publication Number Publication Date
JP2000322591A JP2000322591A (en) 2000-11-24
JP2000322591A5 JP2000322591A5 (en) 2007-04-05
JP4019240B2 true JP4019240B2 (en) 2007-12-12

Family

ID=14959577

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12742299A Expired - Fee Related JP4019240B2 (en) 1999-05-07 1999-05-07 Image processing method, recording medium, and image processing apparatus

Country Status (2)

Country Link
JP (1) JP4019240B2 (en)
KR (1) KR100681278B1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1363246A4 (en) 2001-02-23 2006-11-08 Fujitsu Ltd Display control device, information terminal device equipped with the display control device, and view point position control device
JP3479522B2 (en) * 2001-07-12 2003-12-15 コナミ株式会社 3D image processing program, 3D image processing method and apparatus
JP5063990B2 (en) 2006-11-15 2012-10-31 任天堂株式会社 GAME PROGRAM AND GAME DEVICE
JP6956209B2 (en) * 2015-06-11 2021-11-02 株式会社バンダイナムコエンターテインメント Terminal devices and programs

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07117812B2 (en) * 1990-07-18 1995-12-18 株式会社テレシステムズ Imitation device for fire extinguishing training
US5276785A (en) * 1990-08-02 1994-01-04 Xerox Corporation Moving viewpoint with respect to a target in a three-dimensional workspace
JP3181083B2 (en) * 1991-12-28 2001-07-03 任天堂株式会社 Shooting game system and shooting game system control method used therefor
GB9409790D0 (en) * 1994-05-16 1994-07-06 Lane Kerry Fire fighting simulator
JPH07320092A (en) * 1994-05-30 1995-12-08 Hitachi Ltd Animation generation system
JPH09161096A (en) * 1995-12-06 1997-06-20 Matsushita Electric Ind Co Ltd Three-dimensional picture display controller
GB9606791D0 (en) * 1996-03-29 1996-06-05 British Telecomm Control interface
GB9616184D0 (en) * 1996-08-01 1996-09-11 Philips Electronics Nv Virtual environment navigation
JP3415416B2 (en) * 1996-11-22 2003-06-09 株式会社セガ GAME DEVICE, IMAGE DATA FORMING METHOD, AND MEDIUM

Also Published As

Publication number Publication date
JP2000322591A (en) 2000-11-24
KR20010039564A (en) 2001-05-15
KR100681278B1 (en) 2007-02-12

Similar Documents

Publication Publication Date Title
US6379249B1 (en) Image generation device and information storage medium
KR100773286B1 (en) Video game apparatus, image display method, program control method and storage medium
US6570569B1 (en) Image processing device and image processing method
JP4172108B2 (en) GAME DEVICE AND ITS CONTROL METHOD
JP2003334382A (en) Game apparatus, and apparatus and method for image processing
JPH10211360A (en) Game device, and screen display method for game device
JP4797439B2 (en) GAME DEVICE AND PROGRAM
JP2007185359A (en) Program, information storing medium, and image generation system
JP4022775B2 (en) Game processing method and recording medium
JP2008093307A (en) Electronic game device, control method for electronic game and game program
JP2000140431A (en) Game device and image processor
EP3796988B1 (en) Virtual camera placement system
JP2001029652A (en) Image producing system and information memory medium
JP2001300143A (en) Game system and information storage medium
JP3990648B2 (en) Program, information storage medium, and image generation apparatus
JP4019240B2 (en) Image processing method, recording medium, and image processing apparatus
JP3685829B2 (en) 3D game device and image composition method
JP4278070B2 (en) Image generation system and information storage medium
JP2003334381A (en) Method for processing game, program thereof and storage medium thereof
JP3736767B2 (en) Image processing method
JP2006218318A (en) Controller
JP2009045273A (en) Program, information storage medium, and game system
JP2002320767A (en) Video game device and its image compositing method
JPH0884859A (en) Game device
JP2003154163A (en) Plotting control method, recoding medium, plotting controller and program

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060502

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070622

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070807

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070911

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

Free format text: PAYMENT UNTIL: 20101005

Year of fee payment: 3

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121005

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121005

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121005

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121005

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131005

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees