IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 任天堂株式会社の特許一覧

特開2023-145632ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法
<>
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図1
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図2
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図3
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図4
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図5
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図6
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図7
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図8
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図9
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図10
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図11
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図12
  • 特開-ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023145632
(43)【公開日】2023-10-11
(54)【発明の名称】ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法
(51)【国際特許分類】
   A63F 13/54 20140101AFI20231003BHJP
   A63F 13/55 20140101ALI20231003BHJP
   A63F 13/533 20140101ALI20231003BHJP
【FI】
A63F13/54
A63F13/55
A63F13/533
【審査請求】未請求
【請求項の数】32
【出願形態】OL
(21)【出願番号】P 2023123338
(22)【出願日】2023-07-28
(62)【分割の表示】P 2021154061の分割
【原出願日】2021-09-22
(71)【出願人】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】100158780
【弁理士】
【氏名又は名称】寺本 亮
(74)【代理人】
【識別番号】100121359
【弁理士】
【氏名又は名称】小沢 昌弘
(74)【代理人】
【識別番号】100130269
【弁理士】
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】小野 亮
(72)【発明者】
【氏名】高村 潤
(57)【要約】
【課題】高低差を有する地形においてカーソルが指示する位置をユーザが認識し易くすることが可能なゲームプログラム、情報処理装置、情報処理システム、及び情報処理方法を提供する。
【解決手段】本実施形態のゲームプログラムは、コンピュータに、3次元仮想空間において高低差を有する地形オブジェクト上の位置を示すカーソルオブジェクトを、プレイヤの操作入力に基づいて移動させ、前記カーソルオブジェクトが移動する際に、前記カーソルオブジェクトが指示する前記地形オブジェクトの高さに応じて異なるカーソル音を出力させる。
【選択図】図9
【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータに、
3次元仮想空間において高低差を有する地形オブジェクト上の位置を示すカーソルオブジェクトを、プレイヤの操作入力に基づいて移動させ、
前記カーソルオブジェクトが移動する際に、前記カーソルオブジェクトが指示する前記地形オブジェクトの高さに応じて異なるカーソル音を出力させる、ゲームプログラム。
【請求項2】
前記コンピュータに、
前記地形オブジェクトの高さに応じて、音の高さ、大きさ、及び音色の少なくとも何れか1つが異なる前記カーソル音を出力させる、請求項1に記載のゲームプログラム。
【請求項3】
前記コンピュータに、
操作入力に基づいて、前記カーソルオブジェクトが指示する前記地形オブジェクト上の位置に仮想オブジェクトを配置させる、請求項1又は2に記載のゲームプログラム。
【請求項4】
前記コンピュータに、
前記カーソルオブジェクトが指示する前記地形オブジェクト上に存在する仮想オブジェクトを選択させる、請求項1から3の何れかに記載のゲームプログラム。
【請求項5】
前記コンピュータに、
前記カーソルオブジェクトを用いて選択されている仮想オブジェクトを、前記操作入力に基づいて前記カーソルオブジェクトとともに移動させる、請求項1から4の何れかに記載のゲームプログラム。
【請求項6】
前記コンピュータに、
前記カーソルオブジェクトを用いて前記仮想オブジェクトが選択されていない場合には、前記カーソルオブジェクトを移動させる際に、前記地形オブジェクトの高さに応じて異なる第1カーソル音を出力させ、
前記カーソルオブジェクトを用いて前記仮想オブジェクトが選択されている場合には、前記カーソルオブジェクト及び前記仮想オブジェクトを移動させる際に、前記地形オブジェクトの高さに応じて異なる第2カーソル音を出力させる、請求項5に記載のゲームプログラム。
【請求項7】
前記コンピュータに、
操作入力に基づいて、前記地形オブジェクトの高さを変更させる、請求項1から6の何れかに記載のゲームプログラム。
【請求項8】
前記カーソルオブジェクトは、前記操作入力に基づいて、前記地形オブジェクト上を、又は、前記地形オブジェクトに沿って、区画単位で移動される、請求項1から7の何れかに記載のゲームプログラム。
【請求項9】
プロセッサを備える情報処理装置であって、前記プロセッサは、
3次元仮想空間において高低差を有する地形オブジェクト上の位置を示すカーソルオブジェクトを、プレイヤの操作入力に基づいて移動させ、
前記カーソルオブジェクトが移動する際に、前記カーソルオブジェクトが指示する前記地形オブジェクトの高さに応じて異なるカーソル音を出力する、情報処理装置。
【請求項10】
前記プロセッサは、
前記地形オブジェクトの高さに応じて、音の高さ、大きさ、及び音色の少なくとも何れか1つが異なる前記カーソル音を出力する、請求項9に記載の情報処理装置。
【請求項11】
前記プロセッサは、
操作入力に基づいて、前記カーソルオブジェクトが指示する前記地形オブジェクト上の位置に仮想オブジェクトを配置する、請求項9又は10に記載の情報処理装置。
【請求項12】
前記プロセッサは、
前記カーソルオブジェクトが指示する前記地形オブジェクト上に存在する仮想オブジェクトを選択する、請求項9から11の何れかに記載の情報処理装置。
【請求項13】
前記プロセッサは、
前記カーソルオブジェクトを用いて選択されている仮想オブジェクトを、前記操作入力に基づいて前記カーソルオブジェクトとともに移動させる、請求項9から12の何れかに記載の情報処理装置。
【請求項14】
前記プロセッサは、
前記カーソルオブジェクトを用いて前記仮想オブジェクトが選択されていない場合には、前記カーソルオブジェクトを移動させる際に、前記地形オブジェクトの高さに応じて異なる第1カーソル音を出力し、
前記カーソルオブジェクトを用いて前記仮想オブジェクトが選択されている場合には、前記カーソルオブジェクト及び前記仮想オブジェクトを移動させる際に、前記地形オブジェクトの高さに応じて異なる第2カーソル音を出力する、請求項13に記載の情報処理装置。
【請求項15】
前記プロセッサは、
操作入力に基づいて、前記地形オブジェクトの高さを変更する、請求項9から14の何れかに記載の情報処理装置。
【請求項16】
前記カーソルオブジェクトは、前記操作入力に基づいて、前記地形オブジェクト上を、又は、前記地形オブジェクトに沿って、区画単位で移動される、請求項9から15の何れかに記載の情報処理装置。
【請求項17】
プロセッサと操作装置とを備える情報処理システムであって、前記プロセッサは、
3次元仮想空間において高低差を有する地形オブジェクト上の位置を示すカーソルオブジェクトを、前記操作装置に対する操作入力に基づいて移動させ、
前記カーソルオブジェクトが移動する際に、前記カーソルオブジェクトが指示する前記地形オブジェクトの高さに応じて異なるカーソル音を出力する、情報処理システム。
【請求項18】
前記プロセッサは、
前記地形オブジェクトの高さに応じて、音の高さ、大きさ、及び音色の少なくとも何れか1つが異なる前記カーソル音を出力する、請求項17に記載の情報処理システム。
【請求項19】
前記プロセッサは、
操作入力に基づいて、前記カーソルオブジェクトが指示する前記地形オブジェクト上の位置に仮想オブジェクトを配置する、請求項17又は18に記載の情報処理システム。
【請求項20】
前記プロセッサは、
前記カーソルオブジェクトが指示する前記地形オブジェクト上に存在する仮想オブジェクトを選択する、請求項17から19の何れかに記載の情報処理システム。
【請求項21】
前記プロセッサは、
前記カーソルオブジェクトを用いて選択されている仮想オブジェクトを、前記操作入力に基づいて前記カーソルオブジェクトとともに移動させる、請求項17から20の何れかに記載の情報処理システム。
【請求項22】
前記プロセッサは、
前記カーソルオブジェクトを用いて前記仮想オブジェクトが選択されていない場合には、前記カーソルオブジェクトを移動させる際に、前記地形オブジェクトの高さに応じて異なる第1カーソル音を出力し、
前記カーソルオブジェクトを用いて前記仮想オブジェクトが選択されている場合には、前記カーソルオブジェクト及び前記仮想オブジェクトを移動させる際に、前記地形オブジェクトの高さに応じて異なる第2カーソル音を出力する、請求項21に記載の情報処理システム。
【請求項23】
前記プロセッサは、
操作入力に基づいて、前記地形オブジェクトの高さを変更する、請求項17から22の何れかに記載の情報処理システム。
【請求項24】
前記カーソルオブジェクトは、前記操作入力に基づいて、前記地形オブジェクト上を、又は、前記地形オブジェクトに沿って、区画単位で移動される、請求項17から23の何れかに記載の情報処理システム。
【請求項25】
コンピュータによって実行される情報処理方法であって、前記コンピュータに、
3次元仮想空間において高低差を有する地形オブジェクト上の位置を示すカーソルオブジェクトを、プレイヤの操作入力に基づいて移動させ、
前記カーソルオブジェクトが移動する際に、前記カーソルオブジェクトが指示する前記地形オブジェクトの高さに応じて異なるカーソル音を出力させる、情報処理方法。
【請求項26】
前記コンピュータに、
前記地形オブジェクトの高さに応じて、音の高さ、大きさ、及び音色の少なくとも何れか1つが異なる前記カーソル音を出力させる、請求項25に記載の情報処理方法。
【請求項27】
前記コンピュータに、
操作入力に基づいて、前記カーソルオブジェクトが指示する前記地形オブジェクト上の位置に仮想オブジェクトを配置させる、請求項25又は26に記載の情報処理方法。
【請求項28】
前記コンピュータに、
前記カーソルオブジェクトが指示する前記地形オブジェクト上に存在する仮想オブジェクトを選択させる、請求項25から27の何れかに記載の情報処理方法。
【請求項29】
前記コンピュータに、
前記カーソルオブジェクトを用いて選択されている仮想オブジェクトを、前記操作入力に基づいて前記カーソルオブジェクトとともに移動させる、請求項25から28の何れかに記載の情報処理方法。
【請求項30】
前記コンピュータに、
前記カーソルオブジェクトを用いて前記仮想オブジェクトが選択されていない場合には、前記カーソルオブジェクトを移動させる際に、前記地形オブジェクトの高さに応じて異なる第1カーソル音を出力させ、
前記カーソルオブジェクトを用いて前記仮想オブジェクトが選択されている場合には、前記カーソルオブジェクト及び前記仮想オブジェクトを移動させる際に、前記地形オブジェクトの高さに応じて異なる第2カーソル音を出力させる、請求項29に記載の情報処理方法。
【請求項31】
前記コンピュータに、
操作入力に基づいて、前記地形オブジェクトの高さを変更させる、請求項25から30の何れかに記載の情報処理方法。
【請求項32】
前記カーソルオブジェクトは、前記操作入力に基づいて、前記地形オブジェクト上を、又は、前記地形オブジェクトに沿って、区画単位で移動される、請求項25から31の何れかに記載の情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲームプログラム、情報処理装置、情報処理システム、および情報処理方法に関する。
【背景技術】
【0002】
先行技術として、例えば仮想空間においてカーソルを移動させる際に音を鳴らすゲーム装置がある(例えば、非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】“無人島生活まるわかりムービー”、[online]、2020年、任天堂株式会社、[令和3年9月8日検索]、インターネット<URL:https://www.nintendo.co.jp/switch/acbaa/movie/index.html>
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記先行技術では高低差を有する地形においてカーソルによって指示される位置をユーザが把握し易くするために改善の余地があった。
【0005】
それ故、本発明の目的は、高低差を有する地形においてカーソルが指示する位置をユーザが認識し易くすることが可能なゲームプログラム、情報処理装置、情報処理システム、及び情報処理方法を提供することである。
【課題を解決するための手段】
【0006】
上記の課題を解決すべく、本発明は、以下の構成を採用した。
【0007】
本発明の一例は、情報処理装置のコンピュータに、3次元仮想空間において高低差を有する地形オブジェクト上の位置を示すカーソルオブジェクトを、プレイヤの操作入力に基づいて移動させ、前記カーソルオブジェクトが移動する際に、前記カーソルオブジェクトが指示する前記地形オブジェクトの高さに応じて異なるカーソル音を出力させる、ゲームプログラムである。
【0008】
上記によれば、カーソルオブジェクトが移動する際に、当該カーソルオブジェクトが指示する地形オブジェクトの高さに応じて異なるカーソル音が出力される。これにより、高低差を有する地形オブジェクトについて、カーソルオブジェクトがどの位置を指示しているかをプレイヤに容易に認識させることができる。
【0009】
また、前記ゲームプログラムは、前記コンピュータに、前記地形オブジェクトの高さに応じて、音の高さ、大きさ、及び音色の少なくとも何れか1つが異なる前記カーソル音を出力させてもよい。
【0010】
上記によれば、地形オブジェクトの高さに応じて、異なるカーソル音を出力することができる。
【0011】
また、前記ゲームプログラムは、前記コンピュータに、操作入力に基づいて、前記カーソルオブジェクトが指示する前記地形オブジェクト上の位置に仮想オブジェクトを配置させてもよい。
【0012】
上記によれば、カーソルオブジェクトを用いて地形オブジェクト上に仮想オブジェクトを配置することができる。
【0013】
また、前記ゲームプログラムは、前記コンピュータに、前記カーソルオブジェクトが指示する前記地形オブジェクト上に存在する仮想オブジェクトを選択させてもよい。
【0014】
上記によれば、カーソルオブジェクトによって地形オブジェクト上の仮想オブジェクトを選択することができる。
【0015】
また、前記ゲームプログラムは、前記コンピュータに、前記カーソルオブジェクトを用いて選択されている仮想オブジェクトを、前記操作入力に基づいて前記カーソルオブジェクトとともに移動させてもよい。
【0016】
上記によれば、カーソルオブジェクトと選択されている仮想オブジェクトとを操作入力に基づいて移動させることができる。
【0017】
また、前記ゲームプログラムは、前記コンピュータに、前記カーソルオブジェクトを用いて前記仮想オブジェクトが選択されていない場合には、前記カーソルオブジェクトを移動させる際に、前記地形オブジェクトの高さに応じて異なる第1カーソル音を出力させてもよい。また、前記ゲームプログラムは、前記コンピュータに、前記カーソルオブジェクトを用いて前記仮想オブジェクトが選択されている場合には、前記カーソルオブジェクト及び前記仮想オブジェクトを移動させる際に、前記地形オブジェクトの高さに応じて異なる第2カーソル音を出力させてもよい。
【0018】
上記によれば、仮想オブジェクトが選択されていない場合にはカーソルオブジェクトの移動に応じて第1カーソル音を出力し、仮想オブジェクトが選択されている場合にはカーソルオブジェクトの移動に応じて第2カーソル音を出力することができる。
【0019】
また、前記ゲームプログラムは、前記コンピュータに、操作入力に基づいて、前記地形オブジェクトの高さを変更させてもよい。
【0020】
上記によれば、プレイヤは地形オブジェクトの高さを変更することができる。プレイヤによって地形オブジェクトの高さが変化される場合でも、変化した地形オブジェクトの高さに応じて、異なるカーソル音を出力することができる。
【0021】
また、前記カーソルオブジェクトは、前記操作入力に基づいて、前記地形オブジェクト上を、又は、前記地形オブジェクトに沿って、区画単位で移動されてもよい。
【0022】
上記によれば、カーソルオブジェクトを区画単位で移動させることができる。
【0023】
また、他の発明は、上記ゲームプログラムを実行する情報処理装置であってもよいし、情報処理システムであってもよい。また、他の発明は、プロセッサによって実行される情報処理方法であってもよい。
【発明の効果】
【0024】
本発明によれば、カーソルオブジェクトが移動する際に、当該カーソルオブジェクトが指示する地形オブジェクトの高さに応じて異なるカーソル音を出力することができる。
【図面の簡単な説明】
【0025】
図1】本実施形態におけるゲームシステム1の一例を示す図
図2】ゲームシステム1の内部構成の一例を示すブロック図
図3】本実施形態のゲームが行われた場合にディスプレイ12に表示されるゲーム画像の一例を示す図
図4】プレイヤの操作入力に基づいてカーソルオブジェクト38が移動される様子の一例を示す図
図5図4に示されるカーソルオブジェクト38が指示する位置に仮想オブジェクトが配置される様子の一例を示す図
図6】カーソルオブジェクト38を用いて地形オブジェクト31上に配置された椅子オブジェクト35を選択する様子の一例を示す図
図7】カーソルオブジェクト38を用いて椅子オブジェクト35を移動させている様子の一例を示す図
図8】カーソルオブジェクト38がz軸方向に移動される様子を示す図
図9】カーソルオブジェクト38がz軸方向に移動される場合において、地形オブジェクト31の高さと出力される第1カーソル音との関係の一例を示す図
図10】カーソルオブジェクト38によって仮想オブジェクトが選択されている場合において、カーソルオブジェクト38がx軸方向に移動される様子を示す図
図11】カーソルオブジェクト38及び仮想オブジェクトがx軸方向に移動する場合において、地形オブジェクト31の高さと出力される第2カーソル音との関係の一例を示す図
図12】本体装置2のメモリ(例えばDRAM26)に記憶されるデータの一例を示す図
図13】本体装置2のプロセッサ20によって行われるゲーム処理の一例を示すフローチャート
【発明を実施するための形態】
【0026】
(システム構成)
以下、図面を参照して、本実施形態のゲームシステム1(情報処理システムの一例)について説明する。図1は、本実施形態におけるゲームシステム1の一例を示す図である。図1に示すように、ゲームシステム1は、ゲーム装置(情報処理装置の一例)としての本体装置2と、左コントローラ3と、右コントローラ4とを備える。また、本体装置2は、ディスプレイ12とスピーカ13とを備える。ディスプレイ12には、タッチパネルが設けられる。左コントローラ3及び右コントローラ4は、本体装置2から着脱可能に装着される。
【0027】
左コントローラ3は、ユーザの左手で操作されるコントローラであり、右コントローラ4は、ユーザの右手で操作されるコントローラである。左コントローラ3は、複数の操作ボタン31と、方向入力部としてのアナログスティック32とを含む。また、右コントローラ4は、複数の操作ボタン41と、方向入力部としてのアナログスティック42とを含む。
【0028】
図2は、ゲームシステム1の内部構成の一例を示すブロック図である。図2に示すように、本体装置2は、プロセッサ20と、スロット24と、フラッシュメモリ25と、DRAM(Dynamic Random Access Memory)26とを備える。プロセッサ20は、CPU(Central Processing Unit)21と、GPU(Graphics Processing Unit)22とを含む。CPU21は、ゲームプログラムを実行可能であり、コントローラ3,4からの操作データを処理したり、操作データに基づいてゲーム処理を行ったりする。GPU22は、画像処理を行うためのプロセッサである。なお、CPU21とGPU22とは、それぞれ別々のチップ上に実装されてもよいし、これらはSoC(System-on-a-chip)として1つのチップ上に実装されてもよい。
【0029】
プロセッサ20には、スロットインターフェイス(I/F)23、フラッシュメモリ25、DRAM26、ディスプレイ12が接続される。また、プロセッサ20には、左インターフェイス(I/F)を介して左コントローラ3が接続され、右インターフェイス(I/F)を介して右コントローラ4が接続される。スロット24には、不揮発性メモリや光ディスク等の外部記憶媒体が着脱可能に挿入される。外部記憶媒体には、ゲームプログラムやデータ(後述する音データや地形データ)が記憶される。なお、これらプログラムやデータは、フラッシュメモリ25に予め記憶されてもよいし、ネットワーク(例えばインターネット)を介して他の装置(例えばサーバ)からダウンロードされてフラッシュメモリ25に記憶されてもよい。
【0030】
外部記憶媒体(又はフラッシュメモリ25)に記憶されたゲームプログラムやデータは、ゲームが開始される際にDRAM26に読み込まれる。CPU21が当該ゲームプログラムを実行することにより、後述するゲーム処理が行われる。
【0031】
CPU21は、ゲーム処理に応じたゲーム画像をディスプレイ12に表示させるための命令をGPU22に対して送る。GPU22は、当該命令に応じてゲーム画像を生成する。生成されたゲーム画像は、ディスプレイ12に出力されて表示される。なお、本体装置2にはディスプレイ12とは異なる外部の表示装置が接続され、ゲーム画像は当該外部の表示装置に表示されてもよい。
【0032】
また、CPU21は、図示しないコーデック回路を用いて、ゲーム処理に応じた音をスピーカ13から出力させる。なお、ゲーム処理に応じた音は、本体装置2内のスピーカ13とは異なる外部のスピーカから出力されてもよい。
【0033】
(本実施形態のゲーム処理の概要)
次に、本実施形態のゲーム処理の概要について説明する。図3は、本実施形態のゲームが行われた場合にディスプレイ12に表示されるゲーム画像の一例を示す図である。本実施形態のゲームプログラムが実行された場合、本体装置2において3次元の仮想空間が定義され、当該仮想空間にxyz直交座標系が設定される。x軸は仮想空間の横方向の軸であり、z軸は奥行き方向の軸であり、y軸は仮想空間の高さ方向の軸である。
【0034】
図3に示されるように、仮想空間には、地形オブジェクト31が設定される。地形オブジェクト31は、仮想空間の地面を表すオブジェクトである。地形オブジェクト31は、高さの異なる複数の地形オブジェクト31a~31cを有する。地形オブジェクト31aは、高さyaを有するxz平面に平行な平面(地面)である。地形オブジェクト31bは、高さyb(>ya)を有するxz平面に平行な平面(地面)である。地形オブジェクト31cは、高さyc(>yb)を有するxz平面に平行な平面(地面)である。
【0035】
地形オブジェクト31aと地形オブジェクト31bとの間には、y軸に平行な垂直面32(壁面)がある。地形オブジェクト31aと地形オブジェクト31bとは、垂直面32によって接続される。また、地形オブジェクト31bと地形オブジェクト31cとの間には、y軸に平行な垂直面32があり、地形オブジェクト31bと地形オブジェクト31cとは当該垂直面32によって接続される。
【0036】
地形オブジェクト31上には、様々な仮想オブジェクトが配置される。図3に示されるように、例えば、地形オブジェクト31上には、プレイヤキャラクタ30が配置される。プレイヤキャラクタ30は、左又は右コントローラ(操作装置の一例)を用いた操作入力に基づいて、地形オブジェクト31上を移動可能に構成される。例えば、プレイヤキャラクタ30を移動させるモードにおいて、左コントローラ3のアナログスティック32に対する操作入力が行われた場合、アナログスティック32の操作方向に応じた方向に、プレイヤキャラクタ30が移動される。
【0037】
また、地形オブジェクト31cには、プレイヤキャラクタ30が移動することができない領域を表す池34が形成されている。
【0038】
また、地形オブジェクト31上には、階段オブジェクト33が配置される。階段オブジェクト33は、地形オブジェクト31上に固定されたオブジェクトであり、プレイヤの操作入力に応じて移動されない。階段オブジェクト33は、高低差を有する地形オブジェクト31間をプレイヤキャラクタ30が移動可能とするためのオブジェクトである。また、これらの他にも、地形オブジェクト31上には、地形オブジェクト31上に固定された木オブジェクトや家オブジェクト(図示せず)等が配置されてもよい。
【0039】
また、地形オブジェクト31上には、椅子オブジェクト35が配置される。椅子オブジェクト35は、プレイヤの操作入力によって地形オブジェクト31上を移動可能な仮想オブジェクトである。また、椅子オブジェクト35の他にも、地形オブジェクト31上を移動可能な様々な仮想オブジェクトが地形オブジェクト31上に配置される。移動可能な仮想オブジェクトは、予め仮想空間に配置されてもよいし、プレイヤの操作入力によって配置されてもよい。
【0040】
また、図3に示されるように、ディスプレイ12には、カーソルオブジェクト38が表示される。カーソルオブジェクト38は、地形オブジェクト31上の位置を指示するためのオブジェクトである。カーソルオブジェクト38は、所定の形状を有する平面であり、例えば正方形である。
【0041】
カーソルオブジェクト38は、地形オブジェクト31上に配置され、左又は右コントローラを用いた操作入力に応じて、地形オブジェクト31上を移動可能である。なお、カーソルオブジェクト38は、ディスプレイ12に設けられたタッチパネルに対する操作入力に応じて、地形オブジェクト31上を移動してもよい。
【0042】
なお、カーソルオブジェクト38は、地形オブジェクト31から所定の高さの位置に配置され、プレイヤの操作入力に応じて地形オブジェクト31に沿って(地面に平行に)移動されてもよい。この場合、例えば、カーソルオブジェクト38が地形オブジェクト31a上の位置(xa,ya,za)を指示する場合には、カーソルオブジェクト38は、位置(xa,ya+α,za)に配置される。また、例えば、カーソルオブジェクト38が地形オブジェクト31b上の位置(xb,yb,zb)を指示する場合には、カーソルオブジェクト38は、位置(xb,yb+α,zb)に配置される。
【0043】
図3に示されるゲーム画像は、仮想空間に配置された仮想カメラに基づいて生成される。図3では、仮想カメラの地面に対する角度は、例えば70度~80度である。本実施形態では、プレイヤの操作入力に基づいて、仮想カメラの撮像方向を変化させることができる。例えば、プレイヤの操作入力に応じて、仮想カメラの地面に対する角度が80~90度となるように設定されてもよい。この場合、仮想空間を真上から見下ろすようなゲーム画像が表示され、図3の垂直面32(壁面)はほぼ表示されなくなる。
【0044】
図4は、プレイヤの操作入力に基づいてカーソルオブジェクト38が移動される様子の一例を示す図である。図4において、符号38’は移動前のカーソルオブジェクトを示し、符号38は1区画分だけ右に移動した後のカーソルオブジェクトを示す。
【0045】
図4に示されるように、カーソルオブジェクト38は、地形オブジェクト31上を区画単位で移動する。仮想空間のxz平面は、例えば正方形の区画によって区切られている。カーソルオブジェクト38は、地形オブジェクト31上をこの区画単位で移動する。例えば、カーソルオブジェクト38を用いて仮想オブジェクトを配置するモードにおいて、左コントローラ3のアナログスティック32を用いて右方向への操作入力が行われた場合、本体装置2は、当該右方向への操作入力を検知する。本体装置2は、当該操作入力に基づいて、カーソルオブジェクト38を現在の区画から右側に隣接する区画に移動させる。これにより、カーソルオブジェクトが、図4に示される38’から38に移動する。
【0046】
プレイヤは、カーソルオブジェクト38を所望の位置に移動させ、カーソルオブジェクト38が指示する地形オブジェクト31上の位置に、仮想オブジェクトを配置することができる。プレイヤは、カーソルオブジェクト38の位置に、新たな仮想オブジェクトを配置することができる。
【0047】
図5は、図4に示されるカーソルオブジェクト38が指示する位置に仮想オブジェクトが配置される様子の一例を示す図である。
【0048】
例えば、図4に示されるようにカーソルオブジェクト38が移動された後、左又は右コントローラの所定のボタンが押下された場合、メニュー(図示しない)が表示され、当該メニューから椅子オブジェクト(仮想オブジェクトの一例)が選択される。これにより、図5に示されるように、カーソルオブジェクト38が指示する地形オブジェクト31上の位置に、選択された椅子オブジェクト35が新たに配置される。また、カーソルオブジェクト38が移動される前に、配置する仮想オブジェクトの選択が行われてもよい。この場合、プレイヤは、例えば、配置する仮想オブジェクトをメニューから選択し、その後、カーソルオブジェクト38を移動させ、配置のための操作入力を行うことで、カーソルオブジェクト38の位置に選択した仮想オブジェクトを配置する。
【0049】
なお、カーソルオブジェクト38は、池34の領域に移動されることは可能であるが、池34の領域には仮想オブジェクトは配置されない。
【0050】
また、プレイヤは、カーソルオブジェクト38を移動させ、地形オブジェクト31上に配置されている移動可能な仮想オブジェクトを選択し、当該選択した仮想オブジェクトを移動させて、地形オブジェクト31上の別の位置に配置することもできる。
【0051】
図6は、カーソルオブジェクト38を用いて地形オブジェクト31上に配置された椅子オブジェクト35を選択する様子の一例を示す図である。図7は、カーソルオブジェクト38を用いて椅子オブジェクト35を移動させている様子の一例を示す図である。
【0052】
図6に示されるように、カーソルオブジェクト38が地形オブジェクト31上に配置されている椅子オブジェクト35(仮想オブジェクトの一例)の位置に到達した場合、ポインタ39が出現する。ポインタ39は、カーソルオブジェクト38が仮想オブジェクトを指示していることを示すオブジェクトである。また、カーソルオブジェクト38が仮想オブジェクトを指示している場合、カーソルオブジェクト38の表示態様が変化する。例えば、カーソルオブジェクト38が仮想オブジェクトを指示していないときには、図3に示すように比較的小さなカーソルオブジェクト38が表示され、カーソルオブジェクト38が仮想オブジェクトを指示しているときには、図6に示すように比較的大きなカーソルオブジェクト38が表示される。なお、カーソルオブジェクト38が仮想オブジェクトを指示しているときには、カーソルオブジェクト38の色が変化してもよいし、カーソルオブジェクト38が点滅してもよい。
【0053】
カーソルオブジェクト38が椅子オブジェクト35を指示しているときに、左又は右コントローラを用いて選択のための操作入力が行われた場合、椅子オブジェクト35が選択される。なお、カーソルオブジェクト38が仮想オブジェクトの位置に到達した場合、選択のための操作入力が行われなくても、当該仮想オブジェクトが選択されてもよい。
【0054】
図7に示されるように、椅子オブジェクト35が選択された状態で左又は右コントローラを用いて移動のための操作入力が行われた場合、カーソルオブジェクト38とともに椅子オブジェクト35が移動される。そして、左又は右コントローラを用いて配置のための操作入力が行われた場合、カーソルオブジェクト38が指示する位置に、椅子オブジェクト35が配置される。
【0055】
ここで、本実施形態のゲームでは、カーソルオブジェクト38が移動する際に、カーソル音が出力される。具体的には、カーソルオブジェクト38によって指示される地形オブジェクト31の高さに応じて、異なるカーソル音が出力される。
【0056】
図8は、カーソルオブジェクト38がz軸方向に移動される様子を示す図である。図9は、カーソルオブジェクト38がz軸方向に移動される場合において、地形オブジェクト31の高さと出力される第1カーソル音との関係の一例を示す図である。
【0057】
プレイヤの操作入力に基づいて、カーソルオブジェクト38が図8の位置から矢印で示す方向に移動される場合を想定する。カーソルオブジェクト38によって仮想オブジェクトが選択されていない場合において、カーソルオブジェクト38が移動する際に、第1カーソル音が出力される。本体装置2(具体的には外部記憶媒体やDRAM26等のメモリ)には、第1カーソル音に対応する第1音データが記憶されており、当該第1音データに基づいて、第1カーソル音が出力される。
【0058】
図9に示されるように、カーソルオブジェクト38が地形オブジェクト31a上に位置する場合、すなわち、カーソルオブジェクト38が指示する地形オブジェクトの高さがyaである場合、第1カーソル音(低)が出力される。第1カーソル音(低)は、第1音データに基づいて生成される通常の第1カーソル音の高さを変化させた音であり、通常の第1カーソル音よりも低い音である。なお、ここでは、通常の第1カーソル音を「第1カーソル音(中)」と表記する。
【0059】
例えば、カーソルオブジェクト38が位置z0からz軸方向に位置z1まで移動する間、カーソルオブジェクト38が指示する位置の高さはyaであり、カーソルオブジェクト38が1区画移動する毎に、第1カーソル音(低)が出力される。カーソルオブジェクト38が、位置z1からさらにz軸方向に1区画だけ移動された場合、カーソルオブジェクト38のz軸方向の位置はz2となる。このとき、カーソルオブジェクト38は地形オブジェクト31b上に移動し、カーソルオブジェクト38が指示する位置の高さはybとなる。この場合、第1カーソル音(中)が出力される。
【0060】
カーソルオブジェクト38が位置z2からさらにz軸方向に移動される場合、カーソルオブジェクト38は地形オブジェクト31b上を移動する。カーソルオブジェクト38が地形オブジェクト31b上を1区画移動する毎に、第1カーソル音(中)が出力される。
【0061】
カーソルオブジェクト38が地形オブジェクト31bの端部に到達し、さらにz軸方向に1区画だけ移動された場合、カーソルオブジェクト38のz軸方向の位置はz3となる。このとき、カーソルオブジェクト38は地形オブジェクト31c上に移動し、カーソルオブジェクト38が指示する位置の高さはycとなる。この場合、第1カーソル音(高)が出力される。第1カーソル音(高)は、第1音データに基づいて生成される第1カーソル音の高さを変化させた音であり、第1カーソル音(中)よりも高い音である。カーソルオブジェクト38が地形オブジェクト31b上を1区画移動する毎に、第1カーソル音(高)が出力される。
【0062】
次に、カーソルオブジェクト38を用いて仮想オブジェクトが選択されているときに、カーソルオブジェクト38が移動される場合について説明する。
【0063】
図10は、カーソルオブジェクト38によって仮想オブジェクトが選択されている場合において、カーソルオブジェクト38がx軸方向に移動される様子を示す図である。図11は、カーソルオブジェクト38及び仮想オブジェクトがx軸方向に移動する場合において、地形オブジェクト31の高さと出力される第2カーソル音との関係の一例を示す図である。
【0064】
カーソルオブジェクト38によって仮想オブジェクトが選択されている場合において、カーソルオブジェクト38が移動する際に、第2カーソル音が出力される。本体装置2(具体的には外部記憶媒体やDRAM26等のメモリ)には、第2カーソル音に対応する第2音データが記憶されており、当該第2音データに基づいて、第2カーソル音が出力される。
【0065】
具体的には、カーソルオブジェクト38によって椅子オブジェクト35が選択されているときに、例えばアナログスティック32の右方向が入力された場合、カーソルオブジェクト38及び椅子オブジェクト35は、図10の位置x1から矢印で示す方向に移動する。カーソルオブジェクト38及び椅子オブジェクト35が地形オブジェクト31c上を移動する場合、第2カーソル音(高)が出力される。第2カーソル音(高)は、第2音データに基づいて生成される通常の第2カーソル音の高さを変化させた音であり、通常の第2カーソル音よりも高い音である。なお、通常の第2カーソル音を「第2カーソル音(中)」と表記する。カーソルオブジェクト38及び椅子オブジェクト35が地形オブジェクト31c上を1区画移動する毎に、第2カーソル音(高)が出力される。
【0066】
カーソルオブジェクト38及び椅子オブジェクト35が位置x2に到達した場合、カーソルオブジェクト38及び椅子オブジェクト35は、地形オブジェクト31b上に移動し、カーソルオブジェクト38が指示する位置の高さはybとなる。この場合、第2カーソル音(中)が出力される。カーソルオブジェクト38及び椅子オブジェクト35が地形オブジェクト31b上を1区画移動する毎に、第2カーソル音(中)が出力される。
【0067】
さらに右方向の入力が行われると、カーソルオブジェクト38及び椅子オブジェクト35は位置x3に到達する。このとき、カーソルオブジェクト38及び椅子オブジェクト35は、地形オブジェクト31a上に移動し、カーソルオブジェクト38が指示する位置の高さはyaとなる。この場合、第2カーソル音(低)が出力される。第2カーソル音(低)は、第2音データに基づいて生成される第2カーソル音(中)の高さを変化させた音であり、第2カーソル音(中)よりも低い音である。カーソルオブジェクト38及び椅子オブジェクト35が地形オブジェクト31a上を1区画移動する毎に、第2カーソル音(低)が出力される。
【0068】
このように、カーソルオブジェクト38が移動する際に、カーソルオブジェクト38によって指示される地形オブジェクト31の高さに応じて異なるカーソル音が出力される。これにより、例えば、カーソルオブジェクト38が高低差を有する地形オブジェクト間を跨いで移動する場合に、カーソル音が変化する。このため、プレイヤは、カーソルオブジェクト38が異なる高さの地形オブジェクトに移動したことを容易に認識することができる。また、プレイヤは、カーソル音によって、カーソルオブジェクト38がどの地形オブジェクト31を指示しているかを認識することができる。
【0069】
例えば、地形オブジェクト31cと地形オブジェクト31bとの間には、垂直面32(壁面)があるが、この垂直面32は、仮想カメラの位置や撮像方向によっては画面に表示されない場合がある。例えば、仮想カメラの撮像方向と地面とが90度に近い場合には、垂直面32は殆ど表示されない。また、図10に示すように、カーソルオブジェクト38を位置x1から右方向に移動させる場合において、カーソルオブジェクト38が位置x2の近傍に近づいた場合、カーソルオブジェクト38が、地形オブジェクト31c上に存在しているのか、地形オブジェクト31b上に存在しているのか、プレイヤが分かり難い場合がある。例えば、地形オブジェクト31cと地形オブジェクト31bとに同じ又は同系色のテクスチャ画像が貼り付けられている場合、地形オブジェクト31cと地形オブジェクト31bとの境界をプレイヤが認識し難い場合がある。このため、地形オブジェクト31cと地形オブジェクト31bとの境界付近にカーソルオブジェクト38が存在している場合、カーソルオブジェクト38がどちらの地形オブジェクト31上に位置しているか、プレイヤは判別しにくい。
【0070】
しかしながら、本実施形態では、カーソルオブジェクト38によって指示される地形オブジェクト31の高さに応じて異なるカーソル音が出力される。これにより、高低差を有する地形オブジェクトについて、カーソルオブジェクトがどの位置を指示しているかをプレイヤに容易に認識させることができる。例えば、カーソルオブジェクト38が地形オブジェクト31b及び31bの境界近傍を指示している場合に、プレイヤは、カーソルオブジェクト38の移動に応じて出力されるカーソル音によって、カーソルオブジェクト38が地形オブジェクト31cを指示しているのか、地形オブジェクト31bを指示しているのかを容易に認識することができる。これにより、プレイヤは、カーソルオブジェクト38を用いて所望の位置に仮想オブジェクトを配置することができる。
【0071】
なお、カーソル音の出力タイミングはどのようなタイミングでもよい。例えば、操作入力に応じたカーソルオブジェクト38の移動が完了したタイミングで、カーソル音が出力されてもよい。また、操作入力に応じたカーソルオブジェクト38の移動中に、カーソル音が出力されてもよい。また、操作入力に応じてカーソルオブジェクト38が移動開始するタイミングにおいて、カーソル音が出力されてもよい。
【0072】
(ゲーム処理の詳細)
次に、本体装置2において行われるゲーム処理の一例について具体的に説明する。まず、本体装置2に記憶されるデータについて説明する。
【0073】
図12は、本体装置2のメモリ(例えばDRAM26)に記憶されるデータの一例を示す図である。図12に示すように、本体装置2には、ゲームプログラムと、地形データと、カーソルデータと、オブジェクトデータと、キャラクタデータと、カーソル音データとが記憶される。これらの他にも、プレイヤの操作に応じた操作データ、プレイヤキャラクタ以外のキャラクタに関するデータ、ゲームに用いられる他のデータ等、様々なデータが記憶される。
【0074】
ゲームプログラムは、本実施形態のゲームを実行するためのプログラムである。ゲームプログラムは、例えば外部記憶媒体に記憶されており、ゲームが開始されると、外部記憶媒体からDRAM26に読み込まれる。
【0075】
地形データは、仮想空間の地形に関するデータであり、各地形オブジェクト(31a~31c)の位置、向き、形状等を表すデータである。例えば、各地形オブジェクトは、複数のポリゴンによって構成されている。地形データは、各ポリゴンの頂点の座標値を含む。地形データによって高低差の有する地形オブジェクト31が形成される。本実施形態では、地形データは、後述するゲーム処理が行われる間、プレイヤの操作入力に応じて変化されないものとする。
【0076】
カーソルデータは、カーソルオブジェクト38に関するデータであり、カーソルオブジェクト38の位置を示すカーソル位置データを含む。カーソル位置データは、xyz各軸の座標値を含む。また、カーソルデータは、カーソルオブジェクト38の形状を示すデータ、カーソルオブジェクト38が仮想オブジェクトを選択しているか否かを示すデータ等を含む。
【0077】
オブジェクトデータは、仮想空間内でプレイヤが移動させることが可能な仮想オブジェクト(例えば、椅子オブジェクト35)に関するデータである。オブジェクトデータは、仮想オブジェクトの種類、仮想空間における位置や向き等を表すデータを含む。
【0078】
キャラクタデータは、プレイヤキャラクタ30に関するデータであり、プレイヤキャラクタ30の位置、向き、形状等を表すデータを含む。
【0079】
カーソル音データは、カーソル音を出力するための音データであり、例えば外部記憶媒体に予め記憶される。カーソル音データは、第1カーソル音に対応する第1音データと、第2カーソル音に対応する第2音データとを含む。第1カーソル音は、カーソルオブジェクト38を用いて仮想オブジェクトが選択されていないときに出力される。また、第2カーソル音は、カーソルオブジェクト38を用いて仮想オブジェクトが選択されているときに出力される。
【0080】
(フローチャートの説明)
次に、本体装置2において行われるゲーム処理の詳細について説明する。図13は、本体装置2のプロセッサ20によって行われるゲーム処理の一例を示すフローチャートである。
【0081】
本体装置2のプロセッサ20(CPU21又はGPU22)がゲームプログラムを実行することによって、図13に示す処理が行われる。プロセッサ20は、ステップS100~ステップS111の処理を、所定のフレーム時間(例えば、1/60秒)毎に繰り返し実行する。なお、図13では、上述したカーソルオブジェクト38の移動に関する処理のみが示されており、ゲームにおける他の処理(例えば、操作データに基づいてプレイヤキャラクタ30を移動させる処理やプレイヤキャラクタ30に所定の動作を行わせる処理等)は省略されている。
【0082】
図13に示されるように、プロセッサ20は、ステップS100において、左右のコントローラ3,4からプレイヤの操作入力に応じた操作データを取得する。次に、プロセッサ20は、ステップS101の処理を実行する。
【0083】
ステップS101において、プロセッサ20は、操作データに基づいて、カーソル移動操作が行われたか否かを判定する。例えば、左コントローラ3のアナログスティック32に対する操作が行われた場合、プロセッサ20は、カーソル移動操作が行われたと判定する。カーソル移動操作が行われたと判定した場合(ステップS101:YES)、プロセッサ20は、次にステップS102の処理を実行する。一方、カーソル移動操作が行われたと判定されなかった場合(ステップS101:NO)、プロセッサ20は、次にステップS109の処理を実行する。
【0084】
ステップS102において、プロセッサ20は、操作データに基づいてカーソルオブジェクト38の位置を更新し、更新後の位置をカーソル位置データとしてメモリに記憶する。ここでは、プロセッサ20は、カーソルオブジェクト38を地形オブジェクト31上において区画単位で移動させる。具体的には、プロセッサ20は、アナログスティック32の操作方向に基づいて、現在のカーソルオブジェクト38のx座標値及びz座標値を更新する。また、プロセッサ20は、更新後のカーソルオブジェクト38のx座標値及びz座標値に基づいて、カーソルオブジェクト38のy座標値を設定する。具体的には、プロセッサ20は、更新後のカーソルオブジェクト38のx座標値及びz座標値と同じx座標値及びz座標値を有する地形オブジェクト31上の点のy座標値を、カーソルオブジェクト38のy座標値として設定する。これにより、カーソルオブジェクト38は、アナログスティック32に対する操作に応じて、地形オブジェクト31上を区画単位で移動することになる。なお、カーソルオブジェクト38は、地形オブジェクト31から所定の高さの位置に配置されてもよい。この場合、地形オブジェクト31のy座標値に所定の値を加えた値が、カーソルオブジェクト38のy座標値として設定されてもよい。プロセッサ20は、次にステップS103の処理を実行する。
【0085】
ステップS103において、プロセッサ20は、オブジェクト選択処理を実行する。オブジェクト選択処理は、左又は右コントローラを用いて所定の選択操作が行われた場合に、仮想オブジェクトを選択する処理である。具体的には、カーソルオブジェクト38の位置に仮想オブジェクトが存在する場合において、左又は右コントローラを用いて選択操作が行われた場合、プロセッサ20は、当該仮想オブジェクトを選択する。次に、プロセッサ20は、ステップS104の処理を実行する。
【0086】
ステップS104において、プロセッサ20は、カーソルオブジェクト38を用いて仮想オブジェクトが選択されているか否かを判定する。仮想オブジェクトを選択中でない場合(ステップS104:NO)、プロセッサ20は、次にステップS105の処理を実行する。一方、仮想オブジェクトを選択中である場合(ステップS104:YES)、プロセッサ20は、次にステップS107の処理を実行する。
【0087】
ステップS105において、プロセッサ20は、地面の高さに応じて第1カーソル音の高さを変化させる。具体的には、プロセッサ20は、カーソルオブジェクト38が指示する地形オブジェクト31の高さ(カーソルオブジェクト38のy座標値)に応じて、第1音データに基づく第1カーソル音を変化させる。例えば、カーソルオブジェクト38が地形オブジェクト31aを指示している場合、プロセッサ20は、第1音データに基づく第1カーソル音の高さを通常よりも低くする。例えば、プロセッサ20は、周波数を下げたり、特定の高周波成分を弱めたりすることにより、第1カーソル音の高さを下げる。また、プロセッサ20は、カーソルオブジェクト38が地形オブジェクト31bを指示している場合、第1音データに基づく第1カーソル音を変化させない。また、プロセッサ20は、カーソルオブジェクト38が地形オブジェクト31cを指示している場合、第1音データに基づく第1カーソル音の高さを通常よりも高くする。例えば、プロセッサ20は、周波数を上げたり、特定の低周波成分を弱めたりすることにより、第1カーソル音の高さを上げる。次に、プロセッサ20は、ステップS106の処理を実行する。
【0088】
ステップS106において、プロセッサ20は、第1カーソル音を出力する。ステップS105において第1カーソル音が変化されている場合、変化された第1カーソル音が出力される。これにより、カーソルオブジェクト38が地形オブジェクト31aを指示している場合は、第1カーソル音(低)が出力され、カーソルオブジェクト38が地形オブジェクト31bを指示している場合は、第1カーソル音(中)が出力され、カーソルオブジェクト38が地形オブジェクト31cを指示している場合は、第1カーソル音(高)が出力される。なお、第1カーソル音は所定の長さ(例えば0.5秒)を有している。プロセッサ20は、現在第1カーソル音を出力中でない場合に、第1音データに基づいて第1カーソル音を出力する。このようにして、カーソルオブジェクト38が指示する地形オブジェクト31の高さに応じて異なる高さの第1カーソル音が出力される。プロセッサ20は、次にステップS109の処理を実行する。
【0089】
一方、ステップS107において、プロセッサ20は、地面の高さに応じて第2カーソル音の高さを変化させる。ステップS107の処理は、ステップS105の処理と同様の処理であるが、音源として用いられる音データがステップS105と異なる。すなわち、ステップS107においては第2音データが用いられる。次に、プロセッサ20は、ステップS108の処理を実行する。
【0090】
ステップS108において、プロセッサ20は、第2カーソル音の出力を開始する。ステップS107において第2カーソル音が変化されている場合、変化された第2カーソル音が出力される。ステップS108の処理はステップS106の処理と同様であるため、詳細な説明を省略する。次に、プロセッサ20は、ステップS109の処理を実行する。
【0091】
ステップS109において、プロセッサ20は、オブジェクト配置処理を行う。ここでは、左又は右コントローラを用いた仮想オブジェクトの配置操作に応じて、仮想オブジェクトを地形オブジェクト31上に配置する処理が行われる。具体的には、プロセッサ20は、配置操作が行われたか否かを判定し、配置操作が行われた場合には、カーソルオブジェクト38が指示する地形オブジェクト31上の位置に、仮想オブジェクトを配置する。これにより、選択中の仮想オブジェクトが、カーソルオブジェクト38によって指示される位置に配置される。あるいは、カーソルオブジェクト38によって指示される位置に新たな仮想オブジェクトが配置されてもよい。次に、プロセッサ20は、ステップS110の処理を実行する。
【0092】
ステップS110において、プロセッサ20は、画像表示処理を行う。具体的には、プロセッサ20は、仮想空間に配置された仮想カメラに基づいてゲーム画像を生成し、生成したゲーム画像をディスプレイ12に出力する。次に、プロセッサ20は、ステップS111の処理を実行する。
ステップS111において、プロセッサ20は、ゲーム処理を終了するか否かを判定する。ステップS111でNOと判定した場合、プロセッサ20は、再びステップS100の処理を実行する。ステップS111でYESと判定した場合(例えばプレイヤによってゲームの終了が指示された場合)、プロセッサ20は、図13に示すゲーム処理を終了する。
【0093】
以上のように、本実施形態では、カーソルオブジェクト38の高さ(カーソルオブジェクト38が指示する地形オブジェクト31の高さ)に応じて、カーソル音の高さが変化されて出力される。例えば、カーソルオブジェクト38が指示する位置が高いほど、高いカーソル音が出力される。これにより、カーソルオブジェクト38が指示する地形オブジェクト31が変化した場合に、カーソル音が変化する。このため、プレイヤは、カーソルオブジェクト38が指示する地形オブジェクト31が変化したことを容易に認識することができる。また、カーソル音によって、カーソルオブジェクト38が高さの異なる複数の地形オブジェクト31のうちのどれを指示しているかを、プレイヤに認識させることができる。
【0094】
(変形例)
以上、本実施形態のゲーム処理ついて説明したが、上記実施形態は単なる一例であり、例えば以下のような変形が加えられてもよい。
【0095】
例えば、上記実施形態では、カーソルオブジェクト38の高さ(カーソルオブジェクト38が指示する地形オブジェクト31の高さ)に応じて、カーソル音の高さを変化させた。他の実施形態では、カーソルオブジェクト38が指示する地形オブジェクト31の高さに応じて、カーソル音の高さ、大きさ、音色の少なくとも何れか1つを変化させることで、カーソル音を変化させてもよい。例えば、所定の周波数フィルタを用いて、カーソル音を変化させてもよい。また、例えば、複数の音を組み合わせてカーソル音を出力してもよく、カーソルオブジェクト38が指示する地形オブジェクト31の高さに応じて、組み合わせる音を異ならせてもよい。
【0096】
また、上記実施形態では、カーソルオブジェクト38を用いて仮想オブジェクトが選択されていない場合、1つの音データをカーソルオブジェクト38の高さに応じて変化させることにより、カーソル音を変化させた。すなわち、予め記憶された音データに対してプロセッサ20がプログラムに基づく処理を行うことで、カーソル音を変化させた。他の実施形態では、異なる複数の音データが予め記憶され、カーソルオブジェクト38の高さに応じて、複数の音データの中から何れかの音データが選択され、選択された音データに基づくカーソル音が出力されてもよい。
【0097】
また、上記実施形態では、仮想オブジェクトが選択されていない場合と、仮想オブジェクトが選択されている場合とで異なる音データが用いられ、カーソルオブジェクト38が移動する際のカーソル音が出力された。他の実施形態では、1つの音データに対する処理を行うことで、仮想オブジェクトが選択されていない場合と選択されている場合とで異なるカーソル音を出力してもよい。すなわち、予め記憶された音データに対してプロセッサ20がプログラムに基づく処理を行うことで、仮想オブジェクトが選択されていない場合に出力されるカーソル音と、仮想オブジェクトが選択されている場合に出力されるカーソル音とを異ならせてもよい。
【0098】
また、上記実施形態では、地形オブジェクト31は、地面を表すオブジェクトであるとしたが、地形オブジェクトは、例えば水面、建物内の床、階段等を表すオブジェクトであってもよい。
【0099】
また、上記実施形態では、1つの地形オブジェクトは平面であり、複数の地形オブジェクトによって全体として高低差のある地形オブジェクトが形成されるものとした。全体として地形オブジェクトが高低差を有していれば、地形オブジェクトはどのようなものでもよい。例えば、地形オブジェクトは、曲面によって形成されてもよいし、凹凸のある面によって形成されてもよい。また、地形オブジェクトは、高さの異なる複数の地点を有する平面(例えば、斜面)を有してもよい。そして、高低差を有する地形オブジェクト上の位置をカーソルオブジェクトを用いて指示することを前提として、カーソルオブジェクトが移動する際に、カーソルオブジェクトが指示する位置の高さに応じて、異なるカーソル音が出力されてもよい。
【0100】
また、上記実施形態では、カーソルオブジェクト38として、平面的なオブジェクトが用いられたが、任意の形状のオブジェクトがカーソルオブジェクトとして用いられてもよい。例えば、カーソルオブジェクトは、立体的なオブジェクトであってもよい。また、カーソルオブジェクトは、地形オブジェクト上を移動可能なキャラクタ(プレイヤキャラクタ30又はプレイヤキャラクタ30とは異なるキャラクタ)であってもよい。例えば、カーソルオブジェクトとしてのキャラクタが表示され、当該キャラクタを用いて地形オブジェクト上の位置を指示し、キャラクタによって指示された位置に仮想オブジェクトが配置されてもよい。この場合において、キャラクタが地形オブジェクト上を移動する際に、キャラクタの位置の高さに応じて、カーソル音が出力されてもよい。
【0101】
また、上記実施形態では、カーソルオブジェクト38は、操作入力に基づいて、地形オブジェクト31上を区画単位で(離散的に)移動された。他の実施形態では、カーソルオブジェクト38は、操作入力に基づいて、地形オブジェクト31上の任意の位置に(連続的に)移動されてもよい。
【0102】
また、上記実施形態では、カーソルオブジェクト38は、アナログスティック32に対する操作入力に応じて地形オブジェクト31を(又は地形オブジェクト31に沿って)移動するものとした。他の実施形態では、カーソルオブジェクト38は、他の操作入力に基づいて移動されてもよい。例えば、カーソルオブジェクト38は、タッチパネルによって検出されたタッチ位置に基づいて移動されてもよい。この場合、カーソルオブジェクト38が地形オブジェクト31上の第1の位置を指示しているときに、地形オブジェクト31上の第2の位置がタッチされた場合、当該第2の位置にカーソルオブジェクト38が移動する。このとき、第2の位置の高さに応じてカーソル音が出力されてもよい。
【0103】
また、カーソルオブジェクトは必ずしも表示されなくてもよい。例えば、本体装置2の内部的に地形オブジェクト上の指示位置を示すカーソルオブジェクトが定義されてもよい。この場合においても、カーソルオブジェクトが移動する(内部的な指示位置が変化する)際に、カーソルオブジェクトが指示する地形オブジェクトの高さに応じて、カーソル音が出力されてもよい。
【0104】
また、上記実施形態では、地形オブジェクトはゲーム処理の実行中に変化しないものとした。すなわち、上記実施形態では、地形オブジェクトは、予め記憶された地形データに基づいて形成され、地形データはゲーム処理の実行中にプレイヤの操作入力に応じて変化されないものとした。他の実施形態では、地形データは、上記ゲーム処理が行われる間、プレイヤの操作入力に応じて変化されてもよい。例えば、プレイヤの操作入力に応じて、地形オブジェクト上の所望の位置に穴が形成されたり、地形オブジェクト上の所望の位置に土が盛られたりすることにより、地形オブジェクトの一部又は全部の高さが変化されてもよい。例えば、初期的には平面的な地形オブジェクトが配置され、当該平面的な地形オブジェクト上に、プレイヤの操作入力に基づいて別の地形オブジェクトが配置されることにより、全体的として高低差の有する地形オブジェクトが形成されてもよい。プレイヤの操作入力に基づいて地形オブジェクトの高さが変化する場合でも、上述のように、カーソルオブジェクト38が指示する地形オブジェクトの高さに応じて、カーソルオブジェクト38が移動する際のカーソル音が変化されてもよい。
【0105】
また、上記フローチャートで示した処理は単なる例示に過ぎず、処理の順番や内容は適宜変更されてもよい。例えば、ステップS102の前に、ステップS104~ステップS108の処理が行われてもよい。この場合、カーソル移動操作があった場合に、先にカーソルオブジェクト38が指示する地形オブジェクト31の高さに応じてカーソル音が出力され、その後カーソルオブジェクト38が移動される。
【0106】
また、上記ゲームは単なる一例であり、他の任意のゲームにおいて上述した処理が行われてもよい。
【0107】
また、上記実施形態では、ゲームシステム1における本体装置2において上述した処理が行われることとしたが、上述した処理は他の任意の情報処理装置(例えば、パーソナルコンピュータ、スマートフォン、タブレット端末)等において実行されてもよい。また、上述した処理の一部又は全部は、ネットワーク(例えば、LANやWAN、インターネット)で接続された複数の装置の何れかにおいて実行されてもよい。例えば端末とサーバとを含む情報処理システムにおいて、上記フローチャートで示した処理の一部がサーバのプロセッサによって実行されてもよいし、端末のプロセッサによって実行されてもよい。
【0108】
以上、本発明について説明したが、上記説明は本発明の例示に過ぎず、種々の改良や変形が加えられてもよい。
【符号の説明】
【0109】
1 ゲームシステム
2 本体装置
12 ディスプレイ
20 プロセッサ
30 プレイヤキャラクタ
31 地形オブジェクト
35 椅子オブジェクト
38 カーソルオブジェクト
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13