表示制御プログラム、表示制御システム、表示制御装置、表示制御方法
【課題】ユーザにコンテンツ等の表示内容の端まで到達したことを直感的に把握させることにより、ユーザの利便性を向上させることができる表示制御プログラムなどを提供すること。
【解決手段】第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち表示領域に表示されている少なくとも1つの選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【解決手段】第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち表示領域に表示されている少なくとも1つの選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザが選択するための選択オブジェクトやユーザが閲覧するためのコンテンツ等の表示内容を表示するときの表示制御処理に関し、より特定的には、選択オブジェクトやコンテンツをスクロールさせるときの処理に関する。
【背景技術】
【0002】
従来から、1画面内に収まらないコンテンツを閲覧する情報処理端末が知られている。例えば、特許文献1に記載されている携帯電話機では、画面より大きい範囲のコンテンツの一部が画面に表示されている状態において、携帯電話のテンキーの操作によりコンテンツを移動させることが可能である。また、この携帯電話機では、コンテンツの表示領域以外の領域に、全コンテンツに対する現在表示中のコンテンツの位置を示す情報を表示している。例えば、全表示コンテンツ量に対する現在までに表示済みのコンテンツ量の割合をパーセンテージで表示するようになっている。そのため、コンテンツの端まで移動したときは、このパーセンテージ表示の内容を見ることで、コンテンツの端まで移動したことを把握することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2000−66801号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記特許文献1に記載されている携帯電話機では、どこまでコンテンツを移動させたかについて、コンテンツの表示領域以外の領域に表示される情報によって推測する必要がある。その一方で、ユーザは、コンテンツ閲覧中は、そのコンテンツに注目している。そのため、コンテンツ表示領域以外の領域にある情報を参照するためには、一旦視線をコンテンツから外し、コンテンツ表示領域以外の領域にある情報を確認することになる。その結果、コンテンツに注目している状態でコンテンツを移動させる操作を行った場合、コンテンツの端に到達したことが直感的に分かりにくいものとなっていた。。
【0005】
それ故に、本発明の目的は、ユーザにコンテンツ等の表示内容の端まで到達したことを直感的に把握させることにより、ユーザの利便性を向上させることができる表示制御プログラムなどを提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は以下のような構成を採用した。
【0007】
本発明にかかる表示制御プログラムは、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、コンピュータを、第1移動制御手段、および、第2移動制御手段として機能させる。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち表示領域に表示されている少なくとも1つの選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【0008】
上記構成により、複数の選択オブジェクトの端まで移動させたことをユーザに直感的に把握させることができる。
【0009】
他の構成例として、第2移動制御手段は、複数の選択オブジェクトのうちの端に位置する選択オブジェクトと、当該選択オブジェクトの近辺に位置する少なくとも1つの他の選択オブジェクトを移動させるようにしてもよい。
【0010】
上記構成例によれば、移動する選択オブジェクトが複数となるため、複数の選択オブジェクトの端まで移動させたことを、より判りやすく直感的にユーザに把握させることができる。
【0011】
更に他の構成例として、第2移動制御手段は、少なくとも表示領域に表示されている選択オブジェクト毎に移動距離が異なるように当該移動距離を決定するようにしてもよい。
【0012】
上記構成例によれば、複数の選択オブジェクトそれぞれで移動距離が異なるため、選択オブジェクトの端まで移動させたことを、より直感的にユーザに把握させることができる。
【0013】
更に他の構成例として、第2移動制御手段は、少なくとも表示領域に表示されている選択オブジェクトについて、当該選択オブジェクトの位置が端に近い位置にあるほど大きく移動させるようにしてもよい。
【0014】
上記構成例によれば、複数の選択オブジェクトの端まで移動させたことを、より直感的にユーザに把握させることができる。
【0015】
更に他の構成例として、端に位置する選択オブジェクトが表示領域における所定位置に到達するときの第1移動制御手段による移動の速度に基づいて、第2移動制御手段により少なくとも1つの選択オブジェクトが移動する移動距離を決定する移動距離決定手段としてコンピュータをさらに機能させ、第2移動制御手段は、少なくとも1つの選択オブジェクトを、移動距離決定手段により決定された移動距離まで移動させるようにしてもよい。
【0016】
上記構成例によれば、例えば画面のスクロール速度に応じて選択オブジェクトが移動する距離が変化するため、複数の選択オブジェクトの端まで移動させたことを、より直感的に、且つ、違和感なくユーザに把握させることができる。
【0017】
更に他の構成例として、第2移動制御手段は、第1移動制御手段による移動の方向と略垂直な方向に少なくとも1つの選択オブジェクトを移動させるようにしてもよい。
【0018】
上記構成例によれば、ユーザの操作内容に沿った移動方向とは異なった方向に選択オブジェクトが移動するため、複数の選択オブジェクトの端まで移動させたことをより直感的に把握させることができる。
【0019】
更に他の構成例として、第2移動制御手段により移動された少なくとも1つの選択オブジェクトを移動前の位置に戻す復帰手段としてコンピュータをさらに機能させるようにしてもよい。
【0020】
上記構成例によれば、移動された選択オブジェクトの内容を容易に確認することができる。
【0021】
本発明にかかる表示制御プログラムは、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、第1移動制御手段および第2移動制御手段としてコンピュータを機能させる。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのそれぞれが表示領域における所定位置に到達したときに、当該所定位置に到達した選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【0022】
上記構成により、複数の選択オブジェクトの端まで移動させたことをユーザに直感的に把握させることができる。
【0023】
他の構成例として、選択オブジェクトが表示領域における所定位置に到達するときの第1移動制御手段による移動の速度に基づいて、第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段としてコンピュータをさらに機能させ、第2移動制御手段は、表示領域における所定位置に到達した選択オブジェクトを、移動距離決定手段により決定された移動距離まで移動させるようにしてもよい。
【0024】
上記構成例によれば、例えば画面のスクロール速度に応じて選択オブジェクトの移動距離が変化するため、複数の選択オブジェクトの端まで移動させたことと共に、ユーザが行った移動操作の強弱を直感的に把握させることができる。
【0025】
更に他の構成例として、移動距離決定手段は、選択オブジェクトが表示領域における所定位置に到達するときの第1移動制御手段による移動の速度と過去の第1移動制御手段による移動に関するパラメータとに基づいて、移動距離を決定するようにしてもよい。
【0026】
上記構成例によれば、選択オブジェクトの移動速度だけでなく過去の選択オブジェクトの移動に応じて移動距離が変化するため、第2移動制御手段による移動について違和感の少ない移動を行うことができる。
【0027】
更に他の構成例として、移動距離決定手段は、過去の第1移動制御手段により移動してきた距離が大きくなるにつれて、第2移動制御手段により当該選択オブジェクトが移動する移動距離が長くなるように当該移動距離を決定するようにしてもよい。
【0028】
上記構成例によれば、例えば、僅かな距離しか選択オブジェクトを移動させていない場合であっても、第2移動制御手段により選択オブジェクトを移動させてしまうことによるユーザに与える違和感を低減することができる。
【0029】
更に他の構成例として、選択オブジェクトが表示領域における所定位置に到達したとき、複数のオブジェクト群の一番端の位置から当該表示領域における所定位置に到達した選択オブジェクトまでの距離に基づいて、第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段としてコンピュータをさらに機能させ、第2移動制御手段は、表示領域における所定位置に到達した選択オブジェクトを、移動距離決定手段により決定された移動距離まで移動させるようにしてもよい。
【0030】
上記構成例によれば、複数の選択オブジェクトの端からの距離に応じて移動距離が変化するため、どこが複数の選択オブジェクトの端にあたるかをユーザに直感的に把握させることができる。
【0031】
更に他の構成例として、移動距離決定手段は、複数のオブジェクト群の一番端の位置から表示領域における所定位置に到達した選択オブジェクトまでの距離が短くなるにつれて移動距離が長くなるように、当該移動距離を決定するようにしてもよい。
【0032】
上記構成例によれば、複数のオブジェクト群の端の近くに位置する選択オブジェクトほど、第2移動制御手段による移動が長くなり、どこが複数の選択オブジェクトの端にあたるかをユーザに直感的に把握させることができる。
【0033】
更に他の構成例として、選択オブジェクトが表示領域における所定位置に到達したときの第1移動制御手段による移動の速度、および、複数のオブジェクト群の一番端の位置から当該表示領域における所定位置に到達した選択オブジェクトまでの距離に基づいて、第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段としてコンピュータをさらに機能させ、第2移動制御手段は、表示領域における所定位置に到達した選択オブジェクトを、移動距離決定手段により決定された移動距離まで移動させるようにしてもよい。
【0034】
上記構成例によれば、複数の選択オブジェクトの端まで移動させたことと共に、ユーザが行った移動操作の強弱を直感的に把握させることができる。また、どこが複数の選択オブジェクトの端にあたるかをユーザに直感的に把握させることができる。
【0035】
本発明にかかる表示制御プログラムは、コンテンツを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、第1移動制御手段、および、第2移動制御手段としてコンピュータを機能させる。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数のコンテンツを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数のコンテンツが移動された結果、当該複数のコンテンツのうちの端のコンテンツが表示領域における所定位置に到達したときに、第1移動制御手段により当該複数のコンテンツが移動されてきた方向とは異なる方向へ、表示領域に表示されている少なくとも1つのコンテンツを表示領域に相対して移動させる。
【0036】
上記構成により、複数のコンテンツの端まで移動させたことをユーザに直感的に把握させることができる。
【0037】
本発明にかかる表示制御プログラムは、1画面では表示できないような大きさを有する移動対象を表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、第1移動制御手段、および、第2移動制御手段としてコンピュータを機能させる。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される移動対象を当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により移動対象が移動された結果、当該移動対象の端が表示領域における所定位置に到達したときに、第1移動制御手段により当該移動対象が移動されてきた方向とは異なる方向へ表示領域に相対して当該移動対象を移動させる。
【0038】
上記構成により、移動対象の端まで移動させたことをユーザに直感的に把握させることができる。
【0039】
本発明にかかる表示制御プログラムは、複数の項目オブジェクトから構成されるリストを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、第1移動制御手段および第2移動制御手段としてコンピュータを機能させる。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示されるリストを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により移動したリストのうち端の項目オブジェクトが表示領域における所定位置に到達したときに、リストのうち表示領域に表示されている少なくとも1つの項目オブジェクトを、第1移動制御手段により前記複数の項目のリストが移動してきた方向とは異なる方向へ表示領域に相対して移動させる。
【0040】
上記構成により、リストの端まで移動させたことをユーザに直感的に把握させることができる。
【0041】
本発明にかかる表示制御プログラムは、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、第1移動制御手段により移動している複数の選択オブジェクトのうち、当該第1移動制御手段による移動の方向とは逆方向の端の選択オブジェクトが表示領域における所定位置に到達したときまたはその直前に、少なくとも当該端の選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる第2移動制御手段として機能させる。
【0042】
上記構成により、複数の選択オブジェクトの端まで移動させたことをユーザに直感的に把握させることができる。
【0043】
本発明にかかる表示制御装置は、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置であって、第1移動制御手段および第2移動制御手段を備える。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち表示領域に表示されている少なくとも1つの選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【0044】
本発明にかかる表示制御システムは、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御システムであって、第1移動制御手段および第2移動制御手段を備える。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち表示領域に表示されている少なくとも1つの選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【0045】
本発明にかかる表示制御方法は、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御方法であって、第1移動制御ステップおよび第2移動制御ステップを備える。第1移動制御ステップは、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御ステップは、第1移動制御ステップにおいて複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち表示領域に表示されている少なくとも1つの選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【0046】
上記各構成により、複数の選択オブジェクトの端まで移動させたことをユーザに直感的に把握させることができる。
【発明の効果】
【0047】
本発明によれば、ユーザが複数の選択オブジェクトを移動させる操作(例えばスクロール操作)を行う際に、複数の選択オブジェクトの端まで移動させたことをユーザに直感的に把握させることができる。
【図面の簡単な説明】
【0048】
【図1】本発明の実施形態に係るゲーム装置1の外観図
【図2】本発明の実施形態に係るゲーム装置1のブロック図
【図3】本実施形態で想定するホーム画面の一例
【図4】本実施形態で想定するホーム画面の一例
【図5】本実施形態で想定するホーム画面の一例
【図6】本実施形態で想定するホーム画面の一例
【図7】本実施形態で想定するホーム画面の一例
【図8】本実施形態で想定するホーム画面の一例
【図9】メインメモリ32のメモリマップを示す図解図
【図10】コンテンツアイコンデータ325のデータ構造の一例
【図11】ゲーム装置1において実行されるホームメニュー処理の流れを示すフローチャート
【図12】ゲーム装置1において実行されるホームメニュー処理の流れを示すフローチャート
【図13】ゲーム装置1において実行されるホームメニュー処理の流れを示すフローチャート
【図14】コンテンツアイコン配置の概念の説明図
【図15】図12のステップS15で示した慣性タッチオフ処理の詳細を示すフローチャート
【図16】図13のステップS19で示したジャンプ演出設定処理の詳細を示すフローチャート
【図17】図13のステップS24で示したジャンプ演出処理の詳細を示すフローチャート
【図18】本発明の第2の実施形態にかかるコンテンツアイコンデータ325のデータ構造の一例
【図19】本発明の第2の実施形態にかかるホームメニュー処理の流れを示すフローチャート
【図20】本発明の第2の実施形態にかかるホームメニュー処理の流れを示すフローチャート
【図21】図19のステップS101で示したジャンプ量パラメタ算出処理の詳細を示すフローチャート
【図22】スクロール量算出の概念を説明するための図
【図23】図20のステップS103で示した慣性スクロール処理の詳細を示すフローチャート
【図24】図23のステップS132で示したジャンプ判定処理の詳細を示すフローチャート
【図25】図23のステップS133で示したジャンプ移動処理の詳細を示すフローチャート
【発明を実施するための形態】
【0049】
以下、本発明の実施の形態について、図面を参照して説明する。尚、この実施例により本発明が限定されるものではない。
【0050】
まず、各実施形態の詳細を説明するに先立ち、各実施形態で共通して使用されるゲーム装置の構成について説明する。
【0051】
図1は、本発明のホームメニュー処理プログラムを実行するゲーム装置1の外観図である。ここでは、ゲーム装置1の一例として、携帯ゲーム装置を示す。図1において、ゲーム装置1は、折り畳み型の携帯ゲーム装置であり、開いた状態(開状態)のゲーム装置1を示している。ゲーム装置1は、開いた状態においてもユーザが両手または片手で把持することができるようなサイズで構成される。
【0052】
ゲーム装置1は、下側ハウジング11および上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能)に連結されている。図1の例では、下側ハウジング11および上側ハウジング21は、それぞれ横長の長方形の板状で形成され、互いの長辺部分で回転可能に連結されている。通常、ユーザは、開状態でゲーム装置1を使用する。また、ユーザは、ゲーム装置1を使用しない場合には閉状態としてゲーム装置1を保管する。また、図1に示した例では、ゲーム装置1は、上記閉状態および開状態のみでなく、下側ハウジング11と上側ハウジング21とのなす角度が閉状態と開状態との間の任意の角度において、連結部分に発生する摩擦力などによってその開閉角度を維持することができる。つまり、上側ハウジング21を下側ハウジング11に対して任意の角度で静止させることができる。
【0053】
下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12が設けられる。下側LCD12は横長形状であり、長辺方向が下側ハウジング11の長辺方向に一致するように配置される。なお、本実施形態では、ゲーム装置1に内蔵されている表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置等、他の任意の表示装置を利用してもよい。また、ゲーム装置1は、任意の解像度の表示装置を利用することができる。なお、詳細は後述するが、下側LCD12は、主に、内側カメラ23または外側カメラ25で撮影されている画像をリアルタイムに表示するために用いられる。
【0054】
下側ハウジング11には、入力装置として、各操作ボタン14A〜14Kおよびタッチパネル13が設けられる。図1に示されるように、各操作ボタン14A〜14Kのうち、方向入力ボタン14A、操作ボタン14B、操作ボタン14C、操作ボタン14D、操作ボタン14E、電源ボタン14F、スタートボタン14G、およびセレクトボタン14Hは、上側ハウジング21と下側ハウジング11とを折りたたんだときに内側となる、下側ハウジング11の内側主面上に設けられる。方向入力ボタン14Aは、例えば選択操作等に用いられる。各操作ボタン14B〜14Eは、例えば決定操作やキャンセル操作等に用いられる。電源ボタン14Fは、ゲーム装置1の電源をオン/オフするために用いられる。図1に示す例では、方向入力ボタン14Aおよび電源ボタン14Fは、下側ハウジング11の内側主面中央付近に設けられる下側LCD12に対して、左右一方側(図1では左側)の当該主面上に設けられる。また、操作ボタン14B〜14E、スタートボタン14G、およびセレクトボタン14Hは、下側LCD12に対して左右他方側(図1では右側)となる下側ハウジング11の内側主面上に設けられる。方向入力ボタン14A、操作ボタン14B〜14E、スタートボタン14G、およびセレクトボタン14Hは、ゲーム装置1に対する各種操作を行うために用いられる。
【0055】
なお、図1においては、操作ボタン14I〜14Kの図示を省略している。例えば、Lボタン14Iは、下側ハウジング11の上側面の左端部に設けられ、Rボタン14Jは、下側ハウジング11の上側面の右端部に設けられる。Lボタン14IおよびRボタン14Jは、ゲーム装置1に対して、例えば撮影指示操作(シャッター操作)を行うために用いられる。さらに、音量ボタン14Kは、下側ハウジング11の左側面に設けられる。音量ボタン14Kは、ゲーム装置1が備えるスピーカの音量を調整するために用いられる。
【0056】
また、ゲーム装置1は、各操作ボタン14A〜14Kとは別の入力装置として、さらにタッチパネル13を備えている。タッチパネル13は、下側LCD12の画面上を覆うように装着されている。なお、本実施形態では、タッチパネル13は、例えば抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル13は、抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。また、本実施形態では、タッチパネル13として、例えば下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル13の解像度と下側LCD12の解像度とが一致している必要はない。また、下側ハウジング11の右側面には、挿入口(図1に示す破線)が設けられている。挿入口は、タッチパネル13に対する操作を行うために用いられるタッチペン27を収納することができる。なお、タッチパネル13に対する入力は、通常タッチペン27を用いて行われるが、タッチペン27に限らずユーザの指でタッチパネル13を操作することも可能である。
【0057】
また、下側ハウジング11の右側面には、メモリカード28を収納するための挿入口(図1では、二点鎖線で示している)が設けられている。この挿入口の内側には、ゲーム装置1とメモリカード28とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード28は、例えばSD(Secure Digital)メモリカードであり、コネクタに着脱自在に装着される。メモリカード28は、例えば、ゲーム装置1によって撮影された画像を記憶(保存)したり、他の装置で生成された画像をゲーム装置1に読み込んだりするために用いられる。
【0058】
さらに、下側ハウジング11の上側面には、カートリッジ29を収納するための挿入口(図1では、一点鎖線で示している)が設けられている。この挿入口の内側にも、ゲーム装置1とカートリッジ29とを電気的に接続するためのコネクタ(図示せず)が設けられる。カートリッジ29はゲームプログラム等を記録した記録媒体であり、下側ハウジング11に設けられた挿入口に着脱自在に装着される。
【0059】
下側ハウジング11と上側ハウジング21との連結部の左側部分には、3つのLED15A〜15Cが取り付けられる。ここで、ゲーム装置1は、他の機器との間で無線通信を行うことが可能であり、第1LED15Aは、ゲーム装置1の電源がオンである場合に点灯する。第2LED15Bは、ゲーム装置1の充電中に点灯する。第3LED15Cは、無線通信が確立している場合に点灯する。したがって、3つのLED15A〜15Cによって、ゲーム装置1の電源のオン/オフ状況、充電状況、および、通信確立状況をユーザに通知することができる。
【0060】
一方、上側ハウジング21には、上側LCD22が設けられる。上側LCD22は横長形状であり、長辺方向が上側ハウジング21の長辺方向に一致するように配置される。なお、下側LCD12と同様、上側LCD22に代えて、他の任意の方式および任意の解像度の表示装置を利用してもよい。なお、上側LCD22上を覆うように、タッチパネルを設けてもかまわない。例えば、上側LCD22には、ユーザに各操作ボタン14A〜14Kやタッチパネル13の役割を教えるための、操作説明画面が表示される。
【0061】
また、上側ハウジング21には、2つのカメラ(内側カメラ23および外側カメラ25)が設けられる。図1に示されるように、内側カメラ23は、上側ハウジング21の連結部付近の内側主面に取り付けられる。一方、外側カメラ25は、内側カメラ23が取り付けられる内側主面の反対側の面、すなわち、上側ハウジング21の外側主面(ゲーム装置1が閉状態となった場合に外側となる面であり、図1に示す上側ハウジング21の背面)に取り付けられる。なお、図1においては、外側カメラ25を破線で示している。これによって、内側カメラ23は、上側ハウジング21の内側主面が向く方向を撮影することが可能であり、外側カメラ25は、内側カメラ23の撮影方向の逆方向、すなわち、上側ハウジング21の外側主面が向く方向を撮影することが可能である。このように、本実施形態では、2つの内側カメラ23および外側カメラ25の撮影方向が互いに逆方向となるように設けられる。例えば、ユーザは、ゲーム装置1からユーザの方を見た景色を内側カメラ23で撮影することができるとともに、ゲーム装置1からユーザの反対側の方向を見た景色を外側カメラ25で撮影することができる。
【0062】
なお、上記連結部付近の内側主面には、音声入力装置としてマイク(図2に示すマイク42)が収納されている。そして、上記連結部付近の内側主面には、マイク42がゲーム装置1外部の音を検知できるように、マイクロフォン用孔16が形成される。マイク42を収納する位置およびマイクロフォン用孔16の位置は必ずしも上記連結部である必要はなく、例えば下側ハウジング11にマイク42を収納し、マイク42を収納位置に対応させて下側ハウジング11にマイクロフォン用孔16を設けるようにしても良い。
【0063】
また、上側ハウジング21の外側主面には、第4LED26(図1では、破線で示す)が取り付けられる。第4LED26は、外側カメラ25によって撮影が行われた(シャッターボタンが押下された)時点で点灯する。また、外側カメラ25によって動画が撮影される間点灯する。第4LED26によって、ゲーム装置1による撮影が行われた(行われている)ことを撮影対象者や周囲に通知することができる。
【0064】
また、上側ハウジング21の内側主面中央付近に設けられる上側LCD22に対して、左右両側の当該主面に音抜き孔24がそれぞれ形成される。音抜き孔24の奥の上側ハウジング21内にはスピーカが収納されている。音抜き孔24は、スピーカからの音をゲーム装置1の外部に放出するための孔である。
【0065】
以上に説明したように、上側ハウジング21には、画像を撮影するための構成である内側カメラ23および外側カメラ25と、例えば撮影の際に操作説明画面を表示する表示手段である上側LCD22とが設けられる。一方、下側ハウジング11には、ゲーム装置1に対する操作入力を行うための入力装置(タッチパネル13および各ボタン14A〜14K)と、ゲーム画面を表示するための表示手段である下側LCD12とが設けられる。したがって、ゲーム装置1を使用する際には、ユーザは、下側LCD12に表示される撮影画像(カメラによって撮影された画像)を見ながら、下側ハウジング11を把持して入力装置に対する入力を行うことができる。
【0066】
次に、図2を参照して、ゲーム装置1の内部構成を説明する。なお、図2は、ゲーム装置1の内部構成の一例を示すブロック図である。
【0067】
図2において、ゲーム装置1は、CPU31、メインメモリ32、メモリ制御回路33、保存用データメモリ34、プリセットデータ用メモリ35、メモリカードインターフェース(メモリカードI/F)36およびカートリッジI/F44、無線通信モジュール37、ローカル通信モジュール38、リアルタイムクロック(RTC)39、電源回路40、およびインターフェース回路(I/F回路)41等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて、下側ハウジング11(または上側ハウジング21でもよい)内に収納される。
【0068】
CPU31は、所定のプログラムを実行するための情報処理手段である。なお、CPU31によって実行されるプログラムは、ゲーム装置1内のメモリに予め記憶されていてもよいし、メモリカード28および/またはカートリッジ29から取得されてもよいし、他の機器との通信によって他の機器から取得されてもよい。例えば、インターネットを経由して所定のサーバからダウンロードすることで取得しても良いし、据置型ゲーム装置と通信を行うことで、当該据置型ゲーム装置に記憶されている所定のプログラムをダウンロードすることで取得しても良い。
【0069】
CPU31には、メインメモリ32、メモリ制御回路33、およびプリセットデータ用メモリ35が接続される。また、メモリ制御回路33には、保存用データメモリ34が接続される。メインメモリ32は、CPU31のワーク領域やバッファ領域として用いられる記憶手段である。本実施形態では、メインメモリ32として、例えばPSRAM(Pseudo−SRAM)を用いる。保存用データメモリ34は、CPU31によって実行されるプログラムや内側カメラ23および外側カメラ25によって撮影された画像のデータ等を記憶するための記憶手段である。保存用データメモリ34は、不揮発性の記憶媒体によって構成されており、例えば本実施例ではNAND型フラッシュメモリで構成される。メモリ制御回路33は、CPU31の指示に従って、保存用データメモリ34に対するデータの読み出しおよび書き込みを制御する回路である。プリセットデータ用メモリ35は、ゲーム装置1において予め設定される各種パラメータ等のデータ(プリセットデータ)や、後述するメニュー処理プリグラム等を記憶するための記憶手段である。プリセットデータ用メモリ35としては、SPI(Serial Peripheral Interface)バスによってCPU31と接続されるフラッシュメモリを用いることができる。
【0070】
メモリカードI/F36は、CPU31に接続される。メモリカードI/F36は、コネクタに装着されたメモリカード28に対するデータの読み出しおよび書き込みを、CPU31の指示に応じて行う。本実施形態では、外側カメラ25によって撮像された画像データがメモリカード28に書き込まれたり、メモリカード28に記憶された画像データがメモリカード28から読み出されて保存用データメモリ34に記憶されたりする。
【0071】
カートリッジI/F44はCPU31に接続される。カートリッジI/F44は、コネクタに装着されたカートリッジ29に対するデータの読み出しおよび書き込みをCPU31の指示に従って行う。
【0072】
無線通信モジュール37は、例えばIEEE802.11.b/gの規格に準拠した方式により、無線LANに接続する機能を有する。また、ローカル通信モジュール38は、所定の通信方式により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール37およびローカル通信モジュール38は、CPU31に接続される。CPU31は、無線通信モジュール37を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール38を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0073】
また、CPU31には、RTC39および電源回路40が接続される。RTC39は、時間をカウントしてCPU31に出力する。例えば、CPU31は、RTC39によって計時された時間に基づいて、現在時刻(日付)等を計算することもできる。電源回路40は、ゲーム装置1が有する電源(典型的には電池であり、下側ハウジング11に収納される)から供給される電力を制御し、ゲーム装置1の各部品に電力を供給する。
【0074】
また、ゲーム装置1は、マイク42およびアンプ43を備えている。マイク42およびアンプ43は、それぞれI/F回路41に接続される。マイク42は、ゲーム装置1に向かって発声されたユーザの音声を検知して、当該音声を示す音声信号をI/F回路41に出力する。アンプ43は、I/F回路41から音声信号を増幅してスピーカ(図示せず)から出力させる。I/F回路41は、CPU31に接続される。
【0075】
また、タッチパネル13は、I/F回路41に接続される。I/F回路41は、マイク42およびアンプ43(スピーカ)の制御を行う音声制御回路と、タッチパネル13の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル13からの信号に基づいて所定の形式のタッチ位置データを生成してCPU31に出力する。例えば、タッチ位置データは、タッチパネル13の入力面に対して入力が行われた位置の座標を示すデータである。なお、タッチパネル制御回路は、タッチパネル13からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。CPU31は、I/F回路41を介して、タッチ位置データを取得することにより、タッチパネル13に対して入力が行われた位置を知ることができる。
【0076】
操作ボタン14は、上記各操作ボタン14A〜14Kから構成され、CPU31に接続される。操作ボタン14からCPU31へは、各操作ボタン14A〜14Kに対する入力状況(押下されたか否か)を示す操作データが出力される。CPU31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に応じた処理を実行する。
【0077】
内側カメラ23および外側カメラ25は、それぞれCPU31に接続される。内側カメラ23および外側カメラ25は、CPU31の指示に応じて画像を撮影し、撮影した画像データをCPU31に出力する。本実施形態では、CPU31は、内側カメラ23および外側カメラ25のいずれか一方に対して撮影指示を行い、撮影指示を受けたカメラが画像を撮影して画像データをCPU31に送る。
【0078】
また、下側LCD12および上側LCD22は、それぞれCPU31に接続される。下側LCD12および上側LCD22は、それぞれCPU31の指示に従って画像を表示する。
【0079】
(第1の実施形態)
次に、第1の実施形態で想定している処理の概要について説明する。本実施形態の処理は、1画面で表示できないような大きさを有するコンテンツ等のスクロール対象をスクロールさせながら閲覧するような場面を想定している。ここで、このスクロール対象は、例えば、ゲーム装置や携帯型情報端末等において、いわゆる”ホーム画面”や”ホームメニュー”と呼ばれるメニューにおけるアイコン等である。このようなホーム画面においては、一般に複数のアイコンが整列されて表示される。各アイコンはそれぞれが1つのコンテンツ(アプリケーション)と対応付けられており、ユーザによって選択される対象(選択対象オブジェクト)でもある。例えば、あるアイコンをタップすると、ゲーム処理が起動する。以下の説明では、このアイコンのことをコンテンツアイコンと呼ぶ。また、これら複数のコンテンツアイコンを一体化した概念をコンテンツアイコン群と呼ぶ。そして、当該コンテンツアイコン群が1画面内に収まらない場合は、スクロール操作を行うことで、表示されていないコンテンツアイコンを画面内に表示させることができる。
【0080】
上記のようなスクロール操作の一例として、いわゆるドラッグ操作がある。例えば、タッチパネル付きの画面(本実施形態では、下側LCD12)にコンテンツアイコン群の一部が表示されているような場合に、タッチペン27を用いてタッチパネル13にタッチオンし、そのまま、所定の方向、例えば右から左方向にタッチペン27をスライド移動させれば、当該コンテンツアイコン群を左方向にスクロールすることができる。すなわち、複数のコンテンツアイコンをX軸に並行な方向に一体的にスクロールすることができる。これにより、現在表示されていないコンテンツアイコンを表示画面(表示領域)内に移動させることができる。このような、ドラッグ操作によるスクロール操作を繰り返し行った結果、コンテンツアイコン群の端まで到達した場合(コンテンツアイコン群のうち端に位置するコンテンツアイコンが画面内に表示された場合)を想定する。この場合、コンテンツアイコン群の端まで到達しているため、これ以上のスクロール操作は無駄な操作となる。本実施形態は、このような場合に、コンテンツアイコン群の端まで到達したことをユーザに直感的に知らせるために、以下に説明するような、コンテンツアイコンをジャンプさせるような演出処理を行う。以下では、このような、スクロール操作の結果、コンテンツアイコン群の端まで到達したことを知らせる演出処理を「スクロール限界演出」と呼ぶ。
【0081】
図3は、本実施形態で想定するゲーム装置1の画面の一例である。本実施形態では、電源を投入するとすぐに所定のゲームが起動する運用形態ではなく、一旦メニュー画面(以下ではホーム画面と呼ぶ)が表示されるような運用形態を例としている。そして、図3は、このような、ゲーム装置1を起動したときに表示されるホーム画面を示している。図3に示すホーム画面は、下側LCD12に表示される。下側LCD12には、複数のコンテンツアイコン101a〜101d(以下では、総称して単にコンテンツアイコンと呼ぶこともある)が横一列に整列した状態で表示されている。各コンテンツアイコンはそれぞれ所定のアプリケーション(例えば、カメラアプリ、オンラインショッピングアプリ、ゲームアプリ、本体設定用のアプリなど)と対応付けられている。ユーザは各アイコンに対してタップ操作を行うことで、タップしたアイコンに対応付けられたアプリケーションを起動することが可能である。これらコンテンツアイコンの数は1画面内で全て表示しきれないだけの数があり、横一列に並んでいるものとする。本実施形態では、一例としてコンテンツアイコンの数が16個あるものとして説明を行う。また、以下の説明では、1番目のコンテンツアイコン(図3のコンテンツアイコン101a)はコンテンツアイコン群の一番左端に位置し、16番目のコンテンツアイコン101pはコンテンツアイコン群の一番右端に位置しているものとする。また、本実施形態では、一番端のコンテンツアイコン101が画面の中央に来れば、当該端の方向に向けてはそれ以上スクロールできないものとする。
【0082】
本実施形態では、コンテンツアイコン群が表示されている領域内において、水平方向に沿ったドラッグ操作、あるいはフリック操作(タッチオンした後、画面を軽く払うように指やタッチペンを動かしてタッチオフするような操作、換言すれば、タッチオンした後、はじくような操作)を行うことで、コンテンツアイコン群を水平方向に沿ってスクロールさせることができる。例えば、図3の状態で、コンテンツアイコン101bをタッチオンし、左方向に向けてドラッグ操作したとする。すると、図4に示すように、コンテンツアイコン群が左方向に移動するような表示がなされ(つまり、左方向に画面スクロールする)、画面にはコンテンツアイコン101a(の右半分)〜101eが表示される状態となる。
【0083】
また、上記図3や図4の状態から、コンテンツアイコン群が表示されている領域内の位置をタッチし、左方向にフリック操作を行ったとする。すると、タッチペン27がタッチパネル13から離れた後においても、フリック操作時の慣性力に基づいて、しばらくの間コンテンツアイコン群が自動的にスクロールする。フリック操作の勢いが強ければ、より速くスクロールし、また、スクロール量もより多くなる。
【0084】
上記フリック操作によるスクロール(以下、慣性スクロールと呼ぶ)の結果、図5のような状態を経て(この図は、タッチパネル13にタッチペン27が触れていない状態でコンテンツアイコン群がスクロールしていることを示している。また、スクロール中は、各コンテンツアイコンがスクロール速度に応じてスクロール方向に少し傾いた状態で表示される。)、図6に示すように、コンテンツアイコン群の一番右に位置するコンテンツアイコン101pが画面内に入ってきたと想定する。その後、コンテンツアイコン101pが画面の略中央に到達したとする(より正確には、コンテンツアイコン101の中点がX軸上における画面の中央に到達)。なお、上記のように、本実施形態では、一番端のコンテンツアイコン101が画面中央に来ると、当該端の方向に向けてはそれ以上スクロールできない。例えば、上記図3で示した状態において、コンテンツアイコン101aが既に画面中央に位置しているので右方向にドラッグ操作あるいはフリック操作を行っても、コンテンツアイコン101aは画面中央から右側には移動しない。これは、コンテンツアイコン群の一番左端のコンテンツアイコン101pも同様である(スクロール操作を行っても、画面中央から左側には移動しない。)。
【0085】
このように、フリック操作による慣性スクロールの結果、コンテンツアイコン群の端が画面中央部に到達し、これ以上のスクロールができないような状態となったとき、本実施形態では、コンテンツアイコン群の端にあるいくつかのコンテンツアイコン101をジャンプさせる(換言すれば、画面の垂直方向に沿って移動させて元に戻す。)という演出を行うことで、コンテンツアイコン群の端までスクロールしたこと(つまり、コンテンツアイコン群の終端であること)を直感的にユーザに知らせている。例えば、コンテンツアイコン群の一番右端に位置するコンテンツアイコン101pが画面中央に来たときに、図7に示すように、コンテンツアイコン101n〜101pの3つのコンテンツアイコンを垂直方向にジャンプさせるような演出が行われる。このとき、ジャンプする高さは3つのコンテンツアイコンでそれぞれ異なっており、コンテンツアイコン群のスクロール方向とは逆の方向の端に近い方のコンテンツアイコンほど、より高くジャンプするような演出が行われる(図7の例では、コンテンツアイコン101p)が一番高くジャンプする)。また、ジャンプした後は、図8に示すように、元の位置に戻る。また、コンテンツアイコン群の端まで到達したときの慣性スクロール速度によってもジャンプする高さは異なり、慣性スクロールの速度が速いときほどより高くジャンプするような演出が行われる。
【0086】
また、当該ジャンプ演出についていうと、一度ジャンプして着地して終わるのではなく、コンテンツアイコン101が数回バウンドするような様子も表示される(図示は省略)。以下では、このようなバウンドする様子が表示されることも含めてジャンプ演出と呼ぶ。
【0087】
このように、本実施形態では、慣性スクロールによってコンテンツアイコン群の端が画面内に表示されたとき(本実施形態では、画面中央に到達したとき)、当該端にかかるコンテンツアイコン101のいくつかをジャンプさせるような演出を行うことで、コンテンツアイコン群の端までスクロールしたことをユーザに直感的に把握させるようにしている。すなわち、コンテンツアイコン群の端までスクロールしたときに、スクロール方向(本実施形態では画面の水平方向)とは異なる方向(本実施形態では画面の垂直方向または略垂直な方向)にコンテンツアイコンを移動させることで、端までスクロールしたことをユーザに直感的に認識させている。
【0088】
以下、図9〜図17を用いて、本実施形態において利用される各種データ及びプログラムの詳細を説明する。
【0089】
図9は、図2に示したメインメモリ32のメモリマップを示す図解図である。図9において、メインメモリ32は、プログラム記憶領域321およびデータ記憶領域323を含む。プログラム記憶領域321およびデータ記憶領域323のデータは、プリセットデータ用メモリ35に予め記憶されたものが、メインメモリ32にコピーされたものである。
【0090】
プログラム記憶領域321は、CPU31によって実行されるホームメニュー処理プログラム322等を記憶する。
【0091】
データ記憶領域323には、操作データ324、コンテンツアイコンデータ325、前回入力座標データ326、前々回入力座標データ327、慣性スクロール用データ328、慣性スクロールフラグ329、ジャンプ演出フラグ330などのデータが記憶される。
【0092】
操作データ324は、各操作ボタン14a〜14kに対する入力状態、および、タッチパネル13に対する入力状態を示すデータである。また、タッチパネル13に対する入力があるときは、その入力座標を示すデータも含まれる。
【0093】
コンテンツアイコンデータ325は、上記ホーム画面に表示される各コンテンツアイコン101に関するデータである。図10は、コンテンツアイコンデータ325のデータ構造の一例を示した図である。コンテンツアイコンデータ325は、アイコンID3251、画像データ3252、実データリンク情報3253、ジャンプ対象フラグ3254、ジャンプ演出パラメタ3255から構成される。アイコンID3251は、各コンテンツアイコン101を一意に識別するためのIDである。画像データ3252は、ホーム画面に表示される各コンテンツアイコンの画像のデータである。実データリンク情報3253は、各コンテンツアイコン101に対応するアプリケーションの実体となるファイルの格納場所を示す情報である。
【0094】
ジャンプ対象フラグ3254は、当該コンテンツアイコンがジャンプ演出の対象となるか否か(つまり、ジャンプさせるか否か)を示すフラグであり、オンに設定されているときは、当該コンテンツアイコンはジャンプ演出の対象となることを示す。
【0095】
ジャンプ演出パラメタ3255は、ジャンプ演出が行われるときに用いられるデータであり、当該コンテンツアイコンについてのジャンプの初速やジャンプの最高到達点等を示すデータである。
【0096】
図9に戻り、前回入力座標データ326は、直前のフレームにかかる処理におけるタッチパネルへの入力座標を示すデータである。直前のフレームにかかる処理においてタッチパネル13への入力が無かったときは、当該データは空となり、タッチパネル13への入力が有ったときは、その入力座標が格納される。そのため、当該データを参照することで、ドラッグ操作等におけるタッチ位置(入力座標)の変化、ひいては、タッチペン27の移動量(スクロール速度算出の基となる)等を算出することができる。
【0097】
前々回入力座標データ327は、上記前回入力座標データの1つ前に取得された入力座標を示すデータである。つまり、現在のフレームから2つ前のフレームにかかる処理で検出された入力座標である。
【0098】
慣性スクロール用データ328は、上述したような慣性スクロールの制御を行うためのデータであり、慣性スクロール中における1フレームあたりのスクロール量や、トータルの慣性スクロール量、スクロール速度の減衰率等が含まれている。
【0099】
慣性スクロールフラグ329は、慣性スクロール中であるか否かを示すためのフラグである。当該フラグがオンに設定されているときは、慣性スクロール中であることを示す。
【0100】
ジャンプ演出フラグ330は、コンテンツアイコン101をジャンプさせる演出にかかる処理(ジャンプ演出)の実行中であるか否かを示すためのフラグである。本フラグがオンに設定されているときは、ジャンプ演出にかかる処理が実行されている最中であることを示す。
【0101】
次に、ゲーム装置1において実行されるホームメニュー処理の流れを図11〜図17を用いて説明する。図11〜図13は、ゲーム装置1において実行されるホームメニュー処理の流れを示すフローチャートである。ゲーム装置1の電源が投入されると、ゲーム装置1のCPU31は、図示しないブートROMに記憶されている起動プログラムを実行し、メインメモリ32等の各ユニットが初期化される。そして、プリセットデータ用メモリ35に格納されたホームメニュープログラムがメインメモリ32に読み込まれ、当該メニュープログラムの実行が開始される。
【0102】
まず、ステップS1において、以降の処理において用いられるデータの初期化処理が実行される。具体的には、まず、ゲーム装置内にインストールされているアプリケーションがスキャンされ、これに対応するコンテンツアイコン101がそれぞれ生成され、更に、これらを包含するようなコンテンツアイコン群オブジェクトが生成される。そして、当該コンテンツアイコン群オブジェクトが仮想空間に配置される(図14参照)。なお、このようなコンテンツアイコン群オブジェクトを生成するのは、当該オブジェクトの移動量に基づいて後述する慣性スクロール中のスクロール速度を算出するためである。そして、当該コンテンツアイコン群のうちの一部のコンテンツアイコンが表示されるような位置に仮想カメラが配置され、この仮想カメラで撮影された領域(以下、表示領域)が画面に表示される。本実施形態では、上述したようなスクロール操作が行われれば、その操作内容に応じて当該仮想カメラ(つまり、表示領域)をコンテンツアイコン群オブジェクトの上でスライド移動させることで、コンテンツアイコン群オブジェクトのスクロールを実現している。以下、この仮想カメラで撮影される範囲を表示領域と呼ぶ。この場合、仮想カメラの移動量や移動速度に基づいてスクロール量やスクロール速度が算出されることになる。なお、仮想カメラは固定して、上述したようなスクロール操作が行われた場合に、その操作内容に応じてコンテンツアイコン群オブジェクトが仮想空間内を移動するようにしてもよい。この場合は、コンテンツアイコン群オブジェクトの移動量や移動速度を基にスクロール速度等が算出されることになる。すなわち、上述したようなスクロール操作が行われた場合、コンテンツアイコン群は表示領域に相対して移動することになる。
【0103】
なお、上記のコンテンツアイコンの表示手法やスクロール処理の手法はあくまで一例であり、これらに限らず、コンテンツアイコンの表示とスクロールができれば、どのような処理方法を用いても良い。
【0104】
以降、ステップS2〜S27の処理ループが1フレーム毎に繰り返されることによって、メニュー処理が進行していく。
【0105】
次に、ステップS2において、操作データ324が取得される。次に、ステップS3において、上記取得した操作データ324が参照され、タッチパネル13に対するタッチ入力が行われているか否かが判定される。その結果、タッチ入力が行われていると判定されたときは(ステップS3でYES)、その入力座標値が取得され、次のステップS4において、継続的なタッチ入力が行われているか否かが判定される。これは、前回入力座標データ326に何らかのデータが設定されているか否かで判定される。当該判定の結果、継続的なタッチ入力が行われていないと判定されたときは(ステップS4でNO)、いわゆるタッチオンに該当する操作が行われたことになる。この場合は、まず、ステップS5において、慣性スクロール中か否かが判定される。つまり、上述したようなフリック操作による慣性スクロールがまだ継続している状態であるか否かが判定される。その結果、慣性スクロール中であると判定されたときは(ステップS5でYES)、ステップS6において、慣性スクロールをキャンセルする処理、つまり、スクロールを停止する処理が実行される。このとき、慣性スクロールフラグ329がオフに設定される。一方、慣性スクロール中ではないと判定されたときは(ステップS5でNO)、ステップS6の処理はスキップされる。
【0106】
次に、ステップS7において、タッチオン時処理が実行される。この処理では、上記入力座標に応じて適宜所定の処理が実行される。例えば、コンテンツアイコン101がタッチオンされたときは、当該コンテンツアイコン101に対応するアプリケーションの説明を表示するための処理等が実行される。その後、後述のステップS9に処理が進められる。
【0107】
一方、上記ステップS4の判定の結果、継続的タッチ入力が行われていると判定されたときは(ステップS4でYES)、同じ位置をタッチし続けている状態であるか、または、ドラッグ操作(スクロール操作)が行われている可能性がある。この場合は、次に、ステップS8において、その操作内容に基づく各種処理が適宜実行される。例えば、操作内容が水平方向へのドラッグ操作であれば、入力座標の変化量および変化方向に応じてコンテンツアイコン群を水平方向にスクロールさせる(より正確には、当該変化量と変化方向に応じて上記表示領域を移動させることで、コンテンツアイコン群のスクロールを実現する)。
【0108】
次に、ステップS9において、前回入力座標データ326の設定が行われる。具体的には、まず、前回入力座標データ326の内容が、前々回入力座標データ327としてメインメモリ32に格納される。更に、上記ステップS2で取得された操作データに含まれるタッチ位置の入力座標が前回入力座標データ326としてメインメモリ32に記憶される。続いて、ステップS10において、表示処理が行われる。すなわち、上記処理内容を反映した画像を生成し、下側LCD12に表示する処理が実行される。その後、上記ステップS2に戻り、処理が繰り返される。
【0109】
次に、上記ステップS3の判定の結果、タッチ入力がなされていないと判定されたときの処理(ステップS3でNO)について説明する。この場合は、まず、図12のステップS11において、現在の操作状態がタッチオフに該当するか否かが判定される。具体的には、前回入力座標データ326が参照され、何らかのデータが記憶されている場合はタッチオフと判定され、前回入力座標データ326が空の場合は、タッチオフではない(つまり、タッチしていない状態が継続している)と判定される。当該判定の結果、タッチオフに該当すると判定されたときは(ステップS11でYES)、次に、ステップS12で、上述したようなフリック操作による慣性のついたタッチオフであるか否かが判定される。これは、前回入力座標データ326と前々回入力座標データ327とで示される入力座標の変化量が所定値以上であるか否かで判定される。当該変化量がある程度大きければ、上述したようなフリック操作が行われ、慣性のついたタッチオフが発生したものとして扱う。
【0110】
ステップS12の判定の結果、慣性のついたタッチオフが行われたと判定されたときは(ステップS12でYES)、次に、ステップS15において、慣性タッチオフ処理が実行される。この処理は、上述したような慣性スクロールを行うための処理である。
【0111】
図15は、上記ステップS22で示した慣性タッチオフ処理の詳細を示すフローチャートである。図15において、まず、ステップS41において、慣性スクロールを行うための各種パラメータが算出される。例えば、上記前回入力座標データ326と前々回入力座標データ327とで示される入力座標の変化量に応じて、スクロールの量や速度、時間等が算出される。そして、ステップS42において、当該算出されたパラメータが慣性スクロール用データ328としてメインメモリ32に記憶される。
次に、ステップS43において、慣性スクロールフラグ329がオンに設定される。続く、ステップS44において、上記慣性スクロール用データ328に基づいて慣性スクロールが開始される。その結果、フリック操作によるタッチオフが行われた際、上記慣性スクロールが表示されることになる。以上で、慣性タッチオフ処理は終了する。
【0112】
図12に戻り、ステップS15の処理が終われば、後述するステップS14に処理が進められる。
【0113】
一方、上記ステップS12の判定の結果、慣性のついたタッチオフが行われていない(つまり、フリック操作によらない通常のタッチオフが行われた)と判定されたときは(ステップS12でNO)、次に、ステップS13において、タッチオフ時にかかる各種処理が実行される。例えば、コンテンツアイコン101がタッチされていた状態からタッチオフされたときは(つまり、コンテンツアイコン101にタップ操作が行われたとき)、当該タッチされていたコンテンツアイコン101に対応するアプリケーションを起動する処理等が実行される。なお、何らかのアプリケーションが起動された場合は、本ホームメニュー処理は一旦停止し、アプリケーションが終了すれば再開される。
【0114】
次に、ステップS14において、タッチオフ操作に伴って、前回入力座標データ326および、前々回入力座標データ327がクリアされる。その後、上記ステップS10に処理が進められる。
【0115】
次に、上記ステップS11の判定の結果、タッチオフに該当しないと判定されたときの処理(ステップS11でNO)について説明する。この場合は、ユーザがタッチパネルに触れていない状態が継続していると考えられる。この場合は、まず、図13のステップS16において、慣性スクロールフラグ329が参照され、慣性スクロール中であるか否かが判定される。その結果、慣性スクロール中ではないと判定されたときは(ステップS16でNO)、後述のステップS23に処理が進められる。
【0116】
一方、慣性スクロール中と判定されたときは(ステップS16でYES)、次に、ステップS17において、上記慣性スクロール用データ328に基づく慣性スクロールの処理が継続される。
【0117】
次に、ステップS18で、慣性スクロールを継続した結果、コンテンツアイコン群の端まで到達したか否かが判定される。例えば、コンテンツアイコン群の右端あるいは左端のコンテンツアイコンの中点が画面中央に来たか)が判定される。当該判定の結果、まだ端まで到達していないときは(ステップS18でNO)、後述するステップS20に処理が進められる。
【0118】
一方、端まで到達したときは(ステップS18でYES)、ステップS19において、ジャンプ演出設定処理が実行される。図16は、上記ステップS19で示したジャンプ演出設定処理の詳細を示すフローチャートである。図16において、まず、ステップS61で、ジャンプ対象フラグ3254がオンに設定される。次に、ステップS62で、この時点におけるスクロール速度の算出が行われる。これは、表示領域におけるX座標軸上の中央座標位置(表示領域の座標系における位置)に対応するコンテンツアイコン群オブジェクトのX座標軸上の位置(コンテンツアイコン群オブジェクトのローカル座標系での位置)を判別し、この位置の前回のフレームと今回のフレームとの間での変化量に基づいてスクロール速度が算出される。つまり、前回のフレームから今回のフレームまでの仮想カメラの移動量(あるいはコンテンツアイコン群オブジェクトの移動量)に基づいてスクロール速度が算出される。例えば、表示領域の中央部分について、前回のフレームにおいては左から3番目のコンテンツアイコン101が位置しており(表示されており)、今回のフレームにおいては左から4番目のコンテンツアイコンが位置している場合と、前回のフレームでは左から3番目のコンテンツアイコン101が位置しており、今回のフレームでは左から6番目のコンテンツアイコン101が位置している場合とでは、後者のほうがスクロール速度が速いことになる。
【0119】
なお、スクロール速度の算出については、上記のような方法に限らず、過去数フレーム分における仮想カメラ(またはコンテンツアイコン群オブジェクト)の移動量に基づいて算出するようにしてもよい。その他、スクロール速度が算出できればどのような方法を用いても良い。
【0120】
次に、ステップS63において、上述したようなジャンプ演出を行う対象とするコンテンツアイコン101が選定される(以下、ジャンプ対象アイコンと呼ぶ)。本実施形態では、端から3つめまでのコンテンツアイコン101をジャンプ対象として選定するものとする。
【0121】
次に、ステップS64において、選定されたジャンプ対象アイコンのジャンプ対象フラグ3254にオンが設定される。
【0122】
次に、ステップS65において、ジャンプ対象アイコン(ジャンプ対象フラグ3254がオンに設定されているコンテンツアイコン)の全てについて、以下に述べるようなジャンプ演出の設定処理が実行されたか否かが判定される。その結果、まだ未処理のジャンプ対象アイコンが残っているときは(ステップS65でNO)、ステップS66において、未処理のジャンプ対象アイコンのうちの1つが選択される。次に、ステップS67において、選択されたジャンプ対象アイコンのコンテンツアイコン群の端からの順番に基づき、ジャンプの最高到達点(ジャンプの高さ)が決定される。本実施形態では、上述のように、コンテンツアイコン群の端に近いものほどより高くジャンプさせるように設定される。
【0123】
次に、ステップS68において、上記ジャンプの最高到達点および上記算出されたスクロール速度に基づいて、当該ジャンプ対象アイコンのジャンプの初速が決定される。更に、ステップS69において、上記ジャンプの最高到達点およびジャンプ初速がジャンプ演出パラメタ3255として記憶される。また、このようなパラメタの他、ジャンプ量等のジャンプする様を表示するために必要なパラメタも適宜決定されて記憶される。その後、上記ステップS65に処理が戻される。
【0124】
一方、上記ステップS65の判定の結果、ジャンプ対象アイコンの全てについて上記のような設定処理が終わったと判定されたときは(ステップS65でYES)、当該ジャンプ演出設定処理は終了する。
【0125】
図13に戻り、ステップS19にかかるジャンプ演出設定処理が終われば、次に、ステップS20において、慣性スクロールの終了条件が満たされたか否かが判定される。例えば、上記慣性スクロール用データ328で示される慣性スクロール量に達したか否かで、慣性スクロールを終了するべきか否かが判定される。また、上記ステップS18で端まで到達したと判定されたときも、本判定において終了条件を満たしたと判定される。当該ステップS20の判定の結果、慣性スクロールの終了条件を満たしていないと判定されたときは(ステップS20でNO)、後述のステップS22に処理が進められる。一方、慣性スクロールの終了条件を満たしたと判定されたときは(ステップS20でYES)、ステップS21において、慣性スクロールフラグ329がオフに設定される。
【0126】
次に、ステップS22において、上記慣性スクロール以外にかかる各種処理が適宜実行される。これらの処理は本実施形態と直接関連しないため、説明は省略する。その後、上記ステップS10に処理が進められる。
【0127】
次に、上記ステップS16の判定の結果、慣性スクロール中でもないと判定されたときの処理(ステップS16でNO)について説明する。このときは、ステップS23において、ジャンプ演出フラグ330が参照されることで、ジャンプ演出中であるか否かが判定される。つまり、上記のような慣性スクロールの結果、コンテンツアイコン群の端に到達したような場合に、慣性スクロール自体は終わっているが、まだジャンプ演出にかかる処理が継続しているか否かが判定される(慣性スクロールの停止後も、数フレーム〜数十フレームかけて、コンテンツアイコン101がジャンプし、更に数回バウンドする様子が表示されるため)。当該判定の結果、ジャンプ演出中ではないと判定されたときは(ステップS23でNO)、上記ステップS10に戻り、処理が繰り返される。一方、ジャンプ演出中であると判定されたときは(ステップS23でYES)、ステップS24において、ジャンプ演出処理が実行される。
【0128】
図17は、上記ステップS24で示したジャンプ演出処理の詳細を示すフローチャートである。図17において、まず、ステップS81で、ジャンプ対象アイコンの全てについて、以下に述べるようなジャンプ演出処理が実行されたか否かが判定される。当該判定の結果、ジャンプ対象アイコンが残っているときは(ステップS81でNO)、ステップS82において、未処理のジャンプ対象アイコンのうちからいずれか1つが選択される。
【0129】
次に、ステップS83において、ジャンプ演出パラメタ3255に基づいて、当該ジャンプ対象アイコンをジャンプさせる処理(ジャンプにかかる一連の移動処理のうち、今回フレームにおける移動を行う処理。このジャンプには、上述したようなバウンドする動きも含む)が実行される。つまり、スクロール方向とは異なる方向(本実施形態では、スクロール方向と垂直になる方向)に当該ジャンプ対象アイコンを移動させる処理が実行される。なお、以下の説明では、このようなジャンプ演出にかかるコンテンツアイコンの一連の移動のことを「ジャンプ移動」と呼ぶ。
【0130】
次に、ステップS84で、次のフレームにおける処理ループにて用いられるように、ジャンプ演出パラメタ3255を算出して適宜更新する処理が実行される。例えば、今回のフレームにおいてジャンプの最高点に到達した場合は、次のフレームでは、ジャンプ対象アイコンが下降する様を表示する必要がある。そのため、マイナス方向の速度が算出されて、ジャンプ演出パラメタ3255に記憶される。また、上述したバウンドするような様子を表示するために、ジャンプ対象アイコンが着地したとき、上記マイナスの速度(下降速度)を上記ジャンプ初速に乗算することで、新たなジャンプ初速が再計算される。
【0131】
次に、ステップS85において、当該ジャンプ対象アイコンのジャンプ移動が終了したか否かが判定される。これは、例えば、上記ジャンプ初速が所定値以下になったか否かや、あるいは、ジャンプ初速が0になったか否か等で判定される。当該判定の結果、当該ジャンプ対象アイコンのジャンプ移動がまだ終わっていないときは(ステップS85でNO)、当該ジャンプ対象アイコンについては処理済みとして、上記ステップS81に戻り、未処理のジャンプ対象アイコンについて上記のような処理が繰り返される。一方、ジャンプ移動が終了したと判定されたときは(ステップS85でYES)、ステップS86において、当該ジャンプ対象アイコンのジャンプ対象フラグ3254がオフに設定される。そして、上記ステップS81に戻り、処理が繰り返される。
【0132】
一方、上記ステップS81の判定の結果、ジャンプ対象アイコンの全てについて上記のようなジャンプ演出にかかる処理が終了したと判定されたときは(ステップS81でYES)、当該ジャンプ演出処理は終了する。
【0133】
図13に戻り、ステップS24のジャンプ演出処理が終われば、次に、ステップS25において、ジャンプ演出の終了条件が満たされたか否かが判定される。これは、ジャンプ対象フラグ3254がオンに設定されているコンテンツアイコンが存在するか否か等で判定される。当該判定の結果、ジャンプ演出の終了条件が満たされていないと判定されたときは(ステップS25でNO)、上記ステップS10に戻る。一方、ジャンプ演出の終了条件が満たされたと判定されたときは(ステップS25でYES)、ステップS26において、ジャンプ演出フラグ330がオフに設定される。そして、上記ステップS10の処理に戻る。
【0134】
以上で、第1の実施形態にかかるホームメニュー処理の説明を終了する。
【0135】
このように、第1の実施形態では、慣性スクロールの結果、コンテンツアイコン群の端が表示領域内の所定の位置に来たときは、コンテンツアイコン101をスクロール方向とは異なる方向に移動させている。これにより、コンテンツが表示される領域を狭めることなく、コンテンツアイコン群の端までスクロールしたことをユーザに直感的に把握させることができる。また、ジャンプする高さに関しても、スクロールの速度が速いほど、より高くジャンプさせている。更に、コンテンツオブジェクト群の端側に近いコンテンツアイコンほど、より高くジャンプさせている。これにより、端までスクロールしたことをより直感的にユーザに認識させることができる。
【0136】
(第2の実施形態)
次に、本発明の第2の実施形態にかかるゲーム装置の処理について説明する。このゲーム装置のハードウェア構成を示すブロック図は、第1の実施形態と同様である(図1および図2参照)。しかし、本実施形態では、メインメモリ32には第1の実施形態とは部分的に異なるプログラムが格納され、CPU31はそのプログラムを実行することにより、第1の実施形態と同様の機能を実現する。
【0137】
次に、第2の実施形態にかかるホームメニュー処理の概要について説明する。第1の実施形態では、慣性スクロールの結果、コンテンツアイコン群の端が表示領域内の所定の位置に来たか否かを判定し、その結果に応じてコンテンツアイコンを適宜ジャンプさせる演出処理を行うようにしていた。第2の実施形態にかかる処理では、このような「コンテンツアイコン群の端が表示領域内の所定の位置に来たか否か」という判定は行わずに、第1の実施形態と同様の機能を実現する。すなわち、第2の実施形態においては、各コンテンツアイコンが表示領域の中央に位置する度に、ジャンプ演出に関する処理が行われる。但し、ジャンプする高さについては、各コンテンツアイコンが上記コンテンツアイコン群の端からどの程度の距離にあるのか等によって、ジャンプする高さが設定される。本実施形態では、コンテンツアイコン群の端に位置するものほど高くジャンプするように設定される。その結果、コンテンツアイコン群の中ほどに位置するコンテンツアイコン等は、表示領域の中央を通過してジャンプ演出に関する処理が行われても、ジャンプする高さが0と設定され、実質的にはジャンプしないことになる。一方、コンテンツアイコン群の端に位置するコンテンツアイコンが表示領域内の中央に来た場合は(すなわち、端までスクロールされたことになる)、ジャンプする高さとしてある程度の高さが設定され、当該端に位置するアイコンがジャンプするようなジャンプ演出が行われることになる。
【0138】
次に、第2の実施形態において利用される各種データについて説明する。基本的には、上記第1の実施形態におけるデータと同様のデータが用いられるが、コンテンツアイコンデータ325の構造が上記第1の実施形態とは若干異なる。
【0139】
図18は、第2の実施形態におけるコンテンツアイコンデータのデータ構造を示す図解図である。図18に示す各種データは、第1の実施形態で上記図10を用いて上述したコンテンツアイコンデータ325において、ジャンプ演出パラメタ3255の代わりに前回ジャンプパラメタ3256が含まれている。前回ジャンプパラメタ3256は、直前にフレームにおけるジャンプ演出で用いられたジャンプ演出用のパラメタが記憶されたものである。
【0140】
次に、第2の実施形態におけるホームメニュー処理の流れを図19〜図20を用いて説明する。なお、このフローチャートのうちステップS1〜S15、S20〜S22の処理は、図11〜図13に示したフローチャートと同一であり、両フローチャートにおいて同一のステップには同一の符号が付されている。第1の実施形態と異なる点は、ステップS2の後にステップS101の処理が行われる点と、ステップS11の判定で否定と判定された場合の処理の流れが異なる点である。以下では、第1の実施形態と異なる点を中心に説明する。
【0141】
図19において、ステップS2で操作データが取得されると、次に、ステップS101において、ジャンプ量パラメタ算出処理が実行される。この処理は、上記コンテンツアイコンのジャンプ量を決めるためのパラメタをスクロール量(スクロール速度)に基づいて算出するための処理である。換言すれば、コンテンツアイコン101が表示領域の中央を通ったときのスクロール速度に応じて、当該コンテンツアイコンのジャンプの高さを決める処理である。
【0142】
図21は、上記ステップS101で示したジャンプ量パラメタ算出処理の詳細を示すフローチャートである。まず、ステップS121において、直前のフレームから今回のフレームまでのスクロール量を示す変数”sabun”が算出される。これは、例えば、以下の式を用いて算出される。
sabun=(now.x)−(before.x) ・・・式1
ここで、変数(now.x)は、例えば表示領域の中心点を基準位置とした場合に、今回のフレームにおいて当該基準位置に表示されていたコンテンツアイコン群オブジェクトのX座標軸上の位置を示す。また、変数(before.x)は、直前のフレームにおいて上記基準位置に表示されていたコンテンツアイコン群オブジェクトのX座標軸上の位置を示す。この基準位置におけるコンテンツアイコン群オブジェクトの移動量が変数sabun、すなわち、スクロール量として算出される(図22参照)。
【0143】
次に、ステップS122において、以下の式を用いてジャンプ量パラメタtmpVが算出される。
tmpV=(係数a×tmpV)+(係数b×sabun) ・・・式2
ここで、係数aおよび係数bは、それぞれの変数に重み付けをするための係数である。ここでは、係数aは0.9、係数bは0.1であるとする。なお、ジャンプ量パラメタtmpVについては、上記ステップS1の初期処理において0が設定されているものとする。この式によれば、現時点までのスクロール量(フレーム毎の速度の蓄積)が大きいほど、より大きな値がジャンプ量パラメタtmpVとして算出されることになる。さらに、スクロール量の変化が大きい、すなわち、スクロール速度が速いときほど、より大きな値がジャンプ量パラメタtmpVとして算出されることになる。このような算出をフレーム毎に行うことで、ユーザの操作に敏感に反応し過ぎて、ごく僅かの操作によってコンテンツアイコン101がジャンプすることを防ぐことが可能となる。
【0144】
次に、ステップS123において、以下の式により、ジャンプ量パラメタtmpVの減衰が行われる。
tmpV=tmpV×0.9 ・・・式3
当該処理は毎フレーム繰り返して実行されることになるため、ユーザの操作が行われていない期間が続けば、当該tmpVは最終的に0となる。
【0145】
以上で、ジャンプ量パラメタ算出処理は終了する。
【0146】
図19に戻り、ステップS101の処理が終われば、ステップS3に処理が進められる。ステップS3〜ステップS15の処理については、上記第1の実施形態と同様の処理が行われるため、説明は省略する。
【0147】
次に、図20のステップS11の判定の結果、タッチオフに該当しないと判定されたときの処理について説明する。このときは、まず、ステップS102において、慣性スクロール中であるか否かが判定される。その結果、慣性スクロール中ではないと判定されたときは(ステップS102でNO)、ステップS22に処理が進められる。
【0148】
一方、慣性スクロール中であると判定されたときは(ステップS102でYES)、ステップS103において、慣性スクロール処理が実行される。図23は、上記ステップS103で示した慣性スクロール処理の詳細を示すフローチャートである。まず、ステップS131において、慣性スクロール用データ328(上記ステップS15の処理にて算出される)に基づいて、スクロール方向(ここではX軸に沿った方向)に沿ってコンテンツアイコン群オブジェクトを移動させる処理が行われる(つまり、慣性スクロールが行われる)。
【0149】
次に、ステップS132において、ジャンプ判定処理が実行される。この処理は、上記ステップS131の処理の結果、表示領域の中央に来たコンテンツアイコン101があるか否かを判定し、あった場合は、ジャンプ演出のための準備設定を行う処理が実行される。図24は、上記ステップS132で示したジャンプ判定処理の詳細を示すフローチャートである。まず、ステップS151において、表示領域のX軸上の中央点に、その中点が到達したコンテンツアイコン101があるか否かが判定される。その結果、中央にきたコンテンツアイコンがなければ(ステップS151でNO)、当該ジャンプ判定処理は終了する。
【0150】
一方、中央にきたコンテンツアイコンがあるときは(ステップS151でYES)、ステップS152において、当該コンテンツアイコンの(中点の)コンテンツアイコン群の端からのX座標軸上における距離が算出され、この距離に応じた係数cが算出される。当該係数cは、コンテンツアイコン群の端に近いほど高い値が設定される。例えば、上記表示領域の中央に来たコンテンツアイコンがコンテンツアイコン群の両端に位置するいずれかのコンテンツアイコンであれば、端から近いために係数cとしては”1.0”が設定される。端から2番目のコンテンツアイコンであれば、”0.8”、端から3番目のコンテンツアイコンであれば、”0.6”のように計数cが設定される。また、コンテンツアイコン群の中央に位置するコンテンツアイコンである場合は、端から遠いために、”0”が係数cとして設定される。このような設定の結果、コンテンツアイコン群の端側に位置するいくつかのコンテンツアイコンだけがジャンプするということになる。
【0151】
次に、ステップS153において、以下の式でジャンプ初速が算出される。
ジャンプ初速=tmpV×係数c ・・・式4
つまり、上記表示領域の中央に来たコンテンツアイコンの、コンテンツアイコン群の端からの距離に応じて、ジャンプ初速の値(ひいては、ジャンプさせる高さ)を変化させている。
【0152】
次に、ステップS155において、当該コンテンツアイコン101のジャンプ対象フラグ3254がオンに設定される。つまり、第2の実施形態では、表示領域中央に来たコンテンツアイコンについては、一律にジャンプ対象アイコンして設定されることになる。但し、上記ステップS152およびS153の処理によって、コンテンツアイコン群の端から遠い位置にあるコンテンツアイコンの場合は、ジャンプ初速は”0”、あるいは”0”に近い値となり、実質的にはジャンプしないという結果になる。
【0153】
次に、ステップS156において、上記算出されたジャンプ初速が現在処理対象となっているコンテンツアイコンの前回ジャンプパラメタ3256として記憶される。以上で、ジャンプ判定処理は終了する。
【0154】
なお、上記ステップS155およびS156の処理については、例えば、ステップS153で算出されたジャンプ初速が”0”、あるいは”0”に近い所定値以下である場合(つまり、実質的にジャンプしない場合)は実行されないようにしてもよい。
【0155】
図23に戻り、ステップS132の処理の次に、ステップS133において、ジャンプ移動処理が実行される。この処理は、ジャンプ演出を表現するため、スクロール方向とは異なる方向(本実施形態ではスクロール方向と垂直な方向)にジャンプ対象アイコンをジャンプ移動させるための処理である。なお、このジャンプ移動には、第1の実施形態と同様に、バウンドするような動作も含まれるものとする。
【0156】
図25は、上記ステップS133で示したジャンプ移動処理の詳細を示すフローチャートである。図25において、まず、ステップS171でジャンプ対象アイコン(ジャンプ対象フラグ3254がオンに設定されているコンテンツアイコン)の全てについて、以下に説明するような処理が行われたか否かが判定される。その結果、未処理のジャンプ対象アイコンが残っているときは(ステップS171でNO)、ステップS172において、未処理のジャンプ対象アイコンのうちからいずれか一つが選択される。
【0157】
次に、ステップS173において、前回ジャンプパラメタ3256に基づいて、今回のフレームにおけるジャンプ対象アイコンのジャンプ移動用の各種パラメタが算出される。
なお、本処理について、初回の処理時は、前回ジャンプパラメタ3256にはジャンプ初速を示す値しか含まれていないため、この値に基づき、コンテンツアイコン101の移動方向(上昇か下降か)や移動量、移動速度等が今回のフレームにおける移動用パラメタとして適宜算出される。2度目以降の処理では、後述のステップS178の処理で、前回のフレームにおけるジャンプ移動パラメタが前回ジャンプパラメタ3256として記憶されているため、これに基づいて今回のフレームにおけるジャンプ移動用のパラメタが算出されることになる。なお、コンテンツアイコン101がバウンドするように移動させるために、上記第1の実施形態と同様に、ジャンプ初速は適宜再計算される。
【0158】
次に、ステップS174において、上記算出された移動用パラメタに基づいてジャンプ対象アイコンの移動が行われる。
【0159】
次に、ステップS175において、ジャンプ移動(ジャンプ開始〜数回バウンドして停止するまでの一連の移動)が終了したか否かが判定される。これは、例えば、コンテンツアイコン101をバウンド移動させるためにジャンプ初速の再計算を繰り返した結果、ジャンプ初速が0になったか否か等で判定される。また、コンテンツアイコン群の端から遠い位置にあるコンテンツアイコンの場合は、最初からジャンプ初速が0として設定されることもあり得るため、この場合は実質的にジャンプ移動が行われないままジャンプ移動が終了したと判定されることになる。当該判定の結果、ジャンプ移動がまだ終了していないときは(ステップS175でNO)、ステップS178で、上記算出された今回のフレームにおけるジャンプ移動用のパラメタが前回ジャンプパラメタ3256として記憶される。その後、上記ステップS171に戻り、処理が繰り返される。一方、一連のジャンプ移動が終了したと判定されたときは(ステップS175でYES)、ステップS176において、現在処理対象のジャンプ対象アイコンのジャンプ対象フラグ3254がオフに設定される。更に、ステップS177において、現在処理対象のジャンプ対象アイコンの前回ジャンプパラメタ3256がクリアされる。その後、上記ステップS171に戻り、処理が繰り返される。
【0160】
一方、上記ステップS171の判定の結果、ジャンプ対象アイコンの全てについて、上記のような処理が行われたと判定されたときは(ステップS171でYES)、当該ジャンプ移動処理は終了する。
【0161】
図23に戻り、ステップS133のジャンプ移動処理が終われば、慣性スクロール処理も終了する。
【0162】
図20に戻り、ステップS103の慣性スクロール処理が終了すれば、次に、ステップS20の処理が実行される。ステップS20〜S22の処理については、上記第1の実施形態と同様であるため、説明は省略する。以上で、第2の実施形態にかかるホームメニュー処理の説明は終了する。
【0163】
このように、第2の実施形態では、表示領域の中央をコンテンツアイコンが通過する度に、ジャンプ演出に関する処理を行っている。また、スクロールの速度やコンテンツアイコン群の端からの距離に応じてジャンプする高さが決定される。つまり、スクロール速度が速いほど、また、コンテンツアイコン群の端に近いほど高くジャンプするように設定される。これにより、第1の実施形態のように、コンテンツアイコン群の端までスクロールしたか否かを個別に判定せずとも、第1の実施形態と同様の機能、すなわち、端までスクロールしたことをユーザに直感的に認識させることが実現できる。
【0164】
なお、上記実施形態では、横スクロールの場合を例として挙げたが、スクロール方向についてはこれに限るものではなく、縦スクロールの場合であっても本発明は適用可能である。また、縦横の双方にスクロール可能な場合にも適用可能である。この場合は、スクロール操作にかかるスクロール方向とは異なる方向に上記のような移動(ジャンプ演出)を行うようにすればよい。例えば、縦横の双方にスクロール可能な場合において、ユーザが縦方向へのスクロール操作を行って、スクロールの端まで到達した場合は、横方向に沿って上記のようなジャンプ移動に相当するような動作を行い、ユーザが横方向へのスクロール操作を行って、スクロールの端まで到達した場合は、縦方向に沿って上記のようなジャンプ移動に相当するような動作を行えばよい。
【0165】
また、スクロール対象に関して、上記実施形態では、ホーム画面における複数のコンテンツアイコン101を例としたが、これに限るものではない。例えば、上記コンテンツアイコン101は、それぞれユーザの選択対象であるという位置づけであったが、必ずしもユーザの選択対象ではなくてもよい。上記コンテンツアイコンに相当するものが、単なる画像である場合等、見た目で内容が確認できるようなコンテンツ(閲覧専用コンテンツ)であってもよい。
【0166】
また、その他、上記のようなコンテンツアイコン101ではなく、例えば、ゲーム処理における所持アイテム一覧が表示される画面のような、複数の項目(項目オブジェクト)をリストとして表示するような場合や、画像ビューワ等における画像のサムネイル画面等についても本発明は適用可能である。この場合は、リストやサムネイル画面の端に位置する項目が上記のようなジャンプ移動を行うような演出となる。
【0167】
また、上記スクロール対象の別の例としては、例えば、電子書籍ビューワにおける電子書籍コンテンツや、電子文書ビューワ等における電子文書等の1つの大きな(1画面内に収まらない)コンテンツであってもよい。また、インターネットブラウザ(HTMLブラウザ)等の各種ブラウザにおける閲覧対象(文書や画像の組み合わせで構成されるHTML文書やWebページ等のコンテンツ)であってもよい。この場合は、当該コンテンツそのものを、上記ジャンプ移動のように、スクロール操作にかかるスクロール方向とは異なる方向に移動させればよい。
【0168】
また、上記ジャンプ演出に関して、表示領域中央に来たコンテンツアイコンの移動履歴に基づいてジャンプする高さを設定するようにしても良い。例えば、表示領域の中央に到達するまでのコンテンツアイコンの移動量を算出し、慣性スクロールの開始時から中央に来たときまでの移動量が多ければ、より高くジャンプするように設定・制御してもよい。
【0169】
また、上述の実施形態では、スクロールの端まで到達したときにコンテンツアイコンをジャンプさせていた、この他、コンテンツアイコンをジャンプさせる代わりに、仮想カメラをZ軸方向に沿ってコンテンツアイコンに近づけるように移動させるようにしてもよい。つまり、スクロールの端まで到達した場合、ユーザからは、コンテンツアイコンが拡大するように見えるような演出を行っても良い。
【0170】
更には、コンテンツアイコンの表示領域以外の領域に、コンテンツアイコン群に対する現在表示中のコンテンツアイコンの位置を示す情報(インジケータ)を表示するようにしても良い。つまり、このようなインジケータと、上記ジャンプ演出とを併存させるようにしてもよい。ユーザは、当該インジケータを見るか、あるいか、コンテンツアイコンのジャンプを見ることのいずれかによって、スクロールの端まで到達したことを知ることができる。これにより、ユーザの利便性をより高めることができる。
【0171】
また、上記第2の実施形態では、ジャンプ判定を行うための所定位置として、表示領域の中央を利用していたが、この所定位置については、いずれかのコンテンツアイコンがジャンプする度に、その位置を変化させるようにしても良い。この場合は、位置が変化する範囲としては、基準となる所定位置の近傍であることが好ましい(上記第2の実施形態の場合を例にすると、表示領域の中央を基準の所定位置として、その近辺で所定位置が変化する)。
【0172】
また、上記第2の実施形態では、コンテンツアイコンが表示領域の中央に到達したときにすぐにジャンプさせるようにしていたが、この他、コンテンツアイコンが表示領域の中央に到達した後、一定のフレームが経過してから当該コンテンツアイコンをジャンプさせるようにしてもよいし、コンテンツアイコンが表示領域の中央より手前の所定位置(スクロール方向とは逆方向に表示領域の中央から所定距離離れた位置)に到達した後、一定のフレームを経過してから当該コンテンツアイコンをジャンプさせるようにしてもよい。
【0173】
また、上記実施形態は、タッチ操作が可能な携帯ゲーム装置のメニュー画面での操作を例として主に説明していた。適用可能な装置については、これに限るものではなく、据置型ゲーム装置やパーソナルコンピュータ、電子書籍リーダ等の各種情報処理端末において、ポインティングデバイスを用いて上述したようなドラッグ操作を行うことでコンテンツをスクロールさせるような場合にも本発明は適用可能である。このポインティングデバイスについては、上記タッチパネルの他、例えば、画面上の任意位置を指示可能なマウス、表示画面を持たない操作面上の任意位置を指示するタブレット、遠隔から表示画面や表示画面周囲に配置されたマーカ等を撮像するための撮像手段を備えたデバイスによって、表示画面方向を指し示すことにより得られる撮像画像における表示画面やマーカの位置から、表示画面上の指し示された位置に相当する表示画面上の座標を算出するポインティングデバイスなどでもよい。
【0174】
また、上記実施形態では、スクロール操作に際して、操作領域に対するプレイヤの指示位置を検出する装置としてタッチパネルを例に上げたが、プレイヤが所定領域内の位置を指示できるいわゆるポインティングデバイスであればよく、例えば、画面上の任意位置を指示可能なマウス、表示画面を持たない操作面上の任意位置を指示するタブレット、遠隔から表示画面や表示画面周囲に配置されたマーカ等を撮像するための撮像手段を備えたデバイスによって、表示画面方向を指し示すことにより得られる撮像画像における表示画面やマーカの位置から、表示画面上の指し示された位置に相当する表示画面上の座標を算出するポインティングデバイスなどを用いて上述したスクロール操作を行う場合にも本発明は適用可能である。また、ポインティングデバイスではなく、例えば十字キー、カーソルキー等のボタン操作によって上述したようなスクロールが行われる場合にも適用可能である。このようなボタン操作、例えば十字キーの左ボタンを押下することによってスクロール操作を行った場合、左ボタンを押下しつづけると、徐々にスクロール速度が上がっていき(途中で押下を止めた場合は、そのときまでのスクロール速度に基づき、上記慣性スクロール相当の処理が行われるようにしてもよい)、コンテンツの端に到達したとき、上述したようなジャンプ演出が行われることになる。
【0175】
また、上記実施形態においては、スクロール操作に応じてジャンプ演出を行うための一連の処理が単一の装置(ゲーム装置1)において実行される場合を説明したが、他の実施形態においては、上記一連の処理が複数の情報処理装置からなる情報処理システムにおいて実行されてもよい。例えば、端末側装置と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの一部の処理がサーバ側装置によって実行されてもよい。さらには、端末側装置と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの主要な処理がサーバ側装置によって実行され、当該端末側装置では一部の処理が実行されてもよい。また、上記情報処理システムにおいて、サーバ側のシステムは、複数の情報処理装置によって構成され、サーバ側で実行するべき処理を複数の情報処理装置が分担して実行してもよい。
【符号の説明】
【0176】
1…ゲーム装置
11…下側ハウジング
12…下側LCD
13…タッチパネル
14…操作ボタン
15、26…LED
16…マイクロフォン用孔
21…上側ハウジング
22…上側LCD
23…内側カメラ
24…音抜き孔
25…外側カメラ
27…タッチペン
28、29…メモリカード
31…CPU
32…メインメモリ
33…メモリ制御回路
34…保存用データメモリ
35…プリセットデータ用メモリ
36…メモリカードI/F
37…無線通信モジュール
38…ローカル通信モジュール
39…RTC
40…電源回路
41…I/F回路
42…マイク
43…アンプ
【技術分野】
【0001】
本発明は、ユーザが選択するための選択オブジェクトやユーザが閲覧するためのコンテンツ等の表示内容を表示するときの表示制御処理に関し、より特定的には、選択オブジェクトやコンテンツをスクロールさせるときの処理に関する。
【背景技術】
【0002】
従来から、1画面内に収まらないコンテンツを閲覧する情報処理端末が知られている。例えば、特許文献1に記載されている携帯電話機では、画面より大きい範囲のコンテンツの一部が画面に表示されている状態において、携帯電話のテンキーの操作によりコンテンツを移動させることが可能である。また、この携帯電話機では、コンテンツの表示領域以外の領域に、全コンテンツに対する現在表示中のコンテンツの位置を示す情報を表示している。例えば、全表示コンテンツ量に対する現在までに表示済みのコンテンツ量の割合をパーセンテージで表示するようになっている。そのため、コンテンツの端まで移動したときは、このパーセンテージ表示の内容を見ることで、コンテンツの端まで移動したことを把握することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2000−66801号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記特許文献1に記載されている携帯電話機では、どこまでコンテンツを移動させたかについて、コンテンツの表示領域以外の領域に表示される情報によって推測する必要がある。その一方で、ユーザは、コンテンツ閲覧中は、そのコンテンツに注目している。そのため、コンテンツ表示領域以外の領域にある情報を参照するためには、一旦視線をコンテンツから外し、コンテンツ表示領域以外の領域にある情報を確認することになる。その結果、コンテンツに注目している状態でコンテンツを移動させる操作を行った場合、コンテンツの端に到達したことが直感的に分かりにくいものとなっていた。。
【0005】
それ故に、本発明の目的は、ユーザにコンテンツ等の表示内容の端まで到達したことを直感的に把握させることにより、ユーザの利便性を向上させることができる表示制御プログラムなどを提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は以下のような構成を採用した。
【0007】
本発明にかかる表示制御プログラムは、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、コンピュータを、第1移動制御手段、および、第2移動制御手段として機能させる。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち表示領域に表示されている少なくとも1つの選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【0008】
上記構成により、複数の選択オブジェクトの端まで移動させたことをユーザに直感的に把握させることができる。
【0009】
他の構成例として、第2移動制御手段は、複数の選択オブジェクトのうちの端に位置する選択オブジェクトと、当該選択オブジェクトの近辺に位置する少なくとも1つの他の選択オブジェクトを移動させるようにしてもよい。
【0010】
上記構成例によれば、移動する選択オブジェクトが複数となるため、複数の選択オブジェクトの端まで移動させたことを、より判りやすく直感的にユーザに把握させることができる。
【0011】
更に他の構成例として、第2移動制御手段は、少なくとも表示領域に表示されている選択オブジェクト毎に移動距離が異なるように当該移動距離を決定するようにしてもよい。
【0012】
上記構成例によれば、複数の選択オブジェクトそれぞれで移動距離が異なるため、選択オブジェクトの端まで移動させたことを、より直感的にユーザに把握させることができる。
【0013】
更に他の構成例として、第2移動制御手段は、少なくとも表示領域に表示されている選択オブジェクトについて、当該選択オブジェクトの位置が端に近い位置にあるほど大きく移動させるようにしてもよい。
【0014】
上記構成例によれば、複数の選択オブジェクトの端まで移動させたことを、より直感的にユーザに把握させることができる。
【0015】
更に他の構成例として、端に位置する選択オブジェクトが表示領域における所定位置に到達するときの第1移動制御手段による移動の速度に基づいて、第2移動制御手段により少なくとも1つの選択オブジェクトが移動する移動距離を決定する移動距離決定手段としてコンピュータをさらに機能させ、第2移動制御手段は、少なくとも1つの選択オブジェクトを、移動距離決定手段により決定された移動距離まで移動させるようにしてもよい。
【0016】
上記構成例によれば、例えば画面のスクロール速度に応じて選択オブジェクトが移動する距離が変化するため、複数の選択オブジェクトの端まで移動させたことを、より直感的に、且つ、違和感なくユーザに把握させることができる。
【0017】
更に他の構成例として、第2移動制御手段は、第1移動制御手段による移動の方向と略垂直な方向に少なくとも1つの選択オブジェクトを移動させるようにしてもよい。
【0018】
上記構成例によれば、ユーザの操作内容に沿った移動方向とは異なった方向に選択オブジェクトが移動するため、複数の選択オブジェクトの端まで移動させたことをより直感的に把握させることができる。
【0019】
更に他の構成例として、第2移動制御手段により移動された少なくとも1つの選択オブジェクトを移動前の位置に戻す復帰手段としてコンピュータをさらに機能させるようにしてもよい。
【0020】
上記構成例によれば、移動された選択オブジェクトの内容を容易に確認することができる。
【0021】
本発明にかかる表示制御プログラムは、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、第1移動制御手段および第2移動制御手段としてコンピュータを機能させる。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのそれぞれが表示領域における所定位置に到達したときに、当該所定位置に到達した選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【0022】
上記構成により、複数の選択オブジェクトの端まで移動させたことをユーザに直感的に把握させることができる。
【0023】
他の構成例として、選択オブジェクトが表示領域における所定位置に到達するときの第1移動制御手段による移動の速度に基づいて、第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段としてコンピュータをさらに機能させ、第2移動制御手段は、表示領域における所定位置に到達した選択オブジェクトを、移動距離決定手段により決定された移動距離まで移動させるようにしてもよい。
【0024】
上記構成例によれば、例えば画面のスクロール速度に応じて選択オブジェクトの移動距離が変化するため、複数の選択オブジェクトの端まで移動させたことと共に、ユーザが行った移動操作の強弱を直感的に把握させることができる。
【0025】
更に他の構成例として、移動距離決定手段は、選択オブジェクトが表示領域における所定位置に到達するときの第1移動制御手段による移動の速度と過去の第1移動制御手段による移動に関するパラメータとに基づいて、移動距離を決定するようにしてもよい。
【0026】
上記構成例によれば、選択オブジェクトの移動速度だけでなく過去の選択オブジェクトの移動に応じて移動距離が変化するため、第2移動制御手段による移動について違和感の少ない移動を行うことができる。
【0027】
更に他の構成例として、移動距離決定手段は、過去の第1移動制御手段により移動してきた距離が大きくなるにつれて、第2移動制御手段により当該選択オブジェクトが移動する移動距離が長くなるように当該移動距離を決定するようにしてもよい。
【0028】
上記構成例によれば、例えば、僅かな距離しか選択オブジェクトを移動させていない場合であっても、第2移動制御手段により選択オブジェクトを移動させてしまうことによるユーザに与える違和感を低減することができる。
【0029】
更に他の構成例として、選択オブジェクトが表示領域における所定位置に到達したとき、複数のオブジェクト群の一番端の位置から当該表示領域における所定位置に到達した選択オブジェクトまでの距離に基づいて、第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段としてコンピュータをさらに機能させ、第2移動制御手段は、表示領域における所定位置に到達した選択オブジェクトを、移動距離決定手段により決定された移動距離まで移動させるようにしてもよい。
【0030】
上記構成例によれば、複数の選択オブジェクトの端からの距離に応じて移動距離が変化するため、どこが複数の選択オブジェクトの端にあたるかをユーザに直感的に把握させることができる。
【0031】
更に他の構成例として、移動距離決定手段は、複数のオブジェクト群の一番端の位置から表示領域における所定位置に到達した選択オブジェクトまでの距離が短くなるにつれて移動距離が長くなるように、当該移動距離を決定するようにしてもよい。
【0032】
上記構成例によれば、複数のオブジェクト群の端の近くに位置する選択オブジェクトほど、第2移動制御手段による移動が長くなり、どこが複数の選択オブジェクトの端にあたるかをユーザに直感的に把握させることができる。
【0033】
更に他の構成例として、選択オブジェクトが表示領域における所定位置に到達したときの第1移動制御手段による移動の速度、および、複数のオブジェクト群の一番端の位置から当該表示領域における所定位置に到達した選択オブジェクトまでの距離に基づいて、第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段としてコンピュータをさらに機能させ、第2移動制御手段は、表示領域における所定位置に到達した選択オブジェクトを、移動距離決定手段により決定された移動距離まで移動させるようにしてもよい。
【0034】
上記構成例によれば、複数の選択オブジェクトの端まで移動させたことと共に、ユーザが行った移動操作の強弱を直感的に把握させることができる。また、どこが複数の選択オブジェクトの端にあたるかをユーザに直感的に把握させることができる。
【0035】
本発明にかかる表示制御プログラムは、コンテンツを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、第1移動制御手段、および、第2移動制御手段としてコンピュータを機能させる。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数のコンテンツを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数のコンテンツが移動された結果、当該複数のコンテンツのうちの端のコンテンツが表示領域における所定位置に到達したときに、第1移動制御手段により当該複数のコンテンツが移動されてきた方向とは異なる方向へ、表示領域に表示されている少なくとも1つのコンテンツを表示領域に相対して移動させる。
【0036】
上記構成により、複数のコンテンツの端まで移動させたことをユーザに直感的に把握させることができる。
【0037】
本発明にかかる表示制御プログラムは、1画面では表示できないような大きさを有する移動対象を表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、第1移動制御手段、および、第2移動制御手段としてコンピュータを機能させる。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される移動対象を当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により移動対象が移動された結果、当該移動対象の端が表示領域における所定位置に到達したときに、第1移動制御手段により当該移動対象が移動されてきた方向とは異なる方向へ表示領域に相対して当該移動対象を移動させる。
【0038】
上記構成により、移動対象の端まで移動させたことをユーザに直感的に把握させることができる。
【0039】
本発明にかかる表示制御プログラムは、複数の項目オブジェクトから構成されるリストを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、第1移動制御手段および第2移動制御手段としてコンピュータを機能させる。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示されるリストを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により移動したリストのうち端の項目オブジェクトが表示領域における所定位置に到達したときに、リストのうち表示領域に表示されている少なくとも1つの項目オブジェクトを、第1移動制御手段により前記複数の項目のリストが移動してきた方向とは異なる方向へ表示領域に相対して移動させる。
【0040】
上記構成により、リストの端まで移動させたことをユーザに直感的に把握させることができる。
【0041】
本発明にかかる表示制御プログラムは、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、第1移動制御手段により移動している複数の選択オブジェクトのうち、当該第1移動制御手段による移動の方向とは逆方向の端の選択オブジェクトが表示領域における所定位置に到達したときまたはその直前に、少なくとも当該端の選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる第2移動制御手段として機能させる。
【0042】
上記構成により、複数の選択オブジェクトの端まで移動させたことをユーザに直感的に把握させることができる。
【0043】
本発明にかかる表示制御装置は、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置であって、第1移動制御手段および第2移動制御手段を備える。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち表示領域に表示されている少なくとも1つの選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【0044】
本発明にかかる表示制御システムは、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御システムであって、第1移動制御手段および第2移動制御手段を備える。第1移動制御手段は、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御手段は、第1移動制御手段により複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち表示領域に表示されている少なくとも1つの選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【0045】
本発明にかかる表示制御方法は、ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御方法であって、第1移動制御ステップおよび第2移動制御ステップを備える。第1移動制御ステップは、入力装置から出力される出力信号に基づいて、表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる。第2移動制御ステップは、第1移動制御ステップにおいて複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち表示領域に表示されている少なくとも1つの選択オブジェクトを、第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ表示領域に相対して移動させる。
【0046】
上記各構成により、複数の選択オブジェクトの端まで移動させたことをユーザに直感的に把握させることができる。
【発明の効果】
【0047】
本発明によれば、ユーザが複数の選択オブジェクトを移動させる操作(例えばスクロール操作)を行う際に、複数の選択オブジェクトの端まで移動させたことをユーザに直感的に把握させることができる。
【図面の簡単な説明】
【0048】
【図1】本発明の実施形態に係るゲーム装置1の外観図
【図2】本発明の実施形態に係るゲーム装置1のブロック図
【図3】本実施形態で想定するホーム画面の一例
【図4】本実施形態で想定するホーム画面の一例
【図5】本実施形態で想定するホーム画面の一例
【図6】本実施形態で想定するホーム画面の一例
【図7】本実施形態で想定するホーム画面の一例
【図8】本実施形態で想定するホーム画面の一例
【図9】メインメモリ32のメモリマップを示す図解図
【図10】コンテンツアイコンデータ325のデータ構造の一例
【図11】ゲーム装置1において実行されるホームメニュー処理の流れを示すフローチャート
【図12】ゲーム装置1において実行されるホームメニュー処理の流れを示すフローチャート
【図13】ゲーム装置1において実行されるホームメニュー処理の流れを示すフローチャート
【図14】コンテンツアイコン配置の概念の説明図
【図15】図12のステップS15で示した慣性タッチオフ処理の詳細を示すフローチャート
【図16】図13のステップS19で示したジャンプ演出設定処理の詳細を示すフローチャート
【図17】図13のステップS24で示したジャンプ演出処理の詳細を示すフローチャート
【図18】本発明の第2の実施形態にかかるコンテンツアイコンデータ325のデータ構造の一例
【図19】本発明の第2の実施形態にかかるホームメニュー処理の流れを示すフローチャート
【図20】本発明の第2の実施形態にかかるホームメニュー処理の流れを示すフローチャート
【図21】図19のステップS101で示したジャンプ量パラメタ算出処理の詳細を示すフローチャート
【図22】スクロール量算出の概念を説明するための図
【図23】図20のステップS103で示した慣性スクロール処理の詳細を示すフローチャート
【図24】図23のステップS132で示したジャンプ判定処理の詳細を示すフローチャート
【図25】図23のステップS133で示したジャンプ移動処理の詳細を示すフローチャート
【発明を実施するための形態】
【0049】
以下、本発明の実施の形態について、図面を参照して説明する。尚、この実施例により本発明が限定されるものではない。
【0050】
まず、各実施形態の詳細を説明するに先立ち、各実施形態で共通して使用されるゲーム装置の構成について説明する。
【0051】
図1は、本発明のホームメニュー処理プログラムを実行するゲーム装置1の外観図である。ここでは、ゲーム装置1の一例として、携帯ゲーム装置を示す。図1において、ゲーム装置1は、折り畳み型の携帯ゲーム装置であり、開いた状態(開状態)のゲーム装置1を示している。ゲーム装置1は、開いた状態においてもユーザが両手または片手で把持することができるようなサイズで構成される。
【0052】
ゲーム装置1は、下側ハウジング11および上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能)に連結されている。図1の例では、下側ハウジング11および上側ハウジング21は、それぞれ横長の長方形の板状で形成され、互いの長辺部分で回転可能に連結されている。通常、ユーザは、開状態でゲーム装置1を使用する。また、ユーザは、ゲーム装置1を使用しない場合には閉状態としてゲーム装置1を保管する。また、図1に示した例では、ゲーム装置1は、上記閉状態および開状態のみでなく、下側ハウジング11と上側ハウジング21とのなす角度が閉状態と開状態との間の任意の角度において、連結部分に発生する摩擦力などによってその開閉角度を維持することができる。つまり、上側ハウジング21を下側ハウジング11に対して任意の角度で静止させることができる。
【0053】
下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12が設けられる。下側LCD12は横長形状であり、長辺方向が下側ハウジング11の長辺方向に一致するように配置される。なお、本実施形態では、ゲーム装置1に内蔵されている表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置等、他の任意の表示装置を利用してもよい。また、ゲーム装置1は、任意の解像度の表示装置を利用することができる。なお、詳細は後述するが、下側LCD12は、主に、内側カメラ23または外側カメラ25で撮影されている画像をリアルタイムに表示するために用いられる。
【0054】
下側ハウジング11には、入力装置として、各操作ボタン14A〜14Kおよびタッチパネル13が設けられる。図1に示されるように、各操作ボタン14A〜14Kのうち、方向入力ボタン14A、操作ボタン14B、操作ボタン14C、操作ボタン14D、操作ボタン14E、電源ボタン14F、スタートボタン14G、およびセレクトボタン14Hは、上側ハウジング21と下側ハウジング11とを折りたたんだときに内側となる、下側ハウジング11の内側主面上に設けられる。方向入力ボタン14Aは、例えば選択操作等に用いられる。各操作ボタン14B〜14Eは、例えば決定操作やキャンセル操作等に用いられる。電源ボタン14Fは、ゲーム装置1の電源をオン/オフするために用いられる。図1に示す例では、方向入力ボタン14Aおよび電源ボタン14Fは、下側ハウジング11の内側主面中央付近に設けられる下側LCD12に対して、左右一方側(図1では左側)の当該主面上に設けられる。また、操作ボタン14B〜14E、スタートボタン14G、およびセレクトボタン14Hは、下側LCD12に対して左右他方側(図1では右側)となる下側ハウジング11の内側主面上に設けられる。方向入力ボタン14A、操作ボタン14B〜14E、スタートボタン14G、およびセレクトボタン14Hは、ゲーム装置1に対する各種操作を行うために用いられる。
【0055】
なお、図1においては、操作ボタン14I〜14Kの図示を省略している。例えば、Lボタン14Iは、下側ハウジング11の上側面の左端部に設けられ、Rボタン14Jは、下側ハウジング11の上側面の右端部に設けられる。Lボタン14IおよびRボタン14Jは、ゲーム装置1に対して、例えば撮影指示操作(シャッター操作)を行うために用いられる。さらに、音量ボタン14Kは、下側ハウジング11の左側面に設けられる。音量ボタン14Kは、ゲーム装置1が備えるスピーカの音量を調整するために用いられる。
【0056】
また、ゲーム装置1は、各操作ボタン14A〜14Kとは別の入力装置として、さらにタッチパネル13を備えている。タッチパネル13は、下側LCD12の画面上を覆うように装着されている。なお、本実施形態では、タッチパネル13は、例えば抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル13は、抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。また、本実施形態では、タッチパネル13として、例えば下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル13の解像度と下側LCD12の解像度とが一致している必要はない。また、下側ハウジング11の右側面には、挿入口(図1に示す破線)が設けられている。挿入口は、タッチパネル13に対する操作を行うために用いられるタッチペン27を収納することができる。なお、タッチパネル13に対する入力は、通常タッチペン27を用いて行われるが、タッチペン27に限らずユーザの指でタッチパネル13を操作することも可能である。
【0057】
また、下側ハウジング11の右側面には、メモリカード28を収納するための挿入口(図1では、二点鎖線で示している)が設けられている。この挿入口の内側には、ゲーム装置1とメモリカード28とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード28は、例えばSD(Secure Digital)メモリカードであり、コネクタに着脱自在に装着される。メモリカード28は、例えば、ゲーム装置1によって撮影された画像を記憶(保存)したり、他の装置で生成された画像をゲーム装置1に読み込んだりするために用いられる。
【0058】
さらに、下側ハウジング11の上側面には、カートリッジ29を収納するための挿入口(図1では、一点鎖線で示している)が設けられている。この挿入口の内側にも、ゲーム装置1とカートリッジ29とを電気的に接続するためのコネクタ(図示せず)が設けられる。カートリッジ29はゲームプログラム等を記録した記録媒体であり、下側ハウジング11に設けられた挿入口に着脱自在に装着される。
【0059】
下側ハウジング11と上側ハウジング21との連結部の左側部分には、3つのLED15A〜15Cが取り付けられる。ここで、ゲーム装置1は、他の機器との間で無線通信を行うことが可能であり、第1LED15Aは、ゲーム装置1の電源がオンである場合に点灯する。第2LED15Bは、ゲーム装置1の充電中に点灯する。第3LED15Cは、無線通信が確立している場合に点灯する。したがって、3つのLED15A〜15Cによって、ゲーム装置1の電源のオン/オフ状況、充電状況、および、通信確立状況をユーザに通知することができる。
【0060】
一方、上側ハウジング21には、上側LCD22が設けられる。上側LCD22は横長形状であり、長辺方向が上側ハウジング21の長辺方向に一致するように配置される。なお、下側LCD12と同様、上側LCD22に代えて、他の任意の方式および任意の解像度の表示装置を利用してもよい。なお、上側LCD22上を覆うように、タッチパネルを設けてもかまわない。例えば、上側LCD22には、ユーザに各操作ボタン14A〜14Kやタッチパネル13の役割を教えるための、操作説明画面が表示される。
【0061】
また、上側ハウジング21には、2つのカメラ(内側カメラ23および外側カメラ25)が設けられる。図1に示されるように、内側カメラ23は、上側ハウジング21の連結部付近の内側主面に取り付けられる。一方、外側カメラ25は、内側カメラ23が取り付けられる内側主面の反対側の面、すなわち、上側ハウジング21の外側主面(ゲーム装置1が閉状態となった場合に外側となる面であり、図1に示す上側ハウジング21の背面)に取り付けられる。なお、図1においては、外側カメラ25を破線で示している。これによって、内側カメラ23は、上側ハウジング21の内側主面が向く方向を撮影することが可能であり、外側カメラ25は、内側カメラ23の撮影方向の逆方向、すなわち、上側ハウジング21の外側主面が向く方向を撮影することが可能である。このように、本実施形態では、2つの内側カメラ23および外側カメラ25の撮影方向が互いに逆方向となるように設けられる。例えば、ユーザは、ゲーム装置1からユーザの方を見た景色を内側カメラ23で撮影することができるとともに、ゲーム装置1からユーザの反対側の方向を見た景色を外側カメラ25で撮影することができる。
【0062】
なお、上記連結部付近の内側主面には、音声入力装置としてマイク(図2に示すマイク42)が収納されている。そして、上記連結部付近の内側主面には、マイク42がゲーム装置1外部の音を検知できるように、マイクロフォン用孔16が形成される。マイク42を収納する位置およびマイクロフォン用孔16の位置は必ずしも上記連結部である必要はなく、例えば下側ハウジング11にマイク42を収納し、マイク42を収納位置に対応させて下側ハウジング11にマイクロフォン用孔16を設けるようにしても良い。
【0063】
また、上側ハウジング21の外側主面には、第4LED26(図1では、破線で示す)が取り付けられる。第4LED26は、外側カメラ25によって撮影が行われた(シャッターボタンが押下された)時点で点灯する。また、外側カメラ25によって動画が撮影される間点灯する。第4LED26によって、ゲーム装置1による撮影が行われた(行われている)ことを撮影対象者や周囲に通知することができる。
【0064】
また、上側ハウジング21の内側主面中央付近に設けられる上側LCD22に対して、左右両側の当該主面に音抜き孔24がそれぞれ形成される。音抜き孔24の奥の上側ハウジング21内にはスピーカが収納されている。音抜き孔24は、スピーカからの音をゲーム装置1の外部に放出するための孔である。
【0065】
以上に説明したように、上側ハウジング21には、画像を撮影するための構成である内側カメラ23および外側カメラ25と、例えば撮影の際に操作説明画面を表示する表示手段である上側LCD22とが設けられる。一方、下側ハウジング11には、ゲーム装置1に対する操作入力を行うための入力装置(タッチパネル13および各ボタン14A〜14K)と、ゲーム画面を表示するための表示手段である下側LCD12とが設けられる。したがって、ゲーム装置1を使用する際には、ユーザは、下側LCD12に表示される撮影画像(カメラによって撮影された画像)を見ながら、下側ハウジング11を把持して入力装置に対する入力を行うことができる。
【0066】
次に、図2を参照して、ゲーム装置1の内部構成を説明する。なお、図2は、ゲーム装置1の内部構成の一例を示すブロック図である。
【0067】
図2において、ゲーム装置1は、CPU31、メインメモリ32、メモリ制御回路33、保存用データメモリ34、プリセットデータ用メモリ35、メモリカードインターフェース(メモリカードI/F)36およびカートリッジI/F44、無線通信モジュール37、ローカル通信モジュール38、リアルタイムクロック(RTC)39、電源回路40、およびインターフェース回路(I/F回路)41等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて、下側ハウジング11(または上側ハウジング21でもよい)内に収納される。
【0068】
CPU31は、所定のプログラムを実行するための情報処理手段である。なお、CPU31によって実行されるプログラムは、ゲーム装置1内のメモリに予め記憶されていてもよいし、メモリカード28および/またはカートリッジ29から取得されてもよいし、他の機器との通信によって他の機器から取得されてもよい。例えば、インターネットを経由して所定のサーバからダウンロードすることで取得しても良いし、据置型ゲーム装置と通信を行うことで、当該据置型ゲーム装置に記憶されている所定のプログラムをダウンロードすることで取得しても良い。
【0069】
CPU31には、メインメモリ32、メモリ制御回路33、およびプリセットデータ用メモリ35が接続される。また、メモリ制御回路33には、保存用データメモリ34が接続される。メインメモリ32は、CPU31のワーク領域やバッファ領域として用いられる記憶手段である。本実施形態では、メインメモリ32として、例えばPSRAM(Pseudo−SRAM)を用いる。保存用データメモリ34は、CPU31によって実行されるプログラムや内側カメラ23および外側カメラ25によって撮影された画像のデータ等を記憶するための記憶手段である。保存用データメモリ34は、不揮発性の記憶媒体によって構成されており、例えば本実施例ではNAND型フラッシュメモリで構成される。メモリ制御回路33は、CPU31の指示に従って、保存用データメモリ34に対するデータの読み出しおよび書き込みを制御する回路である。プリセットデータ用メモリ35は、ゲーム装置1において予め設定される各種パラメータ等のデータ(プリセットデータ)や、後述するメニュー処理プリグラム等を記憶するための記憶手段である。プリセットデータ用メモリ35としては、SPI(Serial Peripheral Interface)バスによってCPU31と接続されるフラッシュメモリを用いることができる。
【0070】
メモリカードI/F36は、CPU31に接続される。メモリカードI/F36は、コネクタに装着されたメモリカード28に対するデータの読み出しおよび書き込みを、CPU31の指示に応じて行う。本実施形態では、外側カメラ25によって撮像された画像データがメモリカード28に書き込まれたり、メモリカード28に記憶された画像データがメモリカード28から読み出されて保存用データメモリ34に記憶されたりする。
【0071】
カートリッジI/F44はCPU31に接続される。カートリッジI/F44は、コネクタに装着されたカートリッジ29に対するデータの読み出しおよび書き込みをCPU31の指示に従って行う。
【0072】
無線通信モジュール37は、例えばIEEE802.11.b/gの規格に準拠した方式により、無線LANに接続する機能を有する。また、ローカル通信モジュール38は、所定の通信方式により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール37およびローカル通信モジュール38は、CPU31に接続される。CPU31は、無線通信モジュール37を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール38を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0073】
また、CPU31には、RTC39および電源回路40が接続される。RTC39は、時間をカウントしてCPU31に出力する。例えば、CPU31は、RTC39によって計時された時間に基づいて、現在時刻(日付)等を計算することもできる。電源回路40は、ゲーム装置1が有する電源(典型的には電池であり、下側ハウジング11に収納される)から供給される電力を制御し、ゲーム装置1の各部品に電力を供給する。
【0074】
また、ゲーム装置1は、マイク42およびアンプ43を備えている。マイク42およびアンプ43は、それぞれI/F回路41に接続される。マイク42は、ゲーム装置1に向かって発声されたユーザの音声を検知して、当該音声を示す音声信号をI/F回路41に出力する。アンプ43は、I/F回路41から音声信号を増幅してスピーカ(図示せず)から出力させる。I/F回路41は、CPU31に接続される。
【0075】
また、タッチパネル13は、I/F回路41に接続される。I/F回路41は、マイク42およびアンプ43(スピーカ)の制御を行う音声制御回路と、タッチパネル13の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル13からの信号に基づいて所定の形式のタッチ位置データを生成してCPU31に出力する。例えば、タッチ位置データは、タッチパネル13の入力面に対して入力が行われた位置の座標を示すデータである。なお、タッチパネル制御回路は、タッチパネル13からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。CPU31は、I/F回路41を介して、タッチ位置データを取得することにより、タッチパネル13に対して入力が行われた位置を知ることができる。
【0076】
操作ボタン14は、上記各操作ボタン14A〜14Kから構成され、CPU31に接続される。操作ボタン14からCPU31へは、各操作ボタン14A〜14Kに対する入力状況(押下されたか否か)を示す操作データが出力される。CPU31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に応じた処理を実行する。
【0077】
内側カメラ23および外側カメラ25は、それぞれCPU31に接続される。内側カメラ23および外側カメラ25は、CPU31の指示に応じて画像を撮影し、撮影した画像データをCPU31に出力する。本実施形態では、CPU31は、内側カメラ23および外側カメラ25のいずれか一方に対して撮影指示を行い、撮影指示を受けたカメラが画像を撮影して画像データをCPU31に送る。
【0078】
また、下側LCD12および上側LCD22は、それぞれCPU31に接続される。下側LCD12および上側LCD22は、それぞれCPU31の指示に従って画像を表示する。
【0079】
(第1の実施形態)
次に、第1の実施形態で想定している処理の概要について説明する。本実施形態の処理は、1画面で表示できないような大きさを有するコンテンツ等のスクロール対象をスクロールさせながら閲覧するような場面を想定している。ここで、このスクロール対象は、例えば、ゲーム装置や携帯型情報端末等において、いわゆる”ホーム画面”や”ホームメニュー”と呼ばれるメニューにおけるアイコン等である。このようなホーム画面においては、一般に複数のアイコンが整列されて表示される。各アイコンはそれぞれが1つのコンテンツ(アプリケーション)と対応付けられており、ユーザによって選択される対象(選択対象オブジェクト)でもある。例えば、あるアイコンをタップすると、ゲーム処理が起動する。以下の説明では、このアイコンのことをコンテンツアイコンと呼ぶ。また、これら複数のコンテンツアイコンを一体化した概念をコンテンツアイコン群と呼ぶ。そして、当該コンテンツアイコン群が1画面内に収まらない場合は、スクロール操作を行うことで、表示されていないコンテンツアイコンを画面内に表示させることができる。
【0080】
上記のようなスクロール操作の一例として、いわゆるドラッグ操作がある。例えば、タッチパネル付きの画面(本実施形態では、下側LCD12)にコンテンツアイコン群の一部が表示されているような場合に、タッチペン27を用いてタッチパネル13にタッチオンし、そのまま、所定の方向、例えば右から左方向にタッチペン27をスライド移動させれば、当該コンテンツアイコン群を左方向にスクロールすることができる。すなわち、複数のコンテンツアイコンをX軸に並行な方向に一体的にスクロールすることができる。これにより、現在表示されていないコンテンツアイコンを表示画面(表示領域)内に移動させることができる。このような、ドラッグ操作によるスクロール操作を繰り返し行った結果、コンテンツアイコン群の端まで到達した場合(コンテンツアイコン群のうち端に位置するコンテンツアイコンが画面内に表示された場合)を想定する。この場合、コンテンツアイコン群の端まで到達しているため、これ以上のスクロール操作は無駄な操作となる。本実施形態は、このような場合に、コンテンツアイコン群の端まで到達したことをユーザに直感的に知らせるために、以下に説明するような、コンテンツアイコンをジャンプさせるような演出処理を行う。以下では、このような、スクロール操作の結果、コンテンツアイコン群の端まで到達したことを知らせる演出処理を「スクロール限界演出」と呼ぶ。
【0081】
図3は、本実施形態で想定するゲーム装置1の画面の一例である。本実施形態では、電源を投入するとすぐに所定のゲームが起動する運用形態ではなく、一旦メニュー画面(以下ではホーム画面と呼ぶ)が表示されるような運用形態を例としている。そして、図3は、このような、ゲーム装置1を起動したときに表示されるホーム画面を示している。図3に示すホーム画面は、下側LCD12に表示される。下側LCD12には、複数のコンテンツアイコン101a〜101d(以下では、総称して単にコンテンツアイコンと呼ぶこともある)が横一列に整列した状態で表示されている。各コンテンツアイコンはそれぞれ所定のアプリケーション(例えば、カメラアプリ、オンラインショッピングアプリ、ゲームアプリ、本体設定用のアプリなど)と対応付けられている。ユーザは各アイコンに対してタップ操作を行うことで、タップしたアイコンに対応付けられたアプリケーションを起動することが可能である。これらコンテンツアイコンの数は1画面内で全て表示しきれないだけの数があり、横一列に並んでいるものとする。本実施形態では、一例としてコンテンツアイコンの数が16個あるものとして説明を行う。また、以下の説明では、1番目のコンテンツアイコン(図3のコンテンツアイコン101a)はコンテンツアイコン群の一番左端に位置し、16番目のコンテンツアイコン101pはコンテンツアイコン群の一番右端に位置しているものとする。また、本実施形態では、一番端のコンテンツアイコン101が画面の中央に来れば、当該端の方向に向けてはそれ以上スクロールできないものとする。
【0082】
本実施形態では、コンテンツアイコン群が表示されている領域内において、水平方向に沿ったドラッグ操作、あるいはフリック操作(タッチオンした後、画面を軽く払うように指やタッチペンを動かしてタッチオフするような操作、換言すれば、タッチオンした後、はじくような操作)を行うことで、コンテンツアイコン群を水平方向に沿ってスクロールさせることができる。例えば、図3の状態で、コンテンツアイコン101bをタッチオンし、左方向に向けてドラッグ操作したとする。すると、図4に示すように、コンテンツアイコン群が左方向に移動するような表示がなされ(つまり、左方向に画面スクロールする)、画面にはコンテンツアイコン101a(の右半分)〜101eが表示される状態となる。
【0083】
また、上記図3や図4の状態から、コンテンツアイコン群が表示されている領域内の位置をタッチし、左方向にフリック操作を行ったとする。すると、タッチペン27がタッチパネル13から離れた後においても、フリック操作時の慣性力に基づいて、しばらくの間コンテンツアイコン群が自動的にスクロールする。フリック操作の勢いが強ければ、より速くスクロールし、また、スクロール量もより多くなる。
【0084】
上記フリック操作によるスクロール(以下、慣性スクロールと呼ぶ)の結果、図5のような状態を経て(この図は、タッチパネル13にタッチペン27が触れていない状態でコンテンツアイコン群がスクロールしていることを示している。また、スクロール中は、各コンテンツアイコンがスクロール速度に応じてスクロール方向に少し傾いた状態で表示される。)、図6に示すように、コンテンツアイコン群の一番右に位置するコンテンツアイコン101pが画面内に入ってきたと想定する。その後、コンテンツアイコン101pが画面の略中央に到達したとする(より正確には、コンテンツアイコン101の中点がX軸上における画面の中央に到達)。なお、上記のように、本実施形態では、一番端のコンテンツアイコン101が画面中央に来ると、当該端の方向に向けてはそれ以上スクロールできない。例えば、上記図3で示した状態において、コンテンツアイコン101aが既に画面中央に位置しているので右方向にドラッグ操作あるいはフリック操作を行っても、コンテンツアイコン101aは画面中央から右側には移動しない。これは、コンテンツアイコン群の一番左端のコンテンツアイコン101pも同様である(スクロール操作を行っても、画面中央から左側には移動しない。)。
【0085】
このように、フリック操作による慣性スクロールの結果、コンテンツアイコン群の端が画面中央部に到達し、これ以上のスクロールができないような状態となったとき、本実施形態では、コンテンツアイコン群の端にあるいくつかのコンテンツアイコン101をジャンプさせる(換言すれば、画面の垂直方向に沿って移動させて元に戻す。)という演出を行うことで、コンテンツアイコン群の端までスクロールしたこと(つまり、コンテンツアイコン群の終端であること)を直感的にユーザに知らせている。例えば、コンテンツアイコン群の一番右端に位置するコンテンツアイコン101pが画面中央に来たときに、図7に示すように、コンテンツアイコン101n〜101pの3つのコンテンツアイコンを垂直方向にジャンプさせるような演出が行われる。このとき、ジャンプする高さは3つのコンテンツアイコンでそれぞれ異なっており、コンテンツアイコン群のスクロール方向とは逆の方向の端に近い方のコンテンツアイコンほど、より高くジャンプするような演出が行われる(図7の例では、コンテンツアイコン101p)が一番高くジャンプする)。また、ジャンプした後は、図8に示すように、元の位置に戻る。また、コンテンツアイコン群の端まで到達したときの慣性スクロール速度によってもジャンプする高さは異なり、慣性スクロールの速度が速いときほどより高くジャンプするような演出が行われる。
【0086】
また、当該ジャンプ演出についていうと、一度ジャンプして着地して終わるのではなく、コンテンツアイコン101が数回バウンドするような様子も表示される(図示は省略)。以下では、このようなバウンドする様子が表示されることも含めてジャンプ演出と呼ぶ。
【0087】
このように、本実施形態では、慣性スクロールによってコンテンツアイコン群の端が画面内に表示されたとき(本実施形態では、画面中央に到達したとき)、当該端にかかるコンテンツアイコン101のいくつかをジャンプさせるような演出を行うことで、コンテンツアイコン群の端までスクロールしたことをユーザに直感的に把握させるようにしている。すなわち、コンテンツアイコン群の端までスクロールしたときに、スクロール方向(本実施形態では画面の水平方向)とは異なる方向(本実施形態では画面の垂直方向または略垂直な方向)にコンテンツアイコンを移動させることで、端までスクロールしたことをユーザに直感的に認識させている。
【0088】
以下、図9〜図17を用いて、本実施形態において利用される各種データ及びプログラムの詳細を説明する。
【0089】
図9は、図2に示したメインメモリ32のメモリマップを示す図解図である。図9において、メインメモリ32は、プログラム記憶領域321およびデータ記憶領域323を含む。プログラム記憶領域321およびデータ記憶領域323のデータは、プリセットデータ用メモリ35に予め記憶されたものが、メインメモリ32にコピーされたものである。
【0090】
プログラム記憶領域321は、CPU31によって実行されるホームメニュー処理プログラム322等を記憶する。
【0091】
データ記憶領域323には、操作データ324、コンテンツアイコンデータ325、前回入力座標データ326、前々回入力座標データ327、慣性スクロール用データ328、慣性スクロールフラグ329、ジャンプ演出フラグ330などのデータが記憶される。
【0092】
操作データ324は、各操作ボタン14a〜14kに対する入力状態、および、タッチパネル13に対する入力状態を示すデータである。また、タッチパネル13に対する入力があるときは、その入力座標を示すデータも含まれる。
【0093】
コンテンツアイコンデータ325は、上記ホーム画面に表示される各コンテンツアイコン101に関するデータである。図10は、コンテンツアイコンデータ325のデータ構造の一例を示した図である。コンテンツアイコンデータ325は、アイコンID3251、画像データ3252、実データリンク情報3253、ジャンプ対象フラグ3254、ジャンプ演出パラメタ3255から構成される。アイコンID3251は、各コンテンツアイコン101を一意に識別するためのIDである。画像データ3252は、ホーム画面に表示される各コンテンツアイコンの画像のデータである。実データリンク情報3253は、各コンテンツアイコン101に対応するアプリケーションの実体となるファイルの格納場所を示す情報である。
【0094】
ジャンプ対象フラグ3254は、当該コンテンツアイコンがジャンプ演出の対象となるか否か(つまり、ジャンプさせるか否か)を示すフラグであり、オンに設定されているときは、当該コンテンツアイコンはジャンプ演出の対象となることを示す。
【0095】
ジャンプ演出パラメタ3255は、ジャンプ演出が行われるときに用いられるデータであり、当該コンテンツアイコンについてのジャンプの初速やジャンプの最高到達点等を示すデータである。
【0096】
図9に戻り、前回入力座標データ326は、直前のフレームにかかる処理におけるタッチパネルへの入力座標を示すデータである。直前のフレームにかかる処理においてタッチパネル13への入力が無かったときは、当該データは空となり、タッチパネル13への入力が有ったときは、その入力座標が格納される。そのため、当該データを参照することで、ドラッグ操作等におけるタッチ位置(入力座標)の変化、ひいては、タッチペン27の移動量(スクロール速度算出の基となる)等を算出することができる。
【0097】
前々回入力座標データ327は、上記前回入力座標データの1つ前に取得された入力座標を示すデータである。つまり、現在のフレームから2つ前のフレームにかかる処理で検出された入力座標である。
【0098】
慣性スクロール用データ328は、上述したような慣性スクロールの制御を行うためのデータであり、慣性スクロール中における1フレームあたりのスクロール量や、トータルの慣性スクロール量、スクロール速度の減衰率等が含まれている。
【0099】
慣性スクロールフラグ329は、慣性スクロール中であるか否かを示すためのフラグである。当該フラグがオンに設定されているときは、慣性スクロール中であることを示す。
【0100】
ジャンプ演出フラグ330は、コンテンツアイコン101をジャンプさせる演出にかかる処理(ジャンプ演出)の実行中であるか否かを示すためのフラグである。本フラグがオンに設定されているときは、ジャンプ演出にかかる処理が実行されている最中であることを示す。
【0101】
次に、ゲーム装置1において実行されるホームメニュー処理の流れを図11〜図17を用いて説明する。図11〜図13は、ゲーム装置1において実行されるホームメニュー処理の流れを示すフローチャートである。ゲーム装置1の電源が投入されると、ゲーム装置1のCPU31は、図示しないブートROMに記憶されている起動プログラムを実行し、メインメモリ32等の各ユニットが初期化される。そして、プリセットデータ用メモリ35に格納されたホームメニュープログラムがメインメモリ32に読み込まれ、当該メニュープログラムの実行が開始される。
【0102】
まず、ステップS1において、以降の処理において用いられるデータの初期化処理が実行される。具体的には、まず、ゲーム装置内にインストールされているアプリケーションがスキャンされ、これに対応するコンテンツアイコン101がそれぞれ生成され、更に、これらを包含するようなコンテンツアイコン群オブジェクトが生成される。そして、当該コンテンツアイコン群オブジェクトが仮想空間に配置される(図14参照)。なお、このようなコンテンツアイコン群オブジェクトを生成するのは、当該オブジェクトの移動量に基づいて後述する慣性スクロール中のスクロール速度を算出するためである。そして、当該コンテンツアイコン群のうちの一部のコンテンツアイコンが表示されるような位置に仮想カメラが配置され、この仮想カメラで撮影された領域(以下、表示領域)が画面に表示される。本実施形態では、上述したようなスクロール操作が行われれば、その操作内容に応じて当該仮想カメラ(つまり、表示領域)をコンテンツアイコン群オブジェクトの上でスライド移動させることで、コンテンツアイコン群オブジェクトのスクロールを実現している。以下、この仮想カメラで撮影される範囲を表示領域と呼ぶ。この場合、仮想カメラの移動量や移動速度に基づいてスクロール量やスクロール速度が算出されることになる。なお、仮想カメラは固定して、上述したようなスクロール操作が行われた場合に、その操作内容に応じてコンテンツアイコン群オブジェクトが仮想空間内を移動するようにしてもよい。この場合は、コンテンツアイコン群オブジェクトの移動量や移動速度を基にスクロール速度等が算出されることになる。すなわち、上述したようなスクロール操作が行われた場合、コンテンツアイコン群は表示領域に相対して移動することになる。
【0103】
なお、上記のコンテンツアイコンの表示手法やスクロール処理の手法はあくまで一例であり、これらに限らず、コンテンツアイコンの表示とスクロールができれば、どのような処理方法を用いても良い。
【0104】
以降、ステップS2〜S27の処理ループが1フレーム毎に繰り返されることによって、メニュー処理が進行していく。
【0105】
次に、ステップS2において、操作データ324が取得される。次に、ステップS3において、上記取得した操作データ324が参照され、タッチパネル13に対するタッチ入力が行われているか否かが判定される。その結果、タッチ入力が行われていると判定されたときは(ステップS3でYES)、その入力座標値が取得され、次のステップS4において、継続的なタッチ入力が行われているか否かが判定される。これは、前回入力座標データ326に何らかのデータが設定されているか否かで判定される。当該判定の結果、継続的なタッチ入力が行われていないと判定されたときは(ステップS4でNO)、いわゆるタッチオンに該当する操作が行われたことになる。この場合は、まず、ステップS5において、慣性スクロール中か否かが判定される。つまり、上述したようなフリック操作による慣性スクロールがまだ継続している状態であるか否かが判定される。その結果、慣性スクロール中であると判定されたときは(ステップS5でYES)、ステップS6において、慣性スクロールをキャンセルする処理、つまり、スクロールを停止する処理が実行される。このとき、慣性スクロールフラグ329がオフに設定される。一方、慣性スクロール中ではないと判定されたときは(ステップS5でNO)、ステップS6の処理はスキップされる。
【0106】
次に、ステップS7において、タッチオン時処理が実行される。この処理では、上記入力座標に応じて適宜所定の処理が実行される。例えば、コンテンツアイコン101がタッチオンされたときは、当該コンテンツアイコン101に対応するアプリケーションの説明を表示するための処理等が実行される。その後、後述のステップS9に処理が進められる。
【0107】
一方、上記ステップS4の判定の結果、継続的タッチ入力が行われていると判定されたときは(ステップS4でYES)、同じ位置をタッチし続けている状態であるか、または、ドラッグ操作(スクロール操作)が行われている可能性がある。この場合は、次に、ステップS8において、その操作内容に基づく各種処理が適宜実行される。例えば、操作内容が水平方向へのドラッグ操作であれば、入力座標の変化量および変化方向に応じてコンテンツアイコン群を水平方向にスクロールさせる(より正確には、当該変化量と変化方向に応じて上記表示領域を移動させることで、コンテンツアイコン群のスクロールを実現する)。
【0108】
次に、ステップS9において、前回入力座標データ326の設定が行われる。具体的には、まず、前回入力座標データ326の内容が、前々回入力座標データ327としてメインメモリ32に格納される。更に、上記ステップS2で取得された操作データに含まれるタッチ位置の入力座標が前回入力座標データ326としてメインメモリ32に記憶される。続いて、ステップS10において、表示処理が行われる。すなわち、上記処理内容を反映した画像を生成し、下側LCD12に表示する処理が実行される。その後、上記ステップS2に戻り、処理が繰り返される。
【0109】
次に、上記ステップS3の判定の結果、タッチ入力がなされていないと判定されたときの処理(ステップS3でNO)について説明する。この場合は、まず、図12のステップS11において、現在の操作状態がタッチオフに該当するか否かが判定される。具体的には、前回入力座標データ326が参照され、何らかのデータが記憶されている場合はタッチオフと判定され、前回入力座標データ326が空の場合は、タッチオフではない(つまり、タッチしていない状態が継続している)と判定される。当該判定の結果、タッチオフに該当すると判定されたときは(ステップS11でYES)、次に、ステップS12で、上述したようなフリック操作による慣性のついたタッチオフであるか否かが判定される。これは、前回入力座標データ326と前々回入力座標データ327とで示される入力座標の変化量が所定値以上であるか否かで判定される。当該変化量がある程度大きければ、上述したようなフリック操作が行われ、慣性のついたタッチオフが発生したものとして扱う。
【0110】
ステップS12の判定の結果、慣性のついたタッチオフが行われたと判定されたときは(ステップS12でYES)、次に、ステップS15において、慣性タッチオフ処理が実行される。この処理は、上述したような慣性スクロールを行うための処理である。
【0111】
図15は、上記ステップS22で示した慣性タッチオフ処理の詳細を示すフローチャートである。図15において、まず、ステップS41において、慣性スクロールを行うための各種パラメータが算出される。例えば、上記前回入力座標データ326と前々回入力座標データ327とで示される入力座標の変化量に応じて、スクロールの量や速度、時間等が算出される。そして、ステップS42において、当該算出されたパラメータが慣性スクロール用データ328としてメインメモリ32に記憶される。
次に、ステップS43において、慣性スクロールフラグ329がオンに設定される。続く、ステップS44において、上記慣性スクロール用データ328に基づいて慣性スクロールが開始される。その結果、フリック操作によるタッチオフが行われた際、上記慣性スクロールが表示されることになる。以上で、慣性タッチオフ処理は終了する。
【0112】
図12に戻り、ステップS15の処理が終われば、後述するステップS14に処理が進められる。
【0113】
一方、上記ステップS12の判定の結果、慣性のついたタッチオフが行われていない(つまり、フリック操作によらない通常のタッチオフが行われた)と判定されたときは(ステップS12でNO)、次に、ステップS13において、タッチオフ時にかかる各種処理が実行される。例えば、コンテンツアイコン101がタッチされていた状態からタッチオフされたときは(つまり、コンテンツアイコン101にタップ操作が行われたとき)、当該タッチされていたコンテンツアイコン101に対応するアプリケーションを起動する処理等が実行される。なお、何らかのアプリケーションが起動された場合は、本ホームメニュー処理は一旦停止し、アプリケーションが終了すれば再開される。
【0114】
次に、ステップS14において、タッチオフ操作に伴って、前回入力座標データ326および、前々回入力座標データ327がクリアされる。その後、上記ステップS10に処理が進められる。
【0115】
次に、上記ステップS11の判定の結果、タッチオフに該当しないと判定されたときの処理(ステップS11でNO)について説明する。この場合は、ユーザがタッチパネルに触れていない状態が継続していると考えられる。この場合は、まず、図13のステップS16において、慣性スクロールフラグ329が参照され、慣性スクロール中であるか否かが判定される。その結果、慣性スクロール中ではないと判定されたときは(ステップS16でNO)、後述のステップS23に処理が進められる。
【0116】
一方、慣性スクロール中と判定されたときは(ステップS16でYES)、次に、ステップS17において、上記慣性スクロール用データ328に基づく慣性スクロールの処理が継続される。
【0117】
次に、ステップS18で、慣性スクロールを継続した結果、コンテンツアイコン群の端まで到達したか否かが判定される。例えば、コンテンツアイコン群の右端あるいは左端のコンテンツアイコンの中点が画面中央に来たか)が判定される。当該判定の結果、まだ端まで到達していないときは(ステップS18でNO)、後述するステップS20に処理が進められる。
【0118】
一方、端まで到達したときは(ステップS18でYES)、ステップS19において、ジャンプ演出設定処理が実行される。図16は、上記ステップS19で示したジャンプ演出設定処理の詳細を示すフローチャートである。図16において、まず、ステップS61で、ジャンプ対象フラグ3254がオンに設定される。次に、ステップS62で、この時点におけるスクロール速度の算出が行われる。これは、表示領域におけるX座標軸上の中央座標位置(表示領域の座標系における位置)に対応するコンテンツアイコン群オブジェクトのX座標軸上の位置(コンテンツアイコン群オブジェクトのローカル座標系での位置)を判別し、この位置の前回のフレームと今回のフレームとの間での変化量に基づいてスクロール速度が算出される。つまり、前回のフレームから今回のフレームまでの仮想カメラの移動量(あるいはコンテンツアイコン群オブジェクトの移動量)に基づいてスクロール速度が算出される。例えば、表示領域の中央部分について、前回のフレームにおいては左から3番目のコンテンツアイコン101が位置しており(表示されており)、今回のフレームにおいては左から4番目のコンテンツアイコンが位置している場合と、前回のフレームでは左から3番目のコンテンツアイコン101が位置しており、今回のフレームでは左から6番目のコンテンツアイコン101が位置している場合とでは、後者のほうがスクロール速度が速いことになる。
【0119】
なお、スクロール速度の算出については、上記のような方法に限らず、過去数フレーム分における仮想カメラ(またはコンテンツアイコン群オブジェクト)の移動量に基づいて算出するようにしてもよい。その他、スクロール速度が算出できればどのような方法を用いても良い。
【0120】
次に、ステップS63において、上述したようなジャンプ演出を行う対象とするコンテンツアイコン101が選定される(以下、ジャンプ対象アイコンと呼ぶ)。本実施形態では、端から3つめまでのコンテンツアイコン101をジャンプ対象として選定するものとする。
【0121】
次に、ステップS64において、選定されたジャンプ対象アイコンのジャンプ対象フラグ3254にオンが設定される。
【0122】
次に、ステップS65において、ジャンプ対象アイコン(ジャンプ対象フラグ3254がオンに設定されているコンテンツアイコン)の全てについて、以下に述べるようなジャンプ演出の設定処理が実行されたか否かが判定される。その結果、まだ未処理のジャンプ対象アイコンが残っているときは(ステップS65でNO)、ステップS66において、未処理のジャンプ対象アイコンのうちの1つが選択される。次に、ステップS67において、選択されたジャンプ対象アイコンのコンテンツアイコン群の端からの順番に基づき、ジャンプの最高到達点(ジャンプの高さ)が決定される。本実施形態では、上述のように、コンテンツアイコン群の端に近いものほどより高くジャンプさせるように設定される。
【0123】
次に、ステップS68において、上記ジャンプの最高到達点および上記算出されたスクロール速度に基づいて、当該ジャンプ対象アイコンのジャンプの初速が決定される。更に、ステップS69において、上記ジャンプの最高到達点およびジャンプ初速がジャンプ演出パラメタ3255として記憶される。また、このようなパラメタの他、ジャンプ量等のジャンプする様を表示するために必要なパラメタも適宜決定されて記憶される。その後、上記ステップS65に処理が戻される。
【0124】
一方、上記ステップS65の判定の結果、ジャンプ対象アイコンの全てについて上記のような設定処理が終わったと判定されたときは(ステップS65でYES)、当該ジャンプ演出設定処理は終了する。
【0125】
図13に戻り、ステップS19にかかるジャンプ演出設定処理が終われば、次に、ステップS20において、慣性スクロールの終了条件が満たされたか否かが判定される。例えば、上記慣性スクロール用データ328で示される慣性スクロール量に達したか否かで、慣性スクロールを終了するべきか否かが判定される。また、上記ステップS18で端まで到達したと判定されたときも、本判定において終了条件を満たしたと判定される。当該ステップS20の判定の結果、慣性スクロールの終了条件を満たしていないと判定されたときは(ステップS20でNO)、後述のステップS22に処理が進められる。一方、慣性スクロールの終了条件を満たしたと判定されたときは(ステップS20でYES)、ステップS21において、慣性スクロールフラグ329がオフに設定される。
【0126】
次に、ステップS22において、上記慣性スクロール以外にかかる各種処理が適宜実行される。これらの処理は本実施形態と直接関連しないため、説明は省略する。その後、上記ステップS10に処理が進められる。
【0127】
次に、上記ステップS16の判定の結果、慣性スクロール中でもないと判定されたときの処理(ステップS16でNO)について説明する。このときは、ステップS23において、ジャンプ演出フラグ330が参照されることで、ジャンプ演出中であるか否かが判定される。つまり、上記のような慣性スクロールの結果、コンテンツアイコン群の端に到達したような場合に、慣性スクロール自体は終わっているが、まだジャンプ演出にかかる処理が継続しているか否かが判定される(慣性スクロールの停止後も、数フレーム〜数十フレームかけて、コンテンツアイコン101がジャンプし、更に数回バウンドする様子が表示されるため)。当該判定の結果、ジャンプ演出中ではないと判定されたときは(ステップS23でNO)、上記ステップS10に戻り、処理が繰り返される。一方、ジャンプ演出中であると判定されたときは(ステップS23でYES)、ステップS24において、ジャンプ演出処理が実行される。
【0128】
図17は、上記ステップS24で示したジャンプ演出処理の詳細を示すフローチャートである。図17において、まず、ステップS81で、ジャンプ対象アイコンの全てについて、以下に述べるようなジャンプ演出処理が実行されたか否かが判定される。当該判定の結果、ジャンプ対象アイコンが残っているときは(ステップS81でNO)、ステップS82において、未処理のジャンプ対象アイコンのうちからいずれか1つが選択される。
【0129】
次に、ステップS83において、ジャンプ演出パラメタ3255に基づいて、当該ジャンプ対象アイコンをジャンプさせる処理(ジャンプにかかる一連の移動処理のうち、今回フレームにおける移動を行う処理。このジャンプには、上述したようなバウンドする動きも含む)が実行される。つまり、スクロール方向とは異なる方向(本実施形態では、スクロール方向と垂直になる方向)に当該ジャンプ対象アイコンを移動させる処理が実行される。なお、以下の説明では、このようなジャンプ演出にかかるコンテンツアイコンの一連の移動のことを「ジャンプ移動」と呼ぶ。
【0130】
次に、ステップS84で、次のフレームにおける処理ループにて用いられるように、ジャンプ演出パラメタ3255を算出して適宜更新する処理が実行される。例えば、今回のフレームにおいてジャンプの最高点に到達した場合は、次のフレームでは、ジャンプ対象アイコンが下降する様を表示する必要がある。そのため、マイナス方向の速度が算出されて、ジャンプ演出パラメタ3255に記憶される。また、上述したバウンドするような様子を表示するために、ジャンプ対象アイコンが着地したとき、上記マイナスの速度(下降速度)を上記ジャンプ初速に乗算することで、新たなジャンプ初速が再計算される。
【0131】
次に、ステップS85において、当該ジャンプ対象アイコンのジャンプ移動が終了したか否かが判定される。これは、例えば、上記ジャンプ初速が所定値以下になったか否かや、あるいは、ジャンプ初速が0になったか否か等で判定される。当該判定の結果、当該ジャンプ対象アイコンのジャンプ移動がまだ終わっていないときは(ステップS85でNO)、当該ジャンプ対象アイコンについては処理済みとして、上記ステップS81に戻り、未処理のジャンプ対象アイコンについて上記のような処理が繰り返される。一方、ジャンプ移動が終了したと判定されたときは(ステップS85でYES)、ステップS86において、当該ジャンプ対象アイコンのジャンプ対象フラグ3254がオフに設定される。そして、上記ステップS81に戻り、処理が繰り返される。
【0132】
一方、上記ステップS81の判定の結果、ジャンプ対象アイコンの全てについて上記のようなジャンプ演出にかかる処理が終了したと判定されたときは(ステップS81でYES)、当該ジャンプ演出処理は終了する。
【0133】
図13に戻り、ステップS24のジャンプ演出処理が終われば、次に、ステップS25において、ジャンプ演出の終了条件が満たされたか否かが判定される。これは、ジャンプ対象フラグ3254がオンに設定されているコンテンツアイコンが存在するか否か等で判定される。当該判定の結果、ジャンプ演出の終了条件が満たされていないと判定されたときは(ステップS25でNO)、上記ステップS10に戻る。一方、ジャンプ演出の終了条件が満たされたと判定されたときは(ステップS25でYES)、ステップS26において、ジャンプ演出フラグ330がオフに設定される。そして、上記ステップS10の処理に戻る。
【0134】
以上で、第1の実施形態にかかるホームメニュー処理の説明を終了する。
【0135】
このように、第1の実施形態では、慣性スクロールの結果、コンテンツアイコン群の端が表示領域内の所定の位置に来たときは、コンテンツアイコン101をスクロール方向とは異なる方向に移動させている。これにより、コンテンツが表示される領域を狭めることなく、コンテンツアイコン群の端までスクロールしたことをユーザに直感的に把握させることができる。また、ジャンプする高さに関しても、スクロールの速度が速いほど、より高くジャンプさせている。更に、コンテンツオブジェクト群の端側に近いコンテンツアイコンほど、より高くジャンプさせている。これにより、端までスクロールしたことをより直感的にユーザに認識させることができる。
【0136】
(第2の実施形態)
次に、本発明の第2の実施形態にかかるゲーム装置の処理について説明する。このゲーム装置のハードウェア構成を示すブロック図は、第1の実施形態と同様である(図1および図2参照)。しかし、本実施形態では、メインメモリ32には第1の実施形態とは部分的に異なるプログラムが格納され、CPU31はそのプログラムを実行することにより、第1の実施形態と同様の機能を実現する。
【0137】
次に、第2の実施形態にかかるホームメニュー処理の概要について説明する。第1の実施形態では、慣性スクロールの結果、コンテンツアイコン群の端が表示領域内の所定の位置に来たか否かを判定し、その結果に応じてコンテンツアイコンを適宜ジャンプさせる演出処理を行うようにしていた。第2の実施形態にかかる処理では、このような「コンテンツアイコン群の端が表示領域内の所定の位置に来たか否か」という判定は行わずに、第1の実施形態と同様の機能を実現する。すなわち、第2の実施形態においては、各コンテンツアイコンが表示領域の中央に位置する度に、ジャンプ演出に関する処理が行われる。但し、ジャンプする高さについては、各コンテンツアイコンが上記コンテンツアイコン群の端からどの程度の距離にあるのか等によって、ジャンプする高さが設定される。本実施形態では、コンテンツアイコン群の端に位置するものほど高くジャンプするように設定される。その結果、コンテンツアイコン群の中ほどに位置するコンテンツアイコン等は、表示領域の中央を通過してジャンプ演出に関する処理が行われても、ジャンプする高さが0と設定され、実質的にはジャンプしないことになる。一方、コンテンツアイコン群の端に位置するコンテンツアイコンが表示領域内の中央に来た場合は(すなわち、端までスクロールされたことになる)、ジャンプする高さとしてある程度の高さが設定され、当該端に位置するアイコンがジャンプするようなジャンプ演出が行われることになる。
【0138】
次に、第2の実施形態において利用される各種データについて説明する。基本的には、上記第1の実施形態におけるデータと同様のデータが用いられるが、コンテンツアイコンデータ325の構造が上記第1の実施形態とは若干異なる。
【0139】
図18は、第2の実施形態におけるコンテンツアイコンデータのデータ構造を示す図解図である。図18に示す各種データは、第1の実施形態で上記図10を用いて上述したコンテンツアイコンデータ325において、ジャンプ演出パラメタ3255の代わりに前回ジャンプパラメタ3256が含まれている。前回ジャンプパラメタ3256は、直前にフレームにおけるジャンプ演出で用いられたジャンプ演出用のパラメタが記憶されたものである。
【0140】
次に、第2の実施形態におけるホームメニュー処理の流れを図19〜図20を用いて説明する。なお、このフローチャートのうちステップS1〜S15、S20〜S22の処理は、図11〜図13に示したフローチャートと同一であり、両フローチャートにおいて同一のステップには同一の符号が付されている。第1の実施形態と異なる点は、ステップS2の後にステップS101の処理が行われる点と、ステップS11の判定で否定と判定された場合の処理の流れが異なる点である。以下では、第1の実施形態と異なる点を中心に説明する。
【0141】
図19において、ステップS2で操作データが取得されると、次に、ステップS101において、ジャンプ量パラメタ算出処理が実行される。この処理は、上記コンテンツアイコンのジャンプ量を決めるためのパラメタをスクロール量(スクロール速度)に基づいて算出するための処理である。換言すれば、コンテンツアイコン101が表示領域の中央を通ったときのスクロール速度に応じて、当該コンテンツアイコンのジャンプの高さを決める処理である。
【0142】
図21は、上記ステップS101で示したジャンプ量パラメタ算出処理の詳細を示すフローチャートである。まず、ステップS121において、直前のフレームから今回のフレームまでのスクロール量を示す変数”sabun”が算出される。これは、例えば、以下の式を用いて算出される。
sabun=(now.x)−(before.x) ・・・式1
ここで、変数(now.x)は、例えば表示領域の中心点を基準位置とした場合に、今回のフレームにおいて当該基準位置に表示されていたコンテンツアイコン群オブジェクトのX座標軸上の位置を示す。また、変数(before.x)は、直前のフレームにおいて上記基準位置に表示されていたコンテンツアイコン群オブジェクトのX座標軸上の位置を示す。この基準位置におけるコンテンツアイコン群オブジェクトの移動量が変数sabun、すなわち、スクロール量として算出される(図22参照)。
【0143】
次に、ステップS122において、以下の式を用いてジャンプ量パラメタtmpVが算出される。
tmpV=(係数a×tmpV)+(係数b×sabun) ・・・式2
ここで、係数aおよび係数bは、それぞれの変数に重み付けをするための係数である。ここでは、係数aは0.9、係数bは0.1であるとする。なお、ジャンプ量パラメタtmpVについては、上記ステップS1の初期処理において0が設定されているものとする。この式によれば、現時点までのスクロール量(フレーム毎の速度の蓄積)が大きいほど、より大きな値がジャンプ量パラメタtmpVとして算出されることになる。さらに、スクロール量の変化が大きい、すなわち、スクロール速度が速いときほど、より大きな値がジャンプ量パラメタtmpVとして算出されることになる。このような算出をフレーム毎に行うことで、ユーザの操作に敏感に反応し過ぎて、ごく僅かの操作によってコンテンツアイコン101がジャンプすることを防ぐことが可能となる。
【0144】
次に、ステップS123において、以下の式により、ジャンプ量パラメタtmpVの減衰が行われる。
tmpV=tmpV×0.9 ・・・式3
当該処理は毎フレーム繰り返して実行されることになるため、ユーザの操作が行われていない期間が続けば、当該tmpVは最終的に0となる。
【0145】
以上で、ジャンプ量パラメタ算出処理は終了する。
【0146】
図19に戻り、ステップS101の処理が終われば、ステップS3に処理が進められる。ステップS3〜ステップS15の処理については、上記第1の実施形態と同様の処理が行われるため、説明は省略する。
【0147】
次に、図20のステップS11の判定の結果、タッチオフに該当しないと判定されたときの処理について説明する。このときは、まず、ステップS102において、慣性スクロール中であるか否かが判定される。その結果、慣性スクロール中ではないと判定されたときは(ステップS102でNO)、ステップS22に処理が進められる。
【0148】
一方、慣性スクロール中であると判定されたときは(ステップS102でYES)、ステップS103において、慣性スクロール処理が実行される。図23は、上記ステップS103で示した慣性スクロール処理の詳細を示すフローチャートである。まず、ステップS131において、慣性スクロール用データ328(上記ステップS15の処理にて算出される)に基づいて、スクロール方向(ここではX軸に沿った方向)に沿ってコンテンツアイコン群オブジェクトを移動させる処理が行われる(つまり、慣性スクロールが行われる)。
【0149】
次に、ステップS132において、ジャンプ判定処理が実行される。この処理は、上記ステップS131の処理の結果、表示領域の中央に来たコンテンツアイコン101があるか否かを判定し、あった場合は、ジャンプ演出のための準備設定を行う処理が実行される。図24は、上記ステップS132で示したジャンプ判定処理の詳細を示すフローチャートである。まず、ステップS151において、表示領域のX軸上の中央点に、その中点が到達したコンテンツアイコン101があるか否かが判定される。その結果、中央にきたコンテンツアイコンがなければ(ステップS151でNO)、当該ジャンプ判定処理は終了する。
【0150】
一方、中央にきたコンテンツアイコンがあるときは(ステップS151でYES)、ステップS152において、当該コンテンツアイコンの(中点の)コンテンツアイコン群の端からのX座標軸上における距離が算出され、この距離に応じた係数cが算出される。当該係数cは、コンテンツアイコン群の端に近いほど高い値が設定される。例えば、上記表示領域の中央に来たコンテンツアイコンがコンテンツアイコン群の両端に位置するいずれかのコンテンツアイコンであれば、端から近いために係数cとしては”1.0”が設定される。端から2番目のコンテンツアイコンであれば、”0.8”、端から3番目のコンテンツアイコンであれば、”0.6”のように計数cが設定される。また、コンテンツアイコン群の中央に位置するコンテンツアイコンである場合は、端から遠いために、”0”が係数cとして設定される。このような設定の結果、コンテンツアイコン群の端側に位置するいくつかのコンテンツアイコンだけがジャンプするということになる。
【0151】
次に、ステップS153において、以下の式でジャンプ初速が算出される。
ジャンプ初速=tmpV×係数c ・・・式4
つまり、上記表示領域の中央に来たコンテンツアイコンの、コンテンツアイコン群の端からの距離に応じて、ジャンプ初速の値(ひいては、ジャンプさせる高さ)を変化させている。
【0152】
次に、ステップS155において、当該コンテンツアイコン101のジャンプ対象フラグ3254がオンに設定される。つまり、第2の実施形態では、表示領域中央に来たコンテンツアイコンについては、一律にジャンプ対象アイコンして設定されることになる。但し、上記ステップS152およびS153の処理によって、コンテンツアイコン群の端から遠い位置にあるコンテンツアイコンの場合は、ジャンプ初速は”0”、あるいは”0”に近い値となり、実質的にはジャンプしないという結果になる。
【0153】
次に、ステップS156において、上記算出されたジャンプ初速が現在処理対象となっているコンテンツアイコンの前回ジャンプパラメタ3256として記憶される。以上で、ジャンプ判定処理は終了する。
【0154】
なお、上記ステップS155およびS156の処理については、例えば、ステップS153で算出されたジャンプ初速が”0”、あるいは”0”に近い所定値以下である場合(つまり、実質的にジャンプしない場合)は実行されないようにしてもよい。
【0155】
図23に戻り、ステップS132の処理の次に、ステップS133において、ジャンプ移動処理が実行される。この処理は、ジャンプ演出を表現するため、スクロール方向とは異なる方向(本実施形態ではスクロール方向と垂直な方向)にジャンプ対象アイコンをジャンプ移動させるための処理である。なお、このジャンプ移動には、第1の実施形態と同様に、バウンドするような動作も含まれるものとする。
【0156】
図25は、上記ステップS133で示したジャンプ移動処理の詳細を示すフローチャートである。図25において、まず、ステップS171でジャンプ対象アイコン(ジャンプ対象フラグ3254がオンに設定されているコンテンツアイコン)の全てについて、以下に説明するような処理が行われたか否かが判定される。その結果、未処理のジャンプ対象アイコンが残っているときは(ステップS171でNO)、ステップS172において、未処理のジャンプ対象アイコンのうちからいずれか一つが選択される。
【0157】
次に、ステップS173において、前回ジャンプパラメタ3256に基づいて、今回のフレームにおけるジャンプ対象アイコンのジャンプ移動用の各種パラメタが算出される。
なお、本処理について、初回の処理時は、前回ジャンプパラメタ3256にはジャンプ初速を示す値しか含まれていないため、この値に基づき、コンテンツアイコン101の移動方向(上昇か下降か)や移動量、移動速度等が今回のフレームにおける移動用パラメタとして適宜算出される。2度目以降の処理では、後述のステップS178の処理で、前回のフレームにおけるジャンプ移動パラメタが前回ジャンプパラメタ3256として記憶されているため、これに基づいて今回のフレームにおけるジャンプ移動用のパラメタが算出されることになる。なお、コンテンツアイコン101がバウンドするように移動させるために、上記第1の実施形態と同様に、ジャンプ初速は適宜再計算される。
【0158】
次に、ステップS174において、上記算出された移動用パラメタに基づいてジャンプ対象アイコンの移動が行われる。
【0159】
次に、ステップS175において、ジャンプ移動(ジャンプ開始〜数回バウンドして停止するまでの一連の移動)が終了したか否かが判定される。これは、例えば、コンテンツアイコン101をバウンド移動させるためにジャンプ初速の再計算を繰り返した結果、ジャンプ初速が0になったか否か等で判定される。また、コンテンツアイコン群の端から遠い位置にあるコンテンツアイコンの場合は、最初からジャンプ初速が0として設定されることもあり得るため、この場合は実質的にジャンプ移動が行われないままジャンプ移動が終了したと判定されることになる。当該判定の結果、ジャンプ移動がまだ終了していないときは(ステップS175でNO)、ステップS178で、上記算出された今回のフレームにおけるジャンプ移動用のパラメタが前回ジャンプパラメタ3256として記憶される。その後、上記ステップS171に戻り、処理が繰り返される。一方、一連のジャンプ移動が終了したと判定されたときは(ステップS175でYES)、ステップS176において、現在処理対象のジャンプ対象アイコンのジャンプ対象フラグ3254がオフに設定される。更に、ステップS177において、現在処理対象のジャンプ対象アイコンの前回ジャンプパラメタ3256がクリアされる。その後、上記ステップS171に戻り、処理が繰り返される。
【0160】
一方、上記ステップS171の判定の結果、ジャンプ対象アイコンの全てについて、上記のような処理が行われたと判定されたときは(ステップS171でYES)、当該ジャンプ移動処理は終了する。
【0161】
図23に戻り、ステップS133のジャンプ移動処理が終われば、慣性スクロール処理も終了する。
【0162】
図20に戻り、ステップS103の慣性スクロール処理が終了すれば、次に、ステップS20の処理が実行される。ステップS20〜S22の処理については、上記第1の実施形態と同様であるため、説明は省略する。以上で、第2の実施形態にかかるホームメニュー処理の説明は終了する。
【0163】
このように、第2の実施形態では、表示領域の中央をコンテンツアイコンが通過する度に、ジャンプ演出に関する処理を行っている。また、スクロールの速度やコンテンツアイコン群の端からの距離に応じてジャンプする高さが決定される。つまり、スクロール速度が速いほど、また、コンテンツアイコン群の端に近いほど高くジャンプするように設定される。これにより、第1の実施形態のように、コンテンツアイコン群の端までスクロールしたか否かを個別に判定せずとも、第1の実施形態と同様の機能、すなわち、端までスクロールしたことをユーザに直感的に認識させることが実現できる。
【0164】
なお、上記実施形態では、横スクロールの場合を例として挙げたが、スクロール方向についてはこれに限るものではなく、縦スクロールの場合であっても本発明は適用可能である。また、縦横の双方にスクロール可能な場合にも適用可能である。この場合は、スクロール操作にかかるスクロール方向とは異なる方向に上記のような移動(ジャンプ演出)を行うようにすればよい。例えば、縦横の双方にスクロール可能な場合において、ユーザが縦方向へのスクロール操作を行って、スクロールの端まで到達した場合は、横方向に沿って上記のようなジャンプ移動に相当するような動作を行い、ユーザが横方向へのスクロール操作を行って、スクロールの端まで到達した場合は、縦方向に沿って上記のようなジャンプ移動に相当するような動作を行えばよい。
【0165】
また、スクロール対象に関して、上記実施形態では、ホーム画面における複数のコンテンツアイコン101を例としたが、これに限るものではない。例えば、上記コンテンツアイコン101は、それぞれユーザの選択対象であるという位置づけであったが、必ずしもユーザの選択対象ではなくてもよい。上記コンテンツアイコンに相当するものが、単なる画像である場合等、見た目で内容が確認できるようなコンテンツ(閲覧専用コンテンツ)であってもよい。
【0166】
また、その他、上記のようなコンテンツアイコン101ではなく、例えば、ゲーム処理における所持アイテム一覧が表示される画面のような、複数の項目(項目オブジェクト)をリストとして表示するような場合や、画像ビューワ等における画像のサムネイル画面等についても本発明は適用可能である。この場合は、リストやサムネイル画面の端に位置する項目が上記のようなジャンプ移動を行うような演出となる。
【0167】
また、上記スクロール対象の別の例としては、例えば、電子書籍ビューワにおける電子書籍コンテンツや、電子文書ビューワ等における電子文書等の1つの大きな(1画面内に収まらない)コンテンツであってもよい。また、インターネットブラウザ(HTMLブラウザ)等の各種ブラウザにおける閲覧対象(文書や画像の組み合わせで構成されるHTML文書やWebページ等のコンテンツ)であってもよい。この場合は、当該コンテンツそのものを、上記ジャンプ移動のように、スクロール操作にかかるスクロール方向とは異なる方向に移動させればよい。
【0168】
また、上記ジャンプ演出に関して、表示領域中央に来たコンテンツアイコンの移動履歴に基づいてジャンプする高さを設定するようにしても良い。例えば、表示領域の中央に到達するまでのコンテンツアイコンの移動量を算出し、慣性スクロールの開始時から中央に来たときまでの移動量が多ければ、より高くジャンプするように設定・制御してもよい。
【0169】
また、上述の実施形態では、スクロールの端まで到達したときにコンテンツアイコンをジャンプさせていた、この他、コンテンツアイコンをジャンプさせる代わりに、仮想カメラをZ軸方向に沿ってコンテンツアイコンに近づけるように移動させるようにしてもよい。つまり、スクロールの端まで到達した場合、ユーザからは、コンテンツアイコンが拡大するように見えるような演出を行っても良い。
【0170】
更には、コンテンツアイコンの表示領域以外の領域に、コンテンツアイコン群に対する現在表示中のコンテンツアイコンの位置を示す情報(インジケータ)を表示するようにしても良い。つまり、このようなインジケータと、上記ジャンプ演出とを併存させるようにしてもよい。ユーザは、当該インジケータを見るか、あるいか、コンテンツアイコンのジャンプを見ることのいずれかによって、スクロールの端まで到達したことを知ることができる。これにより、ユーザの利便性をより高めることができる。
【0171】
また、上記第2の実施形態では、ジャンプ判定を行うための所定位置として、表示領域の中央を利用していたが、この所定位置については、いずれかのコンテンツアイコンがジャンプする度に、その位置を変化させるようにしても良い。この場合は、位置が変化する範囲としては、基準となる所定位置の近傍であることが好ましい(上記第2の実施形態の場合を例にすると、表示領域の中央を基準の所定位置として、その近辺で所定位置が変化する)。
【0172】
また、上記第2の実施形態では、コンテンツアイコンが表示領域の中央に到達したときにすぐにジャンプさせるようにしていたが、この他、コンテンツアイコンが表示領域の中央に到達した後、一定のフレームが経過してから当該コンテンツアイコンをジャンプさせるようにしてもよいし、コンテンツアイコンが表示領域の中央より手前の所定位置(スクロール方向とは逆方向に表示領域の中央から所定距離離れた位置)に到達した後、一定のフレームを経過してから当該コンテンツアイコンをジャンプさせるようにしてもよい。
【0173】
また、上記実施形態は、タッチ操作が可能な携帯ゲーム装置のメニュー画面での操作を例として主に説明していた。適用可能な装置については、これに限るものではなく、据置型ゲーム装置やパーソナルコンピュータ、電子書籍リーダ等の各種情報処理端末において、ポインティングデバイスを用いて上述したようなドラッグ操作を行うことでコンテンツをスクロールさせるような場合にも本発明は適用可能である。このポインティングデバイスについては、上記タッチパネルの他、例えば、画面上の任意位置を指示可能なマウス、表示画面を持たない操作面上の任意位置を指示するタブレット、遠隔から表示画面や表示画面周囲に配置されたマーカ等を撮像するための撮像手段を備えたデバイスによって、表示画面方向を指し示すことにより得られる撮像画像における表示画面やマーカの位置から、表示画面上の指し示された位置に相当する表示画面上の座標を算出するポインティングデバイスなどでもよい。
【0174】
また、上記実施形態では、スクロール操作に際して、操作領域に対するプレイヤの指示位置を検出する装置としてタッチパネルを例に上げたが、プレイヤが所定領域内の位置を指示できるいわゆるポインティングデバイスであればよく、例えば、画面上の任意位置を指示可能なマウス、表示画面を持たない操作面上の任意位置を指示するタブレット、遠隔から表示画面や表示画面周囲に配置されたマーカ等を撮像するための撮像手段を備えたデバイスによって、表示画面方向を指し示すことにより得られる撮像画像における表示画面やマーカの位置から、表示画面上の指し示された位置に相当する表示画面上の座標を算出するポインティングデバイスなどを用いて上述したスクロール操作を行う場合にも本発明は適用可能である。また、ポインティングデバイスではなく、例えば十字キー、カーソルキー等のボタン操作によって上述したようなスクロールが行われる場合にも適用可能である。このようなボタン操作、例えば十字キーの左ボタンを押下することによってスクロール操作を行った場合、左ボタンを押下しつづけると、徐々にスクロール速度が上がっていき(途中で押下を止めた場合は、そのときまでのスクロール速度に基づき、上記慣性スクロール相当の処理が行われるようにしてもよい)、コンテンツの端に到達したとき、上述したようなジャンプ演出が行われることになる。
【0175】
また、上記実施形態においては、スクロール操作に応じてジャンプ演出を行うための一連の処理が単一の装置(ゲーム装置1)において実行される場合を説明したが、他の実施形態においては、上記一連の処理が複数の情報処理装置からなる情報処理システムにおいて実行されてもよい。例えば、端末側装置と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの一部の処理がサーバ側装置によって実行されてもよい。さらには、端末側装置と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの主要な処理がサーバ側装置によって実行され、当該端末側装置では一部の処理が実行されてもよい。また、上記情報処理システムにおいて、サーバ側のシステムは、複数の情報処理装置によって構成され、サーバ側で実行するべき処理を複数の情報処理装置が分担して実行してもよい。
【符号の説明】
【0176】
1…ゲーム装置
11…下側ハウジング
12…下側LCD
13…タッチパネル
14…操作ボタン
15、26…LED
16…マイクロフォン用孔
21…上側ハウジング
22…上側LCD
23…内側カメラ
24…音抜き孔
25…外側カメラ
27…タッチペン
28、29…メモリカード
31…CPU
32…メインメモリ
33…メモリ制御回路
34…保存用データメモリ
35…プリセットデータ用メモリ
36…メモリカードI/F
37…無線通信モジュール
38…ローカル通信モジュール
39…RTC
40…電源回路
41…I/F回路
42…マイク
43…アンプ
【特許請求の範囲】
【請求項1】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが前記表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち前記表示領域に表示されている少なくとも1つの選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段として機能させる、表示制御プログラム。
【請求項2】
前記第2移動制御手段は、前記複数の選択オブジェクトのうちの端に位置する選択オブジェクトと、当該選択オブジェクトの近辺に位置する少なくとも1つの他の選択オブジェクトを移動させる、請求項1に記載の表示制御プログラム。
【請求項3】
前記第2移動制御手段は、少なくとも前記表示領域に表示されている選択オブジェクトについて、当該選択オブジェクト毎に移動距離が異なるように移動させる、請求項2に記載の表示制御プログラム。
【請求項4】
前記第2移動制御手段は、少なくとも前記表示領域に表示されている選択オブジェクトについて、当該選択オブジェクトの位置が前記端に近い位置にあるほど大きく移動させる、請求項3に記載の表示制御プログラム。
【請求項5】
前記端に位置する選択オブジェクトが前記表示領域における所定位置に到達するときの前記第1移動制御手段による移動の速度に基づいて、前記第2移動制御手段により前記少なくとも1つの選択オブジェクトが移動する移動距離を決定する移動距離決定手段として前記コンピュータをさらに機能させ、
前記第2移動制御手段は、前記少なくとも1つの選択オブジェクトを、前記移動距離決定手段により決定された移動距離まで移動させる、請求項1ないし4のいずれかに記載の表示制御プログラム。
【請求項6】
前記第2移動制御手段は、前記第1移動制御手段による移動の方向と略垂直な方向に前記少なくとも1つの選択オブジェクトを移動させる、請求項1ないし5のいずれかに記載の表示制御プログラム。
【請求項7】
前記第2移動制御手段により移動された前記少なくとも1つの選択オブジェクトを移動前の位置に戻す復帰手段として前記コンピュータをさらに機能させる、請求項1ないし6のいずれかに記載の表示制御プログラム。
【請求項8】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのそれぞれが前記表示領域における所定位置に到達したときに、当該所定位置に到達した選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段として前記コンピュータを機能させる、表示制御プログラム。
【請求項9】
前記選択オブジェクトが前記表示領域における所定位置に到達するときの前記第1移動制御手段による移動の速度に基づいて、前記第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段として前記コンピュータをさらに機能させ、
前記第2移動制御手段は、前記表示領域における所定位置に到達した選択オブジェクトを、前記移動距離決定手段により決定された移動距離まで移動させる、請求項8に記載の表示制御プログラム。
【請求項10】
前記移動距離決定手段は、前記選択オブジェクトが前記表示領域における所定位置に到達するときの前記第1移動制御手段による移動の速度と過去の前記第1移動制御手段による移動に関するパラメータとに基づいて、前記移動距離を決定する、請求項9に記載の表示制御プログラム。
【請求項11】
前記移動距離決定手段は、過去の前記第1移動制御手段により移動してきた距離が大きくなるにつれて、前記第2移動制御手段により当該選択オブジェクトが移動する移動距離が長くなるように当該移動距離を決定する、請求項10に記載の表示制御プログラム。
【請求項12】
前記選択オブジェクトが前記表示領域における所定位置に到達したとき、前記複数のオブジェクト群の一番端の位置から当該表示領域における所定位置に到達した選択オブジェクトまでの距離に基づいて、前記第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段として前記コンピュータをさらに機能させ、
前記第2移動制御手段は、前記表示領域における所定位置に到達した選択オブジェクトを、前記移動距離決定手段により決定された移動距離まで移動させる、請求項8に記載の表示制御プログラム。
【請求項13】
前記移動距離決定手段は、前記複数のオブジェクト群の一番端の位置から前記表示領域における所定位置に到達した選択オブジェクトまでの距離が短くなるにつれて前記移動距離が長くなるように、当該移動距離を決定する、請求項12に記載の表示制御プログラム。
【請求項14】
前記選択オブジェクトが前記表示領域における所定位置に到達したときの前記第1移動制御手段による移動の速度、および、前記複数のオブジェクト群の一番端の位置から当該表示領域における所定位置に到達した選択オブジェクトまでの距離に基づいて、前記第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段として前記コンピュータをさらに機能させ、
前記第2移動制御手段は、前記表示領域における所定位置に到達した選択オブジェクトを、前記移動距離決定手段により決定された移動距離まで移動させる、請求項8に記載の表示制御プログラム。
【請求項15】
コンテンツを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の前記コンテンツを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記複数のコンテンツが移動された結果、当該複数のコンテンツのうちの端のコンテンツが前記表示領域における所定位置に到達したときに、前記第1移動制御手段により当該複数のコンテンツが移動されてきた方向とは異なる方向へ、前記表示領域に表示されている少なくとも1つのコンテンツを前記表示領域に相対して当該移動対象を移動させる第2移動制御手段として前記コンピュータを機能させる、表示制御プログラム。
【請求項16】
1画面では表示できないような大きさを有する移動対象を表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される前記移動対象を当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記移動対象が移動された結果、当該移動対象の端が前記表示領域における所定位置に到達したときに、前記第1移動制御手段により当該移動対象が移動されてきた方向とは異なる方向へ前記表示領域に相対して当該移動対象を移動させる第2移動制御手段として前記コンピュータを機能させる、表示制御プログラム。
【請求項17】
複数の項目オブジェクトから構成されるリストを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
前記入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される前記リストを当該表示領域に相対して移動させる第1移動制御手段、および
前記第1移動制御手段により移動した前記リストのうち端の項目オブジェクトが前記表示領域における所定位置に到達したときに、前記リストのうち前記表示領域に表示されている少なくとも1つの項目オブジェクトを、前記第1移動制御手段により前記複数の項目のリストが移動してきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段として前記コンピュータを機能させる、表示制御プログラム。
【請求項18】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により移動している前記複数の選択オブジェクトのうち、当該第1移動制御手段による移動の方向とは逆方向の端の選択オブジェクトが前記表示領域における所定位置に到達したときまたはその直前に、少なくとも当該端の選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段として機能させる、表示制御プログラム。
【請求項19】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置であって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが前記表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち前記表示領域に表示されている少なくとも1つの選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段とを備える、表示制御装置。
【請求項20】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御システムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが前記表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち前記表示領域に表示されている少なくとも1つの選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段とを備える、表示制御システム。
【請求項21】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御方法であって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御ステップ、および、
前記第1移動制御ステップにおいて前記複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが前記表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち前記表示領域に表示されている少なくとも1つの選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御ステップとを備える、表示制御方法。
【請求項1】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが前記表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち前記表示領域に表示されている少なくとも1つの選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段として機能させる、表示制御プログラム。
【請求項2】
前記第2移動制御手段は、前記複数の選択オブジェクトのうちの端に位置する選択オブジェクトと、当該選択オブジェクトの近辺に位置する少なくとも1つの他の選択オブジェクトを移動させる、請求項1に記載の表示制御プログラム。
【請求項3】
前記第2移動制御手段は、少なくとも前記表示領域に表示されている選択オブジェクトについて、当該選択オブジェクト毎に移動距離が異なるように移動させる、請求項2に記載の表示制御プログラム。
【請求項4】
前記第2移動制御手段は、少なくとも前記表示領域に表示されている選択オブジェクトについて、当該選択オブジェクトの位置が前記端に近い位置にあるほど大きく移動させる、請求項3に記載の表示制御プログラム。
【請求項5】
前記端に位置する選択オブジェクトが前記表示領域における所定位置に到達するときの前記第1移動制御手段による移動の速度に基づいて、前記第2移動制御手段により前記少なくとも1つの選択オブジェクトが移動する移動距離を決定する移動距離決定手段として前記コンピュータをさらに機能させ、
前記第2移動制御手段は、前記少なくとも1つの選択オブジェクトを、前記移動距離決定手段により決定された移動距離まで移動させる、請求項1ないし4のいずれかに記載の表示制御プログラム。
【請求項6】
前記第2移動制御手段は、前記第1移動制御手段による移動の方向と略垂直な方向に前記少なくとも1つの選択オブジェクトを移動させる、請求項1ないし5のいずれかに記載の表示制御プログラム。
【請求項7】
前記第2移動制御手段により移動された前記少なくとも1つの選択オブジェクトを移動前の位置に戻す復帰手段として前記コンピュータをさらに機能させる、請求項1ないし6のいずれかに記載の表示制御プログラム。
【請求項8】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのそれぞれが前記表示領域における所定位置に到達したときに、当該所定位置に到達した選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段として前記コンピュータを機能させる、表示制御プログラム。
【請求項9】
前記選択オブジェクトが前記表示領域における所定位置に到達するときの前記第1移動制御手段による移動の速度に基づいて、前記第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段として前記コンピュータをさらに機能させ、
前記第2移動制御手段は、前記表示領域における所定位置に到達した選択オブジェクトを、前記移動距離決定手段により決定された移動距離まで移動させる、請求項8に記載の表示制御プログラム。
【請求項10】
前記移動距離決定手段は、前記選択オブジェクトが前記表示領域における所定位置に到達するときの前記第1移動制御手段による移動の速度と過去の前記第1移動制御手段による移動に関するパラメータとに基づいて、前記移動距離を決定する、請求項9に記載の表示制御プログラム。
【請求項11】
前記移動距離決定手段は、過去の前記第1移動制御手段により移動してきた距離が大きくなるにつれて、前記第2移動制御手段により当該選択オブジェクトが移動する移動距離が長くなるように当該移動距離を決定する、請求項10に記載の表示制御プログラム。
【請求項12】
前記選択オブジェクトが前記表示領域における所定位置に到達したとき、前記複数のオブジェクト群の一番端の位置から当該表示領域における所定位置に到達した選択オブジェクトまでの距離に基づいて、前記第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段として前記コンピュータをさらに機能させ、
前記第2移動制御手段は、前記表示領域における所定位置に到達した選択オブジェクトを、前記移動距離決定手段により決定された移動距離まで移動させる、請求項8に記載の表示制御プログラム。
【請求項13】
前記移動距離決定手段は、前記複数のオブジェクト群の一番端の位置から前記表示領域における所定位置に到達した選択オブジェクトまでの距離が短くなるにつれて前記移動距離が長くなるように、当該移動距離を決定する、請求項12に記載の表示制御プログラム。
【請求項14】
前記選択オブジェクトが前記表示領域における所定位置に到達したときの前記第1移動制御手段による移動の速度、および、前記複数のオブジェクト群の一番端の位置から当該表示領域における所定位置に到達した選択オブジェクトまでの距離に基づいて、前記第2移動制御手段により当該選択オブジェクトが移動する移動距離を決定する移動距離決定手段として前記コンピュータをさらに機能させ、
前記第2移動制御手段は、前記表示領域における所定位置に到達した選択オブジェクトを、前記移動距離決定手段により決定された移動距離まで移動させる、請求項8に記載の表示制御プログラム。
【請求項15】
コンテンツを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の前記コンテンツを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記複数のコンテンツが移動された結果、当該複数のコンテンツのうちの端のコンテンツが前記表示領域における所定位置に到達したときに、前記第1移動制御手段により当該複数のコンテンツが移動されてきた方向とは異なる方向へ、前記表示領域に表示されている少なくとも1つのコンテンツを前記表示領域に相対して当該移動対象を移動させる第2移動制御手段として前記コンピュータを機能させる、表示制御プログラム。
【請求項16】
1画面では表示できないような大きさを有する移動対象を表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される前記移動対象を当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記移動対象が移動された結果、当該移動対象の端が前記表示領域における所定位置に到達したときに、前記第1移動制御手段により当該移動対象が移動されてきた方向とは異なる方向へ前記表示領域に相対して当該移動対象を移動させる第2移動制御手段として前記コンピュータを機能させる、表示制御プログラム。
【請求項17】
複数の項目オブジェクトから構成されるリストを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
前記入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される前記リストを当該表示領域に相対して移動させる第1移動制御手段、および
前記第1移動制御手段により移動した前記リストのうち端の項目オブジェクトが前記表示領域における所定位置に到達したときに、前記リストのうち前記表示領域に表示されている少なくとも1つの項目オブジェクトを、前記第1移動制御手段により前記複数の項目のリストが移動してきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段として前記コンピュータを機能させる、表示制御プログラム。
【請求項18】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置のコンピュータにおいて実行される表示制御プログラムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により移動している前記複数の選択オブジェクトのうち、当該第1移動制御手段による移動の方向とは逆方向の端の選択オブジェクトが前記表示領域における所定位置に到達したときまたはその直前に、少なくとも当該端の選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段として機能させる、表示制御プログラム。
【請求項19】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御装置であって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが前記表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち前記表示領域に表示されている少なくとも1つの選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段とを備える、表示制御装置。
【請求項20】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御システムであって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御手段、および、
前記第1移動制御手段により前記複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが前記表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち前記表示領域に表示されている少なくとも1つの選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御手段とを備える、表示制御システム。
【請求項21】
ユーザの操作に応じて選択される選択オブジェクトを表示装置に表示させる表示制御方法であって、
入力装置から出力される出力信号に基づいて、前記表示装置の表示領域に少なくとも一部が表示される複数の選択オブジェクトを当該表示領域に相対して移動させる第1移動制御ステップ、および、
前記第1移動制御ステップにおいて前記複数の選択オブジェクトが移動された結果、当該複数の選択オブジェクトのうちの端に位置する選択オブジェクトが前記表示領域における所定位置に到達したときに、当該複数の選択オブジェクトのうち前記表示領域に表示されている少なくとも1つの選択オブジェクトを、前記第1移動制御手段により当該複数の選択オブジェクトが移動されてきた方向とは異なる方向へ前記表示領域に相対して移動させる第2移動制御ステップとを備える、表示制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【公開番号】特開2012−83801(P2012−83801A)
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願番号】特願2010−226845(P2010−226845)
【出願日】平成22年10月6日(2010.10.6)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願日】平成22年10月6日(2010.10.6)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】
[ Back to top ]