Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
GAME DEVICE, GAME CONTROL METHOD, AND GAME CONTROL PROGRAM
Document Type and Number:
WIPO Patent Application WO/2009/101663
Kind Code:
A1
Abstract:
Disclosed is game device (10) that comprises shape-data holding part (60) that holds data for objects located in a three dimensional space, first rendering part (42) that sets a viewpoint position and a viewpoint direction and that references the data held in shape-data holding part (60) to render said objects located in a three dimensional space, and viewpoint change part (41) that receives viewpoint position or viewpoint direction change instructions and that changes the viewpoint position or viewpoint direction. Viewpoint change part (41) can change the viewpoint position or viewpoint direction to be outside of a predetermined range when the viewpoint position or viewpoint direction is within said predetermined range.

Inventors:
SUZUKI TATSUYA (JP)
FUJIKI JUN (JP)
KIKUCHI TAKANORI (JP)
Application Number:
PCT/JP2008/003335
Publication Date:
August 20, 2009
Filing Date:
November 14, 2008
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SONY COMPUTER ENTERTAINMENT INC (JP)
SUZUKI TATSUYA (JP)
FUJIKI JUN (JP)
KIKUCHI TAKANORI (JP)
International Classes:
A63F13/00; G06T15/20
Foreign References:
JP2003022455A2003-01-24
JP2004220626A2004-08-05
EP1583037A12005-10-05
US6323859B12001-11-27
Other References:
TOYOTOMI K.: "SCEJ, Sakushi o Riyo shita Action Puzzle PSP 'Mugen Kairo', PS3 'Mugen Kairo -Jokyoku-' 'Dosureba Clear Dekirunoka?' o Kantan na Reidai de Kaisetsu", GAME WATCH, KABUSHIKI KAISHA IMPRESS WATCH, 8 February 2008 (2008-02-08), XP008150443, Retrieved from the Internet [retrieved on 20090206]
FUJIKI J. ET AL.: "3D Block-based Modeling Software ni Okeru Damashie Hyogen o Mochiita User Interface", TRANSACTIONS OF THE VIRTUAL REALITY SOCIETY OF JAPAN, THE VIRTUAL REALITY SOCIETY OF JAPAN, vol. 12, no. 3, 30 September 2007 (2007-09-30), pages 239 - 246
"Sakkaku o Riyo suru Puzzle Game 'Echochrome Mugen Kairo'", FAMITSU COM, 11 September 2007 (2007-09-11), Retrieved from the Internet [retrieved on 20090206]
"Mugen Kairo", SHUKAN FAMI TSU, NO.1000, 2 GATSU 15 NICHI SPECIAL EXTRA ISSUE, vol. 23, no. 7, pages 136 - 137
See also references of EP 2241357A4
Attorney, Agent or Firm:
MORISHITA, Sakaki (Ebisu-Nishi Shibuya-k, Tokyo 21, JP)
Download PDF:
Claims:
 視点位置及び視線方向を設定し、3次元空間内に配置されたオブジェクトのデータを保持する保持部に保持されたデータを参照して、前記3次元空間内に配置されたオブジェクトをレンダリングするモジュールと、
 前記視点位置又は前記視線方向の変更指示を受け付けて、前記視点位置又は前記視線方向を変更するモジュールと、
 前記視点位置又は前記視線方向が所定の範囲内に入ったとき、前記視点位置又は前記視線方向を前記所定の範囲外へ変更するモジュールと、
 を備えることを特徴とするゲーム制御プログラム製品。
 前記オブジェクトは、前記3次元空間内に設定された3本の座標軸のそれぞれに平行な辺を有する平行六面体を複数含み、
 前記変更するモジュールは、前記視線方向が前記平行六面体の底面に平行又は垂直な方向を含む所定の範囲内に入ったとき、前記視線方向が前記所定の範囲外になるように前記視点位置又は前記視線方向を変更することを特徴とする請求項1に記載のゲーム制御プログラム製品。
 視点位置及び視線方向を設定し、3次元空間内に配置されたオブジェクトのデータを保持する保持部に保持されたデータを参照して、前記3次元空間内に配置されたオブジェクトをレンダリングするモジュールと、
 前記視点位置又は前記視線方向の変更指示を受け付けて、前記視点位置又は前記視線方向を変更するモジュールと、
 前記オブジェクトの外面の一部を構成する平面に沿ってキャラクタを移動させるモジュールと、を備え、
 前記キャラクタを移動させるモジュールは、前記レンダリングするモジュールにより生成された2次元平面において近接するオブジェクト間で前記キャラクタの移動を許可し、
 前記変更するモジュールは、前記視線方向が前記平面に平行又は垂直である状態が所定時間以上維持されることを禁止することを特徴とするゲーム制御プログラム製品。
 前記変更するモジュールは、前記視線方向が前記平面に平行又は垂直となるような前記視点位置又は前記視線方向の変更指示を無視することを特徴とする請求項3に記載のゲーム制御プログラム製品。
 前記変更するモジュールは、前記視線方向が前記平面に平行又は垂直な方向を含む所定の範囲内に入ったとき、前記視点位置又は前記視線方向を前記所定の範囲外へ変更することを特徴とする請求項3又は4に記載のゲーム制御プログラム製品。
 前記オブジェクトは、前記3次元空間内に設定された3本の座標軸のそれぞれに平行な辺を有する平行六面体を含み、
 前記キャラクタを移動させるモジュールは、前記平行六面体の上底面に沿って前記キャラクタを移動させ、
 前記変更するモジュールは、前記平行六面体の上底面に平行又は垂直である状態が所定時間以上維持されることを禁止することを特徴とする請求項3から5のいずれかに記載のゲーム制御プログラム製品。
 前記レンダリングするモジュールは、平行投影変換により前記オブジェクトをレンダリングすることを特徴とする請求項3から6のいずれかに記載のゲーム制御プログラム製品。
 前記キャラクタを移動させるモジュールは、前記平面上において、前記キャラクタを前記平面から離れる方向へ移動させる機能が割り当てられた位置を前記キャラクタが通過したときに、前記キャラクタを前記平面から離れる方向へ移動させる一方、前記視点位置から見て前記機能が割り当てられた位置の手前にオブジェクトが存在し、前記レンダリングするモジュールにより生成された2次元平面において前記機能が割り当てられた位置が見えない状態にある場合には、前記機能を発現させず、前記平面に沿って前記キャラクタを移動させることを特徴とする請求項3から7のいずれかに記載のゲーム制御プログラム製品。
 3次元空間内に配置されたオブジェクトのデータを保持する保持部と、
 視点位置及び視線方向を設定し、前記保持部に保持されたデータを参照して、前記3次元空間内に配置されたオブジェクトをレンダリングするレンダリング部と、
 前記視点位置又は前記視線方向の変更指示を受け付けて、前記視点位置又は前記視線方向を変更する変更部と、を備え、
 前記変更部は、前記視点位置又は前記視線方向が所定の範囲内に入ったとき、前記視点位置又は前記視線方向を前記所定の範囲外へ変更することを特徴とするゲーム装置。
 視点位置及び視線方向を設定し、3次元空間内に配置されたオブジェクトのデータを保持する保持部に保持されたデータを参照して、前記3次元空間内に配置されたオブジェクトをレンダリングするステップと、
 前記視点位置又は前記視線方向の変更指示を受け付けて、前記視点位置又は前記視線方向を変更するステップと、
 前記視点位置又は前記視線方向が所定の範囲内に入ったとき、前記視点位置又は前記視線方向を前記所定の範囲外へ変更するステップと、
 を備えることを特徴とするゲーム制御方法。
 請求項1から8のいずれかに記載のゲーム制御プログラム製品を記録したコンピュータ読み取り可能な記録媒体。
 視点位置及び視線方向を設定し、3次元空間内に配置されたオブジェクトのデータを保持する保持部に保持されたデータを参照して、前記3次元空間内に配置されたオブジェクトをレンダリングするモジュールと、
 方向を入力する入力装置により入力可能な方向のそれぞれに、前記3次元空間内に設定された3本の座標軸に平行な方向のいずれかを割り当て、前記入力装置から方向の入力を受け付けると、入力された方向に割り当てられた方向へポインタを移動させるモジュールと、
 を備えることを特徴とするゲーム制御プログラム製品。
 前記ポインタを移動させるモジュールは、前記3本の座標軸に平行な方向のうち、前記レンダリングするモジュールにより生成された2次元の画面において、前記入力装置により入力可能な方向のそれぞれとのなす角度が最も小さい方向を、前記入力装置により入力される方向に割り当てることを特徴とする請求項12に記載のゲーム制御プログラム製品。
 前記視点位置又は前記視線方向の変更指示を受け付けて、前記視点位置又は前記視線方向を変更するモジュールを更に備え、
 前記ポインタを移動させるモジュールは、所定のタイミングで、前記3本の座標軸に平行な方向と前記入力装置により入力可能な方向とのなす角を再評価し、前記入力装置により入力される方向に割り当てる方向を変更することを特徴とする請求項12又は13に記載のゲーム制御プログラム製品。
 前記ポインタ又は前記ポインタの近傍に表示されるオブジェクトを、前記ポインタが移動する方向を識別可能な態様で表示させるモジュールを更に備えることを特徴とする請求項12から14のいずれかに記載のゲーム制御プログラム製品。
 前記レンダリングするモジュールは、平行投影変換により前記オブジェクトをレンダリングすることを特徴とする請求項12から15のいずれかに記載のゲーム制御プログラム製品。
 3次元空間内に配置されたオブジェクトのデータを保持する保持部と、
 視点位置及び視線方向を設定し、前記保持部に保持されたデータを参照して、前記3次元空間内に配置されたオブジェクトをレンダリングするレンダリング部と、
 方向を入力する入力装置により入力可能な方向のそれぞれに、前記3次元空間内に設定された3本の座標軸に平行な方向のいずれかを割り当て、前記入力装置から方向の入力を受け付けると、入力された方向に割り当てられた方向へポインタを移動させる制御部と、
 を備えることを特徴とするゲーム装置。
 視点位置及び視線方向を設定し、3次元空間内に配置されたオブジェクトのデータを保持する保持部に保持されたデータを参照して、前記3次元空間内に配置されたオブジェクトをレンダリングするステップと、
 方向を入力する入力装置により入力可能な方向のそれぞれに、前記3次元空間内に設定された3本の座標軸に平行な方向のいずれかを割り当て、前記入力装置から方向の入力を受け付けると、入力された方向に割り当てられた方向へポインタを移動させるステップと、
 を備えることを特徴とするゲーム制御方法。
 請求項12から16のいずれかに記載のゲーム制御プログラム製品を記録したコンピュータ読み取り可能な記録媒体。 
Description:
ゲーム装置、ゲーム制御方法、 びゲーム制御プログラム

 本発明は、ゲーム制御技術に関し、とく 、3次元空間内に作成されたオブジェクトの 上をキャラクタに移動させるゲームを制御す るゲーム装置、ゲーム制御方法、及びゲーム 制御プログラムに関する。

 「だまし絵」は、平行投影変換の特性を みに利用して、現実にはあり得ない不思議 3次元世界を2次元平面上に表現している。 えば、エッシャーの「上昇と下降」は、実 には高さの異なる位置にある階段を、あた もつながっているかのように描くことで、1 すると元の位置に戻り、無限に上昇又は下 し続ける不思議な階段を表現している。

 本発明者は、上述しただまし絵のトリック 利用した全く新しいゲームを想到し、下記U RLにて公開している。
藤木淳(Jun Fujiki)、「OLE Coordinate System」 、[online]、平成18年10月6日、藤木淳(Jun Fujiki) [平成20年2月15日検索]、インターネット<UR L:http://tserve01.aid.design.kyushu-u.ac.jp/~fujiki/ole_coor dinate_system/index.html>

 本発明者らは、このような新しいゲーム おいて、プレイヤーの利便性を向上させる 術を想到するに至った。

 本発明はこうした状況に鑑みてなされた のであり、その目的は、より娯楽性の高い ーム制御技術を提供することにある。

 本発明のある態様は、ゲーム制御プログ ムに関する。このゲーム制御プログラムは 視点位置及び視線方向を設定し、3次元空間 内に配置されたオブジェクトのデータを保持 する保持部に保持されたデータを参照して、 前記3次元空間内に配置されたオブジェクト レンダリングする機能と、前記視点位置又 前記視線方向の変更指示を受け付けて、前 視点位置又は前記視線方向を変更する機能 、前記視点位置又は前記視線方向が所定の 囲内に入ったとき、前記視点位置又は前記 線方向を前記所定の範囲外へ変更する機能 、をコンピュータに実現させることを特徴 する。

 本発明の別の態様も、ゲーム制御プログ ムに関する。このゲーム制御プログラムは 視点位置及び視線方向を設定し、3次元空間 内に配置されたオブジェクトのデータを保持 する保持部に保持されたデータを参照して、 前記3次元空間内に配置されたオブジェクト レンダリングする機能と、方向を入力する 力装置により入力可能な方向のそれぞれに 前記3次元空間内に設定された3本の座標軸に 平行な方向のいずれかを割り当て、前記入力 装置から方向の入力を受け付けると、入力さ れた方向に割り当てられた方向へポインタを 移動させる機能と、をコンピュータに実現さ せることを特徴とする。

 なお、以上の構成要素の任意の組合せ、 発明の表現を方法、装置、システムなどの で変換したものもまた、本発明の態様とし 有効である。

 本発明によれば、より娯楽性の高いゲー 制御技術を提供することができる。

実施の形態に係るゲーム装置により制 されるゲームにおける3次元空間の例を示す 図である。 図2(a)(b)は、本実施の形態で採用される 第1の規則を説明するための図である。 図3(a)(b)は、本実施の形態で採用される 第2の規則を説明するための図である。 図4(a)(b)は、本実施の形態で採用される 第3の規則を説明するための図である。 図5(a)(b)は、本実施の形態で採用される 第4の規則を説明するための図である。 図6(a)(b)は、本実施の形態で採用される 第5の規則を説明するための図である。 実施の形態に係るゲーム装置の構成を す図である。 コントローラの外観を示す図である。 コントローラの別の例を示す図である 視点変更部の動作について説明するた めの図である。 図11(a)(b)は、視点位置を真横に移動さ ることを禁止する理由を説明するための図 ある。 図12(a)(b)は、視点位置を真上に移動さ ることを禁止する理由を説明するための図 ある。 視点位置を下方向へ移動させたときの 視点変更部の動作を説明するための図である 。 視点位置を上方向に移動させたときの 視点変更部の動作を説明するための図である 。 視点位置を上方向に移動させたときの 視点変更部の動作の別の例を示す図である。 図16(a)(b)は、探索部の動作を説明する めの図である。 第2の実施の形態に係るゲーム装置の 成を示す図である。 3次元空間を編集するための画面の例 示す図である。 3次元空間を編集するための画面の例 示す図である。 図20(a)(b)(c)(d)は、スナップ制御部の動 を説明するための図である。

符号の説明

 10 ゲーム装置、20 コントローラ、30 入 受付部、40 制御部、41 視点変更部、42 第1 レンダリング部、43 第2レンダリング部、44  キャラクタ制御部、45 探索部、46 カーソル 御部、47 スナップ制御部、48 編集部。

(第1の実施の形態)
 実施の形態に係るゲーム装置は、3次元空間 内に配置された立体的な通路に沿ってキャラ クタを所定の位置に移動させるゲームを提供 する。本実施の形態のゲームにおいては、だ まし絵のトリックを応用した、現実の3次元 間ではあり得ない新しい規則に則ってキャ クタを移動させる。まず、ゲームの概要に いて説明する。

 図1は、実施の形態に係るゲーム装置によ り制御されるゲームにおける3次元空間の例 示す。3次元空間内には、立方体のブロック8 0と、高さの異なる位置に配置されたブロッ 間をつなぐ階段81とを組み合わせて形成され た複数の通路86及び87が設けられている。通 上には、通路の上底面に沿って自動的に移 するキャラクタであるキャスト84と、静止し たキャラクタであるエコー85が配置されてお 、プレイヤーは、キャスト84がエコー85に接 触するようにキャスト84を移動させる。通路 には、更に、キャスト84を通路の上底面か 離れる方向へ移動させる機能が割り当てら る。具体的には、キャスト84を跳躍させる機 能を有するファン82と、キャスト84を落下さ る機能を有するホール83が配置されている。 なお、ブロック80は、3次元空間内に設定され た3本の座標軸のそれぞれに平行な辺を有す 平行六面体であってもよく、直交座標系に いては直方体であってもよいが、本実施の 態では理解を容易にするために立方体とす 。

 キャスト84が配置された通路86と、エコー 85が配置された通路87は、3次元空間内では離 しているので、キャスト84が通路86に沿って 移動している限り、エコー85に接触すること ない。しかし、本実施の形態では、以下の5 つの新しい規則を採用し、空間的に離間した 通路間をキャスト84が移動することを可能と る。

1.主観的移動
 図2(a)(b)は、本実施の形態で採用される第1 規則を説明するための図である。図2(a)にお て、ブロック90aとブロック90bは高さの異な 位置に配置されているが、図2(b)に示したよ うに視点を移動すると、あたかもつながって いるかのように見える。本実施の形態では、 このように、あたかもつながっているかのよ うに見えるブロック同士を、実際につながっ ているものとして扱い、ブロック90aからブロ ック90bへのキャスト84の移動を可能とする。 の規則を「主観的移動」と呼ぶ。

2.主観的着地
 図3(a)(b)は、本実施の形態で採用される第2 規則を説明するための図である。図3(a)にお て、ホール83が設けられたブロック91aとブ ック91bとは同じ高さに配置されているが、 3(b)に示したように視点を移動すると、ブロ ク91bはブロック91aの真下にあるかのように える。本実施の形態では、このように、ホ ル83からキャスト84が落下したとき、あたか も足下にあるかのように見えるブロック91bに 、キャスト84が実際に着地することを可能と る。この規則を「主観的着地」と呼ぶ。

3.主観的存在
 図4(a)(b)は、本実施の形態で採用される第3 規則を説明するための図である。図4(a)にお て、ブロック92aとブロック92bは、空間的に 間した位置に配置されているが、図4(b)に示 したように視点を移動すると、ブロック92aと ブロック92bの間の隙間がオブジェクト92cによ り隠され、あたかもつながっているかのよう に見える。本実施の形態では、このように、 他のオブジェクトにより隠された位置に、ブ ロックが存在しているものとして扱い、ブロ ック92aからブロック92bへのキャスト84の移動 可能とする。この規則を「主観的存在」と ぶ。

4.主観的不在
 図5(a)(b)は、本実施の形態で採用される第4 規則を説明するための図である。図5(a)にお て、ブロック93aにはホール83が設けられて るが、図5(b)に示したように視点を移動する 、ブロック93aに設けられたホール83が他の 路により隠され、あたかもホール83が存在し ないかのように見える。本実施の形態では、 このように、他のオブジェクトにより隠され たファン82及びホール83を、実際に存在しな ものとして扱い、ファン82及びホール83の機 を発現しない。この規則を「主観的不在」 呼ぶ。

5.主観的跳躍
 図6(a)(b)は、本実施の形態で採用される第5 規則を説明するための図である。図6(a)にお て、ファン82が設けられたブロック94aとブ ック94bとは空間的に大きく離間した位置に 置されているが、図6(b)に示したように視点 移動すると、ブロック94aとブロック94bとの の距離が縮まったかのように見える。本実 の形態では、このように、ファン82により ャスト84が跳躍したとき、あたかもファン82 近くに存在するように見えるブロック94bに キャスト84が実際に着地することを可能と る。この規則を「主観的跳躍」と呼ぶ。

 上述した5つの規則を用いることにより、 プレイヤーは、3次元空間内では実際には離 した通路間であっても、視点位置を操作す ことでキャスト84を移動させることができる 。

 図7は、実施の形態に係るゲーム装置10の 成を示す。ゲーム装置10は、コントローラ20 、入力受付部30、制御部40、形状データ保持 60、画面生成部66、及び表示装置68を備える これらの構成は、ハードウエアコンポーネ トでいえば、任意のコンピュータのCPU、メ リ、メモリにロードされたプログラムなど よって実現されるが、ここではそれらの連 によって実現される機能ブロックを描いて る。したがって、これらの機能ブロックが ードウエアのみ、ソフトウエアのみ、また それらの組合せによっていろいろな形で実 できることは、当業者には理解されるとこ である。

 入力受付部30は、プレイヤーが操作する ントローラ20から入力される制御信号を受け 付ける。制御部40は、入力受付部30が受け付 たプレイヤーからの操作入力に基づいて視 位置を制御しつつ、3次元空間内に配置され 立体的な通路に沿ってキャストを移動させ ゲームを進行させる。形状データ保持部60 、3次元空間内に配置されたオブジェクトの ータを保持する。画面生成部66は、制御部40 により制御されるゲームの画面を生成し、表 示装置68に表示させる。

 図8は、コントローラ20の外観を示す。コ トローラ20の上面には、十字キー21、△ボタ ン22、□ボタン23、○ボタン24、×ボタン25、 ナログスティック26及び27が設けられている また、コントローラ20の側面には、Lボタン2 8及びRボタン29が設けられている。本実施の 態では、十字キー21及びアナログスティック 26及び27には、視点位置を入力した方向へ移 させる機能が、Rボタン29には、視点位置の 動を高速化する機能が、それぞれ割り当て れている。また、△ボタン22には、キャスト 84を停止させる機能が、×ボタン25には、キャ スト84の移動を高速化する機能が、それぞれ り当てられている。また、□ボタン23には 後述するように、主観的移動が可能なブロ クの探索を要求する機能が、○ボタン24には 、探索対象を変更する機能が、それぞれ割り 当てられている。

 図9は、コントローラ20の別の例を示す。 9は、携帯型のゲーム装置10の外観を示して り、ゲーム装置10の上面には、コントロー 20と表示装置68が設けられている。図8に示し たコントローラ20と同様の機能を有する部材 は、同じ符号を付している。

 形状データ保持部60は、3次元空間内に配 されたオブジェクトのデータを保持する。 状データ保持部60は、ブロック80や階段81な のオブジェクトの中心位置の3次元ワールド 座標、キャスト84やエコー85などのキャラク の現在位置の3次元ワールド座標、ファン82 びホール83が配置されたブロック80の識別情 などを保持する。また、形状データ保持部6 0は、ブロック80、階段81、ファン82、ホール83 、キャスト84、エコー85などの3次元形状デー を保持する。

 本実施の形態では、同じ形状の立方体の ロック80を3次元空間に配置する。これによ 、プレイヤーが通路の立体的な形状を把握 やすくなるとともに、上述した規則が適用 れやすいようにすることができる。また、 ンダリングの負荷を低減させることができ 。また、3次元格子の決まった位置にブロッ ク80が配置されるので、立方体の各辺を単位 クトルとする座標系における座標でブロッ 80の位置を表現してもよい。これにより、 ータ量を低減することができるとともに、 述する探索の処理負荷を低減させることが きる。

 視点変更部41は、入力受付部30から伝達さ れる、プレイヤーが入力した視点位置又は視 線方向の変更指示を受け付けて、3次元空間 レンダリングするための視点位置又は視線 向を変更する。視点変更部41は、3次元空間 に設定された所定位置を中心とした球面に って視点位置を移動させてもよい。このと 、視点位置から所定位置への方向を視線方 としてもよい。視点変更部41は、変更した視 点位置を第1レンダリング部42及び第2レンダ ング部43へ通知する。

 図10は、視点変更部41の動作について説明 するための図である。視点変更部41は、コン ローラ20の十字キー21又はアナログスティッ ク26による方向の入力を受け付けると、点96 中心とした球面に沿って、入力された方向 視点位置95を移動させる。視点位置95から中 の点96へ向かう方向が視線方向となる。球 半径は、3次元空間に配置されたオブジェク 全体の大きさなどに応じて、例えば全体が 面におさまるように伸縮されてもよい。な 、本実施の形態では、視点変更部41が視点 置を変更するが、別の例では、オブジェク のワールド座標に回転変換を施すことによ 、3次元空間を回転させてもよい。

 視点変更部41は、視線方向が、キャスト84 が移動するブロック80の上底面に平行又は垂 となる状態が所定時間以上維持されること 禁止する。このように視点位置を制限する 由を以下に述べる。

 図11(a)(b)は、視点位置を真横に移動させ ことを禁止する理由を説明するための図で る。図11(a)に示した3次元空間を矢印の方向 すなわち真横から見たとき、図11(b)に示すよ うに、通路86の上面と通路87の上面は一致す ので、主観的移動により通路86と通路87の間 容易に行き来することができてしまう。ま 、通路の上面に配置されるファン82及びホ ル83は全て見えなくなるので、主観的不在に より全てのファン82及びホール83は機能しな なる。このように、水平方向に視点位置を 動させることを許すと、ゲームが極端に容 になってしまうことがある。

 図12(a)(b)は、視点位置を真上に移動させ ことを禁止する理由を説明するための図で る。図12(a)に示した3次元空間を矢印の方向 すなわち真上から見たとき、図12(b)に示すよ うに、実際には高さの異なる位置に配置され たブロック94aを含む通路とブロック94bを含む 通路がつながって見えるので、主観的移動に よりブロック94aとブロック94との間を容易に き来することができてしまう。このように 真上又は真下に視点位置を移動させること 許すと、ゲームが極端に容易になってしま ことがある。

 以上のように、本実施の形態のゲームで 、主観的移動によりつながって見える通路 を移動することができるという規則を採用 ているため、真上、真下、真横という特定 方向に視点位置を移動することを許すと、 ームの難易度が極端に変わってしまうとい 新たな問題が生じる。したがって、視点変 部41は、図10に示すように、視点位置の変更 を、上方向は水平から65°まで、下方向は水 から40°までの範囲に制限し、それ以上視点 置を変更する指示入力があっても無視して 上記の範囲外に視点位置を変更することを 止する。また、真横の方向を含む水平から 下5°以内の範囲内に視点位置が入ったとき 視点位置を範囲外へ強制的に移動させる。

 図13は、視点位置を下方向へ移動させた きの視点変更部41の動作を説明するための図 である。プレイヤーが、視点位置を位置95か 下方向へ移動させたとき、視点変更部41は 水平方向から上へ5°の位置97aまでは視点位 を連続的に下方向へ移動させる。位置97aに いて、更に視点位置を下方向へ移動させる 作入力を受け付けると、視点変更部41は、視 点位置を水平方向から下へ5°の位置97bまで強 制的に移動させ、位置97aから位置97bまでの間 における視点位置の停止を禁止する。視点変 更部41は、位置97aから位置97bまで非連続的に 点位置をジャンプさせてもよいし、連続的 スライドさせてもよい。いずれにしても、 平方向すなわち真横の位置に視点位置が停 させないように視点位置を制御する。

 後者の例において、視点変更部41は、位 97aから位置97bまで連続的に視点位置を変更 ている間に、プレイヤーから視点位置を下 向以外の方向へ変更させる指示入力を受け けると、新たに入力された方向へ視点位置 移動させつつ、水平方向から上下へ5°の範 から外れるように視点位置を移動させても い。例えば、位置97aから位置97bまで視点位 を変更している間に、上方向へ視点位置を 更させる指示入力を受け付けると、その時 の位置から移動方向を上方向へ切り替え、 置97aまで視点位置を連続的に変更する。ま 、右方向へ視点位置を変更させる指示入力 受け付けると、その時点の位置から移動方 を右下方向へ切り替え、水平方向から下へ5 の位置まで視点位置を移動させる。要は、 平方向から上下へ5°の範囲内に所定時間以 視点位置が維持されないようにすればよい

 図14は、視点位置を上方向に移動させた きの視点変更部41の動作を説明するための図 である。プレイヤーが、視点位置を位置95か 上方向へ移動させたとき、視点変更部41は 水平方向から上へ65°の位置98aまでは視点位 を連続的に上方向へ移動させる。位置98aに いて、更に視点位置を上方向へ移動させる 作入力を受け付けると、視点変更部41は、 れを無視し、真上への視点位置の移動を禁 する。

 図15は、視点位置を上方向に移動させた きの視点変更部41の動作の別の例を示す。位 置98aにおいて、更に視点位置を上方向へ移動 させる操作入力を受け付けると、視点変更部 41は、視点位置を逆側の位置98bまで強制的に 動させ、位置98aから位置98bまでの間におけ 視点位置の停止を禁止する。この場合、そ まま視点位置を逆側へ移動させると、画面 上下方向が逆転し、操作入力の方向と視点 置の移動方向とが逆転してしまうので、画 の上下方向を反転させてもよい。

 第1レンダリング部42は、視点変更部41か 視点位置を取得し、形状データ保持部60に保 持されたデータを参照して、3次元空間に配 されたオブジェクトを平行投影変換により ンダリングする。第1レンダリング部42は、 知された視点位置から3次元空間内に設定さ た所定位置へ向かう方向を視線方向に設定 てレンダリングしてもよい。すなわち、第1 レンダリング部42は、視点位置から所定位置 向かうベクトルを法線ベクトルとする平面 投影面として3次元空間を投影する。

 第2レンダリング部43は、第1レンダリング 部42と同様に、視点変更部41から視点位置を 得し、形状データ保持部60に保持されたデー タを参照して、ブロック80及び階段81をレン リングする。第2レンダリング部43は、各ピ セルの画素値を算出して表示画面を生成す のではなく、各ピクセルにブロックのID、面 のID、Z値を格納する。第2レンダリング部43は 、さらに、ファン82やホール83の有無を示す 報を各ピクセルに格納してもよい。このレ ダリング結果は、後述するように、キャラ タ制御部44により利用される。第2レンダリ グ部43の機能の一部又は全部が、第1レンダ ング部42と共有されてもよい。

 キャラクタ制御部44は、3次元空間内に配 されたブロック80により形成された通路の 底面に沿ってキャスト84などのキャラクタを 移動させる。キャラクタ制御部44は、キャス 84を所定の速度で移動させ、第1レンダリン 部42がレンダリングを行う時間間隔に合わ てキャストの現在位置の3次元ワールド座標 算出し、形状データ保持部60を更新する。 ャラクタ制御部44は、プレイヤーが×ボタン2 5を押下している間は、通常よりも速い速度 キャスト84を移動させる。キャラクタ制御部 44は、プレイヤーが△ボタン22を押下すると キャスト84の移動を停止させ、プレイヤーが 再び△ボタン22を押下すると、キャスト84の 動を再開させる。

 キャラクタ制御部44は、キャスト84がブロ ック80の中央を通過する前に、キャスト84を に移動させるブロックを判定する。キャラ タ制御部44は、キャスト84の足下にあるブロ クの前後左右に隣接するブロック又は階段 存在するか否かを次のように判定し、移動 のブロックを決定する。

 キャラクタ制御部44は、まず、キャスト84 の足下にあるブロックを基準にして、進行方 向の左側に隣接するブロックが存在するか否 かを判定する。キャラクタ制御部44は、3次元 空間内において左側に隣接するブロックが実 際に存在する場合は、そのブロックを移動先 に設定する。キャラクタ制御部44は、3次元空 間内において左側に隣接するブロックにファ ン82又はホール83が配置されていても、レン リングされた2次元平面においてオブジェク により隠されて見えない場合は、それらの 能を発現させない(主観的不在)。

 キャラクタ制御部44は、3次元空間内にお て左側に隣接するブロックの位置に、実際 はブロックが存在しなくても、その位置に 想ブロックを配置したとき、2次元平面に仮 想ブロックが描画されるはずの位置から第1 範囲内に描画されているブロックがあれば そのブロックが、3次元空間内において左側 隣接する位置に実際に存在するものとして そのブロックを移動先に設定する(主観的移 動)。キャラクタ制御部44は、第2レンダリン 部43のレンダリング結果を参照して移動先の ブロックのIDを取得し、更に形状データ保持 60を参照してそのブロックの3次元ワールド 標を取得することにより、そのブロックに 動した後のキャスト84の現在位置の3次元ワ ルド座標を算出する。

 キャラクタ制御部44は、3次元空間内にお て左側に隣接するブロックの位置が、レン リングされた2次元平面においてオブジェク トにより隠されて見えない場合は、実際にそ の位置にブロックが存在しなくても、ブロッ クが存在するものとして、そのブロックを移 動先に設定する(主観的存在)。キャラクタ制 部44は、実際には存在しないブロックの上 主観的存在によりキャスト84が通過している 間に、キャスト84の足下にブロックが存在し いないことが見える位置に視点位置が変更 れた場合、キャスト84をその位置から下方 落下させる。このとき、キャスト84がホール 83から落下するときと同様に、2次元平面内で キャスト84の下方にブロックが存在すれば、 のブロックにキャスト84を着地させる。

 キャラクタ制御部44は、進行方向の左側 隣接するブロックが存在しなければ、前、 、後ろの順に移動先のブロックを探索する キャラクタ制御部44は、キャスト84が前後左 に隣接するいずれのブロックにも移動でき いと判定した場合、キャスト84をその位置 留まらせる。

 キャラクタ制御部44は、キャスト84がファ ン82の上を通過したとき、ファン82に設定さ た初速度でキャスト84を跳躍させる。ただし 、キャラクタ制御部44は、3次元空間内でキャ スト84の軌跡を計算するのではなく、レンダ ングされた2次元空間内で軌跡を計算する。 キャラクタ制御部44は、第2レンダリング部43 よりレンダリングされた2次元平面のデータ を参照して、跳躍したキャスト84が落下する きの軌跡上にブロックが存在するか否かを 定し、ブロックが存在すれば、キャスト84 そのブロックに着地させる。このとき、キ ラクタ制御部44は、落下するキャスト84が画 で最も手前になるようにZ値を設定し、ブロ ックのZ値にかかわらず2次元平面内で軌跡上 存在するブロックに着地させる。キャラク 制御部44は、形状データ保持部60を参照して 、着地したブロックのIDからキャスト84の現 位置の3次元ワールド座標を算出し、形状デ タ保持部60を更新する。

 キャラクタ制御部44は、キャスト84がホー ル83の上を通過したとき、キャスト84をホー 83の下方へ落下させる。キャラクタ制御部44 、ホール83が設けられたブロックと3次元空 内で一体になっているオブジェクトよりも 方へ落下して、キャスト84が全て見えるよ になった後、2次元平面内でキャスト84の下 にブロックが存在するか否かを判定し、ブ ックが存在すればキャスト84をそのブロック に着地させる。キャラクタ制御部44は、形状 ータ保持部60を参照して、着地したブロッ のIDからキャスト84の現在位置の3次元ワール ド座標を算出し、形状データ保持部60を更新 る。

 探索部45は、レンダリングされた2次元平 における距離が所定の範囲内にあるブロッ の組を探索し、探索されたブロック同士が2 次元平面において隣接して描画されるように 、視点位置又は視線方向を変更する。より具 体的には、探索部45は、探索対象となるブロ クに隣接する位置に仮想ブロックを配置し とき、2次元平面における仮想ブロックとの 距離が第1の範囲よりも長い第2の範囲内にあ ブロックを探索する。該当するブロックが れば、探索部45は、探索されたブロックと 想ブロックとの距離が第1の範囲内になるよ に、視点位置又は視線方向を変更する。探 部45は、任意のタイミングで探索を行って よいし、視点位置が変更された後に探索を ってもよいし、プレイヤーが□ボタン23を押 下して探索を要求したときに探索を行っても よい。

 図16(a)(b)は、探索部45の動作を説明するた めの図である。図16(a)において、探索部45は 探索を要求する指示入力を受け付けると、 ず、その時点でキャスト84が存在するブロッ ク90aを探索対象とする。探索部45は、ブロッ 90aを基準として、キャスト84の進行方向の 側に仮想ブロック99aを仮想的に配置させ、 2レンダリング部43により生成された2次元平 において、仮想ブロック99aから第2の範囲内 に描画されているブロックが存在するか否か を判定する。図16(a)の例では、仮想ブロック9 9aの近隣にはブロックは存在しないので、つ いて、ブロック90aを基準として、キャスト8 4の進行方向の前方に仮想ブロック99bを仮想 に配置させ、2次元平面において仮想ブロッ 99bから第2の範囲内に描画されているブロッ クが存在するか否かを判定する。図16(a)の例 は、ブロック90bは仮想ブロック99bの近傍に 画されているので、探索部45は、ブロック90 bを探索結果として取得する。このように、 索部45は、探索対象ブロックの前後左右に隣 接する位置に仮想ブロック99a~99dを仮想的に 置し、2次元平面において仮想ブロック99a~999 dから第2の範囲内に描画されているブロック 探索する。このとき、仮想ブロック99dの位 には、3次元空間において実際にブロックが 配置されているので、仮想ブロック99dは探索 対象外とする。

 探索されたブロック90bは、2次元平面にお いて、仮想ブロック99bから第1の範囲以上離 しているので、このままでは、キャラクタ 御部44はブロック90aとブロック90bが隣接して いるとは判定しないので、主観的移動が成立 しない。探索部45は、探索されたブロック90b 探索対象のブロック90aに隣接して描画され ように、視点位置を変更させる。具体的に 、ブロック90bと仮想ブロック99bの中心間を ぶベクトルが視線方向と平行になるように 球面の中心の点96からそのベクトルに平行 直線を引いて、球面との交点を視点位置と ればよい。これにより、2次元平面において れらのブロックは同じ位置にレンダリング れることになるので、図16(b)に示すように ブロック90aとブロック90bが隣接しているよ に描画され、これらのブロック間で主観的 動が成立する。

 ブロック90aから主観的移動が可能なブロ クが発見されなかった場合は、探索部45は キャスト84が次に移動するブロックを探索対 象として、再び探索を行う。探索部45は、こ ように、キャスト84の現在位置から所定の 囲内にあるブロック、例えば、キャスト84が 移動する予定の5つ先のブロックまでを探索 象として探索を行ってもよい。

 プレイヤーが視点位置の変更により主観 移動を成立させるためには、ブロック同士 隣接して見えるように視点位置を微妙に調 する必要があるが、操作体系に不慣れなプ イヤーには微妙な調整が困難な場合がある 本実施の形態では、ブロック同士が隣接し 見えるように視点位置を自動的に変更する で、プレイヤーの利便性を向上させること できる。また、探索対象をキャストの周囲 限定することで、キャストから遠く離れた ロックが偶然近接して描画されていたため 、視点位置が意図しない位置に自動的に変 され、プレイヤーが混乱することを防ぐこ ができる。さらに、探索部45は、キャラク 制御部44がキャスト84の移動先のブロックを 定するときと同様に、キャスト84が存在す ブロックを基準として、進行方向の左、前 右、後ろの順に主観的移動が可能なブロッ を探索するので、プレイヤーがキャスト84を 移動させようとしているブロックを優先的に 探索し、主観的移動が成立するように視点位 置を移動させることができる。これにより、 プレイヤーの利便性を向上させることができ る。

(第2の実施の形態)
 つづいて、上述したゲーム装置において用 られる3次元空間を構築する技術について説 明する。図17は、第2の実施の形態に係るゲー ム装置10の構成を示す。本実施の形態のゲー 装置10は、図7に示した第1の実施の形態のゲ ーム装置10の構成に比して、制御部40が、キ ラクタ制御部44及び探索部45に代えて、カー ル制御部46、スナップ制御部47、及び編集部 48を備える。その他の構成及び動作は、第1の 実施の形態と同様である。なお、第1の実施 形態のゲーム装置10と、第2の実施の形態の ーム装置10は、同一のゲーム装置により実現 されてもよいし、異なるゲーム装置により実 現されてもよい。

 カーソル制御部46は、3次元空間を編集す ための画面において、ユーザの操作に応じ カーソルを移動させる。スナップ制御部47 、3次元空間を編集するための画面において ユーザがカーソルを最寄りのオブジェクト スナップさせる指示を入力したときに、カ ソルの現在位置から最も近いオブジェクト 判定して、その位置にカーソルを移動させ 。編集部48は、3次元空間を編集するための 面において、ユーザの操作に応じてブロッ や階段などのオブジェクトを配置させたり 除したりする。

 図18は、3次元空間を編集するための画面 例を示す。編集画面70には、3次元空間に配 するオブジェクトを選択するための選択画 71と、オブジェクトの配置位置を選択する めのカーソル72が表示されている。編集画面 70において、コントローラ20のアナログステ ック26及び27には、視点位置を入力した方向 移動させる機能が、十字キー21には、カー ル72を入力した方向へ移動させる機能が、そ れぞれ割り当てられている。また、Rボタン29 には、視点位置の移動を高速化する機能が、 Lボタン28には、オブジェクトの向きを変更す る機能が、それぞれ割り当てられている。ま た、△ボタン22には、選択画面71をアクティ にして配置するオブジェクトを変更する機 が、○ボタン24には、選択されているオブジ ェクトをカーソル72の位置に配置させる機能 、×ボタン25には、カーソル72の位置に既に 置されているオブジェクトを削除する機能 、それぞれ割り当てられている。また、□ タン23には、後述するように、カーソル72の 位置を、既に配置されたオブジェクトのうち カーソル72の現在位置に最も近い位置に移動 せる機能が割り当てられている。

 編集部48は、○ボタン24の入力を受け付け ると、現在のカーソル72の位置の座標をカー ル制御部46から取得し、取得した座標と、 在選択されているオブジェクトの種別を、 状データ保持部60に記録する。編集部48は、 ボタン25の入力を受け付けると、現在のカー ソル72の位置の座標をカーソル制御部46から 得し、取得した座標に既に配置されている ブジェクトを形状データ保持部60から検索し 、既にオブジェクトが配置されていれば、そ のオブジェクトのデータを形状データ保持部 60から削除する。

 視点変更部41は、第1の実施の形態と同様 、コントローラ20のアナログスティック26及 び27の入力を受け付けて、指示された方向へ 点を移動させる。第1レンダリング部42及び 2レンダリング部43は、第1の実施の形態と同 様に、視点変更部41から視点位置を取得し、 状データ保持部60に保持されたデータを参 して、3次元空間に既に配置されたオブジェ トを平行投影変換によりレンダリングする

 カーソル制御部46は、3次元空間に設定さ た3本の座標軸に平行な方向へカーソル72を 動させる。本実施の形態では、カーソル72 、直行座標軸X、Y、Zに平行な単位長の辺を する立方体、すなわち単位格子であり、3次 空間内を、直行座標軸に沿って前(Y軸正方 )後(Y軸負方向)左(X軸正方向)右(X軸負方向)上( Z軸正方向)下(Z軸負方向)の6方向に単位長ずつ 移動される。カーソル制御部46は、十字キー2 1の上下左右の4つのボタンのそれぞれに、こ らの6方向のうち4方向を割り当てて、入力 れた方向にカーソル72を移動させる。

 より具体的には、カーソル制御部46は、X 正負、Y軸正負、Z軸正負の6方向のうち、第2 レンダリング部43により生成された2次元平面 において、上下左右の方向とのなす角度が最 も小さい方向へ移動させる機能を、十字キー 21の上下左右のそれぞれのボタンに割り当て 。例えば、図18の例では、十字キー21の上ボ タンはZ軸正方向に、左ボタンはY軸負方向に 下ボタンはZ軸負方向に、右ボタンはY軸正 向に、それぞれ割り当てられる。これによ 、十字キー21の入力方向と、編集画面上にお いてカーソル72が移動する方向がほぼ一致す ので、直感的に分かりやすいユーザインタ ェースを提供することができる。

 カーソル制御部46は、3次元空間における6 つの単位ベクトル、すなわち、(1,0,0)、(-1,0,0) 、(0,1,0)、(0,-1,0)、(0,0,1)、(0,0,-1)を、第2レン リング部43により2次元平面にレンダリング せ、2次元平面における4つの単位ベクトル、 すなわち、(1,0)、(-1,0)、(0,1)、(0,-1)とのなす 度を算出することにより、上下左右のそれ れの方向に最も近い方向を判定してもよい

 カーソル制御部46は、カーソル72又はカー ソル72の近傍に表示されるオブジェクトを、 ーソルが移動する方向を識別可能な態様で 示させる。例えば、図18の例では、十字キ 21による移動が、Z軸正負方向とY軸正負方向 割り当てられているので、カーソル72の立 体のうち、Y軸及びZ軸に垂直な面の中心付近 に図形73が表示されている。カーソル制御部4 6は、カーソル72の6面のうち、十字キー21によ る移動が割り当てられている方向に垂直な4 を他の面とは異なる色で描画してもよい。 た、十字キー21による移動が割り当てられて いる方向を示す矢印などを表示してもよい。 これにより、ユーザは、十字キー21の入力に りカーソル72が移動する方向を視覚的に分 りやすく把握することができる。

 ユーザは、図18の編集画面においては、 ーソル72をX軸に平行な方向へ移動させるこ はできないが、アナログスティック26又は27 用いて視点位置を変更することにより、X軸 に平行な方向へカーソル72を移動させること 可能となる。例えば、図18の編集画面にお て、アナログスティック26を右方向へ入力し 、Z軸の回りに反時計回りに視点位置を移動 せると、図19に示した編集画面になる。

 カーソル制御部46は、視点位置の変更に って、3本の座標軸のそれぞれの正負の方向 、編集画面上における上下方向との間のな 角を再評価し、十字キー21に割り当てる移 方向を変更する。図19の編集画面では、十字 キー21の上ボタンはZ軸正方向に、左ボタンは X軸負方向に、下ボタンはZ軸負方向に、右ボ ンはX軸正方向に、それぞれ割り当てられる 。このように、ユーザは、視点位置を変更し ながら、任意の位置にカーソル72を移動させ ことができる。カーソル制御部46は、視点 置が変更されたときに、十字キー21に割り当 てる移動方向を再評価してもよいし、所定の タイミングで、例えば、所定の時間間隔で定 期的に、十字キー21に割り当てる移動方向を 評価してもよい。

 図20(a)(b)(c)(d)は、スナップ制御部47の動作 を説明するための図である。本実施の形態で は、第1レンダリング部42が平行投影変換によ り3次元空間をレンダリングしているので、 行きを把握するのが比較的難しい。例えば 図20(a)に示すように、カーソル72が、既に配 されているオブジェクトから離れた位置に るときに、カーソル72の位置を把握しづら ことがある。したがって、スナップ制御部47 は、□ボタン23の入力を受け付けると、編集 面において、カーソル72の現在位置から最 近い位置にあるオブジェクトの位置にカー ル72を移動させる機能を提供する。

 補助線を付した図20(b)や、視点位置を移 させた図20(c)を参照すると、3次元空間内に いてカーソル72の位置から最も近い位置にあ るオブジェクトの位置は、位置75ではなく位 74であることが分かるが、本実施の形態で 、3次元空間における実際の距離ではなく、 ンダリングされた2次元平面における見た目 の距離が近い位置74にカーソル72を移動させ 。これにより、ユーザは、カーソル72の3次 空間内における位置を正確に把握しなくて 、編集画面において、カーソル72をスナップ させたいオブジェクトに見た目に近い位置に カーソル72を移動させて□ボタン23を押せば 所望の位置にカーソル72を移動させることが できるので、直感的に分かりやすいユーザイ ンタフェースを提供することができる。なお 、図20(c)の編集画面において、□ボタン23が された場合は、スナップ制御部47は、見た目 もカーソル72の現在位置から最も近い位置75 カーソル72を移動させる。

 スナップ制御部47は、第2レンダリング部4 3によりレンダリングされた2次元平面におい 、カーソル72の現在位置と、既に配置され いるブロックなどのオブジェクトの配置位 の座標値を取得し、2次元平面において、カ ソル72の現在位置からの距離が最も近いオ ジェクトを判定し、判定されたオブジェク の3次元空間における位置を形状データ保持 60から読み出して、その位置にカーソル72を 移動させる。

 以上、本発明を実施例をもとに説明した この実施例は例示であり、その各構成要素 各処理プロセスの組合せにいろいろな変形 可能なこと、またそうした変形例も本発明 範囲にあることは当業者に理解されるとこ である。

 本発明によれば、より娯楽性の高いゲー 制御技術を提供することができる。