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

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

▶ 株式会社ヘキサドライブの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-07-12
(45)【発行日】2024-07-23
(54)【発明の名称】プログラムおよび情報処理装置
(51)【国際特許分類】
   A63F 13/5378 20140101AFI20240716BHJP
   A63F 13/426 20140101ALI20240716BHJP
   A63F 13/2145 20140101ALI20240716BHJP
   A63F 13/5375 20140101ALI20240716BHJP
   A63F 13/5372 20140101ALI20240716BHJP
【FI】
A63F13/5378
A63F13/426
A63F13/2145
A63F13/5375
A63F13/5372
【請求項の数】 12
(21)【出願番号】P 2023133520
(22)【出願日】2023-08-18
【審査請求日】2024-02-15
【早期審査対象出願】
(73)【特許権者】
【識別番号】508273256
【氏名又は名称】株式会社ヘキサドライブ
(74)【代理人】
【識別番号】110001586
【氏名又は名称】弁理士法人アイミー国際特許事務所
(72)【発明者】
【氏名】阿部 浩美
(72)【発明者】
【氏名】田中 智大
【審査官】鈴木 崇雅
(56)【参考文献】
【文献】特開2016-101509(JP,A)
【文献】特開2020-044042(JP,A)
【文献】特開2019-154944(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00-98
A63F 9/24
(57)【特許請求の範囲】
【請求項1】
複数のオブジェクトを配置可能なオブジェクト配置空間を含む仮想空間を第1の視点で表したメイン画像と、前記オブジェクト配置空間を第2の視点で見たときの空き状態を示すサブ画像とを表示部に表示するステップと、
ユーザによるオブジェクトの選択操作中に、ユーザにより選択されているオブジェクトである選択オブジェクトを前記メイン画像上の対応する位置に表示するとともに、前記オブジェクト配置空間内における選択オブジェクトの配置予定位置を特定可能に前記サブ画像を更新表示する操作ステップと、
ユーザによる選択操作が終了したことに応じて、前記オブジェクト配置空間内の前記配置予定位置に前記選択オブジェクトを配置するステップとを、コンピュータに実行させる、プログラム。
【請求項2】
前記オブジェクト配置空間は、底面および側面を有する空間であり、
前記サブ画像は、前記底面を示すマップ画像である、請求項1に記載のプログラム。
【請求項3】
前記サブ画像の横軸および縦軸の少なくとも一方は、前記メイン画像の横軸および縦軸と相違する、請求項1に記載のプログラム。
【請求項4】
前記コンピュータに対し、
前記配置予定位置を、前記選択オブジェクトのサイズ情報、および、前記選択操作中のユーザのタップ位置に基づいて判定する判定ステップをさらに実行させる、請求項1に記載のプログラム。
【請求項5】
前記操作ステップにおいて、前記選択オブジェクトを画面上で移動させる場合、前記選択オブジェクトの略全体がユーザのタップ位置よりも移動方向前方に表示される、請求項4に記載のプログラム。
【請求項6】
前記操作ステップは、前記選択オブジェクトの選択操作中にユーザからの付加操作が入力された場合に、前記選択オブジェクトを変形表示するステップを含む、請求項1に記載のプログラム。
【請求項7】
当該プログラムは、前記コンピュータに、
大きさまたは形状の異なる複数の前記オブジェクト配置空間を選択可能に表示するステップをさらに実行させる、請求項1に記載のプログラム。
【請求項8】
前記コンピュータは、前記オブジェクトごとに、複数の評価指標それぞれの特徴量を記憶するメモリを含み、
当該プログラムは、前記コンピュータに、
前記オブジェクト配置空間に配置されたオブジェクト群に対する前記評価指標ごとの特徴量を表示するステップをさらに実行させる、請求項1に記載のプログラム。
【請求項9】
当該プログラムは、前記コンピュータに、
前記評価指標ごとに定められた最大特徴量と前記各オブジェクトの前記評価指標ごとの特徴量に基づいて、複数のオブジェクトアイコンを、選択可否を特定可能な態様で表示するステップをさらに実行させる、請求項8に記載のプログラム。
【請求項10】
前記複数のオブジェクトは、デフォルトで使用可能な第1のオブジェクトと、前記第1のオブジェクトの使用回数に応じて使用可能となる第2のオブジェクトとを含む、請求項1に記載のプログラム。
【請求項11】
当該プログラムは、キャラクタを育成するゲームのためのプログラムであり、
前記コンピュータに、
前記オブジェクト配置空間に配置されたオブジェクト群を評価するステップと、
前記オブジェクト群の評価結果に基づいて生成したコメントを、前記キャラクタからのコメントとして表示するステップとをさらに実行させる、請求項1に記載のプログラム。
【請求項12】
ユーザからの指示の入力を受け付ける入力部と、表示部と、プロセッサとを備えた情報処理装置であって、
前記プロセッサは、
複数のオブジェクトを配置可能なオブジェクト配置空間を含む仮想空間を第1の視点で表したメイン画像と、前記オブジェクト配置空間を第2の視点で見たときの空き状態を示すサブ画像とを前記表示部に表示し、
ユーザによるオブジェクトの選択操作中に、ユーザにより選択されているオブジェクトである選択オブジェクトを前記メイン画像上の対応する位置に表示するとともに、前記オブジェクト配置空間内における選択オブジェクトの配置予定位置を特定可能に前記サブ画像を更新表示し、
ユーザによる選択操作が終了したことに応じて、前記オブジェクト配置空間内の前記配置予定位置に前記選択オブジェクトを配置する処理を行う、情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラムおよび情報処理装置に関し、特に、仮想空間上のオブジェクト配置空間に複数のオブジェクトを配置するためのプログラムおよび情報処理装置に関する。
【背景技術】
【0002】
仮想空間に複数のオブジェクトを配置するゲーム(たとえば街造りゲーム)において、仮想空間は一つの視点のみから表示されることが一般的である。たとえば特開2020-110682号公報(特許文献1)では、建築を行う際に表示される仮想空間が、真上から見下ろした平面画像として表示されている。
【0003】
仮想空間を示す画像とは別の画像を表示するという観点では、特開2017-187978号公報(特許文献2)に、オブジェクト操作画面を表示するゲーム画面上に、可視領域操作画像を表示する技術が提案されている。これにより、興味のある領域を可視領域としてユーザに選択させることが可能となっている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2020-110682号公報
【文献】特開2017-187978号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1のように、一つの視点のみから仮想空間を表示する場合、直感的にオブジェクトを配置することができなかった。
【0006】
また、特許文献2の技術は、オブジェクト操作画面とは別に可視領域操作画像を表示することで、仮想空間上のオブジェクトの“配置状態”を確認可能とするものであり、仮想空間にオブジェクトを順次配置していく際の操作性については考慮されていない。
【0007】
本発明は、上記のような課題を解決するためになされたものであって、その目的は、仮想空間上のオブジェクト配置空間にオブジェクトを配置する際の操作性を向上させることのできるプログラム、および、情報処理装置を提供することである。
【課題を解決するための手段】
【0008】
この発明のある局面に従うプログラムは、i)複数のオブジェクトを配置可能なオブジェクト配置空間を含む仮想空間を第1の視点で表したメイン画像と、オブジェクト配置空間を第2の視点で見たときの空き状態を示すサブ画像とを表示部に表示するステップと、ii)ユーザによるオブジェクトの選択操作中に、当該選択オブジェクトをメイン画像上の対応する位置に表示するとともに、オブジェクト配置空間内における選択オブジェクトの配置予定位置を特定可能にサブ画像を更新表示する操作ステップと、iii)ユーザによる選択操作が終了したことに応じて、オブジェクト配置空間内の配置予定位置に選択オブジェクトを配置するステップとを、コンピュータに実行させる。
【0009】
このプログラムによれば、メイン画像とは異なる視点で表したサブ画像を表示部に同時に表示することにより、仮想空間上のオブジェクト配置空間の所望の位置に、直感的にオブジェクトを配置することができる。また、サブ画像に配置予定位置に対応する位置が特定可能に示されている状態で、選択操作を終了すると、(オブジェクトの表示位置が配置予定位置からずれていたとしても)仮想空間上の配置予定位置にオブジェクトを配置することができるので、仮想空間上のオブジェクト配置空間にオブジェクトを配置する際の操作性を向上させることができる。
【0010】
一つの実施形態において、オブジェクト配置空間は、底面および側面を有する空間であり、サブ画像は、底面を示すマップ画像である。このようなオブジェクト配置空間は、一例として弁当箱である。
【0011】
好ましくは、サブ画像の横軸および縦軸の少なくとも一方は、メイン画像の横軸および縦軸と相違する。より好ましくは、サブ画像の横軸および縦軸は、表示部の横軸および縦軸に一致する。
【0012】
好ましくは、当該プログラムは、コンピュータに対し、配置予定位置を、選択オブジェクトのサイズ情報、および、選択操作中のユーザのタップ位置に基づいて判定する判定ステップを実行させる。
【0013】
操作ステップにおいて、選択オブジェクトを画面上で移動させる場合、選択オブジェクトの略全体がユーザのタップ位置よりも移動方向前方に表示されることが望ましい。これにより、選択オブジェクトが指に隠れて見えなくなることを防止できる。
【0014】
好ましくは、移動ステップは、選択オブジェクトの選択操作中にユーザからの付加操作が入力された場合に、選択オブジェクトを変形表示するステップを含む。付加操作は、タップ操作、スワイプ操作、などである。変形表示は、回転、縮小、拡大を含む。
【0015】
好ましくは、当該プログラムは、コンピュータに、大きさまたは形状の異なる複数のオブジェクト配置空間を選択可能に表示するステップを実行させる。これにより、オブジェクト配置空間に配置可能なオブジェクトの組み合わせが変わるので、パズルゲームのような興趣性を向上させることができる。
【0016】
コンピュータは、オブジェクトごとに、複数の評価指標それぞれの特徴量を記憶するメモリ(設定データ記憶部)を含み、当該プログラムは、コンピュータに、オブジェクト配置空間に配置されたオブジェクト群に対する評価指標ごとの特徴量を表示するステップをさらに実行させることが望ましい。この場合、オブジェクト配置空間に配置するオブジェクトの組み合わせを変更することで特徴量が変化するため、興趣性を向上させることができる。
【0017】
一つの実施形態において、当該プログラムは、コンピュータに、評価指標ごとに定められた最大特徴量と各オブジェクトの評価指標ごとの特徴量に基づいて、複数のオブジェクトアイコンを、選択可否を特定可能な態様で表示するステップをさらに実行させる。これにより、操作性を向上できるとともに、オブジェクト配置空間に配置できるオブジェクトの組み合わせが制限されるので、興趣性をさらに向上させることができる。
【0018】
複数のオブジェクトは、デフォルトで使用可能な第1のオブジェクトと、第1のオブジェクトの使用回数に応じて使用可能となる第2のオブジェクトとを含んでいてもよい。
【0019】
好ましくは、当該プログラムは、キャラクタを育成するゲームのためのプログラムである。この場合、コンピュータに、オブジェクト配置空間に配置されたオブジェクト群を評価するステップと、オブジェクト群の評価結果に基づいて生成したコメントを、キャラクタからのコメントとして表示するステップとをさらに実行させてもよい。
【0020】
この発明のある局面に従う情報処理端末は、ユーザからの指示の入力を受け付ける入力部と、表示部と、プロセッサとを備えた情報処理装置であって、プロセッサは、i)複数のオブジェクトを配置可能なオブジェクト配置空間を含む仮想空間を第1の視点で表したメイン画像と、オブジェクト配置空間を第2の視点で見たときの空き状態を示すサブ画像とを表示部に表示し、ii)ユーザによるオブジェクトの選択操作中に、当該選択オブジェクトをメイン画像上の対応する位置に表示するとともに、オブジェクト配置空間内における選択オブジェクトの配置予定位置を特定可能にサブ画像を更新表示し、iii)ユーザによる移動操作が終了したことに応じて、オブジェクト配置空間内の配置予定位置に選択オブジェクトを配置する処理を行う。
【発明の効果】
【0021】
本発明によれば、仮想空間上のオブジェクト配置空間にオブジェクトを配置する際の操作性を向上させることができる。
【図面の簡単な説明】
【0022】
図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】本発明の実施の形態における配置予定位置の判定方法の説明図である。
【発明を実施するための形態】
【0023】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【0024】
本実施の形態に係るプログラムは、仮想空間上のオブジェクト配置空間に、複数のオブジェクトを順次配置するゲーム用のプログラムであり、より特定的には、オブジェクト配置空間をオブジェクト群で埋め尽くすゲーム用のプログラムである。本明細書では、このプログラムがお弁当作りゲーム用のアプリケーションプログラムであり、「オブジェクト配置空間」がお弁当箱、「オブジェクト」が食材である例について説明する。このお弁当作りゲームは、キャラクタ(典型的には人物)を育成する育成ゲームに含まれ得る。
【0025】
<情報処理装置の構成例>
はじめに、本実施の形態に係るプログラムを実行する情報処理装置1の概略構成について説明する。図1は、本実施の形態に係る情報処理装置1の概略構成を示すブロック図である。情報処理装置1は、ユーザが所有する端末装置であり、たとえば、スマートフォン、タブレット端末などであってもよいし、携帯型ゲーム装置であってもよい。
【0026】
情報処理装置1は、各種演算処理を実行するプロセッサ10と、ユーザからの指示を受け付けるとともに各種情報を表示するタッチパネル20と、各種プログラムおよびデータを記憶する記憶部31~33と、インターネットなどのネットワークに接続された通信部34とを備えている。
【0027】
タッチパネル20は、指やタッチペンなどによる接触入力を受け付ける入力部21と、各種画像やテキストなどの情報を表示する表示部22とを一体的に含む。タッチパネル20は、膜抵抗方式や静電容量方式など公知の技術により実装される。
【0028】
プロセッサ10は、タッチパネル20の入力部21に対するユーザの作用を検知する作用受付部11と、作用受付部11からの情報を処理してタッチパネル20に出力するデータ処理部12とを含む。プロセッサ10は、たとえばCPU(Central Processing Unit)により構成され、記憶部31に記憶されたゲームプログラムを実行することによって、作用受付部11およびデータ処理部12の機能が実現される。以下の説明において、記憶部31をプログラム記憶部31という。
【0029】
作用受付部11は、タッチパネル20への作用(入力)の有無を判別し、その結果を情報処理装置1の必要な要素に出力する。作用受付部11は、タッチパネル20に対する接触入力がなされた場合には、たとえば入力位置の座標情報および作用の種類(タッチ操作、スライド操作等)を検知する。作用受付部11は、連続して検知されていた入力が途切れることを検知することによって、タッチパネル20からの接触入力が解除されたことを検知する。
【0030】
データ処理部12は、記憶部32に予め記憶された設定データに基づいて、ユーザからの指示に対応したオブジェクトの表示処理等を行う。また、タッチパネル20に表示したオブジェクトの種類および座標情報等を特定するためのセーブデータを記憶部33に一時記憶する処理を行う。以下の説明において、記憶部32を設定データ記憶部32、記憶部33をセーブデータ記憶部33という。
【0031】
ゲームプログラムは、アプリケーションプログラムであり、たとえば通信部34を介して自装置にダウンロードされる。プログラム記憶部31および設定データ記憶部32は、典型的には、フラッシュメモリなどの不揮発性の記憶装置により実現される。セーブデータ記憶部33は、揮発性の記憶装置により実現され得る。設定データ記憶部32およびセーブデータ記憶部33のデータ構造例については後述する。
【0032】
なお、典型的には、情報処理装置1はタッチパネル20を有するものの、このような例に限定されず、入力部21はマウスやキーボードにより実現されてもよい。そのため、情報処理装置1は、据え置き型のPC(Personal Computer)によって実現することも可能である。
【0033】
<ゲームの概要>
本実施の形態に係るゲームプログラムにより実現されるお弁当作りゲームの概要を、以下に説明する。お弁当作りゲームでは、ユーザがタッチパネル20を指またはペンで操作することにより、仮想空間上のお弁当箱に、複数の食材オブジェクトを順次配置(収容)してお弁当箱を完成させる。
【0034】
(初期画面の具体例)
図2は、タッチパネル20に表示されるゲーム画面の初期画面の具体例を示す図である。本実施の形態において、ゲーム画面は縦長の画面である。
【0035】
ゲーム画面は、第1領域100と、第2領域200と、第3領域300とを含む。縦向きにしたタッチパネル20の縦方向(長手方向)をy軸方向、横方向をx軸方向とすると、第1~第3の領域100~300は、y軸に沿ってこの順序で(上から)並べられている。第1~第3の領域100~300の横幅は同一であり、タッチパネル20の横幅と略一致する。第1領域100は、他の領域200,300よりも大きく、タッチパネル20の面積の半分近くを占める。
【0036】
第1領域100は、弁当箱(オブジェクト配置空間)101を含む仮想空間を第1の視点で表したメイン画像110と、仮想空間上の弁当箱101を第2の視点で見たときの空き状態を示すサブ画像120とを含む。仮想空間を示すメイン画像110が第1領域100の大部分を占める。第1領域100は仮想領域に相当する。本実施の形態では、サブ画像120が、メイン画像110の右上に、これに重畳するように表示されている。第1の視点および第2の視点については後述する。
【0037】
本実施の形態では、第1領域100に、お弁当の栄養バランスを示す情報(以下「栄養バランス情報」という)130と、弁当箱選択ボタン140と、具材図鑑ボタン150とが、さらに表示されている。栄養バランス情報130は、弁当箱101に配置されたオブジェクト群(複数の食材オブジェクト)に対する栄養素ごとのポイント(数値)を示す情報であり、ゲームの進行に伴って更新表示される。
【0038】
弁当箱選択ボタン140および具材図鑑ボタン150は、初期画面だけでなく、ゲーム進行中においても選択可能に表示されることが望ましい。これらのボタン140,150および栄養バランス情報130もまた、メイン画像110に重畳表示されていてもよい。
【0039】
第2領域200は、第1領域100のすぐ下方に位置し、x方向に長い帯状領域である。第2領域200には、複数の食材アイコン210がx軸方向に沿って一列に並べられている。食材アイコン210は、弁当箱101に配置可能な食材オブジェクトを一義的に表した画像であり、典型的には、食材オブジェクトの縮小画像である。食材オブジェクトは、立体的な食材を二次元的に表した画像である。複数の食材アイコン210は、第2領域200内をx軸方向にスライド移動可能である。
【0040】
第3領域300は、ユーザが選択した食材(食材オブジェクト)に関する説明情報(以下「食材情報」という)を表示する領域である。この食材情報については後述する。
【0041】
(視点の違いについて)
図3は、メイン画像110およびサブ画像120の視点の違いを示す図である。図3(A)が第1の視点を示し、図3(B)が第2の視点を示す。
【0042】
図3(A)に示されるように、第1の視点は斜め上方からの視点であり、メイン画像110は典型的にはクォータービューと呼ばれる手法で表示されている。この手法は、立体を縦・横・高さの3つに区切り、これらを二等角投影で描画する手法である。メイン画像110の横軸wおよび縦軸hは、タッチパネル20のx軸方向およびy軸方向と一致しない。弁当箱101の高さ方向が、タッチパネル20のy軸方向と一致する。横軸wおよび縦軸hの交差角度は120度である。弁当箱101の平面形状が矩形形状である場合、弁当箱101の平面形状は菱形形状として表示される。
【0043】
第1の視点で表された弁当箱101は、菱形形状の底面111と、底面111の周囲を取り囲む側面112とを有する。底面111の横方向が横軸wに平行であり、底面111の縦方向が縦軸hに平行である。底面111を横軸wおよび縦軸hに沿って格子状に分割した菱形領域T1を、以下、タイルT1という。一例として、弁当箱101の底面111は、たとえば横軸w方向に8個、縦軸h方向に6個、合計48個のタイルT1で構成されている。全てのタイルT1の形状および大きさは基本的に同じである。
【0044】
第1の視点において手前側(タッチパネル20の下方側)に立ち上がるV字状の側面112に隣接するタイルT1(破線で示す)は、側面112に隠れて見えない状態となる。なお、タイルT1の区切り(マス目)は表示されなくてもよい。底面111のマス目は、食材オブジェクトの少なくとも一部が弁当箱101に重なった場合、あるいは、後述の配置予定位置が判定された場合に(のみ)、視認可能としてもよい。
【0045】
図3(B)に示されるように、第2の視点は真上からの視点であり、サブ画像120は底面111の全体を平面表示する。つまり、メイン画像110における弁当箱101の底面形状は菱形形状であったのに対し、サブ画像120が示す底面形状は矩形形状(長方形状)である。つまり、サブ画像120の横軸(x軸)および縦軸(y軸)と、メイン画像110の横軸wおよび縦軸hとは相違している。
【0046】
サブ画像120は、弁当箱101の底面111の空き状態を示すマップ画像であり、x軸方向およびy軸方向に行列状に並ぶ複数のタイル画像T2を含む。以下の説明において、サブ画像120を底面マップという。
【0047】
タイル画像T2は、メイン画像110におけるタイルT1に対応する。典型的には、タイル画像T2の個数は、タイルT1の個数と同じであり、サブ画像120は、8×6のタイル画像T2を含む。タイル画像T2のデフォルトの色彩は、全て同じである。色彩とは、色、模様、および濃淡の少なくとも一つを含む。タイル画像T2の色彩を変更することにより、弁当箱101の底面111の空き状態を表現する。なお、オブジェクトが配置されていない(空き状態の)タイル画像T2と、オブジェクトを配置済のタイル画像T2と、後述の配置予定位置に対応するタイル画像T2とが、異なる態様で表示されればよく、色彩以外の手法(たとえば、配置予定位置のタイルを点滅表示したり、アニメーション表示したりする)を採用してもよい。
【0048】
ここで、図3(B)に示されるように、底面マップ120の横軸w´および縦軸h´は、それぞれタッチパネル20のx軸方向およびy軸方向に対応していることが望ましい。これにより、仮想空間上で俯瞰した底面111のタイルT1の空き状態を、ゲーム画面上で直感的に把握することができる。
【0049】
(設定データの具体例)
図4は、設定データ記憶部32に記憶される設定データの具体例を示す図である。設定データは、食材オブジェクトごとに一意に定められた食材IDと、食材名と、サイズ情報と、栄養素情報とを含む。
【0050】
サイズ情報は、第1の視点で見たときの食材の大きさおよび形状を示す情報であり、本実施の形態では、食材の平面(底面)サイズを含む。平面サイズは、縦サイズおよび横サイズで表される。縦サイズは、図3(A)に示した縦軸hに沿うタイルT1の個数に対応し、横サイズは、図3(A)に示した横軸wに沿うタイルT1の個数に対応する。
【0051】
図5(A)~(F)に、食材オブジェクトの平面サイズ(縦×横)の具体例を示す。図5(A)~(F)はそれぞれ、「おにぎり(海苔)」、「サンドイッチ(ハムチーズ)」、「レンコンの炒め煮」、「玉子焼き(ダシ)」、「ミニトマト」、「うさぎリンゴ」の平面サイズが、横軸wおよび縦軸hを基準とした破線のマスで示されている。各食材オブジェクトの回転(変形)時の基準となるマスは、最も手前に位置するマス(横軸wと縦軸hとの交差部に位置するマス)である。以下、このマスを「基準マス」といい、図5では基準マスをハッチングで示す。
【0052】
本実施の形態では、各食材オブジェクトの選択操作(移動時など)の基準となる「重心部」は、基準マスと一致せず、食材オブジェクトの画像ごとに定められている。重心部は、典型的には、オブジェクト画像の中心位置付近である。各食材オブジェクトの重心部cの例を図5に示す。重心部cは、たとえば基準マスを通るy軸上に設けられる。平面サイズの小さい食材の重心部cは、基準マス内(画像の中心位置よりも下方)に位置していてもよい。これにより、選択操作の際に食材オブジェクトの略全体が指で隠れることを防止できる。
【0053】
栄養素情報は、たとえば5大栄養素の含有情報を示し、炭水化物(C)、タンパク質(P)、脂質(F)、ビタミン(V)、ミネラル(M)の5つの項目を含む。食材オブジェクトごとに、各栄養素のポイントが0~30未満(20以下)となるよう定められている。
【0054】
なお、サイズ情報は、食材の高さ(y軸方向のサイズ)を含んでいてもよい。また、設定データは、各食材オブジェクトの説明情報をさらに含んでいてもよい(図示せず)。
【0055】
(セーブデータの具体例)
図6は、セーブデータ記憶部33に記憶されるセーブデータの具体例を示す図である。本実施の形態では、ユーザが仮想空間上に表示する食材オブジェクトを選択する選択操作(具体的には、食材アイコン210を選択して第1領域100に移動させる操作)を行うことに応じて、セーブデータが生成される。セーブデータは、「仮想空間上のオブジェクト情報」と、「仮想空間上のオブジェクトの配置位置情報」とを含み、これらの情報が時系列に記憶される。
【0056】
「仮想空間上のオブジェクト情報」は、選択された食材アイコン210が表わす食材オブジェクトの食材IDと、その食材オブジェクトのサイズ情報とを含む。これらの情報は、設定データから特定可能である。
【0057】
「仮想空間上のオブジェクトの配置位置情報」は、選択された食材アイコン210が表わす食材オブジェクトの食材IDと、その食材オブジェクトの弁当箱101上における座標情報とを含む。食材IDは、「仮想空間上のオブジェクト情報」として記録される食材IDと一致する。座標位置情報は、当該食材オブジェクトが、弁当箱101の底面111を構成する複数のタイルT1のうちどのタイルT1を占有しているかを示す情報である。
【0058】
<お弁当ゲームの流れについて>
図7~10のフローチャートを参照して、本実施の形態に係るゲームプログラムに従った「お弁当作りゲーム」について説明する。図7図10に示す各処理は、情報処理装置1のプロセッサ10がプログラム記憶部31に記憶されたゲームプログラムを読み出して実行することにより実現される。
【0059】
(メイン処理)
図7は、本実施の形態に係るゲームプログラムのメイン処理を示すフローチャートである。
【0060】
図7を参照して、ユーザが「お弁当作りゲーム」を立ち上げると、プロセッサ10(データ処理部12)は、はじめに、図2に示した初期画面をタッチパネル20に表示する(ステップS1)。初期画面では、上述のように、第2領域200に、複数の食材アイコン210が選択可能に表示されている。ユーザは、第2領域200に描画された複数の食材アイコン210の中から、オブジェクト配置空間である弁当箱101に配置したい食材のアイコン210を一つ選択する。初期画面の第1領域100は、空状態の弁当箱101を含むメイン画像110と、各タイルT2(図3(B)参照)が同一の色彩で表されたサブ画像120とを含む。初期画面におけるサブ画像120のタイルT2の色彩を、第1の色彩という。
【0061】
プロセッサ10は、ユーザにより第2領域200上の食材アイコン210が指などで選択されたか否かを判定する(ステップS3)。食材アイコン210が選択された場合(ステップS3にてYES)、ステップS5に進む。食材アイコン210の選択が行われていない状態で、タッチパネル20に対する何らの操作が行われた場合、ステップS15に進む。ステップS15以降の処理については、「変更処理」として後に説明する。
【0062】
ステップS5において、プロセッサ10は、その食材アイコン210に対応する食材オブジェクト(以下「選択オブジェクト」という)のサイズ情報および栄養情報を特定する(ステップS5)。これらの情報は、設定データ記憶部32に記憶された設定データから特定可能である。たとえば「おにぎり(海苔)」が選択された場合、サイズ情報は3×4であり、栄養素情報は、炭水化物“10”、タンパク質“0”、脂質“0”、ビタミン“0”、ミネラル“1”である。
【0063】
本実施の形態では、選択された食材アイコン210に対応する食材オブジェクト(以下「選択オブジェクト」ともいう)の縮小画像を、仮想空間(第1領域100)に表示するとともに(ステップS7)、第1領域100の栄養バランス情報130を表示更新する(ステップS9)。後述の図13(A)には、「おにぎり(海苔)」の食材オブジェクト(選択オブジェクト)OB1の縮小画像が、タップ位置の近傍に表示されている。タップ位置とは、指等がタッチパネル20に接触する位置である。
【0064】
図11に示すように、栄養バランス情報130は、5大栄養素の含有率を表わし、たとえば表形式で表されている。本実施の形態では、栄養素ごとに所持可能な上限ポイントが定められている。この場合、栄養バランス情報130は、栄養素ごとの上限ポイントと使用ポイントとを判別可能に表示されることが望ましい。ステップS9では、選択オブジェクトの栄養素情報に応じて使用ポイントが更新される。図11には、炭水化物(C)とミネラル(M)の使用ポイントを更新した例が示されている。なお、栄養バランス情報130は、円グラフや棒グラフで表されてもよい。
【0065】
食材アイコン210が選択された時点で(たとえば栄養バランス情報130の更新と同時に)、選択オブジェクトに関する食材情報を、第3領域300に表示してもよい。図12に、第3領域300の表示例を示す。第3領域300は、選択オブジェクトの食材名を表示する欄301と、食材オブジェクトの説明を表示する欄302と、食材オブジェクトのマスサイズ(平面サイズ)を表示する欄303と、食材オブジェクトの栄養素を表示する欄304とを含む。
【0066】
欄303には、食材オブジェクトのマス図形が表示される。このマス図形は、底面マップ120と同じ第2の視点で表したマス図形であることが望ましい。つまり、x軸およびy軸を基準とした矩形形状のマス図形であることが望ましい。欄304には、各栄養素が表形式で表示される。第3領域300には、弁当完成を指示するための完成ボタン305が表示されてもよい。
【0067】
このように、食材アイコン210をタップ(タッチ)した段階で(弁当箱101に配置する前に)、栄養バランス情報130を表示更新することにより、食材の詰め直しをすることなく、お弁当作りを効率良く行うことができる。なお、弁当箱101に配置した食材オブジェクトの再配置方法については後述する。
【0068】
続いて、プロセッサ10は、選択オブジェクトの移動操作の有無を判別する(ステップS11)。具体的には、図13(A)を参照して、食材アイコン210のタップ操作に引き続き、食材アイコン210に対応する選択オブジェクトOB1のスワイプ操作(スライド操作)が連続で行われたか否かを判定する。入力部21がマウスの場合、ドラッグ操作が行われたか否かを判定する。
【0069】
なお、プロセッサ10は、食材アイコン210のタップ操作に引き続いて検知される(x軸に対する)スワイプ角度が所定角度以上である場合に、仮想空間への選択オブジェクトの移動操作と判定する。スワイプ角度が所定角度未満である場合(つまり、x軸に対して略平行にスワイプ操作された場合)、第2領域200に表示する食材アイコン210のスライド操作と判定し、食材アイコン210をx軸方向に沿って移動させる。なお、食材アイコン210に対応するオブジェクトを仮想空間に移動させる操作は、スワイプ操作以外の方法、たとえば食材アイコン210の長押し操作(タップ操作を所定時間以上行う)などにより実現されてもよい。
【0070】
選択オブジェクトの移動操作が行われたと判定した場合(ステップS11にてYES)、オブジェクト配置処理を実行する(ステップS13)。オブジェクト配置処理については、図8にサブルーチンを挙げて説明する。一方、選択オブジェクトの移動操作が行われることなく食材アイコン210の選択が解除された場合(ステップS11にてNO)、ステップS3に戻り、上記処理を繰り返す。また、オブジェクト配置処理を実行した場合であっても、弁当が未完成であれば(ステップS27にてNO)、ステップS3に戻り、上記処理を繰り返す。
【0071】
(オブジェクト配置処理)
図8は、オブジェクト配置処理を示すフローチャートである。
【0072】
図8を参照して、選択オブジェクトの移動操作が行われている間(ステップS31でYES)、プロセッサ10は、選択オブジェクトをタッチ位置に応じた態様で表示する(ステップS33)。具体的には、図13(A)~(C)に示すように、第2領域200から第1領域100の弁当箱101に近付くにつれて、選択オブジェクトOB1は徐々に大きくなるように描画される。これにより、食材アイコン210で示された食材をそのままメイン画像110に移動させて弁当箱101に詰めるような演出を行うことができる。
【0073】
食材アイコン210が選択されたことに応じてメイン画像110に最初に表示される食材オブジェクトの大きさは、食材アイコン210で示される食材よりも小さくてもよい。食材オブジェクト(選択オブジェクト)は、少なくとも一部が弁当箱101の底面111に重なった状態においては、最大の大きさ(弁当箱101に収容される大きさ)であることが望ましい。
【0074】
選択オブジェクトOB1の大きさは、タッチ位置(xy座標)に応じて定められていてもよいし、単純に、ユーザによるスワイプ操作に連動して選択オブジェクトが拡大するアニメーションを再生してもよい。これにより、食材オブジェクトの縮小画像である食材アイコン210をそのまま仮想空間に移動させたような印象を与えることができる。なお、選択オブジェクトOB1の大きさが最大(規定の大きさ)となった後は、表示位置に関わらず、最大の大きさを維持することが望ましい。図示しない形態として、選択オブジェクトOB1は、メイン画像110において常時(当初から)最大の大きさで表示されてもよい。
【0075】
図13(A)~(C)に示すように、選択オブジェクトOB1の移動操作中(選択操作中)、選択オブジェクトOB1は、タッチ位置(図面では、人差し指の位置)に下端部が重なるように表示される。あるいは、図14(A),(B)に示すように、選択オブジェクトOB2が、タッチ位置に重ならなくてもよい。データ処理部12は、選択オブジェクトOB1の重心部とタッチ位置との間隔(典型的にはy軸方向の距離)が、所定値(所定のピクセル数)となるように、選択オブジェクトOB1を表示する。選択オブジェクトOB1の大きさが徐々に大きくなる形態においては、所定値は、表示中の選択オブジェクトの大きさごとに定められることが望ましい。なお、データ処理部12の他の処理方法として、タップ位置が選択オブジェクトOB1の基準マスに重なるように選択オブジェクトを表示してもよい。
【0076】
選択オブジェクトOB1を第2領域200から第1領域100に移動させる場合など、選択オブジェクトOB1を画面上において下から上へ移動させる場合、選択オブジェクトOB1の略全体が、ユーザのタップ位置よりも移動方向前方に表示される。したがって、図13(A)のように選択オブジェクトOB1の表示画像が比較的小さい場合でも、その略全体を視認可能である(選択オブジェクトが指に隠れない)。これにより、操作性を向上させることができる。略全体とは、半分以上を意味し、全体が表示されることも含む。
【0077】
本実施の形態のように、第1領域100が第2領域200の上方に位置する場合、操作性の観点から、選択オブジェクトOB1はタッチ位置よりも上方(y軸正方向)に表示されることが望ましい。そのため、画面上において上から下へ移動させる場合には、選択オブジェクトOB1の略全体がユーザのタップ位置よりも移動方向後方に表示されてよい。
【0078】
なお、図示しない形態として、第1領域100と第2領域200とが左右に隣接する形態においては、データ処理部12は、選択オブジェクトOB1の重心部とタッチ位置との間隔が、x軸方向において所定値(所定のピクセル数)となるように選択オブジェクトOB1を表示してもよい。つまり、選択オブジェクトOB1の略全体が、タッチ位置よりも左側または右側(移動方向前方)に表示されてもよい。
【0079】
選択オブジェクトの移動操作中に、ユーザから「付加操作」が入力された場合の処理(ステップS35、S37)については後述する。
【0080】
選択オブジェクトの移動操作中、プロセッサ10は、常時、弁当箱101内における「配置予定位置」を判定する(ステップS39)。配置予定位置がある場合(ステップS41でYES)、その位置を特定可能に底面マップ120を更新表示する(ステップS43)。「配置予定位置」は、選択オブジェクトのサイズ情報、および、移動操作中のユーザのタップ位置に基づいて判定される。
【0081】
具体的には、図25に示すように、弁当箱101の底面111のうち、ユーザのタップ位置P1,P2を基準点(原点)とするhw軸に挟まれた領域(タイル)を「判定対象領域」とし、この判定対象領域内にある“空”のタイルT1、すなわち配置可能タイルを検索する。図25では、判定対象領域をハッチングで示している。そして、複数の配置可能タイルのうち、選択オブジェクトのマス数を満たし、かつ、タップ位置(基準点)P1,P2に近いタイル群の位置を、配置予定位置と判断する。なお、タイルT1が空か否かは、セーブデータ記憶部33に記憶されたセーブデータに基づいて判断可能である。
【0082】
図13(A)のように弁当箱101が空の状態においては、選択オブジェクトOB1の移動開始時、全てのタイルT1が配置可能タイルとなる。本実施の形態では、配置可能タイルのうち、選択オブジェクトOB1の必要マス数(タイルT1の個数)を満たし、かつ、タップ位置から、y軸正方向において最も近い位置が、配置予定位置として選択される。このような条件を「配置判定条件」という。
【0083】
図13(B),(C)では、弁当箱101における配置予定位置が想像線で示され、底面マップ120における、配置予定位置に対応する複数のタイル画像(以下「マス領域」という)121が、他と異なる色彩で表示されている。マス領域121は、第1の色彩とは異なる第2の色彩で表示される。
【0084】
配置予定位置の判定処理は、ユーザが食材オブジェクトOB1の選択を解除する(指を離す)まで継続される。底面マップ120中、マス領域121が第2の色彩で表示された状態で、ユーザが指を離すと(ステップS31にてNO)、図13(D)に示すように、選択オブジェクトOB1が弁当箱101内の配置予定位置に配置される(ステップS47)。つまり、選択オブジェクトOB1は、ユーザによる移動操作が終了したことに応じて、配置予定位置のタイルT1に図5(A)に示したマスが一致するように配置される。配置予定位置は上述の配置判定条件で判定されるため、選択オブジェクトOB1の表示位置が配置予定位置から離れていたとしても、選択オブジェクトOB1の移動操作が終了したことに応じて、オブジェクトOB1は配置予定位置に瞬時に移動し、配置予定位置において収容状態となる。
【0085】
なお、選択オブジェクトOB1の少なくとも一部が配置可能タイルに重なっている、という条件を、「配置判定条件」に含めてもよい。この追加の条件は、選択オブジェクトOB1の重心部の位置を基準に判定可能である。この場合、選択オブジェクトOB1の重心部が重なる配置可能タイルのうち、選択オブジェクトOB1の必要マス数(タイルT1の個数)を満たし、かつ、タップ位置から、y軸方向において最も近い位置を、配置予定位置として選択してもよい。この配置判定条件によれば、図13(B)のように選択オブジェクトOB1が底面111に重なっていない状態においては、「配置予定位置なし」と判定される。この配置判定条件を採用することで、配置予定位置が選択オブジェクトOB1から遠く離れることがないので、ユーザは、実際にお弁当箱に食材を詰めるような感覚で、お弁当作りゲームを楽しむことができる。また、パズルゲームのような楽しみ方をすることが可能である。
【0086】
このように、選択オブジェクト自体のマスが配置可能タイルに一致していない状態で(一致する前段階で)、選択オブジェクトを配置可能な位置(配置予定位置)を判定し、その位置に選択オブジェクトを自動的に(瞬時に)移動させて配置することを、本ゲームにおいて「よしな配置」という。
【0087】
図13(D)には、弁当箱101内に配置(収容)された「おにぎり」の食材オブジェクトOB1´が表示されている。選択オブジェクトOB1の操作中は、その表示位置に関わらず、選択オブジェクトOB1の全体が表示されるのに対し、収容状態の食材オブジェクトOB1´は、弁当箱101の側面112や(既に配置済の食材オブジェクトがある場合)他の配置済の食材オブジェクトとの位置関係に従って、描画される。具体的には、図13(D)のように食材オブジェクトOB1´を弁当箱101の手前側に配置する場合、一部が弁当箱101の側面112で隠れているように表示される。なお、食材オブジェクトOB1´は、配置予定位置に到着すると、特定の演出(たとえば一度浮き上がる(弾む)ような演出)をした後、収容状態に移行することが望ましい。
【0088】
弁当箱101内にオブジェクトOB1´が配置されると、底面マップ120を更新表示する(ステップS49)。具体的には、底面マップ120におけるマス領域121の色彩を第3の色彩に変更する。図13(D)に示す底面マップ120は、第3の色彩で表示されたマス領域(複数のタイル画像)122を含む。第3の色彩で表示されたマス領域122は、食材オブジェクトが配置された領域であることを示す。このように、仮想空間上の弁当箱101とは別に、異なる視点で表した底面マップ120を同時に表示することにより、ユーザは弁当箱101の空き具合を容易に把握することができるので、操作性を向上できる。
【0089】
弁当箱101内にオブジェクトOB1´が配置されると、弁当箱101内に配置したオブジェクトOB1´についてのオブジェクト情報および座標情報(配置位置情報)を、セーブデータ記憶部33に一時記憶する(ステップS51)。この処理が終わると、処理はメインルーチンに戻される。なお、選択オブジェクトOB1の選択を解除した段階で、たとえば図13(A)のように配置予定位置が特定されていない場合には(ステップS45にてNO)、選択オブジェクトOB1を画面から消去し(ステップS53)、メインルーチンに戻る。
【0090】
本実施の形態においては、図13(B),(C)のように選択オブジェクトOB1の表示位置から移動方向前方(画面上方)にずれた位置を、配置予定位置として判定する。そのため、弁当箱101の底面111上の所望の位置に選択オブジェクトを移動させなくても(その前段階で)、選択オブジェクトを所望の位置に配置(よしな配置)することができる。したがって、本実施の形態によれば、選択オブジェクトの操作性を向上させることができる。本実施の形態において、選択オブジェクトは、重心部がタッチ位置よりもy軸正方向(下から上への移動方向前方)に表示され、選択オブジェクトの表示位置よりもさらにy軸正方向(下から上への移動方向前方)にずれた位置が配置予定位置として判定されるので、お弁当を効率良く完成することができる。その結果、ユーザの満足度を向上させることができる。
【0091】
また、食材オブジェクトの選択中に判定された配置予定位置は底面マップ120に反映されるので、仮想空間上の食材オブジェクトの表示態様を一定としたままで(表示色などを変えることなく)、食材オブジェクトを弁当箱101内の所望の位置に収容可能かどうかを把握することができる。また、メイン画像110に表示中の食材オブジェクトの大きさが小さく、弁当箱101に収容時の食材オブジェクトの大きさが分からない段階であっても、選択中の食材オブジェクトを配置できる位置を正確に把握することができる。また、弁当箱101の底面111全体を視認できない場合でも、所望の位置に食材オブジェクトを配置することができる。
【0092】
上述のように、食材アイコン210の選択、選択オブジェクトの移動、選択オブジェクトの選択解除(指を離す操作)を順に行うことで、弁当箱101内を複数の食材オブジェクトで埋め尽くす(詰める)ことができる。図14図18には、具体例として、「おにぎり」の食材オブジェクトOB1´を配置した後、「サンドイッチ」の食材オブジェクトOB2(OB2´)、「玉子焼き」の食材オブジェクトOB3(OB3´)、「うさぎリンゴ」の食材オブジェクトOB4(OB4´)、「ミニトマト」の食材オブジェクトOB5(OB5´)、「レンコンの炒め煮」の食材オブジェクトOB6(OB6´)を順に配置した例が示されている。
【0093】
最後の食材オブジェクトOB6に関しては、図18に示すように、食材オブジェクトOB6のマス数を満たす配置可能タイルが1か所しかない場合には、食材オブジェクトOB6を選択した時点で配置予定位置を判定してもよい。この場合、ユーザはメイン画像110上のどこで指を離しても、食材オブジェクトOB6を弁当箱101内に配置することができる。なお、食材オブジェクトOB6の少なくとも一部が底面111に重なった時点で配置予定位置を特定可能に表示してもよい。
【0094】
図13図18に示されるように、ユーザが食材オブジェクトを選択している状態においては、弁当箱101に配置済の食材オブジェクトとの位置関係に関わらず、食材オブジェクトの全体を表示し、ユーザが食材オブジェクトの選択を解除した場合に、配置済の食材オブジェクトとの位置関係に応じた表示を行う。つまり、手前の食材オブジェクトが奥の食材オブジェクトに重なるように、弁当箱101内の食材オブジェクトを描画する。
【0095】
ここで、図8のステップS35の付加操作について説明する。付加操作については、図16を参照しながら説明する。「付加操作」とは、選択オブジェクトの移動操作中(選択操作中)に追加で行われる操作である。図16(B)に示すように、付加操作は、選択オブジェクトOB4を操作している指F1とは別の指F2による操作である。この付加操作は、タップ操作であってもよいし、スワイプ操作であってもよい。あるいは、図示しない形態として、選択オブジェクトOB4を操作している指F1によるプレス(強く押す)操作であってもよい。入力部21がマウスおよびキーボードを含む場合、たとえばマウスのクリック操作を付加操作としてもよいし、キーボードの所定のボタンの押下を付加操作としてもよい。
【0096】
図16(A)に示すデフォルトの選択オブジェクトOB4の移動中に、付加操作が入力されると、プロセッサ10は、選択オブジェクトOB4の画像を、基準マスを中心として左右に反転表示することにより、選択オブジェクトOB4を90度回転表示する(ステップS37)。この角度(90度)は、底面111を真上から見た場合の選択オブジェクトOB4の回転角度であり、メイン画像110における選択オブジェクトOB4の回転角度は、縦軸hと横軸wの交差角度(120度)に相当する。たとえば図5(F)に示したように、元の平面サイズ(縦軸h×横軸w)が1×4の「うさぎリンゴ」を選択中に付加操作が入力されると、4×1の平面サイズの「うさぎリンゴ」が表示される。
【0097】
このように、弁当箱101の空き領域の形状に合わせて選択オブジェクトOB4を移動させながら回転させることができるので、弁当箱101内の空き領域に素早く選択オブジェクトOB4を配置することができ、操作性が向上する。なお、図面上、指F1および指F2はそれぞれ別の手である例を記載したが、同じ手の指(人差し指と中指など)で実施可能である。
【0098】
なお、付加操作がスワイプ操作の場合、スワイプ操作の方向(時計回り、反時計回り)に応じて、選択オブジェクトOB4の回転方向を異ならせるようにしてもよい。また、本実施の形態では、付加操作が入力された場合に、移動中の選択オブジェクトを回転表示する例を示したが、このような例に限定されない。すなわち、付加操作入力時の変形表示は、回転に限定されず、たとえば拡大、縮小などであってもよい。
【0099】
図18(C)に示したように、弁当箱101を食材オブジェクトOB1´~OB6´で満たした後、完成ボタン305が指示されると(図7のステップS27にてYES)、一連のお弁当作り処理を終了する。完成ボタン305は、弁当箱101に空きがある状態でも選択可能としてもよい。
【0100】
(変更処理)
再び図7を参照して、ステップS15以降の処理について説明する。食材アイコン210の選択が行われていない状態で、タップ操作などによって弁当箱101内の食材オブジェクトが選択された場合(ステップS15にてYES)、ステップS17に進む。食材アイコン210の選択が行われていない状態で、弁当箱選択ボタン140(図2参照)が選択された場合(ステップS15にてNO、ステップS23にてYES)、ステップS25に進み、弁当箱選択処理を実行する。弁当箱選択処理については後述する。これらのいずれの処理も行われていない場合、ステップS27に進む。
【0101】
ステップS17において、プロセッサ10は、選択された配置済の食材オブジェクト(選択オブジェクト)の全体を表示する(ステップS17)。具体的には、選択オブジェクトの一部が弁当箱101の側面112に隠れていた場合であっても、側面112に重畳するように、選択オブジェクトの全体を表示する。つまり、選択オブジェクトが弁当箱101から飛び出たような演出を行う。これにより、そのオブジェクトが選択されたことを強調表示することができる。また、興趣性を高める観点で、選択オブジェクトの全体を表示する際に、選択オブジェクトが一度浮き上がる(弾む)ような特定の演出をすることも望ましい。このとき、底面マップ120における選択オブジェクトに対応するマス領域121の色彩を、第3の色彩から第2の色彩に変更する。
【0102】
弁当箱101内のオブジェクトを選択したまま移動操作(典型的にはスワイプ操作)が行われると(ステップS19にてYES)、上述した「オブジェクト配置処理」に移行する(ステップS13)。オブジェクト配置処理では、図8のフローチャートに示したように、メイン画像110上におけるタッチ位置に応じて選択オブジェクトを移動させるとともに、底面マップ120を更新表示する。
【0103】
たとえば、図19(A)~(C)には、弁当箱101内に配置されていた「おにぎり」の食材オブジェクトOB11を選択し、そのまま弁当箱101外に移動させる例が示されている。図19(B),(C)では、ユーザのタップ位置を基準とした判定領域が弁当箱101の底面111外であり、配置可能タイルが無いことから、底面マップ120において食材オブジェクトOB11に対応するマス領域121が消去されている(第3の色彩のマス領域121が縮小している)。これにより、図19(B),(C)のタップ位置では、食材オブジェクトOB11の配置予定位置が無いことが把握できる。
【0104】
図19(C)のように食材オブジェクトOB11を弁当箱101外に移動させてから、食材オブジェクトOB11の選択を解除すると、図19(D)に示すように、食材オブジェクトOB11はゲーム画面から消去される(ステップS45,S53)。
【0105】
一方、弁当箱101内の食材オブジェクトに対して(移動操作を伴うことなく)タップ操作のみを行った場合(ステップS19にてNO)、プロセッサ10は、オブジェクト回転処理を実行する(ステップS21)。オブジェクト回転処理については、図9にサブルーチンを挙げて説明する。
【0106】
(オブジェクト回転処理)
図9は、オブジェクト回転処理を示すフローチャートである。
【0107】
図9を参照して、プロセッサ10は、選択された食材オブジェクトの位置変更が可能か否かを判定する(ステップS61)。具体的には、弁当箱101内の配置可能タイルを特定し、が配置可能タイル内において、食材オブジェクトを(基準マスを中心として)反転可能か否かを判定する。たとえば図20(A)に示すように、「りんご」の食材オブジェクトOB12が弁当箱101内に配置されていると仮定する。図20(B)に示すように、ユーザが食材オブジェクトOB12をタップした場合、食材オブジェクトOB12は想像線で示す位置に反転可能と判定される。
【0108】
このように、食材オブジェクトOB12の位置変更が可能である場合(ステップS61でYES)、食材オブジェクトOB12の反転処理を実行する。これにより、食材オブジェクトOB12が90度、回転表示され(ステップS63)、図20(C)に示すように弁当箱101内に再配置される(ステップS65)。
【0109】
また、食材オブジェクトOB12の再配置位置に基づいて、底面マップ120が更新表示される(ステップS67)。また、セーブデータ記憶部33に記録された食材オブジェクトOB12の座標情報を更新する(ステップS69)。
【0110】
他方、食材オブジェクトの位置変更が不可の場合(ステップS61にてNO)、たとえば、「回転不可」を示す態様で食材オブジェクトを表示し(ステップS71)、食材オブジェクトを弁当箱101内の元の位置に戻す(ステップS73)。「回転不可」であることは、表示以外の方法(音など)によりユーザに知らせてもよいし、ユーザに知らせることなく食材オブジェクトを元の位置に戻してもよい。
【0111】
ステップS69またはS73の処理が終わると、図7のメインルーチンに戻る。なお、本実施の形態では、操作性を考慮して、弁当箱101内の食材オブジェクトを一度タップするだけで、その食材オブジェクトを回転可能としたが、食材オブジェクトを一つの指で選択した後(または同時に)、別の指による付加操作が検出されたことに応じて、その食材オブジェクトを回転可能としてもよい。この場合、誤検知による回転を防ぐことができる。
【0112】
(弁当箱選択処理)
図10は、弁当箱選択処理を示すフローチャートである。
【0113】
図10を参照して、ゲーム画面上に表示された弁当箱選択ボタン140(図2参照)が選択されると、ゲーム画面が、図21(A)に示すような弁当箱リストを含む弁当箱選択画面41に切り替わる(ステップS81)。弁当箱選択画面41は、ゲーム画面にポップアップ画面として表示されてもよい。弁当箱リストには、複数種類のお弁当箱(画像)が表示される。お弁当箱リストでは、ゲーム画面で使用中の弁当箱が「選択中」の弁当箱であることが表示される。図21(A)では、お弁当箱リストに、一例として、「いつものお弁当箱」の選択領域411と「まげわっぱ」の選択領域412とが表示され、前者が現在選択中であることが示されている。
【0114】
弁当箱選択画面41において他のお弁当箱をタップすることなく「戻る」ボタン413をタップした場合(ステップS83にてNO、ステップS91にてYES)、メインルーチンに戻り、ゲームが続行される。
【0115】
ユーザが他の弁当箱(まげわっぱ)をタップ(選択)した場合(ステップS83にてYES)、図21(B)に示すように、変更確認のためのポップアップ画面42を表示する(ステップS85)。ポップアップ画面42は、たとえば、変更せずに戻ることを指示する「NO」ボタン421と、変更を指示する「YES」ボタン422とを含む。ポップアップ画面42において「NO」ボタン421を選択すると(ステップS87でNO)、弁当箱選択画面41に戻る。
【0116】
変更確認のポップアップ画面42において「YES」ボタン422が選択され、OK指示が入力されると(ステップS87でYES)、セーブデータ記憶部33に記憶されていたオブジェクト情報・座標情報を初期化する(ステップS89)。つまり、元のお弁当箱に食材オブジェクトを配置していた場合、この食材オブジェクトに関する情報を削除する。この処理が終わると、メインルーチンのステップS1に戻り、他の弁当箱を表示した初期画面が、ゲーム画面に表示される。
【0117】
図22(A)に、「まげわっぱ」の弁当箱が選択された場合の初期画面を示す。図2の初期画面と比較すると、メイン画像110に含まれる弁当箱101Aの形状・大きさが、元の弁当箱101と異なる。元の弁当箱101の底面形状は略長方形状であり、変更後の弁当箱101Aの底面形状は楕円形状である。また、弁当箱101Aの面積(容積)は、元の弁当箱101よりも小さい。この場合、図22(A)においてメイン画像110と同画面に表示される底面マップ120に含まれるマス数、および、底面マップ120の全体形状が、図2に示した底面マップ120とは異なっている。このように、底面マップ120が表示されることにより、弁当箱101A内に配置可能な食材オブジェクトを直感的に把握することができる。
【0118】
図22(B),(C)では、「おにぎり」の食材オブジェクトOB21が選択されて、弁当箱101Aに配置される例が示されている。選択した弁当箱101,101Aによってオブジェクト配置空間の大きさ・形状が変わるため、パズルゲームのような興趣性を得ることができる。なお、弁当箱選択画面41に表示される弁当箱リストには、大きさ、および、形状の少なくとも一方が異なる複数の弁当箱が表示されればよい。
【0119】
図23(A)に示すように、弁当箱101Aに複数の食材オブジェクトOB21~OB24が詰められて、完成ボタン305(図12)が選択されると、図23(B)に示すように、完成した「お弁当」の画像(以下「完成画像」という)50が表示される。完成画像50は、図示されるように布で包まれた状態のお弁当の画像であってもよいし、巾着に入れた状態のお弁当の画像であってもよい。
【0120】
お弁当作りゲームで作成した「お弁当」は、育成キャラクタに手渡しするような演出が行われる。これにより、単純に食材を詰めるだけのお弁当作りゲームと比較して、興趣性を向上させることができる。
【0121】
<その他の処理・特徴>
(1)具材図鑑
図2の初期画面に示したように、ゲーム画面には、具材図鑑ボタン150が表示されている。具材図鑑ボタン150が選択されると、図24(A)に示すようなお弁当具材一覧画面61が表示される。図24(A)に示すように、お弁当具材一覧画面61では、食材オブジェクトを明示的に表示した第1のウィンドウ611と、食材オブジェクトの輪郭のみが表示された第2のウィンドウ612とが混在している。
【0122】
第1のウィンドウ611に表示された食材オブジェクトは、現段階で開放されている食材オブジェクトを示し、ゲーム画面の第2領域200において選択可能な食材アイコン210に対応する。第2のウィンドウ612に輪郭のみが表示された食材オブジェクトは、現段階でロックされている食材オブジェクトを示す。つまり、ゲーム画面の第2領域200において食材アイコン210として表示されない食材オブジェクトである。第2のウィンドウ612に輪郭のみが表示された食材オブジェクトは、育成ゲームに関連する一定の条件をクリアした場合に選択可能となる。
【0123】
お弁当具材一覧画面61においても、第1のウィンドウ611のみが選択可能であってもよい。第1のウィンドウ611が選択されると、図24(B),(C)に示されるように、食材説明画面62,63が表示される。食材説明画面62,63は、各食材の栄養情報、サイズ情報、説明情報が含まれ得る。
【0124】
具材図鑑で管理される複数の食材オブジェクトは、デフォルトで使用可能な食材オブジェクト(第1のオブジェクト)と、第1のオブジェクトの使用回数に応じて使用可能となる食材オブジェクト(第2のオブジェクト)とを含む。この場合、ゲーム画面の第3領域300に表示される食材情報に、第2のオブジェクトに関する情報が含まれてもよい。図12では、「おにぎり」の食材オブジェクト(第1のオブジェクト)に関する食材情報に、「おにぎり」をあと何回使用すれば別の食材オブジェクト(第2のオブジェクト)が解放されるかを示す付加情報306が含まれている。
【0125】
なお、お弁当具材一覧画面61には、現段階で開放されている第1の食材オブジェクトのみが表示されてもよい。
【0126】
(2)食材アイコンの表示態様
図11(B)に示したように栄養バランス情報130を規定する各栄養素に上限ポイントが定められている場合、第2領域200に表示される複数の食材アイコン210を、選択可否を特定可能な態様で表示してもよい。具体的には、たとえば炭水化物の仕様ポイントが既に上限ポイントに達している場合、炭水化物のポイントを有する食材アイコン210は選択不可として、グレー表示することが考えられる。
【0127】
このようにすることにより、栄養バランスの良い食材オブジェクトを弁当箱101に効率良く配置することができる。なお、各栄養素の上限ポイントは、同一でなくてもよい。また、ゲーム回数などに応じて、上限ポイントを増減させてもよい。
【0128】
(3)育成キャラクタからのコメント
図23(B)に示したような「お弁当」を、朝に育成キャラクタに手渡しすると、当日の夜、育成ゲームを起動すると、育成キャラクタから「お弁当」に関するコメントを得ることができる。
【0129】
この場合、設定データ記憶部32に複数のコメントを予め用意しておき、お弁当箱に詰めた食材の仕上がり状態(全体的な色合いなど)および栄養バランスの少なくとも一方に基づいて、複数のコメントから最適なコメントを選択して表示してもよい。すなわち、プロセッサ10は、弁当箱101に配置されたオブジェクト群の評価処理と、評価結果に基づいて最適なコメントを選択または生成する処理と、選択または生成したコメントを、キャラクタからのコメントとして表示する処理とを実行するようにしてもよい。なお、プロセッサ10は、複数のコメントのなかから、ランダムにコメントを選択して表示してもよい。
【0130】
このように、育成キャラクタからのコメントを表示することにより、お弁当作りを続ける意欲が沸くので、お弁当作りゲームを長期間、楽しむことができる。
【0131】
なお、お弁当箱に詰めた食材の仕上がり状態および栄養バランスの少なくとも一方に基づいて、キャラクタの成長指数(たとえば、強さ、体力、友好度など)を変化させてもよい。あるいは、食材の使用回数に応じて、キャラクタの成長指数を変化させてもよいし、育成ゲームにおける他のゲームでのアイテムまたはステータスをゲットできるようにしてもよい。たとえば後者の場合、設定データ記憶部32に、食材ごとに、使用回数とアイテム情報またはステータス情報とが関連付けられて記憶されていればよい。
【0132】
「お弁当」を完成した時点で、お弁当箱に詰めた食材の仕上がり状態(全体的な色合いなど)および栄養バランスの少なくとも一方に基づいて、作成したお弁当名を表示してもよい。たとえば、タンパク質を多く含む食材ばかり詰められた場合、「プロテイン弁当」と表示し、同じ色合いの食材ばかり詰められた場合、「一色弁当」と表示することが考えられる。このように、オブジェクト配置空間に配置したオブジェクト群の意匠性および(または)評価指標に基づいて、完成した空間の名称を表示することで、ユーザは、予定通りの空間を作ることができたか否かを直感的に把握することができ、興趣性が向上する。
【0133】
<変形例>
(1)本実施の形態では、底面マップ120の視点(第2の視点)が、真上からの視点であることとしたが、メイン画像110の視点(第1の視点)と異なっていればよい。また、底面マップ120の横軸および縦軸が、タッチパネル20のx軸およびy軸に一致する例を示したが、このような例に限定されない。たとえば、底面マップ120の横軸を、メイン画像110の横軸wと一致させてもよい。なお、底面マップ120の横軸および縦軸をタッチパネル20のx軸およびy軸に一致させることにより、底面111の平面形状を容易に把握できるだけでなく、底面マップ120の表示スペースを省スペース化できるメリットもある。
【0134】
また、本実施の形態では、弁当箱101の底面111を分割するタイルT1の形状および大きさが共通(同一)であることとしたが、異なる形状または大きさのタイルが混在していてもよい。食材オブジェクトの平面サイズを定義するマスも同様に、異なる形状または大きさのものが混在していてもよい。底面マップ120のタイルT2の形状および大きさは、底面111のタイルT1の形状および大きさに対応していればよい。
【0135】
(2)本実施の形態に係るゲームプログラムにより実行されるゲームが、弁当箱に食材を詰めるゲームである例を示したが、このような例に限定されない。当該ゲームにおけるオブジェクト配置方法は、側面(立壁部)を有する箱体のオブジェクト配置空間に、複数形状(複数種類)のオブジェクトを詰めるゲームに適用可能である。あるいは、側面を有さない平面状のオブジェクト配置空間に、複数形状(複数種類)のオブジェクトを詰めるゲームにも適用可能である。このようなゲームはたとえば街造りゲームであってもよい。これらのケースにおいては、上述した食材の栄養素は、何らかの評価指標に基づく特徴量に置換可能である。
【0136】
オブジェクト配置空間に対して配置可能なオブジェクトの個数が比較的多い場合(オブジェクト配置空間が大きい場合)等においては、メイン画像110にオブジェクト配置空間の一部のみが拡大表示されてもよい。メイン画像110に表示する部分は、スワイプ操作等によってずらせることが望ましい。このようなケースにおいても、サブ画像120にオブジェクト配置空間全体の空き状態が示されるため、オブジェクトを配置する際の操作性を良好に維持できる。
【0137】
なお、本実施の形態におけるオブジェクト配置方法は、ゲーム以外の分野においても適用可能である。
【0138】
(3)情報処理装置1が実行するプログラム(ゲームプログラム)を、CD-ROM(Compact Disc-ROM)などの光学媒体や、メモリカードなどのコンピュータ読取り可能な一時的でない(non-transitory)記録媒体にて記録させて提供することができる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
【0139】
本発明にかかるプログラムは、コンピュータのオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明にかかるプログラムに含まれ得る。
【0140】
また、本発明にかかるプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明にかかるプログラムに含まれ得る。
【0141】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0142】
1 情報処理装置、10 プロセッサ、11 作用受付部、12 データ処理部、20 タッチパネル、21 入力部、22 表示部、31 プログラム記憶部、32 設定データ記憶部、33 セーブデータ記憶部、34 通信部、101,101A 弁当箱(オブジェクト配置空間)、110 メイン画像、111 底面、112 側面、120 サブ画像(底面マップ)、130 栄養バランス情報、140 弁当箱選択ボタン、150 具材図鑑ボタン、210 食材アイコン、OB1~OB6,OB11,OB12,OB21,OB24 食材オブジェクト、P1,P2 タップ位置、T1,T2 タイル。
【要約】
【課題】仮想空間上のオブジェクト配置空間にオブジェクトを配置する際の操作性を向上させること。
【解決手段】プログラムは、i)複数のオブジェクトを配置可能なオブジェクト配置空間(101)を含む仮想空間を第1の視点で表したメイン画像(110)と、オブジェクト配置空間を第2の視点で見たときの空き状態を示すサブ画像(120)とを表示部に表示するステップと、ii)ユーザによるオブジェクト(OB1)の選択操作中に、選択オブジェクトをメイン画像上の対応する位置に表示するとともに、オブジェクト配置空間内における選択オブジェクトの配置予定位置を特定可能にサブ画像を更新表示するステップと、iii)ユーザによる選択操作が終了したことに応じて、オブジェクト配置空間内の配置予定位置に選択オブジェクト(OB1´)を配置するステップとを、コンピュータに実行させる。
【選択図】図13
図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