説明

情報処理装置、情報処理プログラム、情報処理方法、情報処理システム

【課題】2つの筐体から構成される情報処理装置で1つの筐体にのみ姿勢検出センサが搭載されているような情報処理装置であっても、姿勢検出センサが搭載されていないほうの筐体の姿勢を利用した情報処理が可能な情報処理装置を提供すること。
【解決手段】姿勢を検出するための姿勢検出部を有する第1の筐体と、所定の画像を表示する画面部を有する第2の筐体とが、第1の筐体に対する第2の筐体の姿勢が変更可能なように接続される。そして、姿勢検出部で検出された検出データに所定のオフセットを加えた値に基づいて第2の筐体の姿勢を推定し、当該第2筐体の姿勢に基づいて、画面部に所定の表示を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置に関し、より特定的には、2つの筐体から構成された情報処理装置における情報処理に関する。
【背景技術】
【0002】
従来より、ジャイロセンサを内蔵したゲーム装置が知られている(例えば、特許文献1)。このようなゲーム装置では、ゲーム装置本体の傾き具合をジャイロセンサで検出し、その傾きを用いたゲーム処理を行っていた。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−68027号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、上記特許文献1で示されたゲーム装置は、1つの筐体で構成されるゲーム装置である。すなわち、1つの筐体に、ゲーム画像を表示するための画面と、操作に用いるための操作ボタン類と、ジャイロセンサが備わっているものを前提としたものである。そのため、例えば、開閉可能な2つの筐体から構成されるようなゲーム装置であって、その一方の筐体にのみジャイロセンサが備えられたようなゲーム装置については特に考慮されたものではなかった。この点について、出願人は、このような2つの筐体と1つのジャイロセンサを備えるゲーム装置を想定した場合、ジャイロセンサが搭載されている方の筐体の傾きに併せてゲーム画像を変化させようとする際に、この傾きの反映のさせ方やゲーム画像の表示の仕方に改良の余地があることを発見した。
【0005】
それ故に、本発明の目的は、2つの筐体から構成される情報処理装置で片方の筐体にのみジャイロセンサ等の姿勢検出可能なセンサが搭載されているような情報処理装置であっても、このようなセンサが搭載されていないほうの筐体の姿勢を利用した情報処理が可能な情報処理装置を提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は以下のような構成を採用した。
【0007】
本発明にかかる情報処理装置は、第1の筐体と、第2の筐体と、第2筐体姿勢算出部と、表示処理部とを備える。第1の筐体は、姿勢を検出するための姿勢検出部を有する。第2の筐体は、所定の画像を表示するための第1画面部を有しており、第1の筐体に対する相対的な姿勢が変更可能なように当該第1の筐体と接続されている。第2筐体姿勢算出部は、姿勢検出部から出力される姿勢データ、または、当該姿勢データに基づいて算出される第1の筐体の姿勢または姿勢の変化を示す第1筐体姿勢データに所定のオフセットを加えた値に基づいて第2の筐体の姿勢または姿勢の変化を示す第2筐体姿勢データを算出する。表示処理部は、第2筐体姿勢データに基づいて、第1画面部に所定の表示を行う。
【0008】
上記構成により、2つの筐体それぞれに姿勢検出部を搭載することなく、姿勢検出部が搭載されていないほうの筐体の姿勢を推定し、この姿勢に基づいた画面表示を行うことが可能となる。
【0009】
他の構成例として、情報処理装置は、第1の筐体に対する第2の筐体の相対的な姿勢を示す相対姿勢情報をプレイヤに入力させる相対姿勢情報入力部と、プレイヤにより入力された相対姿勢情報に基づいてオフセットの値を設定するオフセット設定部とを更に備え、第2筐体姿勢算出部は、オフセット設定手段により設定されたオフセットを用いて第2筐体姿勢データを算出してもよい。
【0010】
上記構成例によれば、姿勢検出部が搭載されていない第2の筐体の向きに応じた情報処理を実行することが可能となる。
【0011】
更に他の構成例として、情報処理装置は、第1の筐体および第2の筐体が開閉可能なように接続された折りたたみ型の情報処理装置であり、相対姿勢情報入力部は、第1の筐体に対する第2の筐体の相対的な開閉角度を示す値を相対姿勢情報としてプレイヤに入力させるようにしてもよい。
【0012】
上記構成例によれば、折りたたみ型の情報処理装置において、その開閉角度に応じた画面表示を実行することが可能となる。
【0013】
更に他の構成例として、情報処理装置は、第1の筐体に対する第2の筐体の相対的な姿勢を検出し、相対姿勢情報として出力する相対姿勢検出部と、相対姿勢情報で示される第2の筐体の相対的な姿勢に応じた値をオフセットとして設定するオフセット設定部とを更に備え、第2筐体姿勢算出部は、オフセット設定部により設定されたオフセットを用いて第2筐体姿勢データを算出してもよい。
【0014】
上記構成例によれば、姿勢検出部が搭載されていない筐体の姿勢に応じた画面表示処理を実行することが可能となる。
【0015】
更に他の構成例として、相対姿勢検出部は、第1の筐体に対する第2の筐体の相対的な向きを示す情報を相対姿勢情報として出力するようにしてもよい。
【0016】
上記構成例によれば、姿勢検出部が搭載されていない筐体の向きに応じた画面表示処理を行うことが可能となる。
【0017】
更に他の構成例として、情報処理装置は、第1の筐体および第2の筐体が開閉可能なように接続された折りたたみ型の情報処理装置であり、相対姿勢検出部は、第1の筐体に対する第2の筐体の開閉角度を検出し、相対姿勢情報として出力してもよい。
【0018】
上記構成例によれば、折りたたみ型の情報処理装置において、その開閉角度に連動した情報処理を実行することが可能となる。
【0019】
更に他の構成例として、表示処理部は、仮想空間に配置されている仮想カメラの撮像方向を設定するカメラ設定部と、仮想カメラで撮像した仮想空間の画像を第1画面部に出力する画像出力部とを含み、カメラ設定部は、第2の筐体の姿勢または姿勢の変化から算出される第1画面部の姿勢に応じて仮想カメラの撮像方向を設定してもよい。
【0020】
上記構成例によれば、例えば、情報処理装置自体を移動させ、第1画面部(第2の筐体)の姿勢に連動して当該画面部に表示される画像を変化させるような情報処理を実行することができる。また、この際に、画面部の向きと画面部に表示される画像の内容との違和感を軽減することができる。
【0021】
更に他の構成例として、第1の筺体は、仮想空間内においてプレイヤオブジェクトの移動方向を指示する操作部を更に有し、表示処理部は、少なくともプレイヤオブジェクトが存在する仮想空間内を仮想カメラで撮像した画像を第1画面部に出力する画像出力部と、仮想空間内におけるプレイヤオブジェクトの移動方向と操作部における入力方向との対応付けを検出データ、または、検出データに基づいて算出される第1筐体の姿勢または姿勢の変化に応じて変化させる移動方向調整部とを含んでいてもよい。
【0022】
上記構成例によれば、情報処理装置自体を移動させることで画面部に表示される画像が変化するような処理(例えば、ゲーム処理)において、第1の筐体の姿勢に応じた違和感の無い操作感を提供できると共に、画面部の向きに応じた違和感のない画像の表示を行うことができる。
【0023】
更に他の構成例として、第1の筐体は、所定の画像を表示するための第2画面部を更に有し、表示処理部は、第1筐体姿勢データに基づいて、第2画面部に対して所定の表示を行ってもよい。
【0024】
上記構成例によれば、第1の筐体に設けられた画面について、第1の筐体の姿勢に応じた違和感の少ない表示を行うことができる。
【0025】
更に他の構成例によれば、表示処理部は、仮想空間に配置されている仮想カメラの撮像方向を設定するカメラ設定部と、仮想カメラで撮像した仮想空間の画像を第1画面部および第2画面部に出力する画像出力部とを含んでいてもよい。そして、カメラ設定部は、第2筐体姿勢データから算出される第1画面部の向きに応じた仮想カメラの撮像方向を第1撮像方向として設定し、第1筐体姿勢データから算出される第2画面部の向きに応じた仮想カメラの撮像方向を第2撮像方向として設定し、画像出力部は、第1撮像方向で撮像された仮想空間の画像を第1画面部に出力し、第2撮像方向で撮像された仮想空間の画像を第2画面部に出力するようにしてもよい。
【0026】
上記構成例によれば、各筐体に設けられた画面について、各筐体の姿勢に応じた画像を表示することができる。
【0027】
更に他の構成例として、情報処理装置は、姿勢検出部から出力される検出データに基づいて重力方向を算出する重力方向算出部を更に備え、表示処理部は、第2筐体姿勢データおよび重力方向に基づいて所定の表示を行うようにしてもよい。
【0028】
上記構成例によれば、現実世界における重力方向を考慮した画像が表示されるため、違和感のない画像を表示することが可能となる。
【0029】
更に他の構成例として、姿勢検出部は角速度センサであり、重力方向算出部は、第1の筐体が所定の姿勢であるときの所定方向を重力方向として算出するようにしてもよい。
【0030】
上記構成例によれば、情報処理装置に角速度センサのみが搭載されている場合であっても、重力方向を考慮した画像を表示することが可能となる。
【0031】
更に他の構成例として、姿勢検出部は加速度センサであり、重力方向算出部は、第1の筐体が略静止している状態における重力加速度を検出することで重力方向を算出するようにしてもよい。
【0032】
上記構成例によれば、より正確に重力方向を算出することができ、重力方向に応じた画像表示をより的確に行うことができる。
【0033】
更に他の構成例として、姿勢検出部は、少なくとも角速度センサおよび加速度センサを含み、検出データは、角速度センサから出力される角速度データであり、重力方向算出部は、加速度センサからの出力に基づいて重力方向を算出してもよい。
【0034】
上記構成例によれば、より正確に姿勢を算出することが可能となる。
【0035】
更に他の構成例として、姿勢検出部は、角速度センサおよび加速度センサの少なくとも一方を含んでいてもよい。
【0036】
上記構成例によれば、第1の筐体の姿勢を、より簡易に且つ正確に検出することができる。
【0037】
本発明にかかる情報処理プログラムは、姿勢を検出するための姿勢検出部を有する第1の筐体、および、所定の画像を表示するための画面部を有し、当該第1の筐体に対する相対的な姿勢が変更可能なように当該第1の筐体と接続されている第2の筐体から構成された情報処理装置のコンピュータに実行させる情報処理プログラムであって、第2筐体姿勢算出手段と、表示処理手段として前記コンピュータを機能させる。第2筐体姿勢算出手段は、姿勢検出部から出力される検出データ、または、当該検出データに基づいて算出される第1の筐体の姿勢または姿勢の変化を示す第1筐体姿勢データに所定のオフセットを加えた値に基づいて第2の筐体の姿勢または姿勢の変化を示す第2筐体姿勢データを算出する。表示処理手段は、第2筐体姿勢データに基づいて、画面部に対して所定の表示を行う。
【0038】
本発明にかかる情報処理方法は、姿勢を検出するための姿勢検出部を有する第1の筐体、および、所定の画像を表示するための画面部を有し、第1の筐体に対する相対的な姿勢が変更可能なように当該第1の筐体と接続されている第2の筐体から構成された情報処理装置で用いられる情報処理方法であって、第2筐体姿勢算出ステップと、表示処理ステップとを備える。第2筐体姿勢算出ステップは、姿勢検出部から出力される検出データ、または、当該検出データに基づいて算出される第1の筐体の姿勢または姿勢の変化を示す第1筐体姿勢データに所定のオフセットを加えた値に基づいて第2の筐体の姿勢または姿勢の変化を算出する。表示処理ステップは、第2筐体の姿勢または姿勢の変化に基づいて、画面部に対して所定の表示を行う。
【0039】
本発明にかかる情報処理システムは、第1の筐体と、第2の筐体と、第2筐体姿勢算出手段と、表示処理手段とを備える。第1の筐体は、姿勢を検出するための姿勢検出手段を有する。第2の筐体は、所定の画像を表示するための画面を有し、第1の筐体に対する相対的な姿勢が変更可能なように当該第1の筐体と接続されている。第2筐体姿勢算出手段は、姿勢検出手段から出力される検出データ、または、当該検出データに基づいて算出される第1の筐体の姿勢または姿勢の変化を示す第1筐体姿勢データに所定のオフセットを加えた値に基づいて第2の筐体の姿勢または姿勢の変化を示す第2筐体姿勢データを算出する。表示処理手段は、第2筐体姿勢データに基づいて、画面部に対して所定の表示を行う。
【発明の効果】
【0040】
本発明によれば、2つの筐体から構成される情報処理装置において、一方の筐体にのみ姿勢検出部を搭載するだけで、他方の筐体の姿勢を推定し、この姿勢を利用した画像表示処理を行うことが可能となる。
【図面の簡単な説明】
【0041】
【図1】開状態におけるゲーム装置10の正面図
【図2A】閉状態におけるゲーム装置10の左側面図
【図2B】閉状態におけるゲーム装置10の正面図
【図2C】閉状態におけるゲーム装置10の右側面図
【図2D】閉状態におけるゲーム装置10の背面図
【図3】ゲーム装置10の内部構成を示すブロック図
【図4】第1の実施形態で想定するゲームのプレイ中のゲーム装置の姿勢を示す図
【図5】第1の実施形態で想定するゲーム画面を示す図
【図6】第1の実施形態で想定するゲームのプレイ中のゲーム装置の姿勢を示す図
【図7】第1の実施形態で想定するゲーム画面を示す図
【図8】第1の実施形態で想定するゲームのプレイ中のゲーム装置の姿勢を示す図
【図9】第1の実施形態で想定するゲーム画面を示す図
【図10】第1の実施形態で想定するゲームのプレイ中のゲーム装置の姿勢を示す図
【図11】第1の実施形態で想定するゲームのプレイ中のゲーム装置の姿勢を示す図
【図12】第1の実施形態で想定するゲームのプレイ中のゲーム装置の姿勢を示す図
【図13】ゲーム装置10のメインメモリ32のメモリマップを示す図
【図14】第1の実施形態に係るゲーム処理を示すフローチャート
【図15】図15のステップS1で示した開閉角度入力画面処理の詳細を示すフローチャート
【図16】第2の実施形態にかかるゲーム装置110の内部構成を示すブロック図
【図17】第2の実施形態にかかるメインメモリ32のメモリマップを示す図
【図18】第2の実施形態にかかるゲーム処理を示すフローチャート
【図19】第3の実施形態にかかる周辺機器の一例を示す模式図
【図20】第3の実施形態にかかる周辺機器の一例を示す模式図
【図21】第3の実施形態にかかる周辺機器の一例を示す模式図
【図22】第3の実施形態にかかるゲーム装置および周辺機器の内部構成を示すブロック図
【図23】第3の実施形態にかかる周辺機器の一例を示す模式図
【図24】アタッチメントの一例を示す模式図
【発明を実施するための形態】
【0042】
以下、本発明の実施の形態について、図面を参照して説明する。尚、この実施例により本発明が限定されるものではない。
【0043】
(第1の実施形態)
(ゲーム装置の構成)
以下、本発明の第1の実施形態に係るゲーム装置について説明する。ゲーム装置10は携帯型のゲーム装置である。図1および図2A〜Dに示されるように、ゲーム装置10は、下側ハウジング11および上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能)に接続されている。
【0044】
(下側ハウジングの説明)
図1および図2A〜Dに示すように、下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12、タッチパネル13、各操作ボタン14A〜14L、アナログスティック15、LED16A〜16B、挿入口17、および、マイクロフォン用孔18が設けられる。
【0045】
タッチパネル13は、下側LCD12の画面上に装着されている。下側ハウジング11の上側面には、タッチペン28を収納するための挿入口17(図1および図2Dに示す点線)が設けられている。
【0046】
下側ハウジング11の内側面(主面)には、十字ボタン14A(方向入力ボタン14A)、ボタン14B、ボタン14C、ボタン14D、ボタン14E、電源ボタン14F、セレクトボタン14J、HOMEボタン14K、およびスタートボタン14Lが、設けられる。
【0047】
アナログスティック15は、方向を指示するデバイスである。
【0048】
下側ハウジング11の内側面には、マイクロフォン用孔18が設けられる。マイクロフォン用孔18の下部には後述する音声入力装置としてのマイク42(図3参照)が設けられる。
【0049】
図2BおよびDに示されるように、下側ハウジング11の上側面には、Lボタン14GおよびRボタン14Hが設けられている。また、図2Aに示されるように、下側ハウジング11の左側面には、ゲーム装置10が備えるスピーカ43(図3参照)の音量を調整するための音量ボタン14Iが設けられる。
【0050】
図2Aに示されるように、下側ハウジング11の左側面には開閉可能なカバー部11Cが設けられる。このカバー部11Cの内側には、ゲーム装置10とデータ保存用外部メモリ45とを電気的に接続するためのコネクタが設けられる。
【0051】
図2Dに示されるように、下側ハウジング11の上側面には、外部メモリ44を挿入するための挿入口11Dが設けられる。
【0052】
図1および図2Cに示されるように、下側ハウジング11の下側面にはゲーム装置10の電源のON/OFF状況をプレイヤに通知する第1LED16A、下側ハウジング11の右側面にはゲーム装置10の無線通信の確立状況をプレイヤに通知する第2LED16Bが設けられる。ゲーム装置10は他の機器との間で無線通信を行うことが可能であり、下側ハウジング11の右側面には、この無線通信の機能を有効/無効にする無線スイッチ19が設けられる(図2C参照)。
【0053】
また、図示は省略するが、下側ハウジング11の上側面には、赤外線ポートも設けられており、所定の機器との間で赤外線通信が可能となっている。例えば、赤外線ポートは、上記挿入口11DとLボタン14Gの中間位置に設けられている。
【0054】
(上側ハウジングの説明)
図1および図2に示すように、上側ハウジング21には、上側LCD(Liquid Crystal Display:液晶表示装置)22、外側撮像部23(外側撮像部(左)23aおよび外側撮像部(右)23b)、内側撮像部24、3D調整スイッチ25、および、3Dインジケータ26が設けられる。
【0055】
上側LCD22は、立体視可能な画像を表示することが可能な表示装置である。具体的には、パララックスバリア方式の裸眼立体視可能な表示装置である。上側LCD22は、視差バリアを用いてプレイヤの左目に左目用画像をプレイヤの右目に右目用画像を視認させることにより、プレイヤにとって立体感のある画像(立体視画像)を表示することができる。また、上側LCD22は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる。このように、上側LCD22は、立体視画像を表示する立体表示モードと、画像を平面的に表示する(平面視画像を表示する)平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、例えば、後述する3D調整スイッチ25によって行われる。
【0056】
外側撮像部23は、上側ハウジング21の外側面21Dに設けられた2つの撮像部(23aおよび23b)の総称である。外側撮像部(左)23aと外側撮像部(右)23bとは、ゲーム装置10が実行するプログラムによって、ステレオカメラとして使用することが可能である。
【0057】
内側撮像部24は、上側ハウジング21の内側面21Bに設けられ、当該内側面の内向きの法線方向を撮像方向とする撮像部である。
【0058】
3D調整スイッチ25は、スライドスイッチであり、上述のように上側LCD22の表示モードを切り替えるために用いられるスイッチである。また、3D調整スイッチ25は、上側LCD22に表示された立体視可能な画像(立体画像)の立体感を調整するために用いられる。3D調整スイッチ25のスライダ25aは、所定方向(上下方向)の任意の位置にスライド可能であり、当該スライダ25aの位置に応じて上側LCD22の表示モードが設定される。また、スライダ25aの位置に応じて、立体画像の見え方が調整される。
【0059】
3Dインジケータ26は、上側LCD22が立体表示モードか否かを示すLEDである。
【0060】
また、上側ハウジング21の内側面には、スピーカ孔21Eが設けられる。後述するスピーカ43からの音声がこのスピーカ孔21Eから出力される。
【0061】
(ゲーム装置10の内部構成)
次に、図3を参照して、ゲーム装置10の内部の電気的構成について説明する。図3に示すように、ゲーム装置10は、上述した各部に加えて、情報処理部31、メインメモリ32、外部メモリインターフェイス(外部メモリI/F)33、データ保存用外部メモリI/F34、データ保存用内部メモリ35、無線通信モジュール36、ローカル通信モジュール37、リアルタイムクロック(RTC)38、ジャイロセンサ39、電源回路40、赤外線ポート50、およびインターフェイス回路(I/F回路)41等の電子部品を備えている。
【0062】
情報処理部31は、所定のプログラムを実行するためのCPU(Central Processing Unit)311、画像処理を行うGPU(Graphics Processing Unit)312、VRAM(Video RAM)313を含む。CPU311は、ゲーム装置10内のメモリ(例えば外部メモリI/F33に接続された外部メモリ44やデータ保存用内部メモリ35)に記憶されているプログラムを実行することによって、当該プログラムに応じた処理を実行する。なお、CPU311によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。GPU312は、CPU311からの命令に応じて画像を生成し、VRAM313に描画する。VRAM313に描画された画像は、上側LCD22及び/又は下側LCD12に出力され、上側LCD22及び/又は下側LCD12に当該画像が表示される。
【0063】
外部メモリI/F33は、外部メモリ44を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリI/F34は、データ保存用外部メモリ45を着脱自在に接続するためのインターフェイスである。また、赤外線ポート50は、所定の機器と赤外線通信を行うためのインターフェイスである。
【0064】
メインメモリ32は、情報処理部31(のCPU311)のワーク領域やバッファ領域として用いられる揮発性の記憶装置である。
【0065】
外部メモリ44は、情報処理部31によって実行されるプログラム等を記憶するための不揮発性の記憶装置である。外部メモリ44は、例えば読み取り専用の半導体メモリで構成される。
【0066】
データ保存用外部メモリ45は、不揮発性の読み書き可能なメモリ(例えばNAND型フラッシュメモリ)で構成され、任意のデータを保存するために用いられる。
【0067】
データ保存用内部メモリ35は、読み書き可能な不揮発性メモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ35には、無線通信モジュール36を介した無線通信によってダウンロードされたデータやプログラムが格納される。
【0068】
無線通信モジュール36は、例えばIEEE802.11b/gの規格に準拠した方式により、無線LANに接続する機能を有する。また、ローカル通信モジュール37は、所定の通信方式(例えば独自プロトコルによる通信や、赤外線通信)により同種のゲーム装置との間で無線通信を行う機能を有する。
【0069】
ジャイロセンサ39は、3軸(xyz軸)の角速度を検出する。例えば、ジャイロセンサ39は、3軸のジャイロセンサ1チップで構成される。ジャイロセンサはヨー角に関する(単位時間あたりの)角速度(Y軸周りの角速度)、ロール角に関する(単位時間あたりの)角速度(Z軸周りの角速度)、およびピッチ角に関する(単位時間あたりの)角速度(X軸周りの角速度)を検出するためのものである。なお、本明細書では、図1におけるゲーム装置10のZ軸正方向を基準として、XYZ軸周りの回転方向を、それぞれ、ピッチ方向、ヨー方向、ロール方向と呼ぶ。
【0070】
RTC38は、時間をカウントして情報処理部31に出力する。情報処理部31は、RTC38によって計時された時間に基づき現在時刻(日付)を計算する。電源回路40は、ゲーム装置10が有する電源(充電式電池)からの電力を制御し、ゲーム装置10の各部品に電力を供給する。
【0071】
I/F回路41には、タッチパネル13、マイク42およびスピーカ43が接続される。I/F回路41は、マイク42およびスピーカ43(アンプ)の制御を行う音声制御回路と、タッチパネルの制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル13からの信号に基づいて所定の形式のタッチ位置データを生成して情報処理部31に出力する。情報処理部31は、タッチ位置データを取得することにより、タッチパネル13に対して入力が行われた位置を知ることができる。
【0072】
操作ボタン14は、上記各操作ボタン14A〜14Lからなり、操作ボタン14から情報処理部31へは、各操作ボタン14A〜14Iに対する入力状況(押下されたか否か)を示す操作データが出力される。
【0073】
下側LCD12および上側LCD22は情報処理部31に接続される。具体的には、情報処理部31は、上側LCD22のLCDコントローラ(図示せず)と接続され、当該LCDコントローラに対して視差バリアのON/OFFを制御する。上側LCD22の視差バリアがONになっている場合、情報処理部31のVRAM313に格納された右目用画像と左目用画像とが、上側LCD22に出力される。より具体的には、LCDコントローラは、右目用画像について縦方向に1ライン分の画素データを読み出す処理と、左目用画像について縦方向に1ライン分の画素データを読み出す処理とを交互に繰り返すことによって、VRAM313から右目用画像と左目用画像とを読み出す。これにより、右目用画像および左目用画像が、画素を縦に1ライン毎に並んだ短冊状画像に分割され、分割された右目用画像の短冊状画像と左目用画像の短冊状画像とが交互に配置された画像が、上側LCD22の画面に表示される。そして、上側LCD22の視差バリアを介して当該画像がプレイヤに視認されることによって、プレイヤの右目に右目用画像が、プレイヤの左目に左目用画像が視認される。以上により、上側LCD22の画面には立体視可能な画像が表示される。
【0074】
外側撮像部23および内側撮像部24は、情報処理部31の指示に従って画像を撮像し、撮像した画像データを情報処理部31に出力する。
【0075】
3D調整スイッチ25は、スライダ25aの位置に応じた電気信号を情報処理部31に送信する。
【0076】
情報処理部31は、3Dインジケータ26の点灯を制御する。例えば、情報処理部31は、上側LCD22が立体表示モードである場合、3Dインジケータ26を点灯させる。
【0077】
次に、図4〜図12を用いて、第1の実施形態で想定するゲーム処理の概要について説明する。第1の実施形態で想定するゲームは、プレイヤキャラクタが仮想3次元空間(以下、単に仮想空間と呼ぶ)を自由に移動できるゲームを想定する。例えば、いわゆるFPS(ファーストパーソンシューティング)やフライトシミュレータのようなゲームを想定する。本ゲームでは、上側LCD22に仮想空間を仮想カメラで撮影したゲーム画像が表示され、下側LCD12には、主に各種操作のためのボタン画像や、ゲームの進行に役立つ各種情報(例えばマップ画像等)が表示されるものとする。
【0078】
また、本実施形態では、仮想カメラの向きをゲーム装置10の向き(姿勢)と連動させるようなゲーム処理を想定する(つまり、ゲーム装置10そのものを動かす事で視点変更が可能な場合を想定する)。典型的には、ゲーム装置10の上側ハウジング21と下側ハウジング11との間の開閉角度が180度である状態(以下、180度オープン状態と呼ぶ)でゲームをプレイする場合を想定する。そして、この状態で、実空間において、図4に示すように、ゲーム装置10がプレイヤの前方を向くようにすると(図4においてはZ軸正方向がプレイヤの前方方向を示す)、ゲーム画像としては、図5に示すように、撮像方向がプレイヤの視点(仮想カメラ位置)から前方方向(奥行き方向、図5ではZ軸方向)である画像が表示される。一方、実空間内において、例えば、図6のようにゲーム装置10の上側ハウジング21の外側面21Dおよび下側ハウジング11の外側面を下方(実空間のY軸負方向)に向けると、仮想空間内においても、仮想カメラが下方向を向き、上側LCD22には、図7に示すような、仮想空間内の下方向を撮影した画像(鳥瞰したような画像)が表示される。
【0079】
ここで、上記のように、ゲーム装置10の下側ハウジング11にはジャイロセンサ39が内蔵されている。そのため、下側ハウジング11の向き(姿勢)については、ジャイロセンサ39からの出力に基づいて算出することは可能である。一方、上側ハウジング21には、ジャイロセンサは内蔵されていない。そのため、上記のように、仮想カメラの向きをゲーム装置10の向きと連動させようとした場合、下側ハウジング11の向き(姿勢)に応じて、仮想カメラの向きを変更することが考えられる。この場合、上記開閉角度が固定されていることを前提にすれば、例えば上記のように、180度オープン状態でゲームがプレイされることを前提として、下側ハウジング11の向きと仮想カメラの向きとが連動するように設計・開発すれば、180度オープン状態でプレイされている限りは、開発者の意図したゲーム画像の表示は可能となる。しかしながら、ゲームのプレイ中に開閉角度が変更された場合、例えば、ゲーム開始時は図4のような180度オープン状態でプレイされていたが、ゲームプレイ中に、図8に示すように、下側ハウジング11がプレイヤによって上に引き上げられることで開閉角度が90度に変更された場合を想定する。このような場合、下側ハウジング11の向きを基準として仮想カメラの向きを制御していると、下側ハウジング11の外側面が下を向いているため、仮想カメラの向きも下方向に変更される。その結果、上側ハウジングの外側面21Dはプレイヤの前方に向いているにも関わらず、そこに表示されるゲーム画像は、図9で示すような、仮想空間を上から撮影した画像、つまり、上側ハウジングの外側面21Dを下に向けたときに表示されるべき画像が表示されることになる。その結果、開発者が意図した画像が表示されないことになる(実空間と仮想空間の座標系が90度すれた状態となっている)。
【0080】
そこで、第1の実施形態では、下側ハウジング11の向き(姿勢)に、上記開閉角度に相当するオフセット値を与えることで、上側ハウジング21の向き(姿勢)を推定し、この推定された上側ハウジング21の向きに基づいて仮想カメラの向き(つまり、撮像方向)を制御する。つまり、ジャイロセンサ39からの出力に基づいて算出される下側ハウジング姿勢にオフセット値を与えることで、あたかも上側ハウジング21にジャイロセンサが内蔵されているかのような処理を行う。具体的には、第1の実施形態では、上記開閉角度を示す情報をプレイヤに入力させることで、この開閉角度に対応するオフセット値を設定する。そして、このオフセット値をジャイロセンサ39からの出力値(角速度データ)に加えることで、上側ハウジング21の向き等を計算する。例えば、ゲーム装置10について、上記開閉角度が90度の位置、135度の位置、180度の位置のいずれかで固定されるように、両ハウジングの接続部分(以下、ヒンジ部と呼ぶ)を適宜構成しておく。そして、開閉角度が90度か135度か180度かの選択画面をゲーム開始前に表示してプレイヤに選択させる。そして、選択された角度に応じたオフセット値に基づいてゲーム処理を開始する。また、ゲーム中にプレイヤが開閉角度を変更した場合は、プレイヤがそのことを示す情報をその都度入力することで、上記オフセット値が再設定される。例えば、ゲーム中、プレイヤがスタートボタン14Lを押下すると、開閉角度選択画面が表示され、プレイヤが角度を選択できるようにしておく。
【0081】
このように第1の実施形態では、オフセット値(プレイヤから入力された開閉角度情報)とジャイロセンサからの出力とに基づいて上側ハウジング21の向き(姿勢)を推定する。そして、上側ハウジング21の向きに併せた仮想カメラ制御を行う。上側ハウジング21には仮想カメラで撮影された画像が表示される画面が備えられているため、上側ハウジング21の向き(姿勢)と仮想カメラの向き(姿勢)を一致させることができ、直感的な視点変更操作が可能となる。
【0082】
また、このようなオフセット値を用いることで、上側ハウジング21に直接ジャイロセンサを内蔵する場合よりも、ハードウェアにかかるコストを軽減することができる。また、上側および下側ハウジングの双方にジャイロセンサ39を搭載したとすると、上側ハウジングと下側ハウジングのそれぞれで姿勢算出のための演算処理を行う必要がある。しかし、本実施形態のようにオフセット値を用いることで、2つの姿勢算出のための演算処理を行う場合に比べて処理負荷を軽減することができる。
【0083】
また、第1の実施形態におけるゲーム処理では、上記のような仮想カメラの制御に加え、操作方向の制御処理も行われる。例えば、仮想空間内でヘリコプターオブジェクト(以下、単にヘリコプターと呼ぶ)を飛行させるフライトゲームを想定する。そして、ゲーム開始直後の初期状態では、後方視点の画像でゲーム画像が表示されているとする。すなわち、ヘリコプターを後ろから見ているようなゲーム画像が表示されるとする。このようなゲーム画像において、例えば、図10に示すように、ゲーム装置10の開閉角度が90度の状態(以下、90度オープン状態と呼ぶ)であるとする。この状態で、アナログスティック15の上方向を入力すると、ヘリコプターは前方(進行方向;仮想空間内Z軸正方向)に向けて移動する。その後、下側ハウジング11を下方に移動させることで180度オープン状態にすると(図11参照)にし、上記の様にプレイヤが変更後の開閉角度を入力下後、アナログスティック15の上方向を入力すると、ヘリコプターが上昇する(仮想空間内のY軸正方向に移動する)。つまり、90度オープン状態から180度オープン状態に変化する前後で、実空間におけるアナログスティックの方向(姿勢)と、仮想空間での移動方向との対応が90度ずれる状態になる。
【0084】
また、上記図11の状態から、今度は、上側ハウジング21を奥(Z軸正方向側)に倒して180度オープン状態にしたとする(図12参照)。この場合は、上記図7で示したような、仮想空間を上から見下ろした画像(鳥瞰したような画像)が上側LCD22に表示される。そして、アナログスティック15の上方向を入力した場合は、ヘリコプターは、仮想空間内の前方方向(Z軸正方向)に移動することになる(ゲーム画面が縦スクロールすることになる)。つまり、下側ハウジングの姿勢が変更されず、上側ハウジングの姿勢が変更されたときは、アナログスティックの向き(姿勢)と移動方向の対応には変化がない。
【0085】
つまり、仮想カメラの向きに対して開閉角度の情報を与えることで、上側LCD22に対して、アナログスティック15がどのくらい傾いているのかが算出でき、更に、アナログスティック15の向きが仮想空間内のどの方向に向いているかが算出できる。換言すれば、絶対的な画面(上側LCD22)の向きに対して、上側LCD22に対するアナログスティック15の傾き具合という相対的な情報を適用することで、仮想空間内におけるアナログスティック15の絶対的な向きが判別できることになる。
【0086】
このように、第1の実施形態では、下側ハウジング11に対する相対的な上側ハウジング21の向き(開閉角度)をオフセット値として示すことで、上側ハウジング21にジャイロセンサを搭載することなく、上側ハウジング21の姿勢を反映したゲーム制御が可能となる。
【0087】
次に、ゲーム装置10によって実行される、第1の実施形態のゲーム処理の詳細を説明する。まず、ゲーム処理の際にメインメモリ32に記憶されるデータについて説明する。図13は、ゲーム装置10のメインメモリ32のメモリマップを示す図である。図13において、メインメモリ32は、プログラム記憶領域321およびデータ記憶領域323を含む。プログラム記憶領域321およびデータ記憶領域323のデータは、外部メモリ44やデータ保存用内部メモリ35に記憶され、ゲームプログラム実行時にはメインメモリ32に転送されて記憶される。
【0088】
プログラム記憶領域321は、CPU311によって実行されるゲームプログラムを記憶し、このゲームプログラムは、ゲーム処理プログラム322などから構成される。
【0089】
データ記憶領域323には、操作データ324、オフセット値データ329、下側姿勢データ330、上側姿勢データ331、仮想カメラデータ332などのデータが記憶される。
【0090】
操作データ324は、プレイヤがゲーム装置1に対して行った操作内容を示すデータである。操作データ324には、各種操作ボタン14の押下状態を示す操作ボタンデータ325、ジャイロセンサ39で検出された3軸それぞれの角速度を示す角速度データ326、タッチパネル13で検出されたタッチ座標を示すタッチ座標データ327、アナログスティック15の入力状態を示すアナログ入力データ328が含まれる。
【0091】
オフセット値データ329は、上述したような開閉角度に対応する値である。
【0092】
下側姿勢データ330は、角速度データ326に基づいて算出される、下側ハウジング11の姿勢を示すデータである。
【0093】
上側姿勢データ331は、角速度データ326およびオフセット値データ329に基づいて算出される上側ハウジング21の姿勢を示すデータである
【0094】
仮想カメラデータ332は、仮想空間に配置される仮想カメラの位置や向き、画角などを示すデータである。
【0095】
次に、図14〜図15を参照して、ゲーム装置10によって実行されるゲーム処理について説明する。なお、図14はゲーム装置10によって実行されるゲーム処理の全体処理を示すフローチャートである。
【0096】
まず、ステップS1において、開閉角度をプレイヤに問い合わせて入力させるため開閉角度入力画面処理が実行される。図15は、当該開閉角度入力画面処理の詳細を示すフローチャートである。図15において、まず、ステップS21で、開閉角度のプレイヤに問い合わせるための画面が生成され、上側LCD22(下側LCD12でもよい)に表示される。この画面は、例えば、「90度」「135度」「180度」の3つの選択肢が表示された画面である。次に、ステップS22において、プレイヤからの入力が受け付けられる。すなわち、ステップS21の問い合わせ画面に対する入力の有無が判定され、入力がないときは(ステップS22でNO)、ステップS21に処理が戻される。入力があったときは(ステップS22でYES)、ステップS23に処理が進められる。例えば、上記3つの選択肢の中から、ゲーム装置10の実際の開閉角度の応じた角度をプレイヤが選択することで、ステップS22の判定において、開閉角度の入力がなされたと判定される。
【0097】
プレイヤからの入力が受け付けられれば、次に、ステップS23において、当該入力された内容に基づいてオフセット値データ329の設定が行われる。このオフセット値データ329については、例えば、上記選択肢として表示される開閉角度に対応する値が予めメインメモリ32に記憶されており、上記選択された開閉角度に対応する値がこれらの値の中から選択されることで設定される。その他、開閉角度に基づいて所定の演算を施すことでオフセット値データ329を算出するようにしてもよい。その後、上記問い合わせの画面が消去され、開閉角度入力画面処理は終了する。
【0098】
図14に戻り、次に、ステップS2において、以降の処理において用いられる各種データ(上記オフセット値データ329を除く)の初期化処理が実行される。また、この時点における下側ハウジング11の姿勢が算出され、この姿勢を示すデータが基準姿勢データ(図示は省略)として記憶される。この基準姿勢データは、以降の処理において、下側ハウジングの姿勢を算出するために適宜利用される。更に、仮想ゲーム空間が構築されて上側LCD22に表示される。CPU311は、3次元の仮想ゲーム空間を構築し、プレイヤオブジェクトや地形オブジェクト等の各種オブジェクトを配置する。以上のように構築されたゲーム空間を表すゲーム画像が生成され、生成されたゲーム画像がモニタ2に表示される。以降、ステップS3〜S9の処理ループが1フレーム毎に繰り返される(ステップS5における処理を除く)ことによって、ゲームが進行していく。
【0099】
次に、ステップS3において、操作データ324が取得される。続くステップS4において、操作データ324で示される操作内容が、開閉角度設定を要求する操作であるか否かが判定される。例えば、ゲームプレイ中にスタートボタン14Lが押されることで開閉角度の設定画面が表示されるように構成されていれば、当該スタートボタン14Lが押下されたか否かが操作データ324を参酌することで判定される。当該判定の結果、開閉角度設定の要求操作であるときは(ステップS4でYES)、ステップS5において、上述したような開閉角度入力画面処理が実行される。この処理は、ステップS1の処理と同様であるため、説明は省略する。ステップS5の処理が終われば、後述のステップS9に処理が進められる。
【0100】
一方、ステップS4の判定の結果、操作内容が開閉角度設定の要求操作ではないときは(ステップS4でNO)、ステップS6において、仮想カメラの向きが算出され、仮想カメラデータ332として設定される。このステップS6の処理をより具体的に説明すると、まず、角速度データ326(3軸のデータそれぞれ)にオフセット値データ329を加えた、オフセット済み角速度データが算出される。そして、このオフセット済み角速度データに基づいて各軸の角度が算出される。更に、当該各軸の角度に基づいて上側ハウジング21の姿勢(例えば3軸それぞれの姿勢を示すベクトルで示される)が算出され、上側姿勢データ331として記憶される。上側ハウジング21の姿勢が算出されれば、上側ハウジング21の外側面の向き(上側LCD22の向き)もわかるため、この向きと仮想カメラの撮影方向が一致するような仮想カメラの向きが算出される。そして、仮想カメラデータ332に格納される。
【0101】
なお、ステップS6の処理に関しては、上記のように角速度データ329にオフセットを適用する手法の他、上記角速度データ326に基づいて、一旦、下側ハウジング11の姿勢を算出し、当該下側ハウジング11の姿勢に上記オフセットを適用することで上側ハウジング21の姿勢が算出されるようにしても良い。処理負荷の観点からは、角速度データ326にオフセットを適用する手法のほうが演算量が少なくすむため有利ではあるが、実装に際しては、実行したい情報処理の内容に応じて上記2つの手法を適宜使い分ければよい。また、その他、一旦、下側ハウジング11の姿勢を算出した後、当該下側ハウジング11の姿勢の変化を算出するようにし、この姿勢の変化に上記オフセットを加えることで上側ハウジング11の姿勢の変化を算出する手法を用いても良い。
【0102】
次に、ステップS7において、操作方向の設定が行われる。具体的には、まず、下側ハウジング11の姿勢が上記角速度データ326に基づいて算出され、下側姿勢データ330として記憶される。そして、当該姿勢に応じて、アナログスティック15の入力方向と仮想空間内におけるプレイヤオブジェクトの移動方向との対応付けが設定される。例えば、下側ハウジング11の姿勢が地面に対して水平な姿勢であれば、アナログスティック15の上方向入力と、プレイヤオブジェクト(例えば、上記図10等のヘリコプター)の仮想空間内のZ軸正方向(前方方向)への移動(前進)とが対応付けられる。また、例えば、下側ハウジング11の姿勢が地面に対して垂直な姿勢であれば、アナログスティック15の上方向入力と、プレイヤオブジェクトの仮想空間内のY軸正方向(上方向)への移動(上昇)とが対応付けられる。
【0103】
次に、ステップS8において、その他の各種ゲーム処理が実行される。例えば、アナログ入力データ328に基づくプレイヤオブジェクトの移動や、その他各種オブジェクトの移動、衝突判定等の処理が適宜実行される。そして、これらの処理が反映された仮想空間が仮想カメラで撮影され、上側LCD22に表示される。
【0104】
次に、ステップS9において、ゲーム終了のための条件が満たされたか否かが判定される。ゲーム終了のための条件が満たされていないときは(ステップS9でNO)、上記ステップS3に戻って処理が繰り返される。ゲーム終了のための条件が満たされたときは(ステップS9でYES)、当該ゲーム処理は終了する。以上で、第1の実施形態にかかるゲーム処理の説明を終了する。
【0105】
このように、第1の実施形態では、プレイヤに開閉角度を示す情報を入力させ、その情報を基にオフセット値を設定する。そして、下側ハウジング11に設けられているジャイロセンサ39からの出力に当該当該オフセット値を加えることで、上側ハウジング21の姿勢を推定し、当該推定された姿勢をゲーム処理に利用している。これにより、上側ハウジング21にジャイロセンサ等を設けずとも上側ハウジングの姿勢に基づいたゲーム処理を実行することが可能となる。
【0106】
(第2の実施形態)
次に、図16から図18を参照して、本発明の第2の実施形態について説明する。上述の第1の実施形態では、開閉角度を示す情報はプレイヤから入力されるものであった。これに対して、第2の実施形態では、ゲーム装置に開閉角度を検出する仕組みをハードウェア的に搭載する。なお、当該実施形態に係るゲーム装置の構成は、一部を除いて上述した第1の実施形態と同様であるため、同じ部分には同一の参照符号を付して詳細な説明を省略する。
【0107】
図16は、本発明の第2の実施形態に係るゲーム装置110の構成を示した(ブロック/ハードウェア構成)図である。図16において、ゲーム装置110は、第1の実施形態の構成に加えて、情報処理部31と接続された開閉角度検出部51が加わったものである。
【0108】
開閉角度検出部51は、例えば、上側ハウジング21と下側ハウジング11の接続部分、すなわち、ヒンジ部分に直接組み込んで角度検出を行うロータリータイプの検出スイッチである。例えば、ゲーム装置のヒンジ部分の回転に伴って、当該開閉角度検出部51のヒンジ部が回転し、これに同期して開閉角度検出部51内部の可動接点が回転し、設定した角度で固定端子と接触、ON/OFFすることで回転角度を検出する。この回転角度に基づき、開閉角度が算出される。算出された開閉角度は後述の開閉角度データ333として記憶される。なお、開閉角度検出部51は、ロータリータイプの検出スイッチに限らず、開閉角度が検出できれば、どのようなものでもよい。
【0109】
次に、第2の実施形態のゲーム処理の詳細を説明する。まず、第2の実施形態でのゲーム処理の際にメインメモリ32に記憶されるデータについて説明する。図17は、第2の実施形態にかかるメインメモリ32のメモリマップを示す図である。図17において、メインメモリ32には、第1の実施形態で図13を用いて上述したデータに加えて、データ記憶領域323に開閉角度データ333が更に記憶される。
【0110】
開閉角度データ333は、上記開閉角度検出部51から出力されるデータが記憶されたものであり、上側ハウジング21と下側ハウジング11との開閉角度を示すデータである。本実施形態では、当該データは、開閉角度検出部51が角度の変化を検出する度にその内容が更新されるものとする。つまり、最新の(最後に取得された)開閉角度データのみが記憶されている。
【0111】
次に、第2の実施形態で実行されるゲーム処理について説明する。図18は第2の実施形態にかかるゲーム処理の全体処理を示すフローチャートである。なお、このフローチャートのうちステップS2〜S3、および、S6〜S9は、上記第1の実施形態の説明における図14で示したフローチャートと同一の処理であるため、両フローチャートにおいて同一のステップには同一の符号を付している。
【0112】
図18では、まず、ステップS2の初期化処理で各種データの初期化やゲーム開始時のゲーム画像の生成および表示が行われた後、ステップS3において、操作データが取得される。次に、ステップS201において、開閉角度データ333が取得される。
【0113】
次に、ステップS202において、上記取得された開閉角度データに基づいてオフセット値データ329が設定される。これは、開閉角度データ333で示される角度に応じたオフセット値を予め用意しておき、選択することで設定されても良いし、開閉角度データ333で示される開閉角度に所定の演算を施すことでオフセット値データ329が算出されるようにしてもよい。つまり、開閉角度データ333で示される開閉角度に応じたオフセット値が算出、設定されれば、どのような手法を用いても良い。
【0114】
なお、このステップS202の処理に関しては、開閉角度に変化が生じたときにのみオフセット値データ329の設置が行われるように構成しても良い。
【0115】
その後、上述の第1の実施形態で説明したステップS6〜ステップS9と同様の処理が実行されることで、ゲーム処理が実行されるが、詳細な説明は省略する。
【0116】
以上のように、第2の実施形態では、開閉角度検出部51をゲーム装置10に搭載することで、プレイヤからの入力に頼ることなく開閉角度を検出することができる。そして、当該検出された角度に応じてオフセット値を設定し、第1の実施形態と同様に上側ハウジング21の姿勢を推定し、その姿勢をゲーム処理に利用する。上記開閉角度検出部51は、一般には、ジャイロセンサよりもコスト的に安価な物であるため、上側ハウジング21にジャイロセンサを搭載する場合に比べ、ハードウェアにかかるコストを軽減することが可能となる。また、2つのジャイロセンサを用いてそれぞれで姿勢算出のための処理を行う場合に比べても、オフセット値を加算する演算処理のほうがソフトウェアの処理コスト的にも有利である。
【0117】
(第3の実施形態)
次に、図19から図23を参照して、本発明の第3の実施形態について説明する。上述の第2の実施形態では、開閉角度を示す情報を検出するための開閉角度検出部51をゲーム装置110に搭載していた。これに対して、第3の実施形態では、ゲーム装置自体には開閉角度検出部は搭載せず、ゲーム装置の周辺機器として、開閉角度検出部を備えた周辺機器を利用する。換言すれば、第1の実施形態で示したようなゲーム装置10に、開閉角度検出部を備えた周辺機器を装着させることで、上述した第2の実施形態と同様のゲーム処理を可能とするものである。
【0118】
なお、第3の実施形態に係るゲーム装置10は、上述した第1の実施形態と同様であるため、同じ部分には同一の参照符号を付して詳細な説明を省略する。
【0119】
図19は、第3の実施形態にかかる上記周辺機器の一例である、銃型アタッチメント200の模式図である。図19において、銃型アタッチメント200は、銃の形を模したアタッチメントである。また、銃型アタッチメント200には、ゲーム装置10が着脱可能な下側外面装着部201、下側上面装着部202、および上側外面装着部203とが設けられている。また、下側上面装着部202と上側外面装着部203とは、開閉可能なようにヒンジ部204によって接続されている。当該ヒンジ部204の内部には、上記第2の実施形態で説明したような開閉角度検出部が内蔵されている。
【0120】
本例では、図20に示すように、ゲーム装置10の下側ハウジング11の外側面が銃型アタッチメント200の下側外面装着部201に密着し、下側ハウジング11の上側面が下側上面装着部202に密着し、上側ハウジング21の外側面21Dが上側外面装着部203に密着するように、ゲーム装置10を銃型アタッチメント200に取り付ける。そして、このようにゲーム装置10を銃型アタッチメント200に装着した状態で、例えば、上側LCD22に表示される画像を見ながらゲーム装置10自体を移動させ、照準を定める等することで、当該ゲーム装置10が装着された銃型アタッチメント200を実際の銃に見立てて遊ぶことが可能となる。上側LCD22には、例えば、外側撮像部23で撮像された画像に所定の画像を合成したようなゲーム画像が表示される。
【0121】
また、下側上面装着部202には、図21で示す用に、赤外線ポート205が設けられている。当該赤外線ポート205は、ゲーム装置10が装着された際に、当該ゲーム装置10の下側ハウジング11の上側面に設けられている赤外線ポート50と対向するような位置に設けられている。上記ヒンジ部204に内蔵されている開閉角度検出部は、検出した開閉角度を示すデータを当該赤外線ポート205から出力する。そして、当該赤外線ポート205とゲーム装置10の赤外線ポート50との間で赤外線通信が行われ、当該データがゲーム装置10に入力される。これにより、ゲーム装置10は、上側ハウジング21と下側ハウジング11との開閉角度を認識することが可能となっている。
【0122】
図22は、第3の実施形態にかかるゲーム装置10の内部の電気的構成を示す模式図である。なお、ここでは、開閉角度の検出に関する部分のみを図示し、その他の部分については省略する。図22に示すように、銃型アタッチメント200は、開閉角度検出部206と赤外線ポート205とを備えている。開閉角度検出部206は、検出した開閉角度を示すデータを赤外線ポート205に出力する。赤外線ポート205は、ゲーム装置10の赤外線ポート50と赤外線通信を行うためのものである。開閉角度検出部206は、赤外線ポート205と電気的に接続されており、上記のように、検出した開閉角度を赤外線ポート205を介してゲーム装置10に伝えることが可能となっている。
【0123】
このような構成により、例えば、図23に示すように、上側ハウジング21を銃口方向に少し倒すと、上側ハウジング21に密着している上側外面装着部203も連動して可動する。これに伴い、ヒンジ部204に内蔵されている開閉角度検出部206がその開閉角度を検出し、当該角度を示すデータを赤外線ポート205に出力する。当該データがゲーム装置10の赤外線ポート50から入力され、開閉角度データ333としてメインメモリ32に記憶される。このようにして、ゲーム装置10は、上側ハウジング21と下側ハウジング11との開閉角度を認識することができる。その結果、上述した第2の実施形態と同様の処理を実現することが可能となる。なお、処理の詳細については、上述の第2の実施形態の説明において上記図18を用いて説明した処理と同様であるため、ここでは説明は省略する。
【0124】
上記のように、第3の実施形態では、ゲーム装置10と接続可能な周辺機器という形態で、ハードウェア的に開閉角度を検出する仕組みを実現している。これにより、第1の実施形態で示したようなハードウェア構成のゲーム装置10に対して、ゲーム装置10自体のハードウェア構成に手を加えることなく、上記の第2の実施形態で説明したような処理を行うことが可能となる。
【0125】
なお、上側ハウジング21と下側ハウジング11の開閉角度を検出する手法としては、上述したような手法の他、以下のような手法を用いても良い。例えば、磁力の強さを利用して開閉角度を検出するようにしてもよい。具体的には、下側ハウジング11に磁力センサーを搭載する。上側ハウジング21に格納されているスピーカ43には、その部品として磁石が用いられている。そのため、当該磁力センサーの位置としては、ゲーム装置10を閉めたときに当該スピーカ43と向かい合わせになるような位置に当該磁力センサーを搭載する。そして、当該磁力センサーで検出される磁力の強さを判別することで、開閉角度を判定するようにしてもよい。
【0126】
また、その他、内側撮像部24で撮像される画像を利用して開閉角度を検出するようにしてもよい。この場合は、例えば、図24に示すような、内側撮像部24近傍に装着するアタッチメントとして、小型の鏡のアタッチメントを利用する。当該アタッチメントが装着されると、鏡の反射を利用して、内側撮像部24の真下方向が撮像方向となる。このように、アタッチメントを用いて内側撮像部24の撮像方向を真下方向に変化させると、ゲーム装置10の開閉角度に応じて、撮像される画像が変化することになる。そして、当該撮像画像を解析することで、ゲーム装置10の開閉角度を推定するようにしてもよい。
【0127】
また、上記実施形態では、下側ハウジング11にジャイロセンサ39が搭載されている例を挙げたが、これに限らず、ジャイロセンサは上側ハウジング21、下側ハウジング11のどちらに搭載されていても良い。例えば、上側ハウジング21にジャイロセンサが搭載されるように構成し、当該ジャイロセンサの出力に基づき上側ハウジング21の姿勢を算出する。そして、当該上側ハウジングの姿勢に上述したようなオフセットを加えることで下側ハウジング11の姿勢を推定してもよい。更に、このように推定された下側ハウジング11の姿勢に応じて下側LCD12に表示する画像を変化させるようにしてもよい。
【0128】
また、上述の実施形態では、下側ハウジング11の姿勢算出に際して、ジャイロセンサ39を利用していたが、これに限らず、下側ハウジング11の姿勢を検知することが可能な動きセンサであれば、上述したジャイロセンサ以外のセンサを利用することも可能である。例えば、加速度センサ等を利用して姿勢を算出するようにしてもよい。更には、複数のセンサを併用してもよい。上記の例でいうとジャイロセンサおよび加速度センサを下側ハウジング11に搭載するように構成し、双方のセンサを併用して下側ハウジング11の姿勢を算出してもよい。
【0129】
更には、重力方向に対する下側ハウジング11の姿勢を検出し、重力方向に基づいた画像表示を行うようにしても良い。重力方向については、例えば、動きセンサとしてジャイロセンサ39を利用する場合は、下側ハウジング11の初期姿勢を定義し、当該初期姿勢における所定の方向を重力方向として設定することが考えられる。この初期姿勢とは、例えば、下側ハウジング11の外側面が床に接するように、ゲーム装置10を床に載置した状態のときの姿勢である。また、この場合は、下側ハウジング11の外側面の方向が重力方向として設定されることになる。また、動きセンサとして上記加速度センサを利用する場合は、ゲーム装置10が略静止している状態から重力方向(重力加速度のかかっている方向)を検出することが考えられる。そして、検出された重力方向を考慮したゲーム画像を表示するように制御しても良い。例えば、現実世界における重力方向と仮想空間内における重力方向とが常に一致するように仮想空間の画像を表示する等である。
【0130】
また、上記重力方向を利用する画像表示処理に関して、例えば、ジャイロセンサおよび加速度センサの双方が下側ハウジング11に搭載されるよう構成されているときは、ジャイロセンサのみを用いて上記重力方向と下側ハウジング11の姿勢を算出してもよいし、加速度センサのみを用いて重力方向と下側ハウジング11の姿勢を算出するようにしてもよい。また、重力方向については加速度センサを利用して検出し、下側ハウジング11の姿勢についてはジャイロセンサを利用して算出するようにしてもよい。
【0131】
また、上記実施形態においては、オフセットを用いて上側ハウジング21の姿勢を算出し、これに基づいて実行されるゲーム処理が単一の装置(ゲーム装置10)において実行される場合を説明したが、他の実施形態においては、上記一連の処理が複数の情報処理装置からなる情報処理システムにおいて実行されてもよい。例えば、端末側装置(上記実施形態ではゲーム装置10)と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの一部の処理がサーバ側装置によって実行されてもよい。(例えば、オフセット値を設定するまでの処理は端末側で実行され、オフセット値を利用したゲーム処理についてはサーバ側で実行される等)さらには、端末側装置と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの主要な処理がサーバ側装置によって実行され、当該端末側装置では一部の処理が実行されてもよい。また、上記情報処理システムにおいて、サーバ側のシステムは、複数の情報処理装置によって構成され、サーバ側で実行するべき処理を複数の情報処理装置が分担して実行してもよい。
【産業上の利用可能性】
【0132】
本発明にかかる情報処理装置、情報処理プログラム、情報処理方法および情報処理システムは、2つの筐体で構成される情報処理装置において、より低コストで、当該装置の姿勢を反映する処理を実行することができ、携帯型ゲーム装置、ノートパソコン、携帯電話やスマートフォン等の携帯型情報端末等に有用である。
【符号の説明】
【0133】
10 ゲーム装置
11 下側ハウジング
12 下側LCD
13 タッチパネル
14 操作ボタン
15 アナログスティック
16 LED
21 上側ハウジング
22 上側LCD
23a 外側撮像部(左)
23b 外側撮像部(右)
24 内側撮像部
27 タッチペン
31 情報処理部
32 メインメモリ
33 外部メモリI/F
34 データ保存用外部メモリI/F
35 データ保存用内部メモリ
36 無線通信モジュール
37 ローカル通信モジュール
38 RTC
39 ジャイロセンサ
40 電源回路
42 マイク
43 スピーカ
44 外部メモリ
45 データ保存用外部メモリ

【特許請求の範囲】
【請求項1】
姿勢を検出するための姿勢検出部を有する第1の筐体と、
所定の画像を表示するための第1画面部を有し、前記第1の筐体に対する相対的な姿勢が変更可能なように当該第1の筐体と接続された第2の筐体と、
前記姿勢検出部から出力される検出データ、または、当該検出データに基づいて算出される前記第1の筐体の姿勢または姿勢の変化を示す第1筐体姿勢データに所定のオフセットを加えた値に基づいて前記第2の筐体の姿勢または姿勢の変化を示す第2筐体姿勢データを算出する第2筐体姿勢算出部と、
前記第2筐体姿勢データに基づいて、前記第1画面部に対して所定の表示を行う表示処理部とを備える、情報処理装置。
【請求項2】
前記情報処理装置は、
前記第1の筐体に対する第2の筐体の相対的な姿勢を示す相対姿勢情報をプレイヤに入力させる相対姿勢情報入力部と、
前記プレイヤにより入力された相対姿勢情報に基づいて前記オフセットの値を設定するオフセット設定部とを更に備え、
前記第2筐体姿勢算出部は、前記オフセット設定部により設定されたオフセットを用いて前記第2筐体姿勢データを算出する、請求項1に記載の情報処理装置。
【請求項3】
前記情報処理装置は、前記第1の筐体および第2の筐体が開閉可能なように接続された折りたたみ型の情報処理装置であり、
前記相対姿勢情報入力部は、前記第1の筐体に対する第2の筐体の相対的な開閉角度を示す値を前記相対姿勢情報としてプレイヤに入力させる、請求項2に記載の情報処理装置。
【請求項4】
前記情報処理装置は、
前記第1の筐体に対する第2の筐体の相対的な姿勢を検出し、相対姿勢情報として出力する相対姿勢検出部と、
前記相対姿勢情報で示される前記第2の筐体の相対的な姿勢に応じた値をオフセットとして設定するオフセット設定部とを更に備え、
前記第2筐体姿勢算出部は、前記オフセット設定部により設定されたオフセットを用いて前記第2筐体姿勢データを算出する、請求項1に記載の情報処理装置。
【請求項5】
前記相対姿勢検出部は、前記第1の筐体に対する第2の筐体の相対的な向きを示す情報を相対姿勢情報として出力する、請求項4に記載の情報処理装置。
【請求項6】
前記情報処理装置は、前記第1の筐体および第2の筐体が開閉可能なように接続された折りたたみ型の情報処理装置であり、
前記相対姿勢検出部は、前記第1の筐体に対する第2の筐体の開閉角度を検出し、相対姿勢情報として出力する、請求項4に記載の情報処理装置。
【請求項7】
前記表示処理部は、
仮想空間に配置されている仮想カメラの撮像方向を設定するカメラ設定部と、
前記仮想カメラで撮像した前記仮想空間の画像を前記第1画面部に出力する画像出力部とを含み、
前記カメラ設定部は、前記第2の筐体の姿勢または姿勢の変化から算出される前記第1画面部の姿勢に応じて前記仮想カメラの撮像方向を設定する、請求項1ないし請求項6のいずれかに記載の情報処理装置。
【請求項8】
前記第1の筺体は、仮想空間内においてプレイヤオブジェクトの移動方向を指示するための操作部を更に有し、
前記表示処理部は、
少なくとも前記プレイヤオブジェクトが存在する前記仮想空間内を仮想カメラで撮像した画像を前記第1画面部に出力する画像出力部と、
前記仮想空間内におけるプレイヤオブジェクトの移動方向と前記操作部における入力方向との対応付けを前記検出データ、または、当該検出データに基づいて算出される前記第1筐体の姿勢または姿勢の変化に応じて変化させる移動方向調整部とを含む、請求項1ないし請求項7のいずれかに記載の情報処理装置。
【請求項9】
前記第1の筐体は、所定の画像を表示するための第2画面部を更に有し、
前記表示処理部は、前記第1筐体姿勢データに基づいて、前記第2画面部に対して所定の表示を行う、請求項1に記載の情報処理装置。
【請求項10】
前記表示処理部は、
仮想空間に配置されている仮想カメラの撮像方向を設定するカメラ設定部と、
前記仮想カメラで撮像した前記仮想空間の画像を前記第1画面部および第2画面部に出力する画像出力部とを含み、
前記カメラ設定部は、前記第2筐体姿勢データから算出される前記第1画面部の向きに応じた前記仮想カメラの撮像方向を第1撮像方向として設定し、前記第1筐体姿勢データから算出される前記第2画面部の向きに応じた前記仮想カメラの撮像方向を第2撮像方向として設定し、
前記画像出力部は、前記第1撮像方向で撮像された前記仮想空間の画像を前記第1画面部に出力し、前記第2撮像方向で撮像された前記仮想空間の画像を前記第2画面部に出力する、請求項9に記載の情報処理装置。
【請求項11】
前記情報処理装置は、前記姿勢検出部から出力される検出データに基づいて重力方向を算出する重力方向算出部を更に備え、
前記表示処理部は、前記第2筐体姿勢データおよび前記重力方向に基づいて前記所定の表示を行う、請求項1ないし10のいずれかに記載の情報処理装置。
【請求項12】
前記姿勢検出部は角速度センサであり、
前記重力方向算出部は、前記第1の筐体が所定の姿勢であるときの所定方向を重力方向として算出する、請求項11に記載の情報処理装置。
【請求項13】
前記姿勢検出部は加速度センサであり、
前記重力方向算出部は、前記第1の筐体が略静止している状態における重力加速度を検出することで重力方向を算出する、請求項11に記載の情報処理装置。
【請求項14】
前記姿勢検出部は、少なくとも角速度センサおよび加速度センサを含み、
前記検出データは、角速度センサから出力される角速度データであり、
前記重力方向算出部は、前記加速度センサからの出力に基づいて前記重力方向を算出する、請求項11に記載の情報処理装置。
【請求項15】
前記姿勢検出部は、角速度センサおよび加速度センサの少なくとも一方を含む、請求項1ないし10のいずれかに記載の情報処理装置。
【請求項16】
姿勢を検出するための姿勢検出部を有する第1の筐体、および、所定の画像を表示するための画面部を有し、前記第1の筐体に対する相対的な姿勢が変更可能なように当該第1の筐体と接続されている第2の筐体から構成された情報処理装置のコンピュータに実行させる情報処理プログラムであって、
前記姿勢検出部から出力される検出データ、または、当該検出データに基づいて算出される前記第1の筐体の姿勢または姿勢の変化を示す第1筐体姿勢データに所定のオフセットを加えた値に基づいて前記第2の筐体の姿勢または姿勢の変化を示す第2筐体姿勢データを算出する第2筐体姿勢算出手段と、
前記第2筐体姿勢データに基づいて、前記画面部に対して所定の表示を行う表示処理手段として前記コンピュータを機能させる、情報処理プログラム。
【請求項17】
姿勢を検出するための姿勢検出部を有する第1の筐体、および、所定の画像を表示するための画面部を有し、前記第1の筐体に対する相対的な姿勢が変更可能なように当該第1の筐体と接続されている第2の筐体から構成された情報処理装置で用いられる情報処理方法であって、
前記姿勢検出部から出力される検出データ、または、当該検出データに基づいて算出される前記第1の筐体の姿勢または姿勢の変化を示す第1筐体姿勢データに所定のオフセットを加えた値に基づいて前記第2の筐体の姿勢または姿勢の変化を算出する第2筐体姿勢算出ステップと、
前記第2筐体の姿勢または姿勢の変化に基づいて、前記画面部に対して所定の表示を行う表示処理ステップとを備える、情報処理方法。
【請求項18】
姿勢を検出するための姿勢検出手段を有する第1の筐体と、
所定の画像を表示するための画面を有し、前記第1の筐体に対する相対的な姿勢が変更可能なように当該第1の筐体と接続された第2の筐体と、
前記姿勢検出手段から出力される検出データ、または、当該検出データに基づいて算出される前記第1の筐体の姿勢または姿勢の変化を示す第1筐体姿勢データに所定のオフセットを加えた値に基づいて前記第2の筐体の姿勢または姿勢の変化を示す第2筐体姿勢データを算出する第2筐体姿勢算出手段と、
前記第2筐体姿勢データに基づいて、前記画面部に対して所定の表示を行う表示処理手段とを備える、情報処理システム。

【図1】
image rotate

【図2A】
image rotate

【図2B】
image rotate

【図2C】
image rotate

【図2D】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate


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