(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-11
(45)【発行日】2023-10-19
(54)【発明の名称】ゲームプログラム、情報処理システム、情報処理装置、および、ゲーム処理方法
(51)【国際特許分類】
A63F 13/5258 20140101AFI20231012BHJP
A63F 13/63 20140101ALI20231012BHJP
A63F 13/55 20140101ALI20231012BHJP
G06T 19/00 20110101ALI20231012BHJP
【FI】
A63F13/5258
A63F13/63
A63F13/55
G06T19/00 A
(21)【出願番号】P 2021154374
(22)【出願日】2021-09-22
【審査請求日】2022-01-27
【前置審査】
(73)【特許権者】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】100158780
【氏名又は名称】寺本 亮
(74)【代理人】
【識別番号】100121359
【氏名又は名称】小沢 昌弘
(74)【代理人】
【識別番号】100130269
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】加藤 賢
(72)【発明者】
【氏名】高橋 幸嗣
【審査官】鈴木 崇雅
(56)【参考文献】
【文献】特開2006-268818(JP,A)
【文献】特開平11-007543(JP,A)
【文献】[実況]どうぶつの森 アンハッピーホームデザイナー 9日目,Youtube[Online][Video],2015年09月01日,https://www.youtube.com/watch?v=n-MMpZInjeo,[検索日 2023年2月6日]
(58)【調査した分野】(Int.Cl.,DB名)
A63F 9/24、13/00-13/98
G06T 19/00
(57)【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータに、
仮想空間内の
部屋である所定の領域において、当該領域内に設置される設置オブジェクトの選択、設置、および、移動のうち少なくともいずれかを含む編集を操作入力に基づいて行わせ、
操作入力に基づく完了指示に応じて、または、所定の完了条件を満たしたことに応じて、少なくとも1つのシーンを含む演出であって、仮想カメラに基づいて前記領域内の画像を当該シーン毎に表示する完了時演出を行わせ、
前記シーンにおいて、
前記仮想カメラの注視点を、前記領域に設置された前記設置オブジェクトおよび前記領域内に配置されたキャラクタのうち少なくともいずれかの位置に設定させ、
前記注視点にある前記設置オブジェクトまたは前記キャラクタの向きに基づいて設定される優先度に基づいて、前記領域内に設置された前記設置オブジェクトが設置されていない位置に前記仮想カメラを設定させる、ゲームプログラム。
【請求項2】
前記完了時演出は、複数のシーンを含み、
前記コンピュータに、前記複数のシーン毎に、
前記仮想カメラの注視点を再設定させ、
前記仮想カメラの位置を再設定させる、請求項1に記載のゲームプログラム。
【請求項3】
前記コンピュータに、
前記領域に設置された前記設置オブジェクト、前記領域内
の所定の位置、および、前記領域内に配置されたキャラクタのうちのいずれかの位置から、前記仮想カメラの注視点を、前記シーン毎に予め設定された順序で設定させる、請求項2に記載のゲームプログラム。
【請求項4】
前記コンピュータに、
前記シーン中において、当該シーンの開始時に設定された前記仮想カメラの位置から、前記仮想カメラの位置、姿勢、および、画角のうち少なくともいずれかを変化させる、
請求項3に記載のゲームプログラム。
【請求項5】
前記コンピュータに、
前記仮想カメラに関して予め設定された複数の制御方法のうちいずれかを前記シーン毎に選択させ、
前記シーン毎に選択された前記制御方法に基づいて、当該シーン中において前記仮想カメラの位置、姿勢、および、画角のうち少なくともいずれかを制御させる、請求項4に記載のゲームプログラム。
【請求項6】
前記制御方法の選択において選択可能な制御方法は、設定された前記注視点の位置が、前記設置オブジェクト、前記領域内の前記所定の位置、および、前記キャラクタのうちのいずれの位置であるかに応じて異なる、請求項5に記載のゲームプログラム。
【請求項7】
前記制御方法はランダムに選択される、請求項5または請求項6に記載のゲームプログラム。
【請求項8】
前記コンピュータに、
前記注視点が前記部屋内の前記所定の位置に設定された前記シーンにおいて、前記仮想カメラの位置を当該部屋の外に設定させる、請求項
3から請求項7のいずれか1項に記載のゲームプログラム。
【請求項9】
前記コンピュータに、
前記注視点が前記部屋内の前記所定の位置に設定され、かつ、前記仮想カメラの位置が前記部屋の外に設定された前記シーンにおいて、前記仮想カメラを平行移動させる方法と、前記注視点を固定して前記仮想カメラを回転移動させる方法とを含む複数の制御方法のうちいずれかに基づいて前記仮想カメラを制御させる、請求項
8に記載のゲームプログラム。
【請求項10】
前記コンピュータに、
前記注視点が前記設置オブジェクトまたは前記キャラクタに設定された前記シーンにおいて、前記仮想空間における水平方向に前記仮想カメラの位置を変化させる制御方法を除いた複数の制御方法のいずれかに基づいて前記仮想カメラを制御させる、請求項
1に記載のゲームプログラム。
【請求項11】
前記キャラクタは、前記完了指示に応じて、または、前記完了条件を満たしたことに応じて、前記領域に配置されるノンプレイヤキャラクタである、請求項1から請求項
10のいずれか1項に記載のゲームプログラム。
【請求項12】
プロセッサと、ゲームプログラムを記憶する記憶媒体とを備える情報処理システムであって、
前記プロセッサは、前記ゲームプログラムを実行することにより、
仮想空間内の
部屋である所定の領域において、当該領域内に設置される設置オブジェクトの選択、設置、および、移動のうち少なくともいずれかを含む編集を操作入力に基づいて行い、
操作入力に基づく完了指示に応じて、または、所定の完了条件を満たしたことに応じて、少なくとも1つのシーンを含む演出であって、仮想カメラに基づいて前記領域内の画像を当該シーン毎に表示する完了時演出を行い、
前記シーンにおいて、
前記仮想カメラの注視点を、前記領域に設置された前記設置オブジェクトおよび前記領域内に配置されたキャラクタのうち少なくともいずれかの位置に設定し、
前記注視点にある前記設置オブジェクトまたは前記キャラクタの向きに基づいて設定される優先度に基づいて、前記領域内に設置された前記設置オブジェクトが設置されていない位置に前記仮想カメラを設定する、情報処理システム。
【請求項13】
前記完了時演出は、複数のシーンを含み、
前記プロセッサは、前記複数のシーン毎に、
前記仮想カメラの注視点を再設定し、
前記仮想カメラの位置を再設定する、請求項
12に記載の情報処理システム。
【請求項14】
前記プロセッサは、
前記領域に設置された前記設置オブジェクト、前記領域内
の所定の位置、および、前記領域内に配置されたキャラクタのうちのいずれかの位置から、前記仮想カメラの注視点を、前記シーン毎に予め設定された順序で設定する、請求項
13に記載の情報処理システム。
【請求項15】
前記プロセッサは、
前記シーン中において、当該シーンの開始時に設定された前記仮想カメラの位置から、前記仮想カメラの位置、姿勢、および、画角のうち少なくともいずれかを変化させる、請求項
14に記載の情報処理システム。
【請求項16】
前記プロセッサは、
前記仮想カメラに関して予め設定された複数の制御方法のうちいずれかを前記シーン毎に選択し、
前記シーン毎に選択された前記制御方法に基づいて、当該シーン中において前記仮想カメラの位置、姿勢、および、画角のうち少なくともいずれかを制御する、請求項
15に記載の情報処理システム。
【請求項17】
前記制御方法の選択において選択可能な制御方法は、設定された前記注視点の位置が、前記設置オブジェクト、前記領域内の前記所定の位置、および、前記キャラクタのうちのいずれの位置であるかに応じて異なる、請求項
16に記載の情報処理システム。
【請求項18】
前記制御方法はランダムに選択される、請求項
16または請求項
17に記載の情報処理システム。
【請求項19】
前記プロセッサは、
前記注視点が前記部屋内の前記所定の位置に設定された前記シーンにおいて、前記仮想カメラの位置を当該部屋の外に設定する、請求項
14から請求項18のいずれか1項に記載の情報処理システム。
【請求項20】
前記プロセッサは、
前記注視点が前記部屋内の前記所定の位置に設定され、かつ、前記仮想カメラの位置が前記部屋の外に設定された前記シーンにおいて、前記仮想カメラを平行移動させる方法と、前記注視点を固定して前記仮想カメラを回転移動させる方法とを含む複数の制御方法のうちいずれかに基づいて前記仮想カメラを制御する、請求項
19に記載の情報処理システム。
【請求項21】
前記プロセッサは、
前記注視点が前記設置オブジェクトまたは前記キャラクタに設定された前記シーンにおいて、前記仮想空間における水平方向に前記仮想カメラの位置を変化させる制御方法を除いた複数の制御方法のいずれかに基づいて前記仮想カメラを制御する、請求項
12に記載の情報処理システム。
【請求項22】
前記キャラクタは、前記完了指示に応じて、または、前記完了条件を満たしたことに応じて、前記領域に配置されるノンプレイヤキャラクタである、請求項
12から請求項
21のいずれか1項に記載の情報処理システム。
【請求項23】
仮想空間内の
部屋である所定の領域において、当該領域内に設置される設置オブジェクトの選択、設置、および、移動のうち少なくともいずれかを含む編集を操作入力に基づいて行い、
操作入力に基づく完了指示に応じて、または、所定の完了条件を満たしたことに応じて、少なくとも1つのシーンを含む演出であって、仮想カメラに基づいて前記領域内の画像を当該シーン毎に表示する完了時演出を行い、
前記シーンにおいて、
前記仮想カメラの注視点を、前記領域に設置された前記設置オブジェクトおよび前記領域内に配置されたキャラクタのうち少なくともいずれかの位置に設定し、
前記注視点にある前記設置オブジェクトまたは前記キャラクタの向きに基づいて設定される優先度に基づいて、前記領域内に設置された前記設置オブジェクトが設置されていない位置に前記仮想カメラを設定する、情報処理装置。
【請求項24】
前記完了時演出は、複数のシーンを含み、
前記情報処理装置は、
前記仮想カメラの注視点を再設定し、
前記仮想カメラの位置を再設定する、請求項
23に記載の情報処理装置。
【請求項25】
前記シーン中において、当該シーンの開始時に設定された前記仮想カメラの位置から、前記仮想カメラの位置、姿勢、および、画角のうち少なくともいずれかを変化させる、請求項
23または請求項
24に記載の情報処理装置。
【請求項26】
前記仮想カメラに関して予め設定された複数の制御方法のうちいずれかを前記シーン毎に選択し、
前記シーン毎に選択された前記制御方法に基づいて、当該シーン中において前記仮想カメラの位置、姿勢、および、画角のうち少なくともいずれかを制御する、請求項
25に記載の情報処理装置。
【請求項27】
情報処理システムによって実行されるゲーム処理方法であって、
仮想空間内の
部屋である所定の領域において、当該領域内に設置される設置オブジェクトの選択、設置、および、移動のうち少なくともいずれかを含む編集を操作入力に基づいて行い、
操作入力に基づく完了指示に応じて、または、所定の完了条件を満たしたことに応じて、少なくとも1つのシーンを含む演出であって、仮想カメラに基づいて前記領域内の画像を当該シーン毎に表示する完了時演出を行い、
前記シーンにおいて、
前記仮想カメラの注視点を、前記領域に設置された前記設置オブジェクトおよび前記領域内に配置されたキャラクタのうち少なくともいずれかの位置に設定し、
前記注視点にある前記設置オブジェクトまたは前記キャラクタの向きに基づいて設定される優先度に基づいて、前記領域内に設置された前記設置オブジェクトが設置されていない位置に前記仮想カメラを設定する、ゲーム処理方法。
【請求項28】
前記完了時演出は、複数のシーンを含み、
前記複数のシーン毎に、
前記仮想カメラの注視点を再設定し、
前記仮想カメラの位置を再設定する、請求項
27に記載のゲーム処理方法。
【請求項29】
前記シーン中において、当該シーンの開始時に設定された前記仮想カメラの位置から、前記仮想カメラの位置、姿勢、および、画角のうち少なくともいずれかを変化させる、請求項
27または請求項
28に記載のゲーム処理方法。
【請求項30】
前記仮想カメラに関して予め設定された複数の制御方法のうちいずれかを前記シーン毎に選択し、
前記シーン毎に選択された前記制御方法に基づいて、当該シーン中において前記仮想カメラの位置、姿勢、および、画角のうち少なくともいずれかを制御する、請求項
29に記載のゲーム処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想空間におけるオブジェクトの配置をユーザが編集することが可能なゲームプログラム、情報処理システム、情報処理装置、および、ゲーム処理方法に関する。
【背景技術】
【0002】
従来、仮想空間における、オブジェクトが配置された領域(例えば、家具が配置された部屋)について、ユーザがオブジェクトの配置等を編集することができるゲームがある(例えば、非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0003】
【文献】“Animal Crossing: New Horizons”、[online]、任天堂株式会社、[令和3年9月1日検索]、インターネット<https://www.animal-crossing.com/new-horizons/create/>
【発明の概要】
【発明が解決しようとする課題】
【0004】
オブジェクトの配置を編集するゲームにおいて、オブジェクトの配置に関する編集を完了した後に、オブジェクトの配置をユーザに見せるための効果的な演出が行われることが好ましい場合がある。
【0005】
それ故、本発明の目的は、オブジェクトの配置をユーザに見せるための演出を効果的に行うことができるゲームプログラム、情報処理システム、情報処理装置、および、ゲーム処理方法を提供することである。
【課題を解決するための手段】
【0006】
上記の課題を解決すべく、本発明は、以下の(1)~(15)の構成を採用した。
【0007】
(1)
本発明の一例は、情報処理装置のコンピュータに、次の処理を実行させるゲームプログラムである。
・仮想空間内の所定の領域において、当該領域内に設置される設置オブジェクトの選択、設置、および、移動のうち少なくともいずれかを含む編集を操作入力に基づいて行う。
・操作入力に基づく完了指示に応じて、または、所定の完了条件を満たしたことに応じて、少なくとも1つのシーンを含む演出であって、仮想カメラに基づいて領域内の画像を当該シーン毎に表示する完了時演出を行う。
・上記シーンにおいて、仮想カメラの注視点を、領域に設置された設置オブジェクト、領域内の所定の位置、および、領域内に配置されたキャラクタのうちいずれかの位置に設定する。
・上記シーンにおいて、領域内に設置された設置オブジェクトが設置されていない位置に仮想カメラを設定する。
【0008】
上記(1)の構成によれば、設置オブジェクトが設置されていない位置に設定された仮想カメラに基づいて生成される画像を用いて完了時演出が行われるので、演出を効果的に行うことができる。
【0009】
(2)
完了時演出は、複数のシーンを含んでもよい。ゲームプログラムは、コンピュータに、複数のシーン毎に、仮想カメラの注視点を再設定させ、仮想カメラの位置を再設定させてもよい。
【0010】
上記(2)の構成によれば、複数のシーン毎に仮想カメラの注視点および位置が変化し得るので、バリエーションに富んだ演出を行うことができる。
【0011】
(3)
ゲームプログラムは、コンピュータに、領域に設置された設置オブジェクト、領域内の所定の位置、および、領域内に配置されたキャラクタのうちのいずれかの位置から、仮想カメラの注視点を、シーン毎に予め設定された順序で設定させてもよい。
【0012】
上記(3)の構成によれば、領域内における種々のオブジェクトまたは位置に注視点を設定することができ、バリエーションに富んだシーンを表示することができる。
【0013】
(4)
ゲームプログラムは、コンピュータに、シーン中において、当該シーンの開始時に設定された仮想カメラの位置から、仮想カメラの位置、姿勢、および、画角のうち少なくともいずれかを変化させてもよい。
【0014】
上記(4)の構成によれば、動きのある演出でシーンを表示することができる。
【0015】
(5)
ゲームプログラムは、コンピュータに、次の処理を実行させてもよい。
・仮想カメラに関して予め設定された複数の制御方法のうちいずれかをシーン毎に選択する。
・シーン毎に選択された制御方法に基づいて、当該シーン中において仮想カメラの位置、姿勢、および、画角のうち少なくともいずれかを制御する。
【0016】
上記(5)の構成によれば、シーン毎に仮想カメラの制御方法を異ならせることができるので、完了時演出のバリエーションを増やすことができる。
【0017】
(6)
制御方法の選択において選択可能な制御方法は、設定された注視点の位置が、設置オブジェクト、領域内の所定の位置、および、キャラクタのうちのいずれの位置であるかに応じて異なってもよい。
【0018】
上記(6)の構成によれば、注視点が設定される対象の種類に応じた制御方法で仮想カメラを制御することができる。
【0019】
(7)
制御方法はランダムに選択されてもよい。
【0020】
上記(7)の構成によれば、完了時演出が行われる度に異なる内容のシーンを生成することができ、ユーザが飽きにくい演出を行うことができる。
【0021】
(8)
領域は、仮想空間内の部屋であってもよい。領域内の所定の位置は、部屋内の位置であってもよい。
【0022】
上記(8)の構成によれば、仮想空間における部屋内の様子を表す演出を効果的に行うことができる。
【0023】
(9)
ゲームプログラムは、コンピュータに、注視点が部屋内の所定の位置に設定されたシーンにおいて、仮想カメラの位置を当該部屋の外に設定させてもよい。
【0024】
上記(9)の構成によれば、領域内の設置オブジェクトが仮想カメラと干渉する可能性を低減することができる。
【0025】
(10)
ゲームプログラムは、コンピュータに、注視点が部屋内の所定の位置に設定され、かつ、仮想カメラの位置が部屋の外に設定されたシーンにおいて、仮想カメラを平行移動させる方法と、注視点を固定して仮想カメラを回転移動させる方法とを含む複数の制御方法のうちいずれかに基づいて仮想カメラを制御させてもよい。
【0026】
上記(10)の構成によれば、部屋内の設置オブジェクトが仮想カメラと干渉することなく仮想カメラを移動させることができる。
【0027】
(11)
領域は、仮想空間内の部屋であってもよい。
ゲームプログラムは、コンピュータに、注視点が設置オブジェクトまたはキャラクタに設定されたシーンにおいて、部屋内に設置された設置オブジェクトが設置されていない位置に仮想カメラを設定させてもよい。
【0028】
上記(11)の構成によれば、注視点の位置にある設置オブジェクトまたはキャラクタが他の設置オブジェクトによって遮られることで適切に表示されない可能性を低減することができる。
【0029】
(12)
ゲームプログラムは、コンピュータに、注視点が設置オブジェクトまたはキャラクタに設定されたシーンにおいて、部屋内において設置オブジェクトが設置されていない位置のうちから、注視点にある設置オブジェクトまたはキャラクタの向きに基づいて設定される優先度に基づいて仮想カメラの位置を設定させてもよい。
【0030】
上記(12)の構成によれば、注視点の位置にある設置オブジェクトまたはキャラクタの向きに適した位置に仮想カメラを配置しやすくすることができる。
【0031】
(13)
ゲームプログラムは、コンピュータに、注視点が設置オブジェクトまたはキャラクタに設定されたシーンにおいて、仮想空間における水平方向に仮想カメラの位置を変化させる制御方法を除いた複数の制御方法のいずれかに基づいて仮想カメラを制御させてもよい。
【0032】
上記(13)の構成によれば、シーン中において仮想カメラが移動することで領域内の設置オブジェクトと干渉する可能性を低減することができる。
【0033】
(14)
キャラクタは、完了指示に応じて、または、完了条件を満たしたことに応じて、領域に配置されるノンプレイヤキャラクタであってもよい。
【0034】
上記(14)の構成によれば、完了時演出において、領域に関連するキャラクタを編集領域とともにユーザに対して提示することができる。
【0035】
(15)
領域は、仮想空間内の屋外に設定される領域であってもよい。領域内の所定の位置は、仮想空間内における空、所定の地形、または、所定の建築物の位置であってもよい。
【0036】
上記(15)の構成によれば、仮想空間内の屋外についての完了時演出のバリエーションを増やすことができる。
【0037】
なお、本発明の別の一例は、上記(1)~(15)における処理を実行する情報処理装置または情報処理システムであってもよい。また、本発明の別の一例は、上記(1)~(15)における処理を実行するゲーム処理方法であってもよい。
【発明の効果】
【0038】
上記のゲームプログラム、情報処理システム、情報処理装置、および、ゲーム処理方法によれば、オブジェクトの配置をユーザに見せるための演出を効果的に行うことができる。
【図面の簡単な説明】
【0039】
【
図1】本体装置に左コントローラおよび右コントローラを装着した状態の一例を示す図
【
図2】本体装置から左コントローラおよび右コントローラをそれぞれ外した状態の一例を示す図
【
図7】本体装置と左コントローラおよび右コントローラとの内部構成の一例を示すブロック図
【
図8】本実施形態におけるゲーム空間内における部屋の一例を示す図
【
図9】仮想カメラの注視点が基準注視位置に設定される場合における部屋の一例を示す図
【
図10】仮想カメラの注視点がキャラクタに設定される場合における部屋の一例を示す図
【
図11】仮想カメラの注視点が設置オブジェクトに設定される場合における部屋の一例を示す図
【
図12】仮想カメラの注視点がキャラクタに設定される場合における、仮想カメラの初期位置の決定方法の一例を示す図
【
図13】仮想カメラの注視点が設置オブジェクトに設定される場合における、仮想カメラの初期位置の決定方法の一例を示す図
【
図14】編集領域が庭であって、仮想カメラの注視点がキャラクタに設定される場合における、仮想カメラの初期位置の決定方法の一例を示す図
【
図15】編集領域が庭であって、仮想カメラの注視点が設置オブジェクトに設定される場合における、仮想カメラの初期位置の決定方法の一例を示す図
【
図16】ゲームシステムにおける情報処理に用いられる各種データの一例を示す図
【
図17】ゲームシステムによって実行される完了時演出処理の流れの一例を示すフローチャート
【
図18】中間シーンにおいて仮想カメラの注視点がキャラクタに設定された場合におけるステップS3の処理の詳細な流れの一例を示すサブフローチャート
【
図19】中間シーンにおいて仮想カメラの注視点が設置オブジェクトに設定された場合におけるステップS3の処理の詳細な流れの一例を示すサブフローチャート
【発明を実施するための形態】
【0040】
[1.ゲームシステムの構成]
以下、本実施形態の一例に係るゲームシステムについて説明する。本実施形態におけるゲームシステム1の一例は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、左コントローラ3および右コントローラ4がそれぞれ着脱可能である。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できる。また、ゲームシステム1は、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる(
図2参照)。以下では、本実施形態のゲームシステム1のハードウェア構成について説明し、その後に本実施形態のゲームシステム1の制御について説明する。
【0041】
図1は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。
図1に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
【0042】
図2は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。
図1および
図2に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
【0043】
図3は、本体装置2の一例を示す六面図である。
図3に示すように、本体装置2は、略板状のハウジング11を備える。本実施形態において、ハウジング11の主面(換言すれば、表側の面、すなわち、ディスプレイ12が設けられる面)は、大略的には矩形形状である。
【0044】
なお、ハウジング11の形状および大きさは、任意である。一例として、ハウジング11は、携帯可能な大きさであってよい。また、本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
【0045】
図3に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。
【0046】
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
【0047】
本体装置2は、ハウジング11の内部においてスピーカ(すなわち、
図6に示すスピーカ88)を備えている。
図3に示すように、ハウジング11の主面には、スピーカ孔11aおよび11bが形成される。そして、スピーカ88の出力音は、これらのスピーカ孔11aおよび11bからそれぞれ出力される。
【0048】
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21を備える。
【0049】
図3に示すように、本体装置2は、スロット23を備える。スロット23は、ハウジング11の上側面に設けられる。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、アプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、アプリケーションのプログラム等)を記憶するために用いられる。また、本体装置2は、電源ボタン28を備える。
【0050】
本体装置2は、下側端子27を備える。下側端子27は、本体装置2がクレードルと通信を行うための端子である。本実施形態において、下側端子27は、USBコネクタ(より具体的には、メス側コネクタ)である。上記一体型装置または本体装置2単体をクレードルに載置した場合、ゲームシステム1は、本体装置2が生成して出力する画像を据置型モニタに表示することができる。また、本実施形態においては、クレードルは、載置された上記一体型装置または本体装置2単体を充電する機能を有する。また、クレードルは、ハブ装置(具体的には、USBハブ)の機能を有する。
【0051】
図4は、左コントローラ3の一例を示す六面図である。
図4に示すように、左コントローラ3は、ハウジング31を備える。本実施形態においては、ハウジング31は、縦長の形状、すなわち、上下方向(すなわち、
図1および
図4に示すy軸方向)に長い形状である。左コントローラ3は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング31は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ3は、横長となる向きで把持されることも可能である。左コントローラ3が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0052】
左コントローラ3は、アナログスティック32を備える。
図4に示すように、アナログスティック32は、ハウジング31の主面に設けられる。アナログスティック32は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック32を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。なお、左コントローラ3は、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、本実施形態においては、アナログスティック32を押下する入力が可能である。
【0053】
左コントローラ3は、各種操作ボタンを備える。左コントローラ3は、ハウジング31の主面上に4つの操作ボタン33~36(具体的には、右方向ボタン33、下方向ボタン34、上方向ボタン35、および左方向ボタン36)を備える。さらに、左コントローラ3は、録画ボタン37および-(マイナス)ボタン47を備える。左コントローラ3は、ハウジング31の側面の左上に第1Lボタン38およびZLボタン39を備える。また、左コントローラ3は、ハウジング31の側面の、本体装置2に装着される際に装着される側の面に第2Lボタン43および第2Rボタン44を備える。これらの操作ボタンは、本体装置2で実行される各種プログラム(例えば、OSプログラムやアプリケーションプログラム)に応じた指示を行うために用いられる。
【0054】
また、左コントローラ3は、左コントローラ3が本体装置2と有線通信を行うための端子42を備える。
【0055】
図5は、右コントローラ4の一例を示す六面図である。
図5に示すように、右コントローラ4は、ハウジング51を備える。本実施形態においては、ハウジング51は、縦長の形状、すなわち、上下方向に長い形状である。右コントローラ4は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング51は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ4は、横長となる向きで把持されることも可能である。右コントローラ4が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
【0056】
右コントローラ4は、左コントローラ3と同様、方向入力部としてアナログスティック52を備える。本実施形態においては、アナログスティック52は、左コントローラ3のアナログスティック32と同じ構成である。また、右コントローラ4は、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、右コントローラ4は、左コントローラ3と同様、ハウジング51の主面上に4つの操作ボタン53~56(具体的には、Aボタン53、Bボタン54、Xボタン55、およびYボタン56)を備える。さらに、右コントローラ4は、+(プラス)ボタン57およびホームボタン58を備える。また、右コントローラ4は、ハウジング51の側面の右上に第1Rボタン60およびZRボタン61を備える。また、右コントローラ4は、左コントローラ3と同様、第2Lボタン65および第2Rボタン66を備える。
【0057】
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
【0058】
図6は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、
図3に示す構成の他、
図6に示す各構成要素81~85、87、88、91、97、および98を備える。これらの構成要素81~85、87、88、91、97、および98のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。
【0059】
本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
【0060】
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
【0061】
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
【0062】
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
【0063】
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。本実施形態においては、ネットワーク通信部82は、第1の通信態様としてWi-Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部82は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。なお、上記第2の通信態様による無線通信は、閉ざされたローカルネットワークエリア内に配置された他の本体装置2との間で無線通信可能であり、複数の本体装置2の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。
【0064】
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
【0065】
プロセッサ81は、上述の左側端子17、右側端子21、および下側端子27に接続される。プロセッサ81は、左コントローラ3と有線通信を行う場合、左側端子17を介して左コントローラ3へデータを送信するとともに、左側端子17を介して左コントローラ3から操作データを受信する。また、プロセッサ81は、右コントローラ4と有線通信を行う場合、右側端子21を介して右コントローラ4へデータを送信するとともに、右側端子21を介して右コントローラ4から操作データを受信する。また、プロセッサ81は、クレードルと通信を行う場合、下側端子27を介してクレードルへデータを送信する。このように、本実施形態においては、本体装置2は、左コントローラ3および右コントローラ4との間で、それぞれ有線通信と無線通信との両方を行うことができる。また、左コントローラ3および右コントローラ4が本体装置2に装着された一体型装置または本体装置2単体がクレードルに装着された場合、本体装置2は、クレードルを介してデータ(例えば、画像データや音声データ)を据置型モニタ等に出力することができる。
【0066】
ここで、本体装置2は、複数の左コントローラ3と同時に(換言すれば、並行して)通信を行うことができる。また、本体装置2は、複数の右コントローラ4と同時に(換言すれば、並行して)通信を行うことができる。したがって、複数のユーザは、左コントローラ3および右コントローラ4のセットをそれぞれ用いて、本体装置2に対する入力を同時に行うことができる。一例として、第1ユーザが左コントローラ3および右コントローラ4の第1セットを用いて本体装置2に対して入力を行うと同時に、第2ユーザが左コントローラ3および右コントローラ4の第2セットを用いて本体装置2に対して入力を行うことが可能となる。
【0067】
また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
【0068】
本体装置2は、コーデック回路87およびスピーカ(具体的には、左スピーカおよび右スピーカ)88を備える。コーデック回路87は、スピーカ88および音声入出力端子25に接続されるとともに、プロセッサ81に接続される。コーデック回路87は、スピーカ88および音声入出力端子25に対する音声データの入出力を制御する回路である。
【0069】
本体装置2は、電力制御部97およびバッテリ98を備える。電力制御部97は、バッテリ98およびプロセッサ81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子17、および右側端子21)に接続される。電力制御部97は、プロセッサ81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
【0070】
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
【0071】
図7は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、
図6で示しているため
図7では省略している。
【0072】
左コントローラ3は、本体装置2との間で通信を行う通信制御部101を備える。
図7に示すように、通信制御部101は、端子42を含む各構成要素に接続される。本実施形態においては、通信制御部101は、端子42を介した有線通信と、端子42を介さない無線通信との両方で本体装置2と通信を行うことが可能である。通信制御部101は、左コントローラ3が本体装置2に対して行う通信方法を制御する。すなわち、左コントローラ3が本体装置2に装着されている場合、通信制御部101は、端子42を介して本体装置2と通信を行う。また、左コントローラ3が本体装置2から外されている場合、通信制御部101は、本体装置2(具体的には、コントローラ通信部83)との間で無線通信を行う。コントローラ通信部83と通信制御部101との間の無線通信は、例えばBluetooth(登録商標)の規格に従って行われる。
【0073】
また、左コントローラ3は、例えばフラッシュメモリ等のメモリ102を備える。通信制御部101は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ102に記憶されるファームウェアを実行することによって各種の処理を実行する。
【0074】
左コントローラ3は、各ボタン103(具体的には、ボタン33~39、43、44、および47)を備える。また、左コントローラ3は、アナログスティック(
図7では「スティック」と記載する)32を備える。各ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。
【0075】
通信制御部101は、各入力部(具体的には、各ボタン103、および、アナログスティック32)から、入力に関する情報(具体的には、操作に関する情報、またはセンサによる検出結果)を取得する。通信制御部101は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
【0076】
上記操作データが本体装置2へ送信されることによって、本体装置2は、左コントローラ3に対して行われた入力を得ることができる。すなわち、本体装置2は、各ボタン103およびアナログスティック32に対する操作を、操作データに基づいて判別することができる。
【0077】
左コントローラ3は、電力供給部108を備える。本実施形態において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
【0078】
図7に示すように、右コントローラ4は、本体装置2との間で通信を行う通信制御部111を備える。また、右コントローラ4は、通信制御部111に接続されるメモリ112を備える。通信制御部111は、端子64を含む各構成要素に接続される。通信制御部111およびメモリ112は、左コントローラ3の通信制御部101およびメモリ102と同様の機能を有する。したがって、通信制御部111は、端子64を介した有線通信と、端子64を介さない無線通信(具体的には、Bluetooth(登録商標)の規格に従った通信)との両方で本体装置2と通信を行うことが可能であり、右コントローラ4が本体装置2に対して行う通信方法を制御する。
【0079】
右コントローラ4は、左コントローラ3の各入力部と同様の各入力部を備える。具体的には、各ボタン113、および、アナログスティック52を備える。これらの各入力部については、左コントローラ3の各入力部と同様の機能を有し、同様に動作する。
【0080】
右コントローラ4は、電力供給部118を備える。電力供給部118は、左コントローラ3の電力供給部108と同様の機能を有し、同様に動作する。
【0081】
[2.ゲームシステムにおける処理の概要]
次に、
図8~
図15を参照して、ゲームシステム1において実行される処理の概要について説明する。本実施形態においては、ゲームシステム1は、仮想空間であるゲーム空間にオブジェクトが設置されるゲームを実行する。本実施形態においては、上記ゲームにおいてユーザ(プレイヤとも言う)は、ゲーム空間内の所定の編集領域内において、設置されるオブジェクトについての編集を行うことができる。上記編集領域の具体的な内容は任意である。本実施形態においては、上記編集領域は、ゲームに登場するキャラクタの部屋であったり、当該キャラクタの家の庭であったりする。
【0082】
図8は、本実施形態におけるゲーム空間内における部屋の一例を示す図である。
図8に示す部屋201は、ユーザによる編集が可能な上記編集領域の一例である。
図8に示すように、部屋201には、1以上の設置オブジェクトが設置される。設置オブジェクトは、編集領域においてユーザが設置に関する編集を行うことが可能なオブジェクトである。具体的には、設置オブジェクトは、机やベッドといった家具のオブジェクトや、時計や花瓶といったアイテムのオブジェクトである。設置オブジェクトの具体的な内容は任意である。設置オブジェクトの具体例は、家具やアイテム以外の他の種類のオブジェクトであってもよい。
【0083】
本実施形態においては、ユーザは、部屋201内において設置オブジェクトに対する編集のための指示を行うことができる。例えば、ユーザは、ゲーム中において編集モードを開始することができ、編集モードにおいて上記の編集のための指示を行うことができる。すなわち、ゲームシステム1は、ユーザによる操作入力に基づいて、部屋201内の設置オブジェクトに対する編集を行う。なお、設置オブジェクトに関する編集とは、領域に設置するオブジェクトを指定すること、指定されたオブジェクトを領域内に設置すること、領域に設置されているオブジェクトを移動させること、領域に設置されているオブジェクトを領域内から消去すること等を含む意味である。これによって、ユーザは、所望の設置オブジェクトを部屋201内に設置したり、所望の位置および向きで設置オブジェクトを部屋201内に設置したりすることができる。
【0084】
本実施形態においては、ユーザは、ユーザが操作するプレイヤキャラクタの部屋の他に、プレイヤキャラクタとは異なるキャラクタ(例えば、ゲームに登場するノンプレイヤキャラクタ)の部屋について設置オブジェクトの編集を行うことができる。例えば、ゲームにおいて、プレイヤキャラクタはノンプレイヤキャラクタから部屋のコーディネートを依頼され、依頼を受けた場合にユーザは当該ノンプレイヤキャラクタの部屋の編集を行うことができる。
【0085】
本実施形態においては、ノンプレイヤキャラクタの部屋の編集が完了すると、ゲームシステム1は完了時演出を実行する。完了時演出は、例えば、編集後の部屋の様子(具体的には、設置オブジェクトの設置の様子)を紹介するための演出である。なお、完了時演出が実行される条件(「部屋の編集が完了したと判断されるための条件」とも言うことができる)は、任意である。完了時演出は、例えば、ユーザが完了指示を行ったことに応じて実行されてもよいし、ゲームにおいて定められる完了条件(例えば、所定数の設置オブジェクトを設置したこと、あるいは、制限時間が経過したこと等)が満たされたことに応じて実行されてもよい。
【0086】
なお、本実施形態においては、
図8に示す部屋に限らず、上記編集領域として、ゲーム空間における屋外の領域についてもユーザは編集を行うことができる。例えば、本実施形態においては、プレイヤキャラクタはノンプレイヤキャラクタからの依頼に応じて、当該ノンプレイヤキャラクタの家の庭の編集を行うことができる。なお、他の実施形態においては、上記編集領域の具体的な内容は任意であり、部屋および庭以外の領域が編集領域であってもよい。
【0087】
[2-1.完了時演出の概要]
次に、完了時演出の概要について説明する。なお、以下においては、編集領域が部屋である場合における完成時演出について主に説明し、編集領域が庭である場合における完成時演出については、部屋である場合との相違点を中心に説明する。
【0088】
完了時演出においては、ゲームシステム1は、ゲーム空間において仮想カメラを適宜の位置に設定して、編集領域内の様子を表すゲーム画像を生成・表示する。ここで、本実施形態においては、完了時演出は複数のシーンを含む。各シーンにおいては、仮想カメラに関する各種のパラメータ(注視点、位置、姿勢、および、画角等)が設定され、設定されたパラメータに基づいて編集領域の画像が生成・表示される。上記パラメータは、シーン毎に変化するように設定される(偶然同じになることがあってもよい)。つまり、本実施形態においては、シーンが切り替わる毎に仮想カメラの注視点(撮影対象とも言える)、位置、姿勢、および/または、画角等が切り替わる。
【0089】
具体的には、本実施形態においては、完了時演出は、イントロシーンと、複数回(ここでは、5回)の中間シーンと、アウトロシーンとを含む。イントロシーンおよびアウトロシーンにおいては、仮想カメラの各種パラメータが予め定められた値に設定される。例えば、イントロシーンにおいては、仮想カメラが編集領域内の所定位置(例えば、部屋の入口や、庭の入口)に設定され、編集領域の全体または大部分が視野範囲となるように仮想カメラのパラメータが設定される。また例えば、アウトロシーンにおいては、仮想カメラの注視点が編集領域の中央に設定され、編集領域の全体または大部分が視野範囲となるように仮想カメラのパラメータが設定される。
【0090】
中間シーンにおいては、仮想カメラの各種パラメータがシーン毎に動的に設定される。つまり、中間シーンにおいては、仮想カメラの注視点、位置、姿勢、および/または、画角等がシーン毎に変化する。これによって、完了時演出におけるカメラワークが毎回変化することとなり、ユーザが飽きにくい演出を行うことができる。なお、他の実施形態においては、イントロシーンおよびアウトロシーンにおいても中間シーンと同様に、仮想カメラの各種パラメータが動的に設定されてもよい。
【0091】
中間シーンにおいては、ゲームシステム1は、まず、仮想カメラの注視点を設定する。次に、ゲームシステム1は、当該シーンにおける仮想カメラの注視点以外の初期状態(例えば、本実施形態においては、仮想カメラの位置、姿勢、および、画角)を設定する。次に、ゲームシステム1は、当該シーンにおける仮想カメラの制御方法(具体的には、仮想カメラの移動の仕方、および、画角の変更の仕方)を設定する。以下においては、中間シーンにおける仮想カメラの設定方法の詳細について説明する。
【0092】
[2-2.中間シーンにおける注視点の設定]
本実施形態においては、ゲームシステム1は、中間シーンにおける仮想カメラの注視点を、(a)基準注視位置、(b)編集領域に配置されるキャラクタの位置、および、(c)編集領域に設置される設置オブジェクトの位置、のうちいずれかに設定する。
【0093】
本実施形態においては、1回の完了時演出に含まれる5つの中間シーンにおいて、注視点の設定対象として上記(a)~(c)のうちいずれが選択されるかは、予め定められているものとする。より具体的には、注視点の設定対象として上記(a)~(c)のうちいずれが選択されるかは、予め定められた順序で5つの中間シーン毎に設定される。なお、上記の選択に関する具体的な選択方法は任意である。例えば、他の実施形態においては、ゲームシステム1は、5つの各中間シーンにおいて注視点の設定対象として上記(a)~(c)のうちいずれを選択するかを、ランダムに選択してもよい。より具体的には、ゲームシステム1は、1回の完了時演出において上記(a)~(c)のそれぞれが少なくとも1回は選出されるような方法でランダムに選出を行ってもよい。
【0094】
図9は、仮想カメラの注視点が基準注視位置に設定される場合における部屋の一例を示す図である。上記(a)における基準注視位置は、上記ゲームのためのゲームプログラムにおいて予め定められる位置である。
図9に示す例においては、仮想カメラ202の注視点が設定される基準注視位置203は、編集領域(すなわち、部屋201)の中央の位置である。なお、より厳密には、「編集領域の中央の位置」とは、水平方向に関しての編集領域の中央の位置であり、基準注視位置203は、水平方向に関して部屋201の中央であって、部屋201の床から所定高さの位置である。また、本実施形態においては、編集領域が部屋である場合における基準注視位置は、編集領域内の位置であるとするが、他の実施形態においては、基準注視位置は、編集領域外の位置であってもよい。
【0095】
本実施形態においては、基準注視位置は1箇所であるとするが、他の実施形態においては、複数箇所の基準注視位置が設定されてもよい。このとき、ゲームシステム1は、仮想カメラの注視点を基準注視位置とする場合には、複数箇所の基準注視位置のうちから1箇所を選択して注視点の位置を設定してもよい。
【0096】
図10は、仮想カメラの注視点がキャラクタに設定される場合における部屋の一例を示す図である。
図10に示す例において、仮想カメラ202の注視点が設定されるキャラクタは、例えば、編集領域のコーディネートを依頼したノンプレイヤキャラクタ204(部屋または庭の住人であるノンプレイヤキャラクタとも言える)である。本実施形態においては、完了時演出における各シーンにおいて、編集領域内に上記ノンプレイヤキャラクタ204が配置される。つまり、注視点が設定されるキャラクタは、上記完了指示に応じて、または、完了条件を満たしたことに応じて、編集領域に配置されるノンプレイヤキャラクタ204である。これによれば、完了時演出において、編集領域に関連するノンプレイヤキャラクタ204を編集領域とともにユーザに対して提示することができる。
【0097】
図10に示す例においては、仮想カメラ202の注視点がキャラクタに設定される場合、上記ノンプレイヤキャラクタ204が編集領域におけるある位置(「キャラクタ位置」と呼ぶ。)に配置され、当該ノンプレイヤキャラクタ204の位置に注視点が設定される。なお、上記キャラクタ位置は任意であり、キャラクタ位置の決定方法も任意である。例えば、ゲームシステム1は、編集領域の中央に設置オブジェクトが設置されていない場合には中央の位置をキャラクタ位置とし、中央に設置オブジェクトが設置されている場合は、なるべく中央に近い位置で、かつ、設置オブジェクトが設置されていない位置をキャラクタ位置としてもよい。なお、キャラクタ位置に配置されるノンプレイヤキャラクタ204の向きの決定方法も任意である。例えば、ゲームシステム1は、ノンプレイヤキャラクタ204の向きをランダムに決定する。
【0098】
なお、仮想カメラ202の注視点が設定され得るキャラクタの候補は複数であってもよい。例えば、編集領域の住人であるノンプレイヤキャラクタが複数存在する場合には、これらの各ノンプレイヤキャラクタが候補となってもよい。このとき、ゲームシステム1は、仮想カメラの注視点を設定するキャラクタを任意の方法で決定してもよい。例えば、ゲームシステム1は、複数の候補のうちから1つのキャラクタを、所定の順序で順番に選出してもよいし、ランダムに選出してもよい。
【0099】
図11は、仮想カメラの注視点が設置オブジェクトに設定される場合における部屋の一例を示す図である。
図11に示す例において、仮想カメラ202の注視点が設定される設置オブジェクト205は、テーブルのオブジェクトである。上記(c)における設置オブジェクトについては、ゲームシステム1は、編集領域に設置された1以上の設置オブジェクトのうちから、注視点を設定するオブジェクトを1つ選択する。設置オブジェクトが複数である場合において、複数の設置オブジェクトから1つを選択する具体的な方法は任意である。例えば、ゲームシステム1は、複数の設置オブジェクトから1つをランダムに選択してもよい。
【0100】
なお、本明細書において「ランダムに選択する」とは、各選択候補が等しい確率で選択される方法に限らず、ランダム性を有する結果となるように(つまり、複数回の試行による選択結果が毎回同じにならないような方法で)選択することを含む意味である。例えば、ゲームシステム1は、特定の設置オブジェクト、あるいは、今回の完了時演出において注視点が設定されていない設置オブジェクトがその他の設置オブジェクトに比べて選出されやすい方法で、注視点を設定する設置オブジェクトを選択してもよい。また例えば、ゲームシステム1は、複数の設置オブジェクトのうち特定の設置オブジェクト、あるいは、今回の完了時演出において注視点が設定されたことのある設置オブジェクトが選出されない(または、その他の設置オブジェクトに比べて選出されにくい)ような方法で、注視点を設定する設置オブジェクトを選択してもよい。なお、上記における特定の設置オブジェクトとは、例えば、部屋201の住人であるノンプレイヤキャラクタ204に関連付けられる設置オブジェクト(例えば、ノンプレイヤキャラクタ204が設置することを依頼した設置オブジェクト)、あるいは、特定の種類の設置オブジェクト等である。
【0101】
本実施形態においては、編集領域が庭である場合、ゲームシステム1は、上記(a)における基準注視位置として、編集領域の中央以外の位置を設定し得る。具体的には、編集領域が庭である場合には、編集領域の上方の位置(例えば、空の位置)、庭における所定の地形(例えば、橋)の位置、および、庭に設置されるオブジェクトであって、設置オブジェクトとは異なるオブジェクト(例えば、家等の建物のオブジェクト)の位置が、基準注視位置となり得る。すなわち、編集領域が庭である場合において、仮想カメラ202の注視位置を基準注視位置に設定する場合、ゲームシステム1は、編集領域の中央の位置と、上記3つの位置とのうちから1つを基準注視位置として選択することで仮想カメラ202の注視位置を設定する。なお、この選択の具体的な方法は任意であり、例えばランダムに選択する方法であってもよい。
【0102】
上記のように、本実施形態においては、編集領域は、仮想空間内の屋外に設定される領域であってもよい。このとき、編集領域内の基準注視位置は、仮想空間内における空、所定の地形(例えば、橋)、または、所定の建築物(例えば、家)の位置であってもよい。これによれば、完了時演出の各シーンにおけるカメラワークのバリエーションを増やすことができる。
【0103】
[2-3.中間シーンにおける仮想カメラの初期状態の設定]
中間シーンにおける仮想カメラの注視点を設定すると、ゲームシステム1は、中間シーンにおける仮想カメラ202の注視点以外の初期状態を設定する。具体的には、仮想カメラ202の位置、姿勢、および、画角が設定される。以下、仮想カメラの注視点の種類(すなわち、上記(a)~(c)の種類)毎に、仮想カメラ202の初期状態の設定方法について説明する。
【0104】
まず、仮想カメラ202の注視点が基準注視位置に設定される場合の設定方法について説明する。この場合、ゲームシステム1は、仮想カメラ202の初期位置を、編集領域外の位置に設定する。本実施形態においては、ゲームシステム1は、編集領域の周囲の四方(具体的には、ゲーム空間における東西南北の各方向)に設定される候補位置のうちから1つの位置を選択し、選択された位置に仮想カメラ202を設定する。この選択における具体的な選択方法は任意であり、例えば、複数の候補位置から1つがランダムに選択されてもよい。このとき、ゲームシステム1は、今回の完了時演出における中間シーンにおいて既に選択された候補位置は選択されにくい(あるいは選択されない)ように、候補位置をランダムに選択してもよい。
【0105】
なお、上述のように、仮想カメラ202の注視点は編集領域内の基準注視位置に設定されるので、仮想カメラ202の姿勢は、編集領域外から編集領域内の基準注視位置を向くように設定されることとなる(
図9参照)。また、ゲームシステム1は、予め定められた画角(例えば、部屋のほぼ全体が視野に含まれるような画角)となるように仮想カメラ202の画角を設定する。
【0106】
上記のように、本実施形態においては、編集領域が部屋であり、基準注視位置が部屋内の位置であってもよい。このとき、ゲームシステム1は、仮想カメラ202の注視点が部屋内の位置に設定された中間シーンにおいて、仮想カメラ202の位置を当該部屋の外に設定する。これによれば、編集領域内の設置オブジェクトが仮想カメラ202と干渉しない位置に仮想カメラ202を設定することができる。また、詳細は後述するが、上記によって、編集領域内の設置オブジェクトが仮想カメラ202と干渉することなく、仮想カメラ202を初期位置から自由に移動させることができる。
【0107】
次に、仮想カメラ202の注視点がキャラクタに設定される場合における初期位置の設定方法について説明する。この場合、ゲームシステム1は、編集領域内の位置であって、キャラクタの周囲の位置を仮想カメラ202の初期位置とする(
図10参照)。以下、上記の場合における初期位置の決定方法の一例について、
図12を参照して説明する。
【0108】
図12は、仮想カメラの注視点がキャラクタに設定される場合における、仮想カメラの初期位置の決定方法の一例を示す図である。
図12は、編集領域(ここでは、部屋)の一部を上から見た様子を模式的に示す図である。ここで、本実施形態においては、編集領域には格子状のマス目(グリッドとも言える)が設定され(
図12参照)、マス目を単位として(例えば、0.5マス単位で)設置オブジェクトを設置することができる。
図12は、仮想カメラ202およびノンプレイヤキャラクタ204(すなわち、注視点に設定されるキャラクタ)の配置を、上記のマス目を用いて模式的に示す図である。
【0109】
仮想カメラの注視点がキャラクタに設定される場合において、ゲームシステム1は、まず、仮想カメラ202の初期位置の探索を行うための探索開始位置を設定する。本実施形態においては、探索開始位置は、ノンプレイヤキャラクタ204が配置されるマスから2マス分離れたマスであって、ノンプレイヤキャラクタ204の正面方向にあるマス(
図12において、仮想カメラ202が配置されるマス)の位置である。詳細は後述するが、探索開始位置は、仮想カメラ202の初期位置として設定される優先度が最も高い位置であると言うことができる。ノンプレイヤキャラクタ204の正面方向の位置を探索開始位置とすることによって、中間シーンの開始時において仮想カメラ202がノンプレイヤキャラクタ204を正面方向から撮像しやすくなる。これによって、ノンプレイヤキャラクタ204をユーザが認識しやすいシーンを生成することができる。
【0110】
次に、ゲームシステム1は、探索開始位置のマスから、ノンプレイヤキャラクタ204の側方を通ってノンプレイヤキャラクタ204の背面方向にあるマスへと延びる2つの探索経路211および212を設定する。2つの探索経路211および212は、これら2つの探索経路211および212によってノンプレイヤキャラクタ204の周囲を囲むように設定される(
図12参照)。各探索経路211および212は、ノンプレイヤキャラクタ204のマスから2マス分離れたマスを通るように設定される。
【0111】
上記のように、
図12に示す探索経路は、設置オブジェクトの設置に用いられるマス目を基準として設定される。なお、他の実施形態においては、上記探索経路は、ゲーム空間における任意の位置に設定されてよく、上記のマス目を基準として設定される必要はない(
図13~
図15に示す探索経路についても同様である)。例えば、探索経路は、ゲーム空間を上から見たときに、注視点の位置にある対象(すなわち、キャラクタまたは設置オブジェクト)の周囲を囲む円形状に設定されてもよい。
【0112】
ゲームシステム1は、初期配置条件を満たす位置の探索を、探索開始位置から探索経路211および212に沿って行う。本実施形態においては、初期配置条件は、仮想カメラ202を配置可能な位置であること、かつ、当該位置と注視点の位置との間に設置オブジェクトが設置されていないことである。ここで、仮想カメラ202を配置可能な位置とは、設置オブジェクトが設置されていない位置である。また、当該位置と注視点の位置との間に設置オブジェクトが設置されているか否かの判定は、例えば、当該位置のマスと注視点のマスとの間のマスに設置オブジェクトが設置されているか否かによって行われる。なお、他の実施形態においては、初期配置条件の内容は任意であり、初期配置条件は、例えば、仮想カメラ202を配置可能な位置であることのみを含む条件であってもよい。
【0113】
上記より、ゲームシステム1は、探索開始位置から順に探索経路211および212に沿って、設置オブジェクトが設置されていない位置であって、当該位置と注視点の位置との間に設置オブジェクトが設置されていない位置を探索する。なお、本実施形態においては、上記の探索は、探索経路上において所定距離(例えば、0.5マス分の距離)毎に行われる。つまり、ゲームシステム1は、探索経路上におけるある位置について初期配置条件を満たすか否かを判定し、その次には、当該判定を行った位置から探索経路に沿って所定距離だけ移動した位置について同様の判定を行う。
【0114】
本実施形態においては、ゲームシステム1は、初期配置条件を満たす位置であって、探索開始位置からの移動量(探索開始位置は、移動量が0であるとする。)が最も小さい位置を、仮想カメラ202の初期位置とする。なお、探索開始位置からの移動量が最も小さい位置とは、ノンプレイヤキャラクタ204の正面方向に最も近い位置とも言うことができる。なお、探索経路211上において見つかった、初期配置条件を満たす位置と、探索経路212上において見つかった、初期配置条件を満たす位置とについて、上記移動量が等しい場合も考えられる。この場合、ゲームシステム1は、どちらか一方の位置を任意の方法で選択して(例えば、予め定められた一方の探索経路上の位置を選択して)、仮想カメラ202の初期位置とする。
【0115】
また、上記探索経路211および212について初期配置条件を満たす位置が見つからなかった場合、ゲームシステム1は、上記探索経路211および212よりも所定距離(例えば、0.5マス)だけノンプレイヤキャラクタ204から離れた探索経路(すなわち、探索経路211および212に対して所定距離だけ外周にある経路)を新たに設定する。そして、新たに設定された探索経路について上記の探索を行う。ゲームシステム1は、初期配置条件を満たす位置が見つからない場合には、ノンプレイヤキャラクタ204から探索経路までの距離が所定の上限値(例えば、4.5マス分の距離)となるまで、探索経路の設定と、設定された探索経路上の探索とを繰り返す。
【0116】
上記の距離が上限値となるまで探索を行っても初期配置条件を満たす位置が見つからなかった場合、本実施形態においては、ゲームシステム1は、仮想カメラ202の注視点を設定し直す。具体的には、上記の場合、ゲームシステム1は、仮想カメラ202の注視点を、上記の基準注視位置に設定し直す。これによって、仮想カメラ202の初期位置を確実に設定することができる。なお、他の実施形態においては、ゲームシステム1は、上記の上限値を設定することなく、初期配置条件を満たす位置が見つかるまで、探索経路の設定と、設定された探索経路上の探索とを繰り返すようにしてもよい。
【0117】
本実施形態においては、上記の探索において探索すべき位置が編集領域外となる場合(すなわち、探索経路の一部が部屋201の壁の外側となる場合)、ゲームシステム1は、編集領域外の位置については、初期配置条件を満たす位置と判断しないようにする。具体的には、上記の場合、ゲームシステム1は、探索経路を編集領域内の位置となるように修正して探索を行うようにしてもよいし、探索した位置が編集領域外の位置である場合は初期配置条件を満たさないと判断するようにしてもよい。
【0118】
本実施形態においては、仮想カメラ202の初期位置のうち水平方向に関する位置が上記の探索によって決定される。仮想カメラ202の初期位置のうち垂直方向(すなわち、ゲーム空間における高さ方向)に関する位置は、予め定められた高さに設定される。なお、他の実施形態においては、垂直方向に関する位置についても上記の探索によって決定されてもよい。例えば、ゲームシステム1は、ある高さに上記探索経路を設定し、当該探索経路について初期配置条件を満たす位置が見つからなかった場合、当該探索経路を高さ方向にずらした位置に新たな探索経路を設定して再探索を行うようにしてもよい。
【0119】
なお、上述のように、仮想カメラ202の注視点はノンプレイヤキャラクタ204の位置に設定されるので、仮想カメラ202は、上記の初期位置からノンプレイヤキャラクタ204の位置を向く姿勢となるように設定される(
図10参照)。また、ゲームシステム1は、予め定められた画角(例えば、ノンプレイヤキャラクタ204の全体が視野に含まれるような画角)となるように仮想カメラ202の画角を設定する。
【0120】
次に、仮想カメラ202の注視点が設置オブジェクトに設定される場合における初期位置の設定方法について説明する。この場合、ゲームシステム1は、編集領域内の位置であって、当該設置オブジェクトの周囲の位置を仮想カメラ202の初期位置とする(
図11参照)。以下、上記の場合における初期位置の決定方法の一例について、
図13を参照して説明する。
【0121】
図13は、仮想カメラの注視点が設置オブジェクトに設定される場合における、仮想カメラの初期位置の決定方法の一例を示す図である。
図13は、
図12と同様、編集領域(ここでは、部屋)の一部を上から見た様子を模式的に示す図である。
図13は、仮想カメラ202と、ノンプレイヤキャラクタ204と、注視点に設定される設置オブジェクト205との配置を、上述のマス目を用いて模式的に示す図である。
【0122】
本実施形態においては、ゲームシステム1は、まず、設置オブジェクト205の周囲にノンプレイヤキャラクタ204を配置する(
図11参照)。例えば、ノンプレイヤキャラクタ204は、設置オブジェクト205のマスに隣接するマスであって、設置オブジェクト205の正面方向にあるマスの位置に配置される。また、ノンプレイヤキャラクタ204は、設置オブジェクト205の方を向く向きに配置される。
【0123】
なお、上記の位置にノンプレイヤキャラクタ204を配置できない場合(すなわち、当該位置に設置オブジェクトが設置されている場合)、ゲームシステム1は、設置オブジェクト205のマスに隣接するマスであって、設置オブジェクト205の側面方向または背面方向にあるマスの位置にノンプレイヤキャラクタ204を配置する。さらに、設置オブジェクト205に隣接するマスの位置にノンプレイヤキャラクタ204を配置できない場合、ゲームシステム1は、仮想カメラ202の注視点を設定し直す。具体的には、上記の場合、ゲームシステム1は、設置オブジェクト205とは異なる他の設置オブジェクトの位置を注視点とし、当該他の設置オブジェクトの周囲にノンプレイヤキャラクタ204を配置する。これによって、設置オブジェクトの近傍にノンプレイヤキャラクタを配置することができる。なお、編集領域内の各設置オブジェクトのいずれについても周囲にノンプレイヤキャラクタ204を配置できない場合には、ゲームシステム1は、仮想カメラ202の注視点を基準注視位置に変更してもよい。
【0124】
次に、ゲームシステム1は、仮想カメラ202の初期位置の探索を行うための探索開始位置を設定する。仮想カメラ202の注視点が設置オブジェクト205に設定される場合においては、探索開始位置は、設置オブジェクト205が設置されるマスから2マス分離れたマスであって、設置オブジェクト205に対してノンプレイヤキャラクタ204が配置される向きに対して90°の角度となる方向にあるマス(
図13において、仮想カメラ202が配置されるマス)の位置である。上述のように、探索開始位置は、仮想カメラ202の初期位置として設定される優先度が最も高い位置であるので、上記のように探索開始位置を設定することによって、中間シーンの開始時において設置オブジェクト205とノンプレイヤキャラクタ204との両方が重複せずに含まれるような画像を表示しやすくなる。
【0125】
次に、ゲームシステム1は、探索開始位置のマスから、設置オブジェクト205の側方を通って、設置オブジェクト205を基準としたときの探索開始位置の反対側のマスへと延びる2つの探索経路213および214を設定する。2つの探索経路213および214は、これら2つの探索経路213および214によって設置オブジェクト205(およびノンプレイヤキャラクタ204)の周囲を囲むように設定される(
図13参照)。各探索経路213および214は、設置オブジェクト205のマスから2マス分離れたマスを通るように設定される。
【0126】
ゲームシステム1は、初期配置条件を満たす位置の探索を、探索開始位置から探索経路213および214に沿って行う。なお、仮想カメラ202の注視点が設置オブジェクト205に設定される場合における初期配置条件は、仮想カメラ202の注視点がキャラクタに設定される場合における初期配置条件と同じである。ここで、仮想カメラ202の注視点が設置オブジェクト205に設定される場合においては、ゲームシステム1は、まず、ノンプレイヤキャラクタ204の正面方向にある探索経路214について探索を行い、その後で、ノンプレイヤキャラクタ204の背面方向にある探索経路213について探索を行う。つまり、ゲームシステム1は、探索開始位置から順に探索経路214に沿って、初期配置条件を満たす位置を探索し、初期配置条件を満たす位置が見つからなかった場合、探索開始位置から順に探索経路213に沿った探索を行う。上記によれば、ゲームシステム1は、設置オブジェクト205の周囲の位置のうち、ノンプレイヤキャラクタ204を正面側から撮像できる位置を(背面側から撮像する位置よりも)優先するように、仮想カメラ202の初期位置を決定することができる。なお、
図13に示す探索においても
図12に示す探索と同様、探索経路上において所定距離(例えば、0.5マス分の距離)毎に探索が行われる。
【0127】
また、上記探索経路213および214について初期配置条件を満たす位置が見つからなかった場合、ゲームシステム1は、上記探索経路213および214よりも所定距離(例えば、0.5マス)だけ設置オブジェクト205から離れた探索経路(すなわち、所定距離だけ外周にある経路)を新たに設定する。そして、新たに設定された探索経路について上記の探索を行う。ゲームシステム1は、設置オブジェクト205から探索経路までの距離が所定の上限値(例えば、4.5マス分の距離)となるまで、探索経路の設定と、設定された探索経路上の探索とを繰り返す。
【0128】
上記の距離が上限値となるまで探索を行っても初期配置条件を満たす位置が見つからなかった場合、本実施形態においては、ゲームシステム1は、仮想カメラ202の注視点を設定し直す。具体的には、上記の場合、ゲームシステム1は、仮想カメラ202の注視点を、上記の基準注視位置に設定し直す。これによって、仮想カメラ202の初期位置を確実に設定することができる。なお、他の実施形態においては、ゲームシステム1は、上記の上限値を設定することなく、初期配置条件を満たす位置が見つかるまで、探索経路の設定と、設定された探索経路上の探索とを繰り返すようにしてもよい。
【0129】
なお、仮想カメラ202の注視点が設置オブジェクトに設定される場合も、注視点がキャラクタに設定される場合と同様、上記の探索において探索すべき位置が編集領域外となる場合には、ゲームシステム1は、編集領域外の位置については、初期配置条件を満たす位置と判断しないようにする。
【0130】
また、仮想カメラ202の注視点が設置オブジェクトに設定される場合も、注視点がキャラクタに設定される場合と同様、仮想カメラ202の初期位置のうち水平方向に関する位置が上記の探索によって決定される。仮想カメラ202の初期位置のうち垂直方向(すなわち、ゲーム空間における高さ方向)に関する位置は、予め定められた高さに設定される。
【0131】
なお、上述のように、仮想カメラ202の注視点は設置オブジェクト205の位置に設定されるので、仮想カメラ202は、上記の初期位置から設置オブジェクト205の位置を向く姿勢となるように設定される(
図11参照)。また、ゲームシステム1は、予め定められた画角(例えば、設置オブジェクト205とノンプレイヤキャラクタ204の全体が視野に含まれるような画角)となるように仮想カメラ202の画角を設定する。
【0132】
上記のように、本実施形態においては、編集領域は、仮想空間内の部屋であってもよい。このとき、ゲームシステム1は、設置オブジェクトまたはキャラクタが仮想カメラ2020の注視点に設定された中間シーンにおいて、部屋内に設置された設置オブジェクト(注視点に設定された設置オブジェクトと、注視点に設定されていない設置オブジェクトとの両方を含む意味である)が設置されていない位置に仮想カメラ202を設定する。これによれば、部屋の内部における視点から対象(すなわち、注視点の位置にある設置オブジェクトまたはキャラクタ)を撮像するシーンにおいて、対象とは異なる他の設置オブジェクトによって対象が遮られて適切に表示されない可能性を低減することができる。
【0133】
また、本実施形態においては、仮想カメラ202の注視点が設置オブジェクトまたはキャラクタに設定された中間シーンにおいては、ゲームシステム1は、注視点の位置にある対象の向きに基づいて設定される探索経路に沿って探索を行い、探索によって見つかった、設置オブジェクトが設置されていない位置を、仮想カメラ202の初期位置とする(
図12および
図13参照)。ここで、本実施形態においては、探索経路上の位置のうちで、注視点の位置にある対象の向きに基づいて設定される探索開始位置に近い位置の方が、仮想カメラ202の初期位置として設定される優先度が高いと言うことができる。つまり、本実施形態においては、ゲームシステム1は、上記の中間シーンにおいて、部屋内において設置オブジェクトが設置されていない位置のうちから、上記対象の向きに基づいて設定される優先度に基づいて仮想カメラの位置を設定する。これによれば、注視点の位置にある対象の向きに適した位置に仮想カメラを配置しやすくなる。例えば、上記の中間シーンにおいて、対象を正面から見た画像が表示されやすくなる。
【0134】
また、本実施形態においては、上記の探索経路は、注視点の位置にある対象の位置から所定の距離範囲(具体的には、2マス分の距離の範囲)にある探索経路についてまず探索を行い、当該探索経路において初期配置条件を満たす位置が見つからなかった場合に、当該対象の位置からの距離範囲を変更して探索経路が再設定された。そのため、本実施形態においては、対象の位置から所定の距離範囲にある位置は、仮想カメラ202の初期位置として設定される優先度が高いと言うことができる。つまり、本実施形態においては、ゲームシステム1は、仮想カメラ202の注視点が設置オブジェクトまたはキャラクタに設定された中間シーンにおいて、部屋内において設置オブジェクトが設置されていない位置のうち、注視点の位置にある対象の位置に基づいて設定される優先度に基づいて仮想カメラの位置を設定する。これによれば、対象を撮影するために適した距離に仮想カメラを配置しやすくなる。例えば、上記の中間シーンにおいて、対象を丁度良い距離から見た画像が表示されやすくなる。
【0135】
また、本実施形態においては、上記初期配置条件は、当該位置と注視点の位置との間に設置オブジェクトが設置されていないことという条件を含む。これによれば、仮想カメラ202と、注視点の位置にある対象との間に設置オブジェクトが配置されることによって、中間シーンにおいて対象が設置オブジェクトによって隠されて見えなくなる可能性を低減することができる。また、本実施形態においては、上記の探索経路は、注視点の位置にある対象の周囲に(より具体的には、周囲を囲むように)設定されるので(
図12および
図13参照)、当該対象に対して種々の方向にある位置を探索の対象とすることができる。つまり、ゲームシステム1は、注視点の位置にある対象に対して向きが異なる複数の位置を候補として仮想カメラ202の初期位置を設定する。これによれば、対象が設置オブジェクトによって隠されないような位置を探索によって見つけやすくすることができる。
【0136】
一方、編集領域が庭である場合には、仮想カメラの注視点がキャラクタまたは設置オブジェクトに設定される場合における探索経路とは異なる探索経路が設定される。
図14は、編集領域が庭であって、仮想カメラの注視点がキャラクタに設定される場合における、仮想カメラの初期位置の決定方法の一例を示す図である。また、
図15は、編集領域が庭であって、仮想カメラの注視点が設置オブジェクトに設定される場合における、仮想カメラの初期位置の決定方法の一例を示す図である。
【0137】
図14に示すように、編集領域が庭であって、仮想カメラ202の注視点がノンプレイヤキャラクタ204に設定される場合には、探索経路215および216は、探索開始位置から左右(すなわち、探索開始位置からノンプレイヤキャラクタ204への向きを正面としたときの左右)の両側に直線状に延びるように設定される。探索経路215および216は、所定の長さ(例えば、2.5マス分の長さ)に設定される。
【0138】
編集領域が庭である場合と部屋である場合とでは上記のように探索経路が異なるが、編集領域が庭である場合も部屋である場合と同様の流れで探索が行われる。すなわち、ゲームシステム1は、上述の初期配置条件を満たす位置の探索を、探索開始位置から探索経路215および216に沿って行う。そして、ゲームシステム1は、初期配置条件を満たす位置であって、探索開始位置からの移動量が最も小さい位置を、仮想カメラ202の初期位置とする。また、上記探索経路215および216について初期配置条件を満たす位置が見つからなかった場合、ゲームシステム1は、上記探索経路215および216よりも所定距離(例えば、0.5マス)だけノンプレイヤキャラクタ204から離れた探索経路を新たに設定する。そして、ゲームシステム1は、新たに設定された探索経路について上記の探索を行う。初期配置条件を満たす位置が見つからない場合には、ゲームシステム1は、ノンプレイヤキャラクタ204から探索経路までの距離が所定の上限値(例えば、4.5マス分の距離)となるまで、探索経路の設定と、設定された探索経路上の探索とを繰り返す。
【0139】
また、
図15に示すように、編集領域が庭であって、仮想カメラの注視点が設置オブジェクト205に設定される場合には、探索経路217および218は、探索開始位置から左右(探索開始位置から設置オブジェクト205への向きを正面としたときの左右)の両側に直線状に延びるように設定される。探索経路217および218は、所定の長さ(例えば、2.5マス分の長さ)に設定される。
【0140】
編集領域が庭である場合と部屋である場合とでは上記のように探索経路が異なるが、編集領域が庭である場合も部屋である場合と同様の流れで探索が行われる。すなわち、ゲームシステム1は、ノンプレイヤキャラクタ204の正面方向にある探索経路218について探索を行い、その後で、ノンプレイヤキャラクタ204の背面方向にある探索経路217について探索を行う。また、上記探索経路217および218について初期配置条件を満たす位置が見つからなかった場合、ゲームシステム1は、上記探索経路217および218よりも所定距離(例えば、0.5マス)だけ設置オブジェクト205から離れた探索経路を新たに設定する。ゲームシステム1は、初期配置条件を満たす位置が見つからない場合には、設置オブジェクト205から探索経路までの距離が所定の上限値(例えば、4.5マス分の距離)となるまで、探索経路の設定と、設定された探索経路上の探索とを繰り返す。
【0141】
なお、編集領域が庭であり、注視点が上記基準注視位置に設定される場合には、仮想カメラ202の初期位置は、基準注視位置に対して予め定められた側に位置するように設定される。この「予め定められた側」は、注視点がキャラクタまたは設置オブジェクトに設定される場合において当該キャラクタまたは設置オブジェクトに対して探索開始位置が設定される側と同じである。したがって、本実施形態においては、編集領域が庭である場合には、仮想カメラ202は、注視点に対して予め定められた側に常に配置されることとなる。これによれば、庭に配置される各種のオブジェクトのうちのある一方側については完了時演出において表示されないので、ゲームシステム1は、オブジェクトにおける当該一方側のモデルを省略することができ、オブジェクトのデータ量を低減することができる。
【0142】
以上において説明したように、本実施形態においては、完了時演出は複数のシーン(具体的には、イントロシーン、中間シーン、および、アウトロシーン)を含み、ゲームシステム1は、複数のシーン(具体的には、中間シーン)毎に、仮想カメラの注視点を再設定し、仮想カメラの位置を再設定する。これによれば、中間シーン毎に仮想カメラの注視点および位置が変化し得るので、バリエーションに富んだカメラワークで完了時演出を行うことができる。
【0143】
より具体的には、ゲームシステム1は、編集領域に設置された設置オブジェクト、領域内の所定の位置、および、編集領域内に配置されたキャラクタのうちのいずれかの位置から、仮想カメラ202の注視点を、シーン毎に予め設定された順序で設定する。これによれば、編集領域内における種々のオブジェクトまたは位置が仮想カメラ202の撮影対象となるので、バリエーションに富んだシーンを提供することができる。
【0144】
[2-4.中間シーンにおける仮想カメラの制御方法の設定]
中間シーンにおける仮想カメラの初期状態を設定すると、ゲームシステム1は、中間シーンにおける仮想カメラ202の制御方法を設定する。具体的には、ゲームシステム1は、中間シーン中における仮想カメラ202の移動および画角の制御に関する制御方法を設定する。
【0145】
本実施形態においては、ゲームシステム1は、仮想カメラ202の制御方法として、予め複数種類の制御方法を用意しておく。例えば、複数種類の制御方法は、次の制御方法を含む。
(A)ゲーム空間の上下方向の変化に関する制御方法
上記(A)の制御方法としては、例えば、仮想カメラ202を上下方向に平行移動させる制御方法、注視点が固定されるように姿勢を変更しつつ仮想カメラ202を上下方向(ピッチ方向とも言える)に回転移動させる制御方法、および、仮想カメラ202のピッチ方向に関する姿勢を変化させる制御方法等がある。
(B)ゲーム空間の水平方向の変化に関する制御方法
上記(B)の制御方法としては、例えば、仮想カメラ202を左右方向または前後方向に平行移動させる制御方法、および、注視点が固定されるように姿勢を変更しつつ仮想カメラ202を水平方向に回転移動させる制御方法等がある。
(C)仮想カメラ202の画角が変化する制御方法
上記(C)の制御方法としては、例えば、画角を小さくする制御方法(ズームイン)、および、画角を大きくする制御方法(ズームアウト)等がある。
なお、他の実施形態においては、上記(A)~(C)の全ての制御方法が用意される用いられる必要はなく、一部の制御方法が用いられてもよい。また、他の実施形態においては、上記複数の制御方法として、上記(A)~(C)の制御方法を組み合わせた制御方法が用意されてもよい。
【0146】
注視点が上述の基準注視位置である場合、ゲームシステム1は、用意された上記(A)~(C)の各制御方法から1つを選択することで、当該中間シーンにおける仮想カメラ202の制御方法を設定する。なお、制御方法を選択する具体的な方法は任意である。例えば、ゲームシステム1は、上記各制御方法からランダムに1つを選択してもよい。このとき、ゲームシステム1は、今回の完了時演出における中間シーンにおいて設定済の制御方法については再度選択されない(または選択されにくい)ように、ランダムに1つを選択してもよい。
【0147】
上記のように、本実施形態においては、仮想カメラ202の注視点が部屋201内の所定の位置(すなわち、基準注視位置)に設定され、かつ、仮想カメラ202の位置が部屋201の外に設定された中間シーン(
図9参照)において、ゲームシステム1は、仮想カメラ202を平行移動させる方法と、注視点を固定して仮想カメラ2020を回転移動させる方法とを含む複数の制御方法のうちいずれかに基づいて仮想カメラ202を制御する。これによれば、仮想カメラ202が部屋201の外に配置されることで、部屋201内の設置オブジェクトが仮想カメラ202と干渉することなく仮想カメラ202を移動させることができる。また、仮想カメラの202を多くのバリエーションで制御することができるので、中間シーンのバリエーションを増やすことができる。
【0148】
一方、注視点がキャラクタまたは設置オブジェクトの位置である場合、ゲームシステム1は、用意された上記(A)または(C)の各制御方法から1つを選択することで、当該中間シーンにおける仮想カメラ202の制御方法を設定する。上記の場合も制御方法を選択する具体的な方法は任意であり、注視点が基準注視位置である場合と同様、ゲームシステム1は、上記各制御方法からランダムに1つを選択してもよい。
【0149】
上記のように、本実施形態においては、仮想カメラ202の注視点がキャラクタまたは設置オブジェクトに設定された中間シーンにおいては、ゲームシステム1は、ゲーム空間における水平方向に仮想カメラ202の位置を変化させる制御方法を除いた複数の制御方法(すなわち、上記(A)または(C)の各制御方法)のいずれかに基づいて仮想カメラを制御する。これによれば、上記の中間シーンにおいて、仮想カメラ202が移動する結果、編集領域内の設置オブジェクトと干渉する可能性を低減することができる。
【0150】
編集領域が庭である場合においても部屋である場合と同様に、ゲームシステム1は、用意された上記複数の制御方法から1つを選択することで、中間シーンにおける仮想カメラ202の制御方法を設定する。すなわち、ゲームシステム1は、仮想カメラ202の注視点が基準注視位置である場合には、上記(A)~(C)の各制御方法から1つを選択し、仮想カメラ202の注視点がキャラクタまたは設置オブジェクトである場合には、上記(A)または(C)の各制御方法から1つを選択することで、制御方法を設定する。ただし、編集領域が庭であり、かつ、注視点が基準注視位置である場合には、基準注視位置として、編集領域の中央の位置の他に、編集領域の上方の位置(例えば、空の位置)等が設定されることがある。本実施形態においては、基準注視位置としての編集領域の上方の位置が注視点の位置に設定される場合には、ゲームシステム1は、仮想カメラ202が初期位置から移動した後で庭が表示されるような制御方法(例えば、仮想カメラ202の視線方向が下方に変化するような制御方法や、仮想カメラ202がズームアウトするような制御方法)のうちから制御方法を選択する。これは、編集領域の上方の位置が注視点の位置に設定される場合において、中間シーンにおいて庭が表示されない(あるいは、ほとんど表示されない)結果となることを防止するためである。
【0151】
上記のように、本実施形態においては、ゲームシステム1は、中間シーン中において、当該中間シーンの開始時に設定された仮想カメラ202の位置(すなわち、初期位置)から、仮想カメラ202の位置、姿勢、および、画角のうち少なくともいずれかを変化させる。これによれば、動きのある効果的な演出方法で中間シーンを表示することができる。
【0152】
ここで、本実施形態においては、以上において説明したように、完了時演出における各中間シーンにおいて、仮想カメラ202の初期状態、および、制御方法が中間シーン毎に設定される。つまり、ゲームシステム1は、仮想カメラ202に関して予め設定された複数の制御方法のうちいずれかを中間シーン毎に選択し、中間シーン毎に選択された制御方法に基づいて、当該中間シーン中において仮想カメラ202の位置、姿勢、および、画角のうち少なくともいずれかを変化させる。これによれば、中間シーン毎に仮想カメラ202の変化の仕方を異ならせることができるので、完了時演出のバリエーションを増やすことができ、効果的な演出を行うことができる。
【0153】
また、上記のように、本実施形態においては、制御方法の選択において選択可能な制御方法は、設定された注視点が、基準注視位置、キャラクタ、および、設置オブジェクトのうちのいずれであるかに応じて異なる。これによれば、注視点が設定される対象の種類に応じた制御方法で仮想カメラ202を制御することができるので、対象の種類に応じた適切な中間シーンの画像を生成しやすくなる。
【0154】
また、本実施形態においては、上記の制御方法はランダムに選択される。そのため、ゲームシステム1は、完了時演出が行われる度に異なる内容の中間シーンを生成することができ、ユーザが飽きにくい効果的な演出を行うことができる。
【0155】
また、本実施形態においては、注視点が基準注視位置に設定される場合は、仮想カメラ202が編集領域外の位置に設定され、注視点がキャラクタまたは設置オブジェクトに設定される場合は、仮想カメラ202が領域内の位置に設定される。ここで、前者の場合、編集領域の大部分を含む画像(例えば、編集領域を俯瞰するような画像)が表示され、後者の場合、注視点の位置にある対象に注目するような画像が表示される。したがって、本実施形態においては、ユーザは、完了時演出によって、編集領域の全体の様子と、編集領域に配置されるキャラクタやオブジェクトとの両方を確認することができる。
【0156】
[2-5.完了時演出におけるキャラクタの動作制御]
完了時演出においては、ゲームシステム1は、上記のノンプレイヤキャラクタ204の動作を制御する。すなわち、完了時演出における各シーンにおいて、ノンプレイヤキャラクタ204は、種々の動作を行うようにゲームシステム1によって制御される。ノンプレイヤキャラクタ204に対する動作制御の具体的な方法は任意であるが、本実施形態においては、次のようにノンプレイヤキャラクタ204の動作が制御される。
【0157】
仮想カメラ202の注視点が基準注視位置に設定される場合、ゲームシステム1は、予め用意された動作の選択候補のうちから、ノンプレイヤキャラクタ204が行う動作をランダムに選択する。なお、ゲームシステム1は、注視点となった基準注視位置に応じて、特定の動作を行うようにノンプレイヤキャラクタ204を制御してもよい。例えば、注視点が上述の橋の位置に設定された場合、ノンプレイヤキャラクタ204は、橋を歩く動作を行うように制御されてもよい。
【0158】
仮想カメラ202の注視点がノンプレイヤキャラクタ204に設定される場合、ゲームシステム1は、予め用意された動作の選択候補のうちから、ノンプレイヤキャラクタ204が行う動作をランダムに選択する。なお、注視点がノンプレイヤキャラクタ204に設定される場合における動作の選択候補は、注視点が基準注視位置に設定される場合における選択候補と同じであってもよいし、異なっていてもよい。また、ゲームシステム1は、ノンプレイヤキャラクタ204に設定される個性に基づいて、ノンプレイヤキャラクタ204が行う動作を(ランダムに)選択するようにしてもよい。例えば、ゲームシステム1は、上記個性に応じてノンプレイヤキャラクタ204が特定の動作を行いやすくなるように、ノンプレイヤキャラクタ204が行う動作をランダムに選択してもよい。
【0159】
仮想カメラ202の注視点が設置オブジェクトに設定される場合、ゲームシステム1は、当該設置オブジェクトに関連付けられた動作を行うようにノンプレイヤキャラクタ204を制御する。設置オブジェクトに関連付けられた動作とは、当該設置オブジェクトに関連する動作である。例えば、設置オブジェクトに関連付けられた動作は、当該設置オブジェクトに対してノンプレイヤキャラクタ204が行う動作であり、より具体的には、設置オブジェクトが椅子である場合においては、椅子に座る動作である。なお、他の実施形態においては、1つの設置オブジェクトに対して、設置オブジェクトに関連付けられた動作が複数用意されてもよく、ゲームシステム1は、複数の動作の選択候補から1つを(例えばランダムに)選択するようにしてもよい。
【0160】
なお、完了時演出における各シーンにおいて、前のシーンから次のシーンへと切り替わる際に、ゲームシステム1は、必要に応じてノンプレイヤキャラクタ204を移動させる。例えば、次のシーンにおいて仮想カメラ202の注視点がノンプレイヤキャラクタ204または設置オブジェクトに設定された場合、ノンプレイヤキャラクタ204は上述した位置に配置されるように、前のシーンにおける位置から移動されることがある。また、アウトロシーンにおいてはノンプレイヤキャラクタ204は予め定められた位置に配置される。そのため、アウトロシーンの1つ前の中間シーンにおいて、当該位置とは異なる位置にノンプレイヤキャラクタ204が配置されている場合、ゲームシステム1は、ノンプレイヤキャラクタ204を当該位置に移動させる。
【0161】
[3.ゲームシステムにおける処理の具体例]
次に、
図16~
図19を参照して、ゲームシステム1における情報処理の具体例について説明する。
【0162】
図16は、ゲームシステム1における情報処理に用いられる各種データの一例を示す図である。
図16に示す各種データは、本体装置2がアクセス可能な記憶媒体(例えば、フラッシュメモリ84、DRAM85、および/または、スロット23に装着されたメモリカード等)に記憶される。
【0163】
図16に示すように、ゲームシステム1は、ゲームプログラムを記憶する。ゲームプログラムは、本実施形態におけるゲーム処理(具体的には、
図17~
図19に示す処理)を実行するためのゲームプログラムである。また、ゲームシステム1は、キャラクタデータ、オブジェクトデータ、および、カメラデータを記憶する。
【0164】
キャラクタデータは、編集領域に配置されるキャラクタ(例えば、上記ノンプレイヤキャラクタ204)に関する各種情報を示す。具体的には、キャラクタデータは、編集領域におけるキャラクタの位置および向きを示すデータを含む。キャラクタデータは、これらのデータの他に、キャラクタの能力および/または性質(上述の個性を含む)を示すパラメータを示すデータ等を含んでいてもよい。なお、編集領域内にキャラクタが複数配置される場合、キャラクタデータは、上記各種情報を示すデータをキャラクタ毎に含む。
【0165】
オブジェクトデータは、編集領域に設置されるオブジェクト(例えば、上記設置オブジェクト)に関する各種情報を示す。具体的には、オブジェクトデータは、編集領域におけるオブジェクトの位置および向きを示すデータを含む。なお、編集領域内にオブジェクトが複数配置される場合、オブジェクトデータは、上記各種情報を示すデータをオブジェクト毎に含む。
【0166】
カメラデータは、ゲーム空間における仮想カメラに関する各種情報を示す。具体的には、カメラデータは、カメラ状態データ、および、制御方法データを含む。カメラ状態データは、仮想カメラの状態(具体的には、注視点、位置、姿勢、および、画角等)を示す各種パラメータを示す。制御方法データは、完了時演出の各シーンにおける仮想カメラの制御方法を示す。
【0167】
図17は、ゲームシステム1によって実行される完了時演出処理の流れの一例を示すフローチャートである。
図17に示す完了時演出処理は、例えば、上記ゲームプログラムの実行中において、完了時演出を開始するタイミングとなった(例えば、編集領域の編集が完了した)ことに応じて開始される。なお、本実施形態においては、プロセッサ81は、完了時演出処理の前に実行される編集処理において、ユーザの編集操作の入力に基づいて編集領域内にオブジェクトを配置し、その配置を示すオブジェクトデータを上記記憶媒体に記憶するものとする。
【0168】
なお、本実施形態では、本体装置2のプロセッサ81が、ゲームシステム1に記憶されている上記ゲームプログラムを実行することによって、
図17~
図19に示す各ステップの処理を実行するものとして説明する。ただし、他の実施形態においては、上記各ステップの処理のうちの一部の処理を、プロセッサ81とは別のプロセッサ(例えば、専用回路等)が実行するようにしてもよい。また、ゲームシステム1が他の情報処理装置(例えば、サーバ)と通信可能である場合、
図17~
図19に示す各ステップの処理の一部は、他の情報処理装置において実行されてもよい(つまり、ゲームシステム1が当該他の情報処理装置を含んでいてもよい。)。また、
図17~
図19に示す各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて(または代えて)別の処理が実行されてもよい。
【0169】
また、プロセッサ81は、
図17~
図19に示す各ステップの処理を、メモリ(例えば、DRAM85)を用いて実行する。すなわち、プロセッサ81は、各処理ステップによって得られる情報(換言すれば、データ)をメモリに記憶し、それ以降の処理ステップにおいて当該情報を用いる場合には、メモリから当該情報を読み出して利用する。
【0170】
図17に示すステップS1において、プロセッサ81は、完了時演出において新たなシーンを開始するか否かを判定する。本実施形態においては、プロセッサ81は、完了時演出が開始されてイントロシーンを開始するタイミング、あるいは、完了時演出中において前のシーンが終了したタイミングである場合、完了時演出において新たなシーンを開始すると判定する。なお、完了時演出における各シーンを終了するタイミングは任意である。例えば、プロセッサ81は、シーンが開始されてから予め定められた時間が経過したことに応じて、当該シーンを終了する。ステップS1の判定結果が肯定である場合、ステップS2の処理が実行される。一方、ステップS1の判定結果が否定である場合、ステップS2~S5の処理がスキップされてステップS6の処理が実行される。
【0171】
ステップS2において、プロセッサ81は、開始される新たなシーンにおける仮想カメラの注視点を設定する。具体的には、新たなシーンがイントロシーンまたはアウトロシーンである場合、プロセッサ81は、予め定められた対象(例えば、編集領域の中央の位置)を注視点に設定する。また、新たなシーンが中間シーンである場合、プロセッサ81は、上記“[2-2.中間シーンにおける注視点の設定]”で述べた方法に従って注視点を設定する。プロセッサ81は、設定された注視点を示すように、上記記憶媒体に記憶されているカメラデータ内のカメラ状態データの内容を更新する。ステップS2の次にステップS3の処理が実行される。
【0172】
ステップS3において、プロセッサ81は、開始される新たなシーンにおける仮想カメラの注視点以外の初期状態(具体的には、初期位置、初期姿勢、および、初期画角)を設定する。具体的には、新たなシーンがイントロシーンまたはアウトロシーンである場合、プロセッサ81は、予め定められた状態となるように初期状態を設定する。また、新たなシーンが中間シーンである場合、プロセッサ81は、上記“[2-3.中間シーンにおける仮想カメラの初期状態の設定]”で述べた方法に従って初期状態を設定する。なお、中間シーンにおいて、仮想カメラの注視点がキャラクタまたは設置オブジェクトに設定された場合における仮想カメラの初期状態を設定するための処理の詳細については、
図18および
図19を参照して後述する。プロセッサ81は、設定された初期状態を示すように、上記記憶媒体に記憶されているカメラデータ内のカメラ状態データの内容を更新する。ステップS3の次にステップS4の処理が実行される。
【0173】
ステップS4において、プロセッサ81は、開始される新たなシーンにおける仮想カメラの制御方法を設定する。具体的には、新たなシーンがイントロシーンまたはアウトロシーンである場合、プロセッサ81は、予め定められた制御方法を設定する。また、新たなシーンが中間シーンである場合、プロセッサ81は、上記“[2-4.中間シーンにおける仮想カメラの制御方法の設定]”で述べた方法に従って制御方法を設定する。プロセッサ81は、設定された制御方法を示すように、上記記憶媒体に記憶されているカメラデータ内の制御方法データの内容を更新する。ステップS4の次にステップS5の処理が実行される。
【0174】
ステップS5において、プロセッサ81は、開始される新たなシーンにおけるキャラクタ(すなわち、ノンプレイヤキャラクタ204)の動作を設定する。具体的には、新たなシーンがイントロシーンまたはアウトロシーンである場合、プロセッサ81は、キャラクタが行う動作として、予め定められた動作を設定する。また、新たなシーンが中間シーンである場合、プロセッサ81は、上記“[2-5.完了時演出におけるキャラクタの動作制御]”で述べた方法に従ってキャラクタの動作を設定する。ステップS5の次にステップS6の処理が実行される。
【0175】
上記のように、本実施形態においては、プロセッサ81は、完了時演出処理中において新たなシーンが開始される度に、当該シーンにおける仮想カメラおよびキャラクタに関する設定を行う。ただし、他の実施形態においては、プロセッサ81は、完了時演出処理の開始時において、完了時演出に含まれる各中間シーンにおける仮想カメラおよびキャラクタに関する設定をまとめて行うようにしてもよい。
【0176】
ステップS6において、プロセッサ81は、上記ステップS4で設定された制御方法に従って仮想カメラを制御する。つまり、プロセッサ81は、上記記憶媒体に記憶されているカメラデータ内の制御方法データが示す内容に従って、仮想カメラの状態を変化させる。ここで、
図17に示す完了時演出処理においては、ステップS1~S9の一連の処理ループは、所定時間(すなわち、1フレーム時間)に1回の割合で実行される。そのため、1回のステップS6の処理においては、プロセッサ81は、1フレーム時間分における変化量だけ仮想カメラの状態を変化させる。ステップS6の次にステップS7の処理が実行される。
【0177】
ステップS7において、プロセッサ81は、上記ステップS5で設定された動作の内容に従ってキャラクタを制御する。1回のステップS7の処理においては、プロセッサ81は、1フレーム時間分における動作量だけキャラクタを動作させる。ステップS7の次にステップS8の処理が実行される。
【0178】
ステップS8において、プロセッサ81は、完了時演出における演出画像(ゲーム画像とも言える)を生成してディスプレイ12に表示させる。すなわち、プロセッサ81は、上記ステップS6で制御された仮想カメラを用いて、編集領域を示す画像(つまり、当該仮想カメラから見たときの編集領域の画像)を生成する。なお、本実施形態においては、ゲームシステム1はディスプレイ12に画像を表示するが、ディスプレイ12とは異なる他の表示装置(例えば、本体装置2に接続されるモニタ)に画像を表示してもよい。ステップS8の次にステップS9の処理が実行される。
【0179】
ステップS9において、プロセッサ81は、完了時演出を終了するか否かを判定する。具体的には、プロセッサ81は、アウトロシーンを終了するタイミングとなったか否かを判定する。ステップS9の判定結果が否定である場合、ステップS1の処理が再度実行される。以降、ステップS9において完了時検出を終了すると判定されるまで、ステップS1~S9の一連の処理ループが繰り返し実行される。一方、ステップS9の判定結果が肯定である場合、プロセッサ81は、
図17に示す完了時演出処理を終了する。
【0180】
図18は、中間シーンにおいて仮想カメラの注視点がキャラクタに設定された場合におけるステップS3の処理(仮想カメラの初期状態を設定する処理。
図18において、第1カメラ設定処理と記載する。)の詳細な流れの一例を示すサブフローチャートである。
【0181】
ステップS11において、プロセッサ81は、仮想カメラの初期位置を設定するための探索における探索開始位置を設定する。上記“[2-3.中間シーンにおける仮想カメラの初期状態の設定]”で述べたように、探索開始位置は、注視点の位置に配置されるキャラクタの位置および向きに基づいて決定される(
図12および
図14参照)。なお、プロセッサ81は、キャラクタの位置および向きを、上記記憶媒体に記憶されているキャラクタデータを参照することで特定する。ステップS11の次にステップS12の処理が実行される。
【0182】
ステップS12において、プロセッサ81は、仮想カメラの初期位置を設定するための探索における探索経路を設定する。上記“[2-3.中間シーンにおける仮想カメラの初期状態の設定]”で述べたように、プロセッサ81は、注視点の位置に配置されるキャラクタの位置と、探索開始位置とに基づいて、2つの探索経路を設定する(
図12および
図14参照)。ステップS12の次にステップS13の処理が実行される。
【0183】
ステップS13において、プロセッサ81は、ステップS12で設定された2つの探索経路のそれぞれについて、上述の初期配置条件を満たす位置を探索する。なお、
図18に示す第1カメラ設定処理においては、プロセッサ81は、2つの探索経路のそれぞれについて探索開始位置から順に探索を行い、初期配置条件を満たす位置が見つかった場合に、当該位置が見つかった探索経路についての探索を終了してよい。ステップS13の次にステップS14の処理が実行される。
【0184】
ステップS14において、プロセッサ81は、ステップS13における探索において初期配置条件を満たす位置が見つかったか否かを判定する。ステップS14の判定結果が否定である場合、ステップS15の処理が実行される。一方、ステップS14の判定結果が肯定である場合、ステップS16の処理が実行される。
【0185】
ステップS15において、プロセッサ81は、探索経路を再設定するか否かを判定する。この判定は、注視点の位置に配置されるキャラクタから、ステップS13で最後に設定された探索経路までの距離が、上述の上限値に達しているか否かによって行われる。すなわち、上記距離が上記上限値に達している場合、探索経路を再設定しないと判定され、上記距離が上記上限値に達していない場合、探索経路を再設定すると判定される。ステップS15の判定結果が肯定である場合、ステップS12の処理が再度実行される。これによって、探索経路が再度設定され(ステップS12)、設定された探索経路についての探索が再度行われる(ステップS13)。一方、ステップS15の判定結果が否定である場合(つまり、初期配置条件を満たす位置が探索によって見つからなかった場合)、後述するステップS18の処理が実行される。
【0186】
ステップS16において、プロセッサ81は、仮想カメラ202の初期位置として、ステップS13における探索によって見つかった位置を設定する。なお、上記“[2-3.中間シーンにおける仮想カメラの初期状態の設定]”で述べたように、初期配置条件を満たす位置が2つの探索経路の両方で見つかった場合には、上記“[2-3.中間シーンにおける仮想カメラの初期状態の設定]”で述べた方法で、一方の位置が仮想カメラ202の初期位置に設定される。ステップS16の次にステップS17の処理が実行される。
【0187】
ステップS17において、プロセッサ81は、仮想カメラの初期姿勢および初期画角を設定する。初期姿勢および初期画角は、上記“[2-3.中間シーンにおける仮想カメラの初期状態の設定]”で述べた方法に従って設定される。ステップS17の後、プロセッサ81は、
図18に示す第1カメラ設定処理を終了する。
【0188】
一方、ステップS18において、プロセッサ81は、仮想カメラの注視点を変更し、変更後の注視点に基づいて仮想カメラの初期状態を設定する。具体的には、上記“[2-3.中間シーンにおける仮想カメラの初期状態の設定]”で述べたように、プロセッサ81は、仮想カメラの注視点を基準注視位置に設定し直し、基準注視位置に設定された注視点に基づいて仮想カメラの初期状態を設定する。ステップS18の後、プロセッサ81は、
図18に示す第1カメラ設定処理を終了する。
【0189】
図19は、中間シーンにおいて仮想カメラの注視点が設置オブジェクトに設定された場合におけるステップS3の処理(仮想カメラの初期状態を設定する処理。
図19において、第1カメラ設定処理と記載する。)の詳細な流れの一例を示すサブフローチャートである。
【0190】
ステップS21において、プロセッサ81は、仮想カメラの初期位置を設定するための探索における探索開始位置を設定する。上記“[2-3.中間シーンにおける仮想カメラの初期状態の設定]”で述べたように、探索開始位置は、注視点の位置に配置される設置オブジェクトの位置および向きに基づいて決定される(
図13および
図15参照)。なお、プロセッサ81は、設置オブジェクトの位置および向きを、上記記憶媒体に記憶されているオブジェクトデータを参照することで特定する。ステップS21の次にステップS22の処理が実行される。
【0191】
ステップS22において、プロセッサ81は、仮想カメラの初期位置を設定するための探索における探索経路を設定する。上記“[2-3.中間シーンにおける仮想カメラの初期状態の設定]”で述べたように、プロセッサ81は、注視点の位置に配置される設置オブジェクトおよびノンプレイヤキャラクタの位置と、探索開始位置とに基づいて、2つの探索経路を設定する(
図13および
図15参照)。ステップS22の次にステップS23の処理が実行される。
【0192】
ステップS23において、プロセッサ81は、ステップS22で設定された探索経路のうち1つ目の探索経路について、上述の初期配置条件を満たす位置を探索する。ここで、上記「1つ目の探索経路」とは、ノンプレイヤキャラクタの正面方向にある探索経路(
図13に示す探索経路214、または、
図15に示す探索経路218)である。このように、
図19に示す第2カメラ設定処理においては、プロセッサ81は、2つの探索経路のうち1つ目の探索経路について探索開始位置から順に探索を行い、初期配置条件を満たす位置が見つかった場合に探索を終了する。ステップS23の次にステップS24の処理が実行される。
【0193】
ステップS24において、プロセッサ81は、ステップS23における探索において初期配置条件を満たす位置が見つかったか否かを判定する。ステップS24の判定結果が否定である場合、ステップS25の処理が実行される。一方、ステップS24の判定結果が肯定である場合、後述するステップS28の処理が実行される。
【0194】
ステップS25において、プロセッサ81は、ステップS22で設定された探索経路のうち2つ目の探索経路について、上述の初期配置条件を満たす位置を探索する。ここで、上記「2つ目の探索経路」とは、ノンプレイヤキャラクタの背面方向にある探索経路(
図13に示す探索経路213、または、
図15に示す探索経路217)である。このように、
図19に示す第2カメラ設定処理においては、プロセッサ81は、2つの探索経路のうち1つ目の探索経路について探索開始位置から順に探索を行い、初期配置条件を満たす位置が見つかった場合に、2つ目の探索経路についての探索を行う。ステップS25の次にステップS26の処理が実行される。
【0195】
ステップS26において、プロセッサ81は、ステップS25における探索において初期配置条件を満たす位置が見つかったか否かを判定する。ステップS26の判定結果が否定である場合、ステップS27の処理が実行される。一方、ステップS26の判定結果が肯定である場合、後述するステップS28の処理が実行される。
【0196】
ステップS27において、プロセッサ81は、探索経路を再設定するか否かを判定する。この判定は、注視点の位置に配置される設置オブジェクトから、ステップS23で最後に設定された探索経路までの距離が、上述の上限値に達しているか否かによって行われる。すなわち、上記距離が上記上限値に達している場合、探索経路を再設定しないと判定され、上記距離が上記上限値に達していない場合、探索経路を再設定すると判定される。ステップS27の判定結果が肯定である場合、ステップS22の処理が再度実行される。これによって、探索経路が再度設定され(ステップS22)、設定された探索経路についての探索が再度行われる(ステップS23,S25)。一方、ステップS27の判定結果が否定である場合(つまり、初期配置条件を満たす位置が探索によって見つからなかった場合)、後述するステップS30の処理が実行される。
【0197】
ステップS28において、プロセッサ81は、仮想カメラ202の初期位置として、ステップS23またはS25における探索によって見つかった位置を設定する。ステップS28の次にステップS29の処理が実行される。
【0198】
ステップS29において、プロセッサ81は、仮想カメラの初期姿勢および初期画角を設定する。初期姿勢および初期画角は、上記“[2-3.中間シーンにおける仮想カメラの初期状態の設定]”で述べた方法に従って設定される。ステップS29の後、プロセッサ81は、
図19に示す第2カメラ設定処理を終了する。
【0199】
一方、ステップS30において、プロセッサ81は、仮想カメラの注視点を変更し、変更後の注視点に基づいて仮想カメラの初期状態を設定する。ステップS30の処理は、上述のステップS18の処理と同様である。ステップS30の後、プロセッサ81は、
図19に示す第2カメラ設定処理を終了する。
【0200】
[4.本実施形態の作用効果および変形例]
以上のように、上記実施形態においては、ゲームプログラムは、情報処理装置(例えば、本体装置2)のコンピュータに、次の処理を行わせる構成である。
・仮想空間内の所定の領域(具体的には、編集領域)において、当該領域内に設置される設置オブジェクトの選択、設置、および、移動のうち少なくともいずれかを含む編集を操作入力に基づいて行う。
・操作入力に基づく完了指示に応じて、または、所定の完了条件を満たしたことに応じて、少なくとも1つのシーンを含む演出であって、仮想カメラに基づいて領域内の画像を当該シーン毎に表示する完了時演出を行う(
図17)。
・上記シーン(具体的には、中間シーン)において、仮想カメラの注視点を、領域に設置された設置オブジェクト、領域内の所定の位置(具体的には基準注視位置)、および、領域内に配置されたキャラクタのうちいずれかの位置に設定する(ステップS2)。
・上記シーン(具体的には、中間シーン)において、領域内に設定された設置オブジェクトが設置されていない位置に仮想カメラを設定する(ステップS3)。
【0201】
上記の構成によれば、仮想カメラは、領域内に設定された設置オブジェクトが設置されていない位置に設定されるので、当該仮想カメラに基づいて生成される画像を用いて完了時演出を行うことで、演出を効果的に行うことができる。例えば、完了時演出における各シーンにおいて、注視点の位置に配置される対象(上記のキャラクタや設置オブジェクトや所定の位置)が設置オブジェクトによって隠されるといった不都合が生じる可能性を低減することができる。
【0202】
なお、上記実施形態においては、編集領域に対する編集が完了した場合に完了時演出が行われるが、「編集の完了」とは、当該編集領域に対してさらなる編集を行うことができなくなることを意味しない。つまり、上記実施形態においては、編集が行われて完了時演出が行われた編集領域に対して、さらなる編集を行うことが可能であってもよい。このとき、ゲームシステム1は、さらなる編集の完了後に、さらに完了後演出を行うようにしてもよい。
【0203】
上記実施形態において実行されるゲームのジャンルは任意である。上記実施形態における完了時演出は、任意のジャンルのゲームにおいて、所定の領域においてユーザによる編集が行われた場合に編集の内容をユーザに見せる任意の演出として利用することができる。
【0204】
なお、他の実施形態において、情報処理システムは、上記実施形態における構成の一部を備えていなくてもよいし、上記実施形態において実行される処理の一部を実行しなくてもよい。例えば、情報処理システムは、上記実施形態における一部の特定の効果を奏するためには、当該効果を奏するための構成を備え、当該効果を奏するための処理を実行すればよく、その他の構成を備えていなくてもよいし、その他の処理を実行しなくてもよい。
【産業上の利用可能性】
【0205】
上記実施形態には、オブジェクトの配置をユーザに見せるための演出を効果的に行うこと等を目的として、例えばゲームプログラムやゲームシステム等として利用することができる。
【符号の説明】
【0206】
1 ゲームシステム
2 本体装置
3 左コントローラ
4 右コントローラ
81 プロセッサ
201 部屋
202 仮想カメラ
203 基準注視位置
204 ノンプレイヤキャラクタ
205 設置オブジェクト
211~218 探索経路