説明

表示制御プログラム、表示制御装置、表示制御システム、表示制御方法

【課題】適度な難度のゲーム性を有しながら、空中を飛行する楽しさをプレイヤに与える新規な表示制御プログラムを提供すること。
【解決手段】まず、少なくともプレイヤオブジェクトとノンプレイヤオブジェクトとが仮想3次元空間内に配置される。次に、所定の操作手段からの入力に基づき、プレイヤオブジェクトが移動される。更に、移動されたプレイヤオブジェクトの仮想ゲーム空間内における現在位置を示す現在位置データが取得される。そして、現在位置データに基づいて、ノンプレイヤオブジェクトの所定面がプレイヤオブジェクトの現在位置に向くようにノンプレイヤオブジェクトの姿勢が制御される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想3次元空間を利用した表示制御に関し、より特定的には、仮想3次元空間でプレイヤオブジェクトを飛行させることができる表示制御の処理に関する。
【背景技術】
【0002】
従来から、いわゆるフライトシミュレーションゲームという分野のゲームが知られている。このようなフライトシミュレーションゲームでは、プレイヤが操作するプレイヤオブジェクト(飛行機等)で仮想3次元空間内を飛行させることで、空を自由に飛びまわる感覚をプレイヤに楽しませている。更に、単に(仮想空間内の)空中を飛び回るだけではゲーム性が乏しいという観点から、よりゲーム性を高めるための試みがなされており、その一例として、例えば、空中にリング型のオブジェクトを配置し、このリングを順番に取得させることで、所定の得点が得られるようにしてゲーム性を高めているゲームもある(例えば、非特許文献1、非特許文献2)。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】「パイロットウイングス64 取扱説明書」、任天堂株式会社、1996年6月23日発売、P21
【非特許文献2】「64ブックス 100パーセント遊ぶ パイロットウイングス64」、株式会社芸文社、1996年9月28日、P54
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述のゲームにおいては、プレイヤオブジェクトがリングに接触するだけで当該リングを取得することができていた(なお、プレイヤに対しての説明としては、リングを取得することでリングを「通過」したと扱うこともあった)。このように、リングにプレイヤオブジェクトを接触させて取得するという要素をゲームに持たせたことで、ある程度ゲーム性は高まった。しかし、リングの取得を目的として、当該リングの位置を目標に飛行するというだけでは、ゲームとしてはまだ単調さが残っていた。この点につき、出願人は、例えば、飛行するプレイヤオブジェクトをより自在に操って、より高度な飛行操作(例えば、リングをくぐり抜けるような操作)を適度な難度(難しくなりすぎず、簡単すぎない程度の難度)で楽しませるという観点で、更なる改良の余地があることを発見した。
【0005】
それ故に、本発明の目的は、適度な難度のゲーム性を有しながら、空中を飛行する楽しさをプレイヤに与える新規な表示制御プログラムを提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は以下のような構成を採用した。
【0007】
本発明にかかるゲームプログラムは、仮想3次元空間内でプレイヤオブジェクトを移動させる表示制御装置のコンピュータに実行させる表示制御プログラムであって、オブジェクト配置手段と、移動制御手段と、現在位置取得手段と、姿勢制御手段としてコンピュータを機能させる。オブジェクト配置手段は、少なくともプレイヤオブジェクトとノンプレイヤオブジェクトとを仮想3次元空間内に配置する。移動制御手段は、所定の操作手段からの入力に基づき、プレイヤオブジェクトを移動させる。現在位置取得手段は、移動制御手段によって移動されたプレイヤオブジェクトの仮想3次元空間内における現在位置を示す現在位置データを取得する。姿勢制御手段は、現在位置データに基づいて、ノンプレイヤオブジェクトの所定面をプレイヤオブジェクトの現在位置に向ける。
【0008】
上記構成により、プレイヤオブジェクトをノンプレイヤオブジェクトの所定面に向けて移動させる操作の難度を下げることができる。
【0009】
他の構成例として、オブジェクト配置手段は、プレイヤオブジェクトが衝突または通過することが可能な少なくとも1つの所定面を有するオブジェクトをノンプレイヤオブジェクトとして仮想3次元空間内に少なくとも1つ配置し、姿勢制御手段は、現在位置データに基づいて、ノンプレイヤオブジェクトの所定面の向きをプレイヤオブジェクトの現在位置に常に対向するように繰り返し更新するようにしてもよい。
【0010】
上記構成例によれば、プレイヤオブジェクトをノンプレイヤオブジェクトに衝突させる、または通過させる操作の難度を下げることができる。
【0011】
更に他の構成例として、所定面は開口面であってもよい。
【0012】
上記構成により、ノンプレイヤオブジェクトの開口面に向けてプレイヤオブジェクトを移動させやすくすることができ、ゲームの難度を適度なものとしながら、ゲームの興趣性を高めることが可能となる。
【0013】
更に他の構成例として、ノンプレイヤオブジェクトには、その開口面における開口部分に第1の当たり判定が設定されており、非開口部分に第2の当たり判定が設定されていてもよい。そして、表示制御プログラムは、第1の当たり判定または第2の当たり判定のいずれかとプレイヤオブジェクトが接触しているか否かを判定する接触判定手段と、接触判定手段による判定の結果、プレイヤオブジェクトが第1の当たり判定に接触した場合と第2の当たり判定に接触した場合とで異なる処理を実行する表示制御手段としてコンピュータを更に機能させてもよい。
【0014】
上記構成例によれば、例えば、ノンプレイヤオブジェクトの開口部分にプレイヤオブジェクトが接触すれば得点が加算されるが、当該ノンプレイヤオブジェクトの非開口部分に接触した場合はプレイヤオブジェクトがクラッシュするというように、1つのノンプレイヤオブジェクトに対して異なる処理を定義することができる。
【0015】
更に他の構成例として、ノンプレイヤオブジェクトは、輪の形状を有するオブジェクトであってもよい。
【0016】
上記構成例によれば、輪をくぐり抜けるという操作をプレイヤに要求することで、ゲームの興趣性を高めつつ、ゲームの難度が高くなりすぎないようにすることができる。
【0017】
更に他の構成例として、姿勢制御手段は、ノンプレイヤオブジェクトの位置が所定の条件を満たしたときに、当該ノンプレイヤオブジェクトの所定面がプレイヤオブジェクトの現在位置に向くように姿勢制御を行うようにしてもよい。
【0018】
上記構成例によれば、ノンプレイヤキャラクタの姿勢制御に関する処理負荷を軽減することが可能となる。
【0019】
更に他の構成例として、姿勢制御手段は、ノンプレイヤオブジェクトの位置が仮想カメラの視界範囲内に位置したときに、当該ノンプレイヤオブジェクトの所定面がプレイヤオブジェクトの現在位置に向くように姿勢制御を行うようにしてもよい。
【0020】
上記構成例によれば、必要なときにのみノンプレイヤオブジェクトの姿勢制御が行われ、処理負荷を軽減することができる。
【0021】
本発明にかかるゲーム装置は、仮想3次元空間でプレイヤオブジェクトを移動させる表示制御装置であって、オブジェクト配置手段と、移動制御手段と、現在位置取得手段と、姿勢制御手段とを備える。オブジェクト配置手段は、少なくともプレイヤオブジェクトとノンプレイヤオブジェクトとを仮想3次元空間内に配置する。移動制御手段は、所定の操作手段からの入力に基づき、プレイヤオブジェクトを移動させる。現在位置取得手段は、移動制御手段によって移動されたプレイヤオブジェクトの仮想ゲーム空間内における現在位置を示す現在位置データを取得する。姿勢制御手段は、現在位置データに基づいて、ノンプレイヤオブジェクトの所定面をプレイヤオブジェクトの現在位置に向ける。
【0022】
本発明にかかる表示制御システムは、仮想3次元空間でプレイヤオブジェクトを移動させる表示制御システムであって、オブジェクト配置手段と、移動制御手段と、現在位置取得手段と、姿勢制御手段とを備える。オブジェクト配置手段は、少なくともプレイヤオブジェクトとノンプレイヤオブジェクトとを仮想3次元空間内に配置する。移動制御手段は、所定の操作手段からの入力に基づき、プレイヤオブジェクトを移動させる。現在位置取得手段は、移動制御手段によって移動されたプレイヤオブジェクトの仮想ゲーム空間内における現在位置を示す現在位置データを取得する。姿勢制御手段は、現在位置データに基づいて、ノンプレイヤオブジェクトの所定面をプレイヤオブジェクトの現在位置に向ける。
【0023】
本発明にかかる表示制御処理方法は、仮想3次元空間でプレイヤオブジェクトを移動させる表示制御処理方法であって、オブジェクト配置ステップと、移動制御ステップと、現在位置取得ステップと、姿勢制御ステップとを備える。オブジェクト配置ステップは、少なくともプレイヤオブジェクトとノンプレイヤオブジェクトとを仮想3次元空間内に配置する。移動制御ステップは、所定の操作手段からの入力に基づき、プレイヤオブジェクトを移動させる。現在位置取得ステップは、移動制御ステップで移動されたプレイヤオブジェクトの仮想ゲーム空間内における現在位置を示す現在位置データを取得する。姿勢制御ステップは、現在位置データに基づいて、ノンプレイヤオブジェクトの所定面をプレイヤオブジェクトの現在位置に向ける。
【発明の効果】
【0024】
本発明によれば、プレイヤオブジェクトをノンプレイヤオブジェクトの所定面に向けて移動させる操作の難度を下げることができる。これにより、ゲームの難度を適度なものとしながら、ゲームの興趣性を高めることが可能となる。
【図面の簡単な説明】
【0025】
【図1】開状態におけるゲーム装置10の正面図
【図2】閉状態におけるゲーム装置10の左側面図、正面図、右側面図および背面図
【図3】ゲーム装置10の内部構成を示すブロック図
【図4】本実施形態が想定するゲームの画面の一例
【図5】本実施形態が想定するゲームの画面の一例
【図6】リングオブジェクトの当たり判定について説明するための図
【図7】メインメモリ32のメモリマップを示す図
【図8】本実施形態にかかるゲーム処理の詳細を示すフローチャート
【図9】リングオブジェクトの姿勢を制御する処理を説明するための模式図
【発明を実施するための形態】
【0026】
以下、本発明の実施の形態について、図面を参照して説明する。尚、この実施例により本発明が限定されるものではない。
【0027】
(ゲーム装置の構成)
まず、本発明の一実施形態に係るゲーム装置について説明する。図1および図2は、ゲーム装置10の外観を示す平面図である。ゲーム装置10は携帯型のゲーム装置であり、図1および図2に示すように折り畳み可能に構成されている。図1は、開いた状態(開状態)におけるゲーム装置10を示し、図2は、閉じた状態(閉状態)におけるゲーム装置10を示している。図1は、開状態におけるゲーム装置10の正面図である。ゲーム装置10は、撮像部によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりすることが可能である。また、ゲーム装置10は、交換可能なメモリカード内に記憶され、または、サーバや他のゲーム装置から受信したゲームプログラムを実行可能であり、仮想空間に設定された仮想カメラで撮像した画像などのコンピュータグラフィックス処理により生成された画像を画面に表示したりすることができる。
【0028】
まず、図1および図2を参照して、ゲーム装置10の外観構成について説明する。図1および図2に示されるように、ゲーム装置10は、下側ハウジング11および上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能)に接続されている。
【0029】
(下側ハウジングの説明)
まず、下側ハウジング11の構成について説明する。図1および図2に示すように、下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12、タッチパネル13、各操作ボタン14A〜14L、アナログスティック15、LED16A〜16B、挿入口17、および、マイクロフォン用孔18が設けられる。以下、これらの詳細について説明する。
【0030】
図1に示すように、下側LCD12は下側ハウジング11に収納される。下側LCD12の画素数は、例えば、320dot×240dot(横×縦)であってもよい。下側LCD12は、後述する上側LCD22とは異なり、画像を(立体視可能ではなく)平面的に表示する表示装置である。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用してもよい。また、下側LCD12として、任意の解像度の表示装置を利用することができる。
【0031】
図1に示されるように、ゲーム装置10は、入力装置として、タッチパネル13を備えている。タッチパネル13は、下側LCD12の画面上に装着されている。なお、本実施形態では、タッチパネル13は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。本実施形態では、タッチパネル13として、下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル13の解像度と下側LCD12の解像度が一致している必要はない。また、下側ハウジング11の上側面には挿入口17(図1および図2(d)に示す点線)が設けられている。挿入口17は、タッチパネル13に対する操作を行うために用いられるタッチペン28を収納することができる。なお、タッチパネル13に対する入力は通常タッチペン28を用いて行われるが、タッチペン28に限らずユーザの指でタッチパネル13に対する入力をすることも可能である。
【0032】
各操作ボタン14A〜14Lは、所定の入力を行うための入力装置である。図1に示されるように、下側ハウジング11の内側面(主面)には、各操作ボタン14A〜14Lのうち、十字ボタン14A(方向入力ボタン14A)、ボタン14B、ボタン14C、ボタン14D、ボタン14E、電源ボタン14F、セレクトボタン14J、HOMEボタン14K、およびスタートボタン14Lが、設けられる。十字ボタン14Aは、十字の形状を有しており、上下左右の方向を指示するボタンを有している。ボタン14A〜14E、セレクトボタン14J、HOMEボタン14K、およびスタートボタン14Lには、ゲーム装置10が実行するプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン14Aは選択操作等に用いられ、各操作ボタン14B〜14Eは例えば決定操作やキャンセル操作等に用いられる。また、電源ボタン14Fは、ゲーム装置10の電源をオン/オフするために用いられる。
【0033】
アナログスティック15は、方向を指示するデバイスである。アナログスティック15は、そのキートップが、下側ハウジング11の内側面に平行にスライドするように構成されている。アナログスティック15は、ゲーム装置10が実行するプログラムに応じて機能する。例えば、3次元仮想空間に所定のオブジェクトが登場するゲームがゲーム装置10によって実行される場合、アナログスティック15は、当該所定のオブジェクトを3次元仮想空間内で移動させるための入力装置として機能する。この場合において、所定のオブジェクトはアナログスティック15のキートップがスライドした方向に移動される。なお、アナログスティック15として、上下左右および斜め方向の任意の方向に所定量だけ傾倒することでアナログ入力を可能としたものを用いても良い。
【0034】
また、下側ハウジング11の内側面には、マイクロフォン用孔18が設けられる。マイクロフォン用孔18の下部には後述する音声入力装置としてのマイク42(図3参照)が設けられ、当該マイク42がゲーム装置10の外部の音を検出する。
【0035】
図2(a)は閉状態におけるゲーム装置10の左側面図であり、図2(b)は閉状態におけるゲーム装置10の正面図であり、図2(c)は閉状態におけるゲーム装置10の右側面図であり、図2(d)は閉状態におけるゲーム装置10の背面図である。図2(b)および(d)に示されるように、下側ハウジング11の上側面には、Lボタン14GおよびRボタン14Hが設けられている。Lボタン14GおよびRボタン14Hは、例えば、撮像部のシャッターボタン(撮影指示ボタン)として機能することができる。また、図2(a)に示されるように、下側ハウジング11の左側面には、音量ボタン14Iが設けられる。音量ボタン14Iは、ゲーム装置10が備えるスピーカの音量を調整するために用いられる。
【0036】
図2(a)に示されるように、下側ハウジング11の左側面には開閉可能なカバー部11Cが設けられる。このカバー部11Cの内側には、ゲーム装置10とデータ保存用外部メモリ45とを電気的に接続するためのコネクタ(図示せず)が設けられる。データ保存用外部メモリ45は、コネクタに着脱自在に装着される。データ保存用外部メモリ45は、例えば、ゲーム装置10によって撮像された画像のデータを記憶(保存)するために用いられる。
【0037】
また、図2(d)に示されるように、下側ハウジング11の上側面には、ゲーム装置10とゲームプログラムを記録した外部メモリ44を挿入するための挿入口11Dが設けられ、その挿入口11Dの内部には、外部メモリ44と電気的に着脱自在に接続するためのコネクタ(図示せず)が設けられる。当該外部メモリ44がゲーム装置10に接続されることにより、所定のゲームプログラムが実行される。
【0038】
また、図1および図2(c)に示されるように、下側ハウジング11の下側面にはゲーム装置10の電源のON/OFF状況をユーザに通知する第1LED16A、下側ハウジング11の右側面にはゲーム装置10の無線通信の確立状況をユーザに通知する第2LED16Bが設けられる。ゲーム装置10は他の機器との間で無線通信を行うことが可能であり、第2LED16Bは、無線通信が確立している場合に点灯する。ゲーム装置10は、例えば、IEEE802.11b/gの規格に準拠した方式により、無線LANに接続する機能を有する。下側ハウジング11の右側面には、この無線通信の機能を有効/無効にする無線スイッチ19が設けられる(図2(c)参照)。
【0039】
なお、図示は省略するが、下側ハウジング11には、ゲーム装置10の電源となる充電式電池が収納され、下側ハウジング11の側面(例えば、上側面)に設けられた端子を介して当該電池を充電することができる。
【0040】
(上側ハウジングの説明)
次に、上側ハウジング21の構成について説明する。図1および図2に示すように、上側ハウジング21には、上側LCD(Liquid Crystal Display:液晶表示装置)22、外側撮像部23(外側撮像部(左)23aおよび外側撮像部(右)23b)、内側撮像部24、3D調整スイッチ25、および、3Dインジケータ26が設けられる。以下、これらの詳細について説明する。
【0041】
図1に示すように、上側LCD22は上側ハウジング21に収納される。上側LCD22の画素数は、例えば、800dot×240dot(横×縦)であってもよい。なお、本実施形態では上側LCD22は液晶表示装置であるとしたが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置などが利用されてもよい。また、上側LCD22として、任意の解像度の表示装置を利用することができる。
【0042】
上側LCD22は、立体視可能な画像を表示することが可能な表示装置である。また、本実施例では、実質的に同一の表示領域を用いて左目用画像と右目用画像が表示される。具体的には、左目用画像と右目用画像が所定単位で(例えば、1列ずつ)横方向に交互に表示される方式の表示装置である。または、左目用画像と右目用画像とが交互に表示される方式の表示装置であってもよい。また、本実施例では、裸眼立体視可能な表示装置である。そして、横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式(視差バリア方式)のものが用いられる。本実施形態では、上側LCD22はパララックスバリア方式のものとする。上側LCD22は、右目用画像と左目用画像とを用いて、裸眼で立体視可能な画像(立体画像)を表示する。すなわち、上側LCD22は、視差バリアを用いてユーザの左目に左目用画像をユーザの右目に右目用画像を視認させることにより、ユーザにとって立体感のある立体画像(立体視可能な画像)を表示することができる。また、上側LCD22は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる(上述した立体視とは反対の意味で平面視の画像を表示することができる。すなわち、表示された同一の画像が右目にも左目にも見えるような表示モードである)。このように、上側LCD22は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する(平面視画像を表示する)平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、後述する3D調整スイッチ25によって行われる。
【0043】
外側撮像部23は、上側ハウジング21の外側面(上側LCD22が設けられた主面と反対側の背面)21Dに設けられた2つの撮像部(23aおよび23b)の総称である。外側撮像部(左)23aと外側撮像部(右)23bの撮像方向は、いずれも当該外側面21Dの外向きの法線方向である。外側撮像部(左)23aと外側撮像部(右)23bとは、ゲーム装置10が実行するプログラムによって、ステレオカメラとして使用することが可能である。外側撮像部(左)23aおよび外側撮像部(右)23bは、それぞれ所定の共通の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【0044】
内側撮像部24は、上側ハウジング21の内側面(主面)21Bに設けられ、当該内側面の内向きの法線方向を撮像方向とする撮像部である。内側撮像部24は、所定の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【0045】
3D調整スイッチ25は、スライドスイッチであり、上述のように上側LCD22の表示モードを切り替えるために用いられるスイッチである。また、3D調整スイッチ25は、上側LCD22に表示された立体視可能な画像(立体画像)の立体感を調整するために用いられる。3D調整スイッチ25のスライダ25aは、所定方向(上下方向)の任意の位置にスライド可能であり、当該スライダ25aの位置に応じて上側LCD22の表示モードが設定される。また、スライダ25aの位置に応じて、立体画像の見え方が調整される。具体的には、スライダ25aの位置に応じて、右目用画像および左目用画像の横方向の位置のずれ量が調整される。
【0046】
3Dインジケータ26は、上側LCD22が立体表示モードか否かを示す。3Dインジケータ26は、LEDであり、上側LCD22の立体表示モードが有効の場合に点灯する。なお、3Dインジケータ26は、上側LCD22が立体表示モードになっており、かつ、立体視画像を表示するプログラム処理が実行されているときに限り、点灯するようにしてもよい。
【0047】
また、上側ハウジング21の内側面には、スピーカ孔21Eが設けられる。後述するスピーカ43からの音声がこのスピーカ孔21Eから出力される。
【0048】
(ゲーム装置10の内部構成)
次に、図3を参照して、ゲーム装置10の内部の電気的構成について説明する。図3は、ゲーム装置10の内部構成を示すブロック図である。図3に示すように、ゲーム装置10は、上述した各部に加えて、情報処理部31、メインメモリ32、外部メモリインターフェイス(外部メモリI/F)33、データ保存用外部メモリI/F34、データ保存用内部メモリ35、無線通信モジュール36、ローカル通信モジュール37、リアルタイムクロック(RTC)38、加速度センサ39、電源回路40、およびインターフェイス回路(I/F回路)41等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング11(または上側ハウジング21でもよい)内に収納される。
【0049】
情報処理部31は、所定のプログラムを実行するためのCPU(Central Processing Unit)311、画像処理を行うGPU(Graphics Processing Unit)312等を含む情報処理手段である。情報処理部31のCPU311は、ゲーム装置10内のメモリ(例えば外部メモリI/F33に接続された外部メモリ44やデータ保存用内部メモリ35)に記憶されているプログラムを実行することによって、当該プログラムに応じた処理を実行する。なお、情報処理部31のCPU311によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。また、情報処理部31は、VRAM(Video RAM)313を含む。情報処理部31のGPU312は、情報処理部31のCPU311からの命令に応じて画像を生成し、VRAM313に描画する。そして、情報処理部31のGPU312は、VRAM313に描画された画像を上側LCD22及び/又は下側LCD12に出力し、上側LCD22及び/又は下側LCD12に当該画像が表示される。
【0050】
情報処理部31には、メインメモリ32、外部メモリI/F33、データ保存用外部メモリI/F34、および、データ保存用内部メモリ35が接続される。外部メモリI/F33は、外部メモリ44を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリI/F34は、データ保存用外部メモリ45を着脱自在に接続するためのインターフェイスである。
【0051】
メインメモリ32は、情報処理部31(のCPU311)のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ32は、上記プログラムに基づく処理に用いられる各種データを一時的に記憶したり、外部(外部メモリ44や他の機器等)から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ32として例えばPSRAM(Pseudo−SRAM)を用いる。
【0052】
外部メモリ44は、情報処理部31によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ44は、例えば読み取り専用の半導体メモリで構成される。外部メモリ44が外部メモリI/F33に接続されると、情報処理部31は外部メモリ44に記憶されたプログラムを読み込むことができる。情報処理部31が読み込んだプログラムを実行することにより、所定の処理が行われる。データ保存用外部メモリ45は、不揮発性の読み書き可能なメモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ45には、外側撮像部23で撮像された画像や他の機器で撮像された画像が記憶される。データ保存用外部メモリ45がデータ保存用外部メモリI/F34に接続されると、情報処理部31はデータ保存用外部メモリ45に記憶された画像を読み込み、上側LCD22及び/又は下側LCD12に当該画像を表示することができる。
【0053】
データ保存用内部メモリ35は、読み書き可能な不揮発性メモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ35には、無線通信モジュール36を介した無線通信によってダウンロードされたデータやプログラムが格納される。
【0054】
無線通信モジュール36は、例えばIEEE802.11b/gの規格に準拠した方式により、無線LANに接続する機能を有する。また、ローカル通信モジュール37は、所定の通信方式(例えば独自プロトコルによる通信や、赤外線通信)により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール36およびローカル通信モジュール37は情報処理部31に接続される。情報処理部31は、無線通信モジュール36を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール37を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0055】
また、情報処理部31には、加速度センサ39が接続される。加速度センサ39は、3軸(xyz軸)方向に沿った直線方向の加速度(直線加速度)の大きさを検出する。加速度センサ39は、下側ハウジング11の内部に設けられる。加速度センサ39は、図1に示すように、下側ハウジング11の長辺方向をx軸、下側ハウジング11の短辺方向をy軸、下側ハウジング11の内側面(主面)に対して垂直な方向をz軸として、各軸の直線加速度の大きさを検出する。なお、加速度センサ39は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ39は1軸又は2軸方向を検出する加速度センサであってもよい。情報処理部31は、加速度センサ39が検出した加速度を示すデータ(加速度データ)を受信して、ゲーム装置10の姿勢や動きを検出することができる。
【0056】
また、情報処理部31には、RTC38および電源回路40が接続される。RTC38は、時間をカウントして情報処理部31に出力する。情報処理部31は、RTC38によって計時された時間に基づき現在時刻(日付)を計算する。電源回路40は、ゲーム装置10が有する電源(下側ハウジング11に収納される上記充電式電池)からの電力を制御し、ゲーム装置10の各部品に電力を供給する。
【0057】
また、情報処理部31には、I/F回路41が接続される。I/F回路41には、マイク42およびスピーカ43が接続される。具体的には、I/F回路41には、図示しないアンプを介してスピーカ43が接続される。マイク42は、ユーザの音声を検知して音声信号をI/F回路41に出力する。アンプは、I/F回路41からの音声信号を増幅し、音声をスピーカ43から出力させる。また、タッチパネル13はI/F回路41に接続される。I/F回路41は、マイク42およびスピーカ43(アンプ)の制御を行う音声制御回路と、タッチパネルの制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル13からの信号に基づいて所定の形式のタッチ位置データを生成して情報処理部31に出力する。タッチ位置データは、タッチパネル13の入力面において入力が行われた位置の座標を示す。なお、タッチパネル制御回路は、タッチパネル13からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。情報処理部31は、タッチ位置データを取得することにより、タッチパネル13に対して入力が行われた位置を知ることができる。
【0058】
操作ボタン14は、上記各操作ボタン14A〜14Lからなり、情報処理部31に接続される。操作ボタン14から情報処理部31へは、各操作ボタン14A〜14Iに対する入力状況(押下されたか否か)を示す操作データが出力される。情報処理部31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に従った処理を実行する。
【0059】
下側LCD12および上側LCD22は情報処理部31に接続される。下側LCD12および上側LCD22は、情報処理部31(のGPU312)の指示に従って画像を表示する。本実施形態では、情報処理部31は、上側LCD22に立体画像(立体視可能な画像)を表示させる。
【0060】
具体的には、情報処理部31は、上側LCD22のLCDコントローラ(図示せず)と接続され、当該LCDコントローラに対して視差バリアのON/OFFを制御する。上側LCD22の視差バリアがONになっている場合、情報処理部31のVRAM313に格納された右目用画像と左目用画像とが、上側LCD22に出力される。より具体的には、LCDコントローラは、右目用画像について縦方向に1ライン分の画素データを読み出す処理と、左目用画像について縦方向に1ライン分の画素データを読み出す処理とを交互に繰り返すことによって、VRAM313から右目用画像と左目用画像とを読み出す。これにより、右目用画像および左目用画像が、画素を縦に1ライン毎に並んだ短冊状画像に分割され、分割された右目用画像の短冊状画像と左目用画像の短冊状画像とが交互に配置された画像が、上側LCD22の画面に表示される。そして、上側LCD22の視差バリアを介して当該画像がユーザに視認されることによって、ユーザの右目に右目用画像が、ユーザの左目に左目用画像が視認される。以上により、上側LCD22の画面には立体視可能な画像が表示される。
【0061】
外側撮像部23および内側撮像部24は、情報処理部31に接続される。外側撮像部23および内側撮像部24は、情報処理部31の指示に従って画像を撮像し、撮像した画像データを情報処理部31に出力する。
【0062】
3D調整スイッチ25は、情報処理部31に接続される。3D調整スイッチ25は、スライダ25aの位置に応じた電気信号を情報処理部31に送信する。
【0063】
また、3Dインジケータ26は、情報処理部31に接続される。情報処理部31は、3Dインジケータ26の点灯を制御する。例えば、情報処理部31は、上側LCD22が立体表示モードである場合、3Dインジケータ26を点灯させる。以上がゲーム装置10の内部構成の説明である。
【0064】
次に、図4〜図6を用いて、本実施形態が想定しているゲームの概要について説明する。本実施形態で想定するゲームは、ハンググライダーを題材としたフライトシミュレーションゲームである。図4および図5は、本実施形態が想定するゲームの画面の一例である(この画面は、立体視表示されていてもよい)。図4においては、仮想3次元空間である仮想ゲーム空間が表示されている。また、ハンググライダーに乗っているプレイヤオブジェクト101が後方からの視点で表示されている。本ゲームでは、仮想カメラは基本的にはプレイヤオブジェクト101の後方に配置されており、当該仮想カメラは、プレイヤオブジェクト101を追従するように移動制御される。本実施形態で想定するゲームは、このようなゲーム画面を用いて、プレイヤの操作に基づいてプレイヤオブジェクトを移動させて、ハンググライダーで飛び回るような感覚を楽しませるゲームである。なお、ハンググライダーを模した操作感、プレイ感(滑空感)を実現するため、その操作感覚としては、プレイヤの操作入力(特に移動方向の操作)に対して機敏に反応して方向転換できるようなものではない。例えば、右方向に進路を変更しようとした場合は、若干時間をかけて、プレイヤオブジェクト101が右方向に旋回するような動きとなる(つまり、ややもどかしさが残るような操作感覚となる)。
【0065】
また、図4においては、仮想ゲーム空間内にリングオブジェクト102が複数表示されている。そして、本ゲームでは、図5に示すように、リングオブジェクト102をプレイヤオブジェクト101にくぐらせる(通過させる)ことにより、得点が加算される。但し、リングオブジェクト102そのものに衝突した場合は、プレイヤオブジェクト101はクラッシュしてしまう。図6は、リングオブジェクト102を正面から見た場合の模式図である。リングオブジェクト102には、図6に示すように、2種類の当たり判定が設定されている。1つめは、リングオブジェクト102自体の当たり判定(クラッシュ用当たり判定)であり、2つめは、リングオブジェクト102の内円部分の当たり判定(得点加算用当たり判定)である(なお、当該得点加算用当たり判定は、透明の当たり判定として設定されている)。つまり、衝突の結果が「成功」となる当たり判定と「失敗」となる当たり判定とが一体化した(隣接配置された)ものがリングオブジェクト102として定義されている。
【0066】
このように、リングオブジェクト102をくぐることで得点が加算されるようにした場合、次のような点が懸念される。すなわち、プレイヤオブジェクト101は仮想ゲーム空間内を自在に移動可能であるのに対して、リングオブジェクト102の向きが固定されたままである場合を想定する。このような場合、例えば、リングオブジェクト102の側面方向からプレイヤオブジェクト101が近づくと、リングオブジェクト102をくぐることができずに、クラッシュしてしまう。つまり、常にリングオブジェクト102の正面(あるいは背面)からプレイヤオブジェクトを侵入させるような位置取りをプレイヤに要求することになる。その結果、ゲームの難度が高くなりすぎてしまうという懸念がある。
【0067】
そこで、本実施形態では、リングオブジェクト102の正面側がプレイヤオブジェクト101が現在いる方角を常に向くように(あるいは、向いている時間がそうでない時間よりも長くなるように)、リングオブジェクト102の姿勢(向き)を制御する。これにより、ゲームの難度を適度なものとする。具体的には、まず、仮想カメラの視界範囲(ビューイング・ボリューム)内に存在するリングオブジェクト102が検出される。そして、検出された各リングオブジェクト102につき、その正面(プレイヤオブジェクト101が通過することが可能な面。以下、開口面と呼ぶ)が、プレイヤオブジェクト101の中点に向くように、適宜姿勢が制御されて、描画される。なお、本実施形態で挙げているリングオブジェクト102は、その形状からすれば、前面と背面の双方に開口を有することになるが、本実施形態では、リングオブジェクト102の正面側のみが開口面として予め定義され、この面を基準に姿勢制御が行われるものとする(もちろん、背面側の面がプレイヤオブジェクト101の方角に向くよう制御されてもよい。リングオブジェクト102の形状からすれば、その結果として同じ効果が得られるためである)。
【0068】
次に、ゲーム装置10によって実行されるゲーム処理の詳細を説明する。まず、ゲーム処理の際にメインメモリ32に記憶されるデータについて説明する。図7は、ゲーム装置10のメインメモリ32のメモリマップを示す図である。図7において、メインメモリ32は、プログラム記憶領域321およびデータ記憶領域323を含む。プログラム記憶領域321およびデータ記憶領域323のデータは、外部メモリ44に記憶され、ゲームプログラム実行時にはメインメモリ32に転送されて記憶される。
【0069】
なお、これらのプログラムおよびデータは、上記外部メモリ44の他、光磁気ディスクやメモリーカード、ハードディスク等の記録媒体で提供されても良いし、有線ネットワークや無線ネットワークを介して所定のサーバやゲーム装置等からダウンロードすることで提供されてもよい(つまり、ダウンロードしたプログラムやデータをメインメモリ32に記憶する形態でもよい)。
【0070】
プログラム記憶領域321は、CPU311によって実行されるゲーム処理プログラム322を記憶する。
【0071】
データ記憶領域323には、操作データ324、オブジェクトモデルデータ325、プレイヤキャラ現在位置データ326、リング管理用データ327などのデータが記憶されるとともに、ゲーム処理中に用いられる各種フラグも記憶される。
【0072】
操作データ324は、プレイヤがゲーム装置1に対して行った操作内容を示すデータである。操作データ324には、タッチパネル13で検出されたタッチ座標を示すタッチ座標データや、各種操作ボタン14の押下状態を示す操作ボタンデータ、アナログスティック15の入力状態を示すアナログ入力データが含まれる。
【0073】
オブジェクトモデルデータ325は、プレイヤオブジェクト101やリングオブジェクト102等の各種オブジェクトのポリゴンモデルデータおよびテクスチャ画像データである。また、地形オブジェクトや建造物オブジェクト等、仮想ゲーム空間を構成するその他の各種オブジェクトのポリゴンモデルデータおよびテクスチャ画像データも含まれている。
【0074】
プレイヤキャラ現在位置データ326は、プレイヤオブジェクト101の仮想ゲーム空間内における現在位置を示すデータである。本実施形態では、3次元座標で示されるものとする。
【0075】
リング管理用データ327は、リングオブジェクト102を管理するためのデータである。リング管理用データ327には、各リングオブジェクト102に対応する管理データ328が含まれており、各リングオブジェクト102の管理データ328は、リングID329、配置位置データ330、開口面方角データ331等で構成されている。
【0076】
リングID329は、各リングオブジェクト102を一意に識別するためのIDである。配置位置データ330は、仮想ゲーム空間内において各リングオブジェクト102の配置される位置を示すデータである。開口面方角データ331は、上記開口面が現在向いている、仮想ゲーム空間内における方角を示すデータである。換言すれば、リングオブジェクト102の現在の姿勢を示すデータでもある。
【0077】
次に、ゲーム装置1において実行されるゲーム処理の流れを図8を用いて説明する。図8は、ゲーム装置10において実行されるゲーム処理の詳細を示すフローチャートである。ゲーム装置10の電源が投入されると、ゲーム装置10のCPU311は、図示しないブートROMに記憶されている起動プログラムを実行し、メインメモリ32等の各ユニットが初期化される。そして、外部メモリ44に格納されたゲームプログラムがメインメモリ32に読み込まれ、当該ゲームプログラムの実行が開始される。
【0078】
なお、図8に示すフローチャートにおいては、主に、リングオブジェクト102の制御に関する処理について説明し、本願発明とは直接関連しない他の処理については詳細な説明を省略する。
【0079】
まず、ステップS1において、初期処理が実行される。具体的には、地形オブジェクト等が適宜生成・配置されて、ゲームの舞台となる仮想ゲーム空間が構築される。そして、リングオブジェクト102が生成される。更に、リング管理用データ327が参照され、各リングオブジェクト102に対応する配置位置データ330に基づいて、各リングオブジェクト102が仮想ゲーム空間内に配置される。更に、プレイヤオブジェクト101が生成され、スタート位置として予め定義されている位置に配置される。以上のように構築された仮想ゲーム空間を表すゲーム画像が生成され、生成されたゲーム画像が上側LCD22に表示される。以降、ステップS2〜S13の処理ループが1フレーム毎に繰り返されることによって、ゲームが進行していく。
【0080】
次に、ステップS2において、操作データ324が取得される。続く、ステップS3において、操作データ324に基づいてプレイヤオブジェクト101を移動する処理が実行される。また、プレイヤキャラ現在位置データ326が移動後のプレイヤオブジェクト101の位置を示すデータで更新される。
【0081】
次に、ステップS4において、仮想カメラの視界範囲(ビューイング・ボリューム)内に存在するリングオブジェクト102の検出が実行される。更に、ステップS5において、上記検出の結果、1つ以上のリングオブジェクト102が検出されたか否かが判定される。その結果、1つもリングオブジェクト12が検出されなかったときは(ステップS5でNO)、後述のステップS11に処理が進められる。
【0082】
一方、1つ以上のリングオブジェクト102が検出されたときは(ステップS5でYES)、ステップS6において、上記現在位置データ326が参照され、仮想ゲーム空間内におけるプレイヤオブジェクト101の現在位置が取得される。
【0083】
次に、ステップS7において、上記ステップS4で検出されたリングオブジェクト102のうちからいずれか一つが、以下に説明する処理の対象とする処理対象リングとして選択される。処理対象リングが選択されれば、続くステップS8において、上記現在位置データ326、および、開口面方角データ331(つまり、前回のフレームにかかる処理で算出された開口面の方角)に基づいて、処理対象リングの開口面がプレイヤキャラ101の中点に向くような姿勢が算出され、更に、当該算出された姿勢になるように処理対象リングの姿勢が変更される。この処理は、例えば、まず、図9に示すように、処理対象リングの開口面に対する法線ベクトルが算出される。次に、この法線ベクトルがプレイヤオブジェクト101の中点に向くように、処理対象リングを回転させるための回転行列が算出される。そして、当該回転行列に基づいて処理対象リングの回転が行われる。また、回転後の開口面の方角を示すデータ(例えば、回転後の状態における上記法線ベクトルの向きを示すデータ)は、開口面方角データ331として記憶される。なお、上記の処理方法はあくまで一例であり、これらに限らず、処理対象リングの開口面がプレイヤオブジェクト101の方向を向くように姿勢制御できれば、どのような処理方法を用いても良い。また、開口面方角データ331としては、上記のような方角を示すデータの他、処理対象リングの姿勢そのものを示すデータを開口面方角データ331として利用しても良い。
【0084】
次に、ステップS9において、上記検出されたリングオブジェクト102のうち、上記のような姿勢制御の処理が行われていないリングオブジェクトが残っているか否かが判定される。その結果、まだ未処理のリングオブジェクト102が残っていたときは(ステップS9でYES)、上記ステップS7に戻り、次の処理対象リングが選択されて上記の様な処理が繰り返される。
【0085】
一方、未処理のリングオブジェクトが残っていなければ(ステップS9でNO)、次に、ステップS10において、リングオブジェクト102とプレイヤオブジェクト101との衝突判定処理が行われる。このステップS10の処理を具体的に説明すると、まず、プレイヤオブジェクト101が、いずれかのリングオブジェクト102と接触しているか否かが判定される。更に、接触している場合は、図6で示したような2種類の当たり判定のうちのいずれと接触したか否かも判定される。その結果、リングオブジェクト102自体に接触しているときは、プレイヤオブジェクト101がクラッシュしたときの処理が実行される。例えば、プレイヤオブジェクト101がクラッシュした様子を示すための処理や、プレイヤオブジェクトの残機を1つ減らす処理等が実行される。一方、リングオブジェクト102の内円部分の当たり判定に接触したときは、当該リングオブジェクト102を通過することができた(くぐった)として、所定の得点を加算する処理が実行される。また、この場合は、当該リングオブジェクト102を消去する処理も実行される。
【0086】
次に、ステップS11において、上述したような処理以外のゲーム処理が適宜実行される。そして、ステップS12において、上述したような処理内容が反映された仮想ゲーム空間を示すゲーム画像が生成され、描画されることになる。その結果、画面に表示されているリングオブジェクト102については、全てその開口面がプレイヤオブジェクト101の方向を向いているようなゲーム画像が表示されることになる。
【0087】
次に、ステップS13において、ゲーム終了のための条件が満たされたか否かが判断され、YESの場合、ゲーム処理は終了され、NOの場合、ステップS2に戻って、ゲーム処理が繰り返される。以上で、本実施形態にかかるゲーム処理の説明を終了する。
【0088】
このように、本実施形態では、プレイヤオブジェクト101がくぐる(通過する)ことが可能なリングオブジェクト102を複数配置し、各リングオブジェクト102の開口面を常にプレイヤオブジェクト101の方向に向けるように制御している。これにより、仮想3次元空間内でプレイヤオブジェクトを自由に移動させることが可能なゲームにおいて、上記のようなリングオブジェクト102をくぐるという操作の難度を下げることが可能となり、ゲームの難度を適度なものとしながら、ゲームの興趣性を高めることが可能となる。
【0089】
なお、上記実施形態では、プレイヤオブジェクト101が通過する対象としてリングオブジェクト102を例に挙げた。このようなリングの形状をしたオブジェクトに限らず、プレイヤオブジェクト101が侵入したり、くぐり抜けて通過できるように構成されたオブジェクトであれば、他の形状のオブジェクトであっても本発明は適用可能である。例えば、侵入可能な入り口(開口)のある建築物のようなオブジェクトであって、かつ、可動するようなオブジェクトを対象に、上述したような処理を行っても良い。
【0090】
また、本実施形態では、リングオブジェクト102をプレイヤオブジェクト101が通過するゲームを例に挙げたが、この他、プレイヤオブジェクトが対象となるオブジェクト(上述の実施形態ではリングオブジェクト)の所定部分に到達、衝突、侵入等することを要求するようなゲームに関しても、本発明は適用可能である。
【0091】
また、本実施形態では、リングオブジェクト102は開口部を備えたリング状のオブジェクトを例に挙げたが、本発明はこれに限らず、当該オブジェクトは開口部を備えてなくても良く、例えば球体や立方体などでも良い。
【0092】
また、本実施形態では、オブジェクト102に2種類の当たり判定が設定されている例を挙げたが、本発明はこれに限らず、3種類以上または2種類未満の当たり判定があってもよい。例えば、本実施形態のリングオブジェクトを例にとれば、当たり判定は、クラッシュ用の当たり判定を1種類のみ設けるようにしてもよい。この場合、プレイヤオブジェクト101がリングオブジェクト102をくぐったか否かを当たり判定とは別の手法(例えば、プレイヤオブジェクト101の位置がリングオブジェクトの中心位置付近に到達したか否かを判別する等)で判別すればよい。また、リングオブジェクトの内円部分の当たり判定を2種類以上設けて、どの当たり判定を通過したかに応じて加算される得点を変えるようにしてもよい(例えば、リングオブジェクトの中心付近を通過すれば高得点が加算され、リングオブジェクトの端の方を通過すると低得点が加算される等)。
【0093】
また、上記実施形態では、仮想カメラの視界範囲内に入っているリングオブジェクト102のみを対象として開口面の向きの調整を行っていた。この他、仮想カメラの視界範囲内に入っているか否かに関わらず、全てのリングオブジェクト102に対して開口面の向きを調整する処理を行うようにしても良い。また、仮想カメラの視界範囲内に入っているリングオブジェクト102に対して開口面の向きを調整するのではなく、プレイヤオブジェクト101の位置から所定距離以内に近づいたリングオブジェクト102に対して開口面の向きを調整してもよい。
【0094】
また、上述したような処理によって開口面の方角が調整されたリングオブジェクト102について、更に、当該方角調整後の姿勢を基準として、リングオブジェクト102が若干揺らいでいるような動作を演出として表現するようにしてもよい。例えば、X軸回りにプラス3度〜マイナス3度程度の幅で、1度/秒の割合で開口面の方角を変動させるようにしてもよい。若干の姿勢変動であれば、リングオブジェクト102にプレイヤオブジェクト101を通過させる操作の難度は大きく変わらず、且つ、若干の動きを伴わせるため、リングオブジェクトがそこに存在していることをプレイヤに気付かせやすくすることも可能となる。
【0095】
また、上記実施形態では、ハンググライダーを題材にしたフライトシミュレーションゲームを例に挙げたが、この他、仮想3次元空間を自由に移動可能なプレイヤオブジェクトを操作するゲームであれば、例えばドライブゲームやレースゲーム等にも本発明は適用可能である。また、仮想3次元空間内でオブジェクトを操作する態様のものであれば、ゲーム以外の分野にも適用可能である。
【0096】
また、上述したような実施形態にかかる処理を実行するためのゲーム処理に代表されるような表示制御処理プログラムは、任意のコンピュータ読み取り可能な記憶媒体(例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、半導体メモリカード、ROM、RAMなど)に格納され得る。
【0097】
また、上記実施形態においては、プレイヤオブジェクト101の現在位置に基づいてリングオブジェクト102の向きを制御するための一連の処理が単一の装置(ゲーム装置10)において実行される場合を説明したが、他の実施形態においては、上記一連の処理が複数の情報処理装置からなる情報処理システムにおいて実行されてもよい。例えば、端末側装置と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの一部の処理がサーバ側装置によって実行されてもよい。さらには、端末側装置と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの主要な処理がサーバ側装置によって実行され、当該端末側装置では一部の処理が実行されてもよい。また、上記情報処理システムにおいて、サーバ側のシステムは、複数の情報処理装置によって構成され、サーバ側で実行するべき処理を複数の情報処理装置が分担して実行してもよい。
【符号の説明】
【0098】
10 ゲーム装置
11 下側ハウジング
12 下側LCD
13 タッチパネル
14 操作ボタン
15 アナログスティック
16 LED
21 上側ハウジング
22 上側LCD
23 外側撮像部
23a 外側撮像部(左)
23b 外側撮像部(右)
24 内側撮像部
25 3D調整スイッチ
26 3Dインジケータ
28 タッチペン
31 情報処理部
311 CPU
312 GPU
32 メインメモリ

【特許請求の範囲】
【請求項1】
仮想3次元空間内でプレイヤオブジェクトを移動させる表示制御装置のコンピュータに実行させる表示制御プログラムであって、
少なくともプレイヤオブジェクトとノンプレイヤオブジェクトとを前記仮想3次元空間内に配置するオブジェクト配置手段と、
所定の操作手段からの入力に基づき、前記プレイヤオブジェクトを移動させる移動制御手段と、
前記移動制御手段によって移動された前記プレイヤオブジェクトの前記仮想3次元空間内における現在位置を示す現在位置データを取得する現在位置取得手段と、
前記現在位置データに基づいて、前記ノンプレイヤオブジェクトの所定面を前記プレイヤオブジェクトの現在位置に向ける姿勢制御手段として前記コンピュータを機能させる、表示制御プログラム。
【請求項2】
前記オブジェクト配置手段は、前記プレイヤオブジェクトが衝突または通過することが可能な少なくとも1つの所定面を有するオブジェクトを前記ノンプレイヤオブジェクトとして前記仮想3次元空間内に少なくとも1つ配置し、
前記姿勢制御手段は、前記現在位置データに基づいて、前記ノンプレイヤオブジェクトの前記所定面の向きを前記プレイヤオブジェクトの現在位置に常に対向するように繰り返し更新する、請求項1に記載の表示制御プログラム。
【請求項3】
前記所定面は開口面である、請求項1または2のいずれかに記載の表示制御プログラム。
【請求項4】
前記ノンプレイヤオブジェクトには、前記開口面における開口部分に第1の当たり判定が設定されており、非開口部分に第2の当たり判定が設定されており、
前記表示制御プログラムは、
前記第1の当たり判定または第2の当たり判定のいずれかと前記プレイヤオブジェクトが接触しているか否かを判定する接触判定手段と、
前記接触判定手段による判定の結果、前記プレイヤオブジェクトが前記第1の当たり判定に接触した場合と前記第2の当たり判定に接触した場合とで異なる処理を実行する表示制御手段として前記コンピュータを更に機能させる、請求項3に記載の表示制御プログラム。
【請求項5】
前記ノンプレイヤオブジェクトは、輪の形状を有するオブジェクトである、請求項1乃至4のいずれかに記載の表示制御プログラム。
【請求項6】
前記姿勢制御手段は、前記ノンプレイヤオブジェクトの位置が所定の条件を満たしたときに、当該ノンプレイヤオブジェクトの所定面が前記プレイヤオブジェクトの現在位置に向くように姿勢制御を行う、請求項1に記載の表示制御プログラム。
【請求項7】
前記姿勢制御手段は、前記ノンプレイヤオブジェクトの位置が仮想カメラの視界範囲内に位置したときに、当該ノンプレイヤオブジェクトの所定面が前記プレイヤオブジェクトの現在位置に向くように姿勢制御を行う、請求項6に記載の表示制御プログラム。
【請求項8】
仮想3次元空間でプレイヤオブジェクトを移動させる表示制御装置であって、
少なくともプレイヤオブジェクトとノンプレイヤオブジェクトとを前記仮想3次元空間内に配置するオブジェクト配置手段と、
所定の操作手段からの入力に基づき、前記プレイヤオブジェクトを移動させる移動制御手段と、
前記移動制御手段によって移動された前記プレイヤオブジェクトの仮想3次元空間内における現在位置を示す現在位置データを取得する現在位置取得手段と、
前記現在位置データに基づいて、前記ノンプレイヤオブジェクトの所定面を前記プレイヤオブジェクトの現在位置に向ける姿勢制御手段とを備える、表示制御装置。
【請求項9】
仮想3次元空間でプレイヤオブジェクトを移動させる表示制御システムであって、
少なくともプレイヤオブジェクトとノンプレイヤオブジェクトとを前記仮想3次元空間内に配置するオブジェクト配置手段と、
所定の操作手段からの入力に基づき、前記プレイヤオブジェクトを移動させる移動制御手段と、
前記移動制御手段によって移動された前記プレイヤオブジェクトの仮想3次元空間内における現在位置を示す現在位置データを取得する現在位置取得手段と、
前記現在位置データに基づいて、前記ノンプレイヤオブジェクトの所定面を前記プレイヤオブジェクトの現在位置に向ける姿勢制御手段とを備える、表示制御システム。
【請求項10】
仮想3次元空間でプレイヤオブジェクトを移動させる表示制御方法であって、
少なくともプレイヤオブジェクトとノンプレイヤオブジェクトとを前記仮想3次元空間内に配置するオブジェクト配置ステップと、
所定の操作手段からの入力に基づき、前記プレイヤオブジェクトを移動させる移動制御ステップと、
前記移動制御ステップで移動された前記プレイヤオブジェクトの仮想3次元空間内における現在位置を示す現在位置データを取得する現在位置取得ステップと、
前記現在位置データに基づいて、前記ノンプレイヤオブジェクトの所定面を前記プレイヤオブジェクトの現在位置に向ける姿勢制御ステップとを備える、表示制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2012−145976(P2012−145976A)
【公開日】平成24年8月2日(2012.8.2)
【国際特許分類】
【出願番号】特願2011−1414(P2011−1414)
【出願日】平成23年1月6日(2011.1.6)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】