(57)【要約】  【課題】  仮想空間内を移動する仮想カメラによる画像の自然な変化を実現する。  【解決手段】  情報処理システム１００は、所定の情報処理に基づいて仮想空間内における仮想カメラＣの移動先の位置を算出するカメラ移動先算出部３２１と、仮想カメラＣの撮像対象Ｐの位置から移動先の位置に向かう第１ベクトルＶ１が仮想空間内の遮蔽物オブジェクトＳに外側から交差し、かつ、移動先の位置から仮想カメラＣの撮像対象Ｐの位置に向かう第２ベクトルＶ２が遮蔽物オブジェクトＳに外側から交差しない場合に、遮蔽物オブジェクトＳを回避する回避位置に仮想カメラＣを移動させるカメラ移動部３２４と、カメラ移動部３２４によって移動された仮想カメラＣに基づいて仮想空間の画像を生成する画像生成部３３とを備える。【選択図】  図４
2018112789.tif 000002
【特許請求の範囲】
【請求項１】
所定の情報処理に基づいて仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出部と、
前記仮想カメラの撮像対象の位置から前記移動先の位置に向かう第１ベクトルが前記仮想空間内の遮蔽物オブジェクトに外側から交差し、かつ、前記移動先の位置から前記仮想カメラの撮像対象の位置に向かう第２ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記遮蔽物オブジェクトを回避する回避位置に前記仮想カメラを移動させるカメラ移動部と、
前記カメラ移動部によって移動された前記仮想カメラに基づいて前記仮想空間の画像を生成する画像生成部と、
を備えた情報処理システム。
【請求項２】
前記カメラ移動部は、前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記仮想カメラを前記移動先の位置に移動させる、請求項１に記載の情報処理システム。
【請求項３】
前記カメラ移動部は、前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差し、かつ、前記第２ベクトルが前記遮蔽物オブジェクトに外側から交差する場合に、前記仮想カメラを前記移動先の位置に移動させる、請求項１又は２に記載の情報処理システム。
【請求項４】
前記回避位置は、前記遮蔽物オブジェクトより前記撮像対象側の位置である、請求項１ないし３のいずれかに記載の情報処理システム。
【請求項５】
前記カメラ移動先算出部は、プレイヤの操作に基づく所定の情報処理に基づいて前記移動先の位置を算出する、請求項１ないし４のいずれかに記載の情報処理システム。
【請求項６】
前記カメラ移動先算出部は、前記プレイヤの操作に基づいて前記仮想空間内を移動する前記撮像対象の移動に伴って前記仮想カメラが移動するように情報処理を行うことで前記移動先の位置を算出する、請求項５に記載の情報処理システム。
【請求項７】
前記カメラ移動先算出部は、前記プレイヤのカメラ移動の指示に従って前記仮想カメラが移動するように情報処理を行うことで前記移動先の位置を算出する、請求項５に記載の情報処理システム。
【請求項８】
前記画像生成部は、前記遮蔽物オブジェクトによって遮蔽される前記撮像対象の前記仮想空間内における位置を示す画像を生成する、請求項１ないし７のいずれかに記載の情報処理システム。
【請求項９】
前記画像生成部は、前記遮蔽物オブジェクトによって遮蔽される前記撮像対象をシルエットで示す画像を生成する、請求項８に記載の情報処理システム。
【請求項１０】
前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差するか否かの第１判定を行う第１判定部と、
前記第２ベクトルが前記遮蔽物オブジェクトに外側から交差するか否かの第２判定を行う第２判定部と、
をさらに備え、
前記カメラ移動部は、前記第１判定及び前記第２判定の結果に基づいて前記仮想カメラを移動させる、請求項１ないし９のいずれかに記載の情報処理システム。
【請求項１１】
前記第２判定部は、前記第１判定部が前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差すると判定した場合に、前記第２判定を行う、請求項１０に記載の情報処理システム。
【請求項１２】
プレイヤの操作に基づいて、仮想空間内でプレイヤキャラクタオブジェクトを移動させるプレイヤキャラクタ制御部と、
前記プレイヤキャラクタオブジェクトの移動に応じて、前記仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出部と、
前記移動先の位置と前記プレイヤキャラクタオブジェクトとの間の遮蔽物オブジェクトの有無を判定する遮蔽物判定部と、
前記移動先の位置が前記遮蔽物オブジェクトの内部であるか否か判定するコリジョン判定部と、
前記遮蔽物判定部において前記遮蔽物オブジェクトがあると判定され、前記コリジョン判定部において前記移動先が前記遮蔽物オブジェクトの内部にあると判定されたときに、前記仮想カメラを前記遮蔽物オブジェクトより前記プレイヤキャラクタオブジェクト側になる位置に移動させるカメラ移動部と、
前記遮蔽物判定部において前記遮蔽物オブジェクトがあると判定され、かつ、前記コリジョン判定部において前記移動先の位置が前記遮蔽物オブジェクトの内部でないと判定されたときに、前記遮蔽物オブジェクト上に、前記遮蔽物オブジェクトによって遮蔽されている前記プレイヤキャラクタオブジェクトの存在を示す画像が表示されるように前記仮想空間の画像を生成する画像生成部と、
を備えるゲームシステム。
【請求項１３】
情報処理装置に、
所定の情報処理に基づいて仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出ステップと、
前記仮想カメラの撮像対象の位置から前記移動先の位置に向かう第１ベクトルが前記仮想空間内の遮蔽物オブジェクトに外側から交差し、かつ、前記移動先の位置から前記仮想カメラの撮像対象の位置に向かう第２ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記遮蔽物オブジェクトを回避する回避位置に前記仮想カメラを移動させるカメラ移動ステップと、
前記カメラ移動ステップによって移動された前記仮想カメラに基づいて前記仮想空間の画像を生成する画像生成ステップと、
を実行させる情報処理プログラム。
【請求項１４】
前記カメラ移動ステップは、前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記仮想カメラを前記移動先の位置に移動させる、請求項１３に記載の情報処理プログラム。
【請求項１５】
前記カメラ移動ステップは、前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差し、かつ、前記第２ベクトルが前記遮蔽物オブジェクトに外側から交差する場合に、前記仮想カメラを前記移動先の位置に移動させる、請求項１３又は１４に記載の情報処理プログラム。
【請求項１６】
前記回避位置は、前記遮蔽物オブジェクトより前記撮像対象側の位置である、請求項１３ないし１５のいずれかに記載の情報処理プログラム。
【請求項１７】
前記カメラ移動先算出ステップは、プレイヤの操作に基づく所定の情報処理に基づいて前記移動先の位置を算出する、請求項１３ないし１６のいずれかに記載の情報処理プログラム。
【請求項１８】
前記カメラ移動先算出ステップは、前記プレイヤの操作に基づいて前記仮想空間内を移動するプレイヤキャラクタオブジェクトの移動に伴って前記仮想カメラが移動するように情報処理を行うことで前記移動先の位置を算出する、請求項１７に記載の情報処理プログラム。
【請求項１９】
前記カメラ移動先算出ステップは、前記プレイヤのカメラ移動の指示に従って前記仮想カメラが移動するように情報処理を行うことで前記移動先の位置を算出する、請求項１７に記載の情報処理プログラム。
【請求項２０】
前記画像生成ステップは、前記遮蔽物オブジェクトによって遮蔽される前記撮像対象の前記仮想空間内における位置を示す画像を生成する、請求項１３ないし１９のいずれかに記載の情報処理プログラム。
【請求項２１】
前記画像生成ステップは、前記遮蔽物オブジェクトによって遮蔽される前記撮像対象をシルエットで示す画像を生成する、請求項２０に記載の情報処理プログラム。
【請求項２２】
前記情報処理装置に、
前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差するか否かの第１判定を行う第１判定ステップと、
前記第２ベクトルが前記遮蔽物オブジェクトに外側から交差するか否かの第２判定を行う第２判定ステップと、
をさらに実行させ、
前記カメラ移動ステップは、前記第１判定及び前記第２判定の結果に基づいて前記仮想カメラを移動させる、請求項１３ないし２１のいずれかに記載の情報処理プログラム。
【請求項２３】
前記第１判定ステップにて前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差すると判定された場合に、前記第２判定ステップにて前記第２判定を行う、請求項２２に記載の情報処理プログラム。
【請求項２４】
情報処理装置に、
プレイヤの操作に基づいて、仮想空間内でプレイヤキャラクタオブジェクトを移動させるプレイヤキャラクタ制御ステップと、
前記プレイヤキャラクタオブジェクトの移動に応じて、前記仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出ステップと、
前記移動先の位置と前記プレイヤキャラクタオブジェクトとの間の遮蔽物オブジェクトの有無を判定する遮蔽物判定ステップと、
前記移動先の位置が前記遮蔽物オブジェクトの内部であるか否か判定するコリジョン判定ステップと、
前記遮蔽物判定ステップにおいて前記遮蔽物オブジェクトがあると判定され、前記コリジョン判定ステップにおいて前記移動先が前記遮蔽物オブジェクトの内部にあると判定されたときに、前記仮想カメラを前記遮蔽物オブジェクトより前記プレイヤキャラクタオブジェクト側になる位置に移動させるカメラ移動ステップと、
前記遮蔽物判定ステップにおいて前記遮蔽物オブジェクトがあると判定され、かつ、前記コリジョン判定ステップにおいて前記移動先の位置が前記遮蔽物オブジェクトの内部でないと判定されたときに、前記遮蔽物オブジェクト上に、前記遮蔽物オブジェクトによって遮蔽されている前記プレイヤキャラクタオブジェクトの存在を示す画像が表示されるように前記仮想空間の画像を生成する画像生成ステップと、
を実行させるゲームプログラム。
【請求項２５】
所定の情報処理に基づいて仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出部と、
前記仮想カメラの撮像対象の位置から前記移動先の位置に向かう第１ベクトルが前記仮想空間内の遮蔽物オブジェクトに外側から交差し、かつ、前記移動先の位置から前記仮想カメラの撮像対象の位置に向かう第２ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記遮蔽物オブジェクトを回避する回避位置に前記仮想カメラを移動させるカメラ移動部と、
前記カメラ移動部によって移動された前記仮想カメラに基づいて前記仮想空間の画像を生成する画像生成部と、
を備えた情報処理装置。
【請求項２６】
プレイヤの操作に基づいて、仮想空間内でプレイヤキャラクタオブジェクトを移動させるプレイヤキャラクタ制御部と、
前記プレイヤキャラクタオブジェクトの移動に応じて、前記仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出部と、
前記移動先の位置と前記プレイヤキャラクタオブジェクトとの間の遮蔽物オブジェクトの有無を判定する遮蔽物判定部と、
前記移動先の位置が前記遮蔽物オブジェクトの内部であるか否か判定するコリジョン判定部と、
前記遮蔽物判定部において前記遮蔽物オブジェクトがあると判定され、前記コリジョン判定部において前記移動先の位置が前記遮蔽物オブジェクトの内部であると判定されたときに、前記仮想カメラを前記遮蔽物オブジェクトより前記プレイヤキャラクタオブジェクト側になる位置に移動させるカメラ移動部と、
前記遮蔽物判定部において前記遮蔽物オブジェクトがあると判定され、かつ、前記コリジョン判定部において前記移動先の位置が前記遮蔽物オブジェクトの内部でないと判定されたときに、前記遮蔽物オブジェクト上に、前記遮蔽物オブジェクトによって遮蔽されている前記プレイヤキャラクタオブジェクトの存在を示す画像が表示されるように前記仮想空間の画像を生成する画像生成部と、
を備えるゲーム装置。
【請求項２７】
所定の情報処理に基づいて仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出ステップと、
前記仮想カメラの撮像対象の位置から前記移動先の位置に向かう第１ベクトルが前記仮想空間内の遮蔽物オブジェクトに外側から交差し、かつ、前記移動先の位置から前記仮想カメラの撮像対象の位置に向かう第２ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記遮蔽物オブジェクトを回避する回避位置に前記仮想カメラを移動させるカメラ移動ステップと、
前記カメラ移動ステップによって移動された前記仮想カメラに基づいて前記仮想空間の画像を生成する画像生成ステップと、
をを含む情報処理方法。
【請求項２８】
プレイヤの操作に基づいて、仮想空間内でプレイヤキャラクタオブジェクトを移動させるプレイヤキャラクタ制御ステップと、
前記プレイヤキャラクタオブジェクトの移動に応じて、前記仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出ステップと、
前記移動先の位置と前記プレイヤキャラクタオブジェクトとの間の遮蔽物オブジェクトの有無を判定する遮蔽物判定ステップと、
前記移動先の位置が前記遮蔽物オブジェクトの内部であるか否か判定するコリジョン判定ステップと、
前記遮蔽物判定ステップにおいて前記遮蔽物オブジェクトがあると判定され、かつ、前記コリジョン判定ステップにおいて前記移動先が前記遮蔽物オブジェクトの内部にあると判定されたときに、前記仮想カメラを前記遮蔽物オブジェクトより前記プレイヤキャラクタオブジェクト側になる位置に移動させるカメラ移動ステップと、
前記遮蔽物判定ステップにおいて前記遮蔽物オブジェクトがあると判定され、かつ、前記コリジョン判定ステップにおいて前記移動先の位置が前記遮蔽物オブジェクトの内部でないと判定されたときに、前記遮蔽物オブジェクト上に、前記遮蔽物オブジェクトによって遮蔽されている前記プレイヤキャラクタオブジェクトの存在を示す画像が表示されるように前記仮想空間の画像を生成する画像生成ステップと、
を含むゲーム方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間内に仮想カメラを設定して画像を生成する情報処理システム、情報処理プログラム、情報処理装置、情報処理方法、ゲームシステム、ゲームプログラム、ゲーム装置、及びゲーム方法に関する。
【背景技術】
【０００２】
従来より、仮想空間内に仮想カメラを設定して、その仮想カメラによる仮想の撮影によって得られる画像（仮想撮影画像）を生成して提供する情報処理システムが知られている。このような情報処理システムとして、例えば、仮想空間でゲームを展開するゲームシステム、ＶＲ（仮想現実）を提供するＶＲシステムがある。
【０００３】
この情報処理システムでは、所定の撮像対象（例えばゲーム場合にはプレイヤキャラクタオブジェクト）を撮影するように、仮想空間内で仮想カメラを撮像対象に合わせて移動させることで、撮像対象を含む画像を生成する。この情報処理システムにおいて、撮像対象に合わせて仮想カメラを移動させた結果、撮像対象と仮想カメラとの間に他のオブジェクト（遮蔽物オブジェクト）が存在することになる場合には、遮蔽物オブジェクトによる遮蔽が生じない回避位置、例えば、撮像対象と遮蔽物オブジェクトとの間の位置まで仮想カメラを移動させるという制御（遮蔽回避制御）が行われる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−２３５５９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記のような遮蔽回避制御によれば、仮想カメラが急激に回避位置に移動することがあり、そうなると生成される画像も急激に変化することになる。
【０００６】
本発明は、仮想空間内を移動する仮想カメラによる画像の自然な変化を実現することを目的とする。本発明の他の目的は、遮蔽回避制御の処理負荷を軽減することである。
【課題を解決するための手段】
【０００７】
本発明の一態様の情報処理システムは、所定の情報処理に基づいて仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出部と、前記仮想カメラの撮像対象の位置から前記移動先の位置に向かう第１ベクトルが前記仮想空間内の遮蔽物オブジェクトに外側から交差し、かつ、前記移動先の位置から前記仮想カメラの撮像対象の位置に向かう第２ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記遮蔽物オブジェクトを回避する回避位置に前記仮想カメラを移動させるカメラ移動部と、前記カメラ移動部によって移動された前記仮想カメラに基づいて前記仮想空間の画像を生成する画像生成部とを備える。
【０００８】
撮像対象の位置から仮想カメラの移動先の位置に向かう第１ベクトルが遮蔽物オブジェクトに外側から交差し、かつ、仮想カメラの移動先の位置から撮像対象の位置に向かう第２ベクトルが遮蔽物オブジェクトに外側から交差しない場合とは、すなわち、仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にあることを意味する。このように、算出された仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にある場合に、仮想カメラを、算出された移動先の位置ではなく回避位置に移動させるので、仮想カメラからみて撮像対象が遮蔽物オブジェクトによって遮蔽されている場合に常に回避位置に移動させる場合と比較して、仮想カメラによる画像の自然な変化を実現するができる。また、仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にあるか否かを、撮像対象の位置から仮想カメラの移動先の位置に向かう第１ベクトル）と、仮想カメラの移動先の位置から撮像対象の位置に向かう第２ベクトルとが、それぞれ遮蔽物オブジェクトに外側から交差するか否かによって判断するので、仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にあるか否かを直接判断する場合と比較して、遮蔽回避制御の処理負荷を軽減できる。
【０００９】
前記カメラ移動部は、前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記仮想カメラを前記移動先の位置に移動させてよい。
【００１０】
第１ベクトルが遮蔽物オブジェクトに外側から交差しない場合とは、撮像対象と仮想カメラの移動先との間に遮蔽物オブジェクトが存在せず、仮想カメラから見て撮像対象が遮蔽物オブジェクトによって遮蔽されないことを意味し、この場合は、算出された移動先に仮想カメラを移動する。この構成により、撮像対象が遮蔽物オブジェクトに遮蔽されない場合には、所定の情報処理に基づいて算出された移動先の位置に仮想カメラを移動させることができる。
【００１１】
前記カメラ移動部は、前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差し、かつ、前記第２ベクトルが前記遮蔽物オブジェクトに外側から交差する場合に、前記仮想カメラを前記移動先の位置に移動させてよい。
【００１２】
第１ベクトルが遮蔽物オブジェクトに外側から交差し、かつ、第２ベクトルも遮蔽物オブジェクトに外側から交差する場合とは、撮像対象と仮想カメラとの間に遮蔽物オブジェクトが存在するが、仮想カメラは当該遮蔽物オブジェクトの内部にはないことを意味する。この構成により、そのような場合には、遮蔽回避制御を行わず、所定の情報処理に基づいて算出された移動先の位置に仮想カメラを移動させることができる。
【００１３】
前記回避位置は、前記遮蔽物オブジェクトより前記撮像対象側の位置であってよい。
【００１４】
この構成により、回避位置では仮想カメラが遮蔽物オブジェクトに遮蔽されることなく、撮像対象が遮蔽されていない画像を生成できる。
【００１５】
前記カメラ移動先算出部は、プレイヤの操作に基づく所定の情報処理に基づいて前記移動先の位置を算出してよい。
【００１６】
この構成により、プレイヤの操作に基づいて仮想カメラの移動先の位置を算出できる。
【００１７】
前記カメラ移動先算出部は、前記プレイヤの操作に基づいて前記仮想空間内を移動する前記撮像対象の移動に伴って前記仮想カメラが移動するように情報処理を行うことで前記移動先の位置を算出してよい。
【００１８】
この構成により、プレイヤの操作に基づいて移動する撮像対象の移動に伴って仮想カメラが移動するので、プレイヤが仮想カメラの移動の指示を直接意識することなく、撮像対象の画像を得ることができる。
【００１９】
前記カメラ移動先算出部は、前記プレイヤのカメラ移動の指示に従って前記仮想カメラが移動するように情報処理を行うことで前記移動先の位置を算出してよい。
【００２０】
この構成により、プレイヤは仮想カメラの移動について直接的に指示をすることができる。
【００２１】
前記画像生成部は、前記遮蔽物オブジェクトによって遮蔽される前記撮像対象の前記仮想空間内における位置を示す画像を生成してよい。
【００２２】
この構成により、撮像対象が遮蔽物オブジェクトによって遮蔽される場合にも、画像において撮像対象の仮想空間内での位置を把握できる。
【００２３】
前記画像生成部は、前記遮蔽物オブジェクトによって遮蔽される前記撮像対象をシルエットで示す画像を生成してよい。
【００２４】
この構成により、撮像対象が遮蔽物オブジェクトによって遮蔽される場合にも、画面において撮像対象がシルエットで表示されるので、撮像対象の様子を把握できる。
【００２５】
上記の情報処理システムは、前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差するか否かの第１判定を行う第１判定部と、前記第２ベクトルが前記遮蔽物オブジェクトに外側から交差するか否かの第２判定を行う第２判定部とをさらに備えていてよく、前記カメラ移動部は、前記第１判定及び前記第２判定の結果に基づいて前記仮想カメラを移動させてよい。
【００２６】
この構成により、第１判定と第２判定とをそれぞれの判定処理として行うことができる。
【００２７】
前記第２判定部は、前記第１判定部が前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差すると判定した場合に、前記第２判定を行ってよい。
【００２８】
この構成により、第２判定が不要な場合には、第２判定をしないようにして、処理負荷を軽減できる。
【００２９】
本発明の一態様のゲームシステムは、プレイヤの操作に基づいて、仮想空間内でプレイヤキャラクタオブジェクトを移動させるプレイヤキャラクタ制御部と、前記プレイヤキャラクタオブジェクトの移動に応じて、前記仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出部と、前記移動先の位置と前記プレイヤキャラクタオブジェクトとの間の遮蔽物オブジェクトの有無を判定する遮蔽物判定部と、前記移動先の位置が前記遮蔽物オブジェクトの内部であるか否か判定するコリジョン判定部と、前記遮蔽物判定部において前記遮蔽物オブジェクトがあると判定され、前記コリジョン判定部において前記移動先が前記遮蔽物オブジェクトの内部にあると判定されたときに、前記仮想カメラを前記遮蔽物オブジェクトより前記プレイヤキャラクタオブジェクト側になる位置に移動させるカメラ移動部と、前記遮蔽物判定部において前記遮蔽物オブジェクトがあると判定され、かつ、前記コリジョン判定部において前記移動先の位置が前記遮蔽物オブジェクトの内部でないと判定されたときに、前記遮蔽物オブジェクト上に、前記遮蔽物オブジェクトによって遮蔽されている前記プレイヤキャラクタオブジェクトの存在を示す画像が表示されるように前記仮想空間の画像を生成する画像生成部とを備える。
【００３０】
この構成により、仮想カメラが遮蔽物オブジェクトの内部に移動することとなる場合に回避制御が行われるとともに、仮想カメラが遮蔽物オブジェクトの内部にはないが仮想カメラとプレイヤキャラクタオブジェクトとの間に遮蔽物オブジェクトが存在して、プレイヤキャラクタオブジェクトが遮蔽される場合には、回避制御は行われないので、急激な画像の変化を避けることができる。また、遮蔽物オブジェクト上にプレイヤキャラクタオブジェクトの存在を示す画像が表示されるので、回避制御を行わなくてもプレイヤキャラクタオブジェクトの存在を確認できる。
【００３１】
本発明の一態様の情報処理プログラムは、情報処理装置に、所定の情報処理に基づいて仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出ステップと、前記仮想カメラの撮像対象の位置から前記移動先の位置に向かう第１ベクトルが前記仮想空間内の遮蔽物オブジェクトに外側から交差し、かつ、前記移動先の位置から前記仮想カメラの撮像対象の位置に向かう第２ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記遮蔽物オブジェクトを回避する回避位置に前記仮想カメラを移動させるカメラ移動ステップと、前記カメラ移動ステップによって移動された前記仮想カメラに基づいて前記仮想空間の画像を生成する画像生成ステップとを実行させる。
【００３２】
この構成により、算出された仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にある場合に、仮想カメラを、算出された移動先の位置ではなく回避位置に移動させるので、仮想カメラからみて撮像対象が遮蔽物オブジェクトによって遮蔽されている場合に常に回避位置に移動させる場合と比較して、仮想カメラによる画像の自然な変化を実現するができる。また、仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にあるか否かを、撮像対象の位置から仮想カメラの移動先の位置に向かう第１ベクトルと、仮想カメラの移動先の位置から撮像対象の位置に向かう第２ベクトルとが、それぞれ遮蔽物オブジェクトに外側から交差するか否かによって判断するので、仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にあるか否かを直接判断する場合と比較して、遮蔽回避制御の処理負荷を軽減できる。
【００３３】
前記カメラ移動ステップは、前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記仮想カメラを前記移動先の位置に移動させてよい。
【００３４】
この構成により、撮像対象が遮蔽物オブジェクトに遮蔽されない場合には、所定の情報処理に基づいて算出された移動先の位置に仮想カメラを移動させることができる。
【００３５】
前記カメラ移動ステップは、前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差し、かつ、前記第２ベクトルが前記遮蔽物オブジェクトに外側から交差する場合に、前記仮想カメラを前記移動先の位置に移動させてよい。
【００３６】
この構成により、撮像対象と仮想カメラとの間に遮蔽物オブジェクトが存在するが、仮想カメラは当該遮蔽物オブジェクトの内部にはない場合には、遮蔽回避制御を行わず、所定の情報処理に基づいて算出された移動先の位置に仮想カメラを移動させることができる。
【００３７】
前記回避位置は、前記遮蔽物オブジェクトより前記撮像対象側の位置であってよい。
【００３８】
この構成により、回避位置では仮想カメラが遮蔽物オブジェクトに遮蔽されることなく、撮像対象が遮蔽されていない画像を生成できる。
【００３９】
前記カメラ移動先算出ステップは、プレイヤの操作に基づく所定の情報処理に基づいて前記移動先の位置を算出してよい。
【００４０】
この構成により、プレイヤの操作に基づいて仮想カメラの移動先の位置を算出できる。
【００４１】
前記カメラ移動先算出ステップは、前記プレイヤの操作に基づいて前記仮想空間内を移動するプレイヤキャラクタオブジェクトの移動に伴って前記仮想カメラが移動するように情報処理を行うことで前記移動先の位置を算出してよい。
【００４２】
この構成により、プレイヤの操作に基づいて移動する撮像対象の移動に伴って仮想カメラが移動するので、プレイヤが仮想カメラの移動の指示を直接意識することなく、撮像対象の画像を得ることができる。
【００４３】
前記カメラ移動先算出ステップは、前記プレイヤのカメラ移動の指示に従って前記仮想カメラが移動するように情報処理を行うことで前記移動先の位置を算出してよい。
【００４４】
この構成により、プレイヤは仮想カメラの移動について直接的に指示をすることができる。
【００４５】
前記画像生成ステップは、前記遮蔽物オブジェクトによって遮蔽される前記撮像対象の前記仮想空間内における位置を示す画像を生成してよい。
【００４６】
この構成により、撮像対象が遮蔽物オブジェクトによって遮蔽される場合にも、画像において撮像対象の仮想空間内での位置を把握できる。
【００４７】
前記画像生成ステップは、前記遮蔽物オブジェクトによって遮蔽される前記撮像対象をシルエットで示す画像を生成してよい。
【００４８】
この構成により、撮像対象が遮蔽物オブジェクトによって遮蔽される場合にも、画面において撮像対象がシルエットで表示されるので、撮像対象の様子を把握できる。
【００４９】
上記の情報処理プログラムは、前記情報処理装置に、さらに、前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差するか否かの第１判定を行う第１判定ステップと、前記第２ベクトルが前記遮蔽物オブジェクトに外側から交差するか否かの第２判定を行う第２判定ステップとを実行させてよく、前記カメラ移動ステップは、前記第１判定及び前記第２判定の結果に基づいて前記仮想カメラを移動させてよい。
【００５０】
この構成により、第１判定と第２判定とをそれぞれの判定処理として行うことができる。
【００５１】
前記第１判定ステップにて前記第１ベクトルが前記遮蔽物オブジェクトに外側から交差すると判定された場合に、前記第２判定ステップにて前記第２判定を行ってよい。
【００５２】
この構成により、第２判定が不要な場合には、第２判定をしないようにして、処理負荷を軽減できる。
【００５３】
本発明の一態様のゲームプログラムは、情報処理装置に、プレイヤの操作に基づいて、仮想空間内でプレイヤキャラクタオブジェクトを移動させるプレイヤキャラクタ制御ステップと、前記プレイヤキャラクタオブジェクトの移動に応じて、前記仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出ステップと、前記移動先の位置と前記プレイヤキャラクタオブジェクトとの間の遮蔽物オブジェクトの有無を判定する遮蔽物判定ステップと、前記移動先の位置が前記遮蔽物オブジェクトの内部であるか否か判定するコリジョン判定ステップと、前記遮蔽物判定ステップにおいて前記遮蔽物オブジェクトがあると判定され、前記コリジョン判定ステップにおいて前記移動先が前記遮蔽物オブジェクトの内部にあると判定されたときに、前記仮想カメラを前記遮蔽物オブジェクトより前記プレイヤキャラクタオブジェクト側になる位置に移動させるカメラ移動ステップと、前記遮蔽物判定ステップにおいて前記遮蔽物オブジェクトがあると判定され、かつ、前記コリジョン判定ステップにおいて前記移動先の位置が前記遮蔽物オブジェクトの内部でないと判定されたときに、前記遮蔽物オブジェクト上に、前記遮蔽物オブジェクトによって遮蔽されている前記プレイヤキャラクタオブジェクトを示す画像が表示されるように前記仮想空間の画像を生成する画像生成ステップとを実行させる。
【００５４】
この構成により、仮想カメラが遮蔽物オブジェクトの内部に移動することとなる場合に回避制御が行われるとともに、仮想カメラが遮蔽物オブジェクトの内部にはないが仮想カメラとプレイヤキャラクタオブジェクトとの間に遮蔽物オブジェクトが存在して、プレイヤキャラクタオブジェクトが遮蔽される場合には、回避制御は行われないので、急激な画像の変化を避けることができる。また、遮蔽物オブジェクト上にプレイヤキャラクタオブジェクトの存在を示す画像が表示されるので、回避制御を行わなくてもプレイヤキャラクタオブジェクトの存在を確認できる。
【００５５】
本発明の一態様の情報処理装置は、所定の情報処理に基づいて仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出部と、前記仮想カメラの撮像対象の位置から前記移動先の位置に向かう第１ベクトルが前記仮想空間内の遮蔽物オブジェクトに外側から交差し、かつ、前記移動先の位置から前記仮想カメラの撮像対象の位置に向かう第２ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記遮蔽物オブジェクトを回避する回避位置に前記仮想カメラを移動させるカメラ移動部と、前記カメラ移動部によって移動された前記仮想カメラに基づいて前記仮想空間の画像を生成する画像生成部とを備える。
【００５６】
この構成により、算出された仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にある場合に、仮想カメラを、算出された移動先の位置ではなく回避位置に移動させるので、仮想カメラからみて撮像対象が遮蔽物オブジェクトによって遮蔽されている場合に常に回避位置に移動させる場合と比較して、仮想カメラによる画像の自然な変化を実現するができる。また、仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にあるか否かを、撮像対象の位置から仮想カメラの移動先の位置に向かう第１ベクトルと、仮想カメラの移動先の位置から撮像対象の位置に向かう第２ベクトルとが、それぞれ遮蔽物オブジェクトに外側から交差するか否かによって判断するので、仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にあるか否かを直接判断する場合と比較して、遮蔽回避制御の処理負荷を軽減できる。
【００５７】
本発明の一態様のゲーム装置は、プレイヤの操作に基づいて、仮想空間内でプレイヤキャラクタオブジェクトを移動させるプレイヤキャラクタ制御部と、前記プレイヤキャラクタオブジェクトの移動に応じて、前記仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出部と、前記移動先の位置と前記プレイヤキャラクタオブジェクトの間の遮蔽物オブジェクトの有無を判定する遮蔽物判定部と、前記移動先の位置が前記遮蔽物オブジェクトの内部であるか否か判定するコリジョン判定部と、前記遮蔽物判定部において前記遮蔽物オブジェクトがあると判定され、前記コリジョン判定部において前記移動先の位置が前記遮蔽物オブジェクトの内部であると判定されたときに、前記仮想カメラを前記遮蔽物オブジェクトより前記プレイヤキャラクタオブジェクト側になる位置に移動させるカメラ移動部と、前記遮蔽物判定部において前記遮蔽物オブジェクトがあると判定され、かつ、前記コリジョン判定部において前記移動先の位置が前記遮蔽物オブジェクトの内部でないと判定されたときに、前記遮蔽物オブジェクト上に、前記遮蔽物オブジェクトによって遮蔽されている前記プレイヤキャラクタオブジェクトの存在を示す画像が表示されるように前記仮想空間の画像を生成する画像生成部とを備える。
【００５８】
この構成により、仮想カメラが遮蔽物オブジェクトの内部に移動することとなる場合に回避制御が行われるとともに、仮想カメラが遮蔽物オブジェクトの内部にはないが仮想カメラとプレイヤキャラクタオブジェクトとの間に遮蔽物オブジェクトが存在して、プレイヤキャラクタオブジェクトが遮蔽される場合には、回避制御は行われないので、急激な画像の変化を避けることができる。また、遮蔽物オブジェクト上にプレイヤキャラクタオブジェクトの存在を示す画像が表示されるので、回避制御を行わなくてもプレイヤキャラクタオブジェクトの存在を確認できる。
【００５９】
本発明の一態様の情報処理方法は、所定の情報処理に基づいて仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出ステップと、前記仮想カメラの撮像対象の位置から前記移動先の位置に向かう第１ベクトルが前記仮想空間内の遮蔽物オブジェクトに外側から交差し、かつ、前記移動先の位置から前記仮想カメラの撮像対象の位置に向かう第２ベクトルが前記遮蔽物オブジェクトに外側から交差しない場合に、前記遮蔽物オブジェクトを回避する回避位置に前記仮想カメラを移動させるカメラ移動ステップと、前記カメラ移動ステップによって移動された前記仮想カメラに基づいて前記仮想空間の画像を生成する画像生成ステップとを含む。
【００６０】
この構成により、算出された仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にある場合に、仮想カメラを、算出された移動先の位置ではなく回避位置に移動させるので、仮想カメラからみて撮像対象が遮蔽物オブジェクトによって遮蔽されている場合に常に回避位置に移動させる場合と比較して、仮想カメラによる画像の自然な変化を実現するができる。また、仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にあるか否かを、撮像対象の位置から仮想カメラの移動先の位置に向かう第１ベクトルと、仮想カメラの移動先の位置から撮像対象の位置に向かう第２ベクトルとが、それぞれ遮蔽物オブジェクトに外側から交差するか否かによって判断するので、仮想カメラの移動先の位置が遮蔽物オブジェクトの内部にあるか否かを直接判断する場合と比較して、遮蔽回避制御の処理負荷を軽減できる。
【００６１】
本発明の一態様のゲーム方法は、プレイヤの操作に基づいて、仮想空間内でプレイヤキャラクタオブジェクトを移動させるプレイヤキャラクタ制御ステップと、前記プレイヤキャラクタオブジェクトの移動に応じて、前記仮想空間内における仮想カメラの移動先の位置を算出するカメラ移動先算出ステップと、前記移動先の位置と前記プレイヤキャラクタオブジェクトとの間の遮蔽物オブジェクトの有無を判定する遮蔽物判定ステップと、前記移動先の位置が前記遮蔽物オブジェクトの内部であるか否か判定するコリジョン判定ステップと、前記遮蔽物判定ステップにおいて前記遮蔽物オブジェクトがあると判定され、かつ、前記コリジョン判定ステップにおいて前記移動先が前記遮蔽物オブジェクトの内部にあると判定されたときに、前記仮想カメラを前記遮蔽物オブジェクトより前記プレイヤキャラクタオブジェクト側になる位置に移動させるカメラ移動ステップと、前記遮蔽物判定ステップにおいて前記遮蔽物オブジェクトがあると判定され、かつ、前記コリジョン判定ステップにおいて前記移動先の位置が前記遮蔽物オブジェクトの内部でないと判定されたときに、前記遮蔽物オブジェクト上に、前記遮蔽物オブジェクトによって遮蔽されている前記プレイヤキャラクタオブジェクトを示す画像が表示されるように前記仮想空間の画像を生成する画像生成ステップとを含む。
【００６２】
この構成により、仮想カメラが遮蔽物オブジェクトの内部に移動することとなる場合に回避制御が行われるとともに、仮想カメラが遮蔽物オブジェクトの内部にはないが仮想カメラとプレイヤキャラクタオブジェクトとの間に遮蔽物オブジェクトが存在して、プレイヤキャラクタオブジェクトが遮蔽される場合には、回避制御は行われないので、急激な画像の変化を避けることができ、遮蔽物オブジェクト上にプレイヤキャラクタオブジェクトの存在を示す画像が表示されるので、回避制御を行わなくてもプレイヤキャラクタオブジェクトの存在を確認できる。
【発明の効果】
【００６３】
本発明によれば、仮想空間内を移動する仮想カメラによる画像の自然な変化を実現することができる。
【図面の簡単な説明】
【００６４】
【図１】本発明の実施の形態の情報処理システムの外観図
【図２】本発明の実施の形態の情報処理システムの使用態様の例を示す図
【図３】本発明の実施の形態の情報処理システムの使用態様の例を示す図
【図４】本発明の実施の形態の情報処理システムの構成を示すブロック図
【図５】本発明の実施の形態の仮想空間におけるプレイヤキャラクタオブジェクトと仮想カメラとの基本的な位置関係を示す図
【図６】本発明の実施の形態の仮想空間において仮想カメラの移動先の位置が遮蔽物オブジェクトの内部となる場合を示す図
【図７】本発明の実施の形態の仮想空間において遮蔽回避制御によって仮想カメラが回避位置に移動している様子を示す図
【図８】本発明の実施の形態の仮想空間において仮想カメラとプレイヤキャラクタオブジェクトとの間に遮蔽物オブジェクトが存在している場合を示す図
【図９】本発明の実施の形態の遮蔽物判定部及びコリジョン判定部の処理を説明する図
【図１０】本発明の実施の形態の表示部に表示される画像の例を示す図
【図１１】本発明の実施の形態の制御部における処理のフロー図
【発明を実施するための形態】
【００６５】
以下、図面を参照して本発明の実施の形態を説明する。なお、以下に説明する実施の形態は、本発明を実施する場合の一例を示すものであって、本発明を以下に説明する具体的構成に限定するものではない。本発明の実施にあたっては、実施の形態に応じた具体的構成が適宜採用されてよい。
【００６６】
図１は、本発明の実施の形態の情報処理システムの外観図である。本実施形態では、情報処理システムがゲームシステムとして構成される。情報処理システム１００は、本体装置（情報処理装置；本実施例ではゲーム装置本体として機能する）２００と、左コントローラ３００と、右コントローラ４００とを含む。以下、左コントローラ３００及び右コントローラ４００を総称して「コントローラ」という。コントローラは、それぞれ本体装置２００に着脱可能である。左コントローラ３００は、本体装置２００の左側面（図１に示すｘ軸正方向側の側面）に装着され、右コントローラ４００は、本体装置２００の右側面（図１に示すｘ軸負方向側の側面）に装着される。
【００６７】
本体装置２００は、情報処理システム１００における各種の処理（例えば、ゲーム処理）を実行する装置である。本体装置２００は、ディスプレイ２０１を備える。コントローラは、ユーザが入力を行うための操作部を備える装置である。
【００６８】
本体装置２００は、略板状であり、その前面は、大略的には矩形形状である。ハウジング１１の前面にはディスプレイ２０１が設けられている。ディスプレイ２０１は、本体装置２００が生成した画像を表示する。本実施例においては、ディスプレイ２０１は、液晶表示装置（ＬＣＤ）とする。ただし、ディスプレイ２０１は任意の種類の表示装置であってよい。
【００６９】
本体装置２００は、ディスプレイ２０１の画面上にタッチパネル２０２を備える。本実施例においては、タッチパネル２０２は、マルチタッチ入力が可能な方式（例えば、静電容量方式）のものである。ただし、タッチパネル２０２は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式（例えば、抵抗膜方式）のものであってもよい。
【００７０】
本体装置２００は、内部にスピーカ（不図示）を備えており、主面には、スピーカ音を出力するためのスピーカ孔２０３ａ及び２０３ｂが形成される。本体装置２００の上側面には、記憶媒体を装着可能なスロット（不図示）や電源ボタン（不図示）が設けられる。
【００７１】
本体装置２００の左右の側面には、左コントローラ３００及び右コントローラ４００をそれぞれ着脱するための機構、及び左コントローラ３００及び右コントローラ４００とそれぞれ有線通信を行うための端子が設けられている。本体装置２００の底面には、クレードル５００（図３参照）と有線通信をするための下側端子（不図示）が設けられている。
【００７２】
左コントローラ３００は、前面に、アナログスティック３０２を備えている。アナログスティック３０２は、方向を入力することが可能な方向入力部として用いることができる。アナログスティック３０２は、左コントローラ３００の前面に平行な全方向（すなわち、上下左右および斜め方向を含む、３６０°の方向）に傾倒可能なスティック部材を有する。ユーザ（ゲームをプレイするユーザを以下「プレイヤ」ともいう。）は、スティック部材を傾倒することによって傾倒方向に応じた方向の入力（および、傾倒した角度に応じた大きさの入力）が可能である。なお、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。
【００７３】
左コントローラ３００は、４つの操作ボタン３０３〜３０６（具体的には、右方向ボタン３０３、下方向ボタン３０４、上方向ボタン３０５、および、左方向ボタン３０６）を備える。これらのアナログスティック３０２、及び操作ボタン３０３〜３０６は、本体装置２００で実行される各種プログラム（例えば、ＯＳプログラムやアプリケーションプログラム）に応じた指示を行うために用いられる。
【００７４】
右コントローラ４００は、前面に、アナログスティック４０２、及び４つの操作ボタン４０３〜４０６（具体的には、Ａボタン４０３、Ｂボタン４０４、Ｘボタン４０５、および、Ｙボタン４０６）を備える。アナログスティック４０２の構成は、左スティック３００のアナログスティック３０２と同じである。
【００７５】
図１に示すように、左コントローラ３００では、本体装置２００に装着されたときにアナログスティック３０２が上側に位置し、４つの操作ボタン３０３〜３０６がアナログスティック３０２の下に位置するように、アナログスティック３０２及び操作ボタン３０３〜３０６がそれぞれ配置されるが、右コントローラ４００では、これとは逆に、アナログスティック４０２が下側に位置し、４つの操作ボタン４０３〜４０６はアナログスティック４０２の上に位置するように、アナログスティック４０２及び操作ボタン４０３〜４０６が設けられる。
【００７６】
図２及び図３は、情報処理システム１００の使用態様の例を示す図である。図２は、左コントローラ３００及び右コントローラ４００を本体装置２００に装着して一体型装置として使用する使用態様を示しており、図３は、本体装置２００から左コントローラ３００及び右コントローラ４００を離脱した状態で使用する使用態様を示している。
【００７７】
図２に示すように、一体型装置として使用する場合は、ユーザは、左コントローラ３００の部分を左手で把持し、右コントローラ４００の部分を右手で把持する。このとき、左手と右手との間にディスプレイ２０１が位置する。上記のように、左コントローラ３００ではアナログスティック３０２が上側にあり、右コントローラ４では操作ボタン４０３〜４０６が上側にあるので、ユーザは、左手の親指でアナログスティック３０２を操作し、右手の親指で操作ボタン４０３〜４０６を操作することができる。
【００７８】
図３に示すように、コントローラを本体装置２００から取り外して用いる場合には、左コントローラ３００を左手で把持し、右コントローラ４００を右手で把持する。このとき、本体装置２００は、クレードル５００に設置してよい。本体装置２００は、下側端子を介してクレードル５００に接続される。本体装置２００は、クレードル５００を介して外部表示装置の一例である据置型モニタ６００（例えば、据置型テレビ）に接続され、ディスプレイ２０１に表示すべき画像を据置型モニタ６００に表示することができる。なお、コントローラを本体装置２００から取り外して用いる場合に、本体装置２００をクレードル５００に設置せずに、ディスプレイ２０１に画像を表示するようにしてもよい。
【００７９】
図２に示すようにコントローラが本体装置２００に装着される場合には、コントローラに対するユーザの操作を示す操作信号は、本体装置２００の側面の端子を介して有線で本体装置２００に送信される。一方、図３に示すようにコントローラが本体装置２００から離脱した状態で使用される場合には、コントローラからの操作信号は、無線で本体装置２００に送信される。
【００８０】
図４は、情報処理システム１００の構成を示すブロック図である。図４では、本実施の形態の説明に必要な構成のみを図示している。情報処理システム１００は、入力部１０と、記憶部２０と、制御部３０と、表示部４０とを備えている。入力部１０は、コントローラに対応しており、記憶部２０及び制御部３０は本体装置２００に備えられる。表示部４０は、図２に示すように情報処理システム１００が一体型装置として構成される場合には、ディスプレイ２０１がこれに該当し、図３に示すように情報処理システム１００が据置型モニタ６００を含んで構成される場合には、この据置型モニタ６００がこれに該当し得る。なお、記憶部２０及び制御部３０の各要素は、分散されて配置されてよく、さらに、分散された各要素が通信ネットワークを介して接続されてもよい。
【００８１】
記憶部２０は、フラッシュメモリ及びＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）がこれに該当する。フラッシュメモリは、主に、本体装置２００に保存される各種のデータ（プログラムを含む）を記憶するために用いられるメモリである。ＤＲＡＭは、制御部３０での情報処理に用いられる各種のデータを一時的に記憶するために用いられるメモリである。
【００８２】
制御部３０は、ＣＰＵで構成される。制御部３０は、ゲーム制御部３１と、カメラ制御部３２と、画像生成部３３とを備える。制御部３０の各部の機能は、ＣＰＵが記憶部２０に記憶された本実施の形態の情報処理プログラム（本実施の形態では、ゲームプログラム）を実行することで実現される。
【００８３】
ゲーム制御部３１は、ゲームプログラムに従って、入力部１０からの操作信号に基づいてゲーム処理を行う。本実施の形態のゲームは、三次元の仮想空間内をプレイヤキャラクタが移動することで展開する。特に、プレイヤは入力部１０に操作（例えばアナログスティック３０２の傾倒）を入力することで、プレイヤキャラクタを仮想空間内で移動させることができる。すなわち、ゲーム処理部３１は、プレイヤの操作入力に基づいて仮想空間内でプレイヤキャラクタを移動させるので、プレイヤキャラクタ制御部ということもできる。
【００８４】
また、この仮想空間には、仮想カメラが設定されており、仮想カメラで仮想的に撮像して得られるべき画像が画像生成部３４で生成される。
【００８５】
カメラ制御部３０は、仮想カメラの仮想空間内における位置及び方向を制御する。すなわち、カメラ制御部３０は、仮想空間内で仮想カメラを移動させる。ゲーム中は、基本的には、仮想カメラは、プレイヤキャラクタオブジェクトＰを撮像対象として、プレイヤによって移動されるプレイヤキャラクタオブジェクトの移動に伴って、仮想空間内を移動する。カメラ制御部３３は、ゲーム制御部３１におけるゲーム処理の結果、遮蔽物判定部３２２の判定結果、及びコリジョン判定部３２３の判定結果に基づいて、仮想カメラの移動を制御する。なお、仮想カメラはさらに画角を調整可能であってもよく、この場合は、カメラ制御部３０は仮想カメラの画角も制御する。
【００８６】
画像生成部３４は、カメラ制御部３３で制御された仮想カメラＣによって仮想的に撮影されるべき画像を生成する。生成された画像は、表示部４０に出力され、表示部４０で表示される。プレイヤは表示部４０を見ることで、プレイヤキャラクタオブジェクトを含む仮想空間の様子を視覚的に把握できる。
【００８７】
カメラ制御部３０において仮想カメラの移動を制御して画像を生成するための構成について、図４とともに図５〜９を参照して説明する。図５〜図８は仮想空間を示す図である。なお、図５〜９では、仮想空間が２次元的に描かれているが、本実施の形態のゲームシステム１００において提供される仮想空間は３次元空間である。また、図５〜９では、仮想カメラが描かれているが、実際にはこのようなカメラのオブジェクトが仮想空間に設定されるということではなく、仮想カメラは視点（焦点）の位置、視線（光軸）の方向および画角等のカメラパラメータによって定義される。
【００８８】
また、図６では、複数のプレイヤキャラクタオブジェクトＰ、及び複数の仮想カメラＣが描かれているが、これらはプレイヤキャラクタオブジェクトＰと仮想カメラＣとの複数の位置関係を説明するためであり、本実施の形態のゲームでは１つのプレイヤキャラクタオブジェクトＰと１つの仮想カメラＣが仮想空間内を移動する。
【００８９】
図５は、プレイヤキャラクタオブジェクトＰと仮想カメラＣとの基本的な位置関係を示している。上述のように、プレイヤは入力部１０に操作を入力することで、プレイヤキャラクタオブジェクトＰの仮想空間内での移動を指示できる。仮想カメラＣは、上述のように、プレイヤキャラクタオブジェクトＰの移動に合わせて移動するが、より具体的には、プレイヤキャラクタオブジェクトＰの進行方向の後方からプレイヤキャラクタオブジェクトＰを追従するようにして移動する（追従制御）。
【００９０】
ゲーム制御部３１は、入力部１０に対するプレイヤの操作入力に基づいてゲーム処理を行い、プレイヤキャラクタオブジェクトＰを移動させてその現在位置を取得し、これをカメラ制御部３２に出力する。カメラ制御部３２のカメラ移動先算出部３２１は、追従制御の情報処理を行うことで、仮想空間内における仮想カメラＣの移動先の位置を算出する。
【００９１】
なお、カメラ位置算出部３２１は、入力部１０に対するプレイヤのカメラ移動の指示に従って仮想カメラＣの移動先を算出してよい。例えば、アナログスティック３０２が傾倒した方向に仮想カメラＣを移動させるようにしてよい。この場合には、カメラ移動先算出部３２１は、入力部１０からの入力に基づいて仮想カメラの移動先の位置を算出する。
【００９２】
図６に示すように、プレイヤキャラクタオブジェクトＰが、Ｐ（１）、Ｐ（２）、Ｐ（３）の軌跡で移動をする場合には、カメラ移動先算出部３２１は、仮想カメラＣの移動先の位置をＣ（１）、Ｃ（２）、Ｃ（３）の順で算出する。しかしながら、カメラ移動先算出部３２１が追従制御によってプレイヤキャラクタオブジェクトＰの移動に応じて仮想カメラＣの移動先を算出すると、プレイヤキャラクタオブジェクトＰ（３）に対する仮想カメラＣ（３）のように、仮想カメラＣが遮蔽物オブジェクトＳの内部に位置することにもなる。ここで、遮蔽物オブジェクトＳは、本実施の形態では、仮想空間に設定された地形ないし岩であり、その内部にプレイヤキャラクタオブジェクトＰないし仮想カメラＣが入り込むことが予定されていないものである。
【００９３】
本実施の形態のカメラ制御部３２は、図６の仮想カメラＣ（３）のように、仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの内部となってしまう場合には、遮蔽物オブジェクトＳを回避する位置（回避位置）に仮想カメラＣを移動させる（遮蔽回避制御）。図７は、遮蔽回避制御によって仮想カメラＣが遮蔽物オブジェクトＳを回避した位置に移動している様子を示す図である。回避位置は、算出された仮想カメラの移動先の位置Ｃ´とプレイヤキャラクタオブジェクトＰとを結ぶ線の線上であって、プレイヤキャラクタオブジェクトＰと遮蔽物オブジェクトＳとの間の位置である。
【００９４】
なお、図７に示すように、遮蔽回避制御によって、仮想カメラＣは、算出された移動先の位置Ｃ´（すなわち本来の仮想カメラの位置）からプレイヤキャラクタオブジェクトＰに近づくことになるので、回避位置は、なるべくプレイヤキャラクタオブジェクトＰから離れている方が望ましい。よって、回避位置は、プレイヤキャラクタオブジェクトＰと遮蔽物オブジェクトＳとの間の、プレイヤキャラクタから最も離れた点、すなわち、算出された仮想カメラの移動先の位置Ｃ´とプレイヤキャラクタオブジェクトＰとを結ぶ線と遮蔽物オブジェクトＳの表面とが交わる点に仮想カメラＣの視点が来るように設定することが望ましい。
【００９５】
一方、カメラ制御部３２は、図８に示すように、仮想カメラＣとプレイヤキャラクタオブジェクトＰとの間に遮蔽物オブジェクトＳが存在している場合であっても、仮想カメラＣが遮蔽物オブジェクトの内部にないときには、遮蔽回避制御は行わない。
【００９６】
ここで、遮蔽物オブジェクトＳを含む仮想空間内のオブジェクトの表面はポリゴンデータによって定義されており、オブジェクトを構成する複数のポリゴンデータの各々には外表面と内表面とを区別する情報が付与されている。画像生成部３３によって、仮想カメラＣの画角（視界）にあるオブジェクトのポリゴンデータをレンダリングすることで、画像中にオブジェクトが描画される。
【００９７】
各ポリゴンデータの内外面を区別する情報は、当該ポリゴンデータの法線ベクトルとして付与されている。すなわち、各ポリゴンデータには、外表面に法線ベクトルが設定されている。したがって、仮想カメラＣの移動先の位置（座標）が算出されると、その位置が遮蔽物オブジェクトの内部にあるのか外部にあるのかは演算によって求めることができる。
【００９８】
しかしながら、ある座標があるオブジェクトの内部にあるか外部にあるかを求める演算は負荷が比較的重く、ＣＰＵ等の資源を消費し、ゲーム処理や画像表示のフレームレート向上のボトルネックにもなる。そこで、本実施の形態では、仮想カメラＣの移動先の位置が遮蔽物オブジェクトの内部にあるのか外部にあるのかを負荷の比較的軽い演算で行う方法を採用する。
【００９９】
図４を再び参照して、仮想カメラＣの移動先の位置が遮蔽物オブジェクトの内部にあるのか外部にあるのかを判定するための構成を説明する。カメラ制御部３２は、仮想カメラＣの移動先の位置とプレイヤキャラクタオブジェクトＰとの間に遮蔽物オブジェクトＳが存在するか否かを判定し（第１判定）、かつ、仮想カメラＣの移動先の位置が遮蔽物オブジェクトの内部にあるか否かを判定する（第２判定）。
【０１００】
遮蔽物判定部（第１判定部）３２２は、仮想カメラＣの移動先の位置とプレイヤキャラクタオブジェクトＰとの間に遮蔽物オブジェクトＳが存在するか否かを判定する（第１判定）。なお、仮想カメラＣの移動先の位置とプレイヤキャラクタオブジェクトＰとの間に遮蔽物オブジェクトＳが存在するとは、図６の仮想カメラＣ（３）のように仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの内部にある場合と、図８の仮想カメラＣのように仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの外側にあって、仮想カメラＣとプレイヤキャラクタオブジェクトＰとの間に遮蔽物オブジェクトＳが存在する場合とを含む。
【０１０１】
コリジョン判定部（第２判定部）３２３は、移動先の位置が遮蔽物オブジェクトの内部である（コリジョン状態である）か否かを判定する（第２判定）。なお、上述のように、遮蔽物判定部３２２にて仮想カメラＣの移動先の位置とプレイヤキャラクタオブジェクトＰとの間に遮蔽物オブジェクトＳが存在すると判定される場合には、仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの内部にある場合を含み、仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの内部にある場合には必ず仮想カメラＣの移動先の位置とプレイヤキャラクタオブジェクトＰとの間に遮蔽物オブジェクトＳが存在すると判定される。
【０１０２】
すなわち、第１判定にて遮蔽物ありと判定された場合にのみ、第２判定にてコリジョン状態ありと判定され得る。よって、コリジョン判定部３２３における第２判定は、遮蔽物判定部３２２の第１判定にて遮蔽物ありとの判定がされた場合にのみ行う。このために、コリジョン判定部３２３は、遮蔽物判定部３２２の第１判定の結果を受けて、第１判定にて遮蔽物ありと判定された場合に、第２判定を行う。
【０１０３】
図９は、遮蔽物判定部３２２及びコリジョン判定部３２３の処理を説明する図である。遮蔽物判定部３２２は、プレイヤキャラクタオブジェクトＰから仮想カメラＣの移動先の位置に向かうベクトル（第１ベクトル）Ｖ１が遮蔽物オブジェクトＳに対して遮蔽物オブジェクトＳの外側から交差するか否かを判定する。具体的には、遮蔽物判定部３２２は、遮蔽物オブジェクトＳの表面を構成するポリゴンのうちの第１ベクトルＶ１と交差するポリゴン（交差ポリゴン）を特定し、その交差ポリゴンの法線ベクトルＮを特定する。遮蔽物判定部３２２は、第１ベクトルＶ１と法線ベクトルＮとの内積を計算し、内積が負の値であるときに、第１ベクトルＶ１が遮蔽物オブジェクトＳに外側から交差すると判定する。
【０１０４】
コリジョン判定部３２３は、仮想カメラＣの移動先の位置からプレイヤキャラクタオブジェクトＰに向かうベクトル（第２ベクトル）Ｖ２が遮蔽物オブジェクトＳに対して遮蔽物オブジェクトＳの外側から交差するか否かを判定する。具体的には、コリジョン判定部３２３は、遮蔽物オブジェクトＳの表面を構成するポリゴンのうちの第２ベクトルＶ２と交差する交差ポリゴンを特定し、その交差ポリゴンの法線ベクトルＮを特定する。コリジョン判定部３２３は、第２ベクトルＶ２と法線ベクトルＮとの内積を計算し、内積が負の値であるときに、第２ベクトルＶ２が遮蔽物オブジェクトＳに外側から交差する（コリジョン状態なし）と判定し、内積が正の値であるときに、第２ベクトルＶ２が遮蔽物オブジェクトＳに内側から交差する（コリジョン状態あり）と判定する。
【０１０５】
なお、図９では、第１ベクトルＶ１と第２ベクトルＶ２を若干ずらして描いているが、本実施の形態では、実際には、両者は重なり合っており、始点と終点とが互いに逆方向になっているのみであり、第１ベクトルＶ１と交差する交差ポリゴンと第２ベクトルと交差する交差ポリゴンは同じである。また、第１ベクトルＶ１の始点及び第２ベクトルＶ２の終点は、厳密にプレイヤキャラクタオブジェクトＰに設定されなくてもよく、例えば、プレイヤキャラクタオブジェクトＰの上方の座標に設定されてもよい。また、第１ベクトルＶ１の終点及び第２ベクトルＶ２の始点は、仮想カメラＣの視点に設定することができるが、これも厳密に仮想カメラＣの視点に設定する必要はない。また、第１ベクトルＶ１と第２ベクトルＶ２とが完全に重なり合っている必要もない。
【０１０６】
図８に示すように、仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの外側にある場合には、交差ポリゴンは、２つあることになる。遮蔽物判定部３２２は、第１ベクトルＶ１の始点から終点に向けて、最初に交差する交差ポリゴンの法線ベクトルＮと第１ベクトルＶ１との内積が負であるときに、プレイヤキャラクタオブジェクトＰと仮想カメラＣの移動先の位置との間に遮蔽物オブジェクトＳがあると判定する。また、コリジョン判定部３２３は、第２ベクトルＶ２の始点から終点に向けて、最初に交差する交差ポリゴンの法線ベクトルＮと第２ベクトルＶ２との内積が正であるときに、仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの内部にあると判定する。
【０１０７】
なお、遮蔽物判定部３２２は、複数の交差ポリゴンの各々について、それらの法線ベクトルと第１ベクトルＶ１との内積を計算し、少なくとも一つの内積が負になっていれば、第１ベクトルＶ１が遮蔽物オブジェクトＳに外から交差すると判断してもよい。また、コリジョン判定部３２３は、内積が正になる交差ポリゴンの数が、内積が負になる交差ポリゴンの数より多い場合に、仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの内部にあると判定してもよい。
【０１０８】
遮蔽物判定部３２２は、第１判定の結果をカメラ移動部３２４に出力する。また、コリジョン判定部３２３は、第２判定の結果をカメラ移動部３２４に出力する。カメラ移動部３２４は、第１判定の結果が遮蔽物なしであるとき、及び第２判定の結果がコリジョン状態なしであるときには、カメラ移動先算出部３２１が算出した移動先の位置に仮想カメラＣを実際に移動させる。
【０１０９】
一方、カメラ移動部３２４は、第１判定の結果が遮蔽物ありであり、第２判定の結果がコリジョン状態ありであるときは、図７の仮想カメラＣのように、カメラ移動算出部３２１が算出した位置ではなく、回避位置に仮想カメラＣを移動させる。カメラ移動部３２４は、具体的には、カメラ移動先算出部で算出された仮想カメラＣの移動先の位置と、ゲーム制御部３１で決定されたプレイヤキャラクタオブジェクトＰとを結ぶ線と遮蔽物オブジェクトＳの表面とが交わる点（すなわち交差ポリゴン）に視点が来るように仮想カメラＣを移動させる。この回避位置であれば、仮想カメラＣは遮蔽物オブジェクトＳに遮蔽されることなく撮像対象であるプレイヤキャラクタオブジェクトＰを撮像することができる。
【０１１０】
なお、上述のように、本実施の形態では、第１判定で遮蔽物ありと判定されたときにのみ第２判定を行うので、カメラ移動部３２４は、第２判定の結果のみを参照して、仮想カメラＣを回避位置に移動させるか、カメラ移動先算出部３２１で算出された移動先の位置に移動させるかを決定してよい。また、ゲーム処理において撮像対象であるプレイヤキャラクタオブジェクトＰが遮蔽物オブジェクトＳの内部にくることがあり得ない場合には、第１判定において、第１ベクトルＶ１が遮蔽物オブジェクトＳの内側から遮蔽物オブジェクトＳと交差する点のみを有することはあり得ないので、遮蔽物判定部３２２では、単に第１ベクトルＶ１が遮蔽物オブジェクトＳと少なくとも１点で交差するか否か（交差ポリゴンが存在するか否か）のみを判定してもよい。
【０１１１】
また、本実施の形態では、遮蔽物判定部３２２の第１判定において遮蔽物オブジェクトＳがあると判定された場合にのみ、コリジョン判定部３２３の第２判定を行うようにしているが、第１判定と第２判定とは並行して行ってもよい。
【０１１２】
画像生成部３３は、ゲーム制御部３１におけるゲーム処理の結果、及びカメラ移動部３４にて移動された仮想カメラＣに基づいて、仮想カメラＣで仮想空間を仮想的に撮像して得られるべき画像を生成する。生成された画像は表示部４０に出力され、表示部４０にて画像が表示される。
【０１１３】
図１０は、表示部４０に表示される画像の例を示す図である。図１０の例では、図８に示すようにプレイヤオキャラクタオブジェクトＰと仮想カメラＣとの間に遮蔽物オブジェクトＳが存在し、仮想カメラｃから見てプレイヤキャラクタオブジェクトＰが遮蔽物オブジェクトＳによって遮蔽されている。この画像では、遮蔽物オブジェクトＳによって遮蔽されるプレイヤキャラクタオブジェクトＰの部分がシルエットＳＰで表現されており、このシルエットＳＰによって、仮想空間内におけるプレイヤキャラクタオブジェクトＰの位置を示している。
【０１１４】
なお、図１０の例では、プレイヤキャラクタオブジェクトＰが遮蔽物オブジェクトＳによって遮蔽される場合に、プレイヤキャラクタオブジェクトＰをシルエットで表示したが、例えば遮蔽物オブジェクトＳを半透明にする等によってプレイヤキャラクタオブジェクトＰの位置を示してもよい。また、図１０の例では、プレイヤキャラクタオブジェクトＰの形状を維持してシルエット表示をしたが、プレイヤキャラクタオブジェクトＰの形状を表さないマークによってプレイヤキャラクタオブジェクトＰの位置を示してもよい。
【０１１５】
図１１は、制御部３０における処理のフロー図である。ゲーム制御部３１は、プレイヤによる操作入力を入力部１０から取得し、記憶部２０に記憶されたゲームプログラムに従ってゲーム処理を実行する（ステップＳ１１１）。プレイヤキャラクタオブジェクトＰの位置を含むゲーム処理の結果は、カメラ移動先算出部３２１、カメラ移動部３２４及び画像生成部３２４に出力される。
【０１１６】
カメラ移動先算出部３２１は、ゲーム処理の結果移動したプレイヤキャラクタオブジェクトＰの現在の位置及び方向を取得し（ステップＳ１１２）、追従制御を行う場合の仮想カメラＣの移動先の位置を算出る（ステップＳ１１３）。次に、遮蔽物判定部３２２は、プレイヤキャラクタオブジェクトＰ、遮蔽物オブジェクトＳ、仮想カメラＣの移動先の位置に基づいて、第１ベクトルＶ１が遮蔽物オブジェクトＳに外側から交差するか否か（第１判定）、すなわち、プレイヤキャラクタオブジェクトＰと仮想カメラＣの移動先の位置との間に遮蔽物オブジェクトＳがあるか否かを判定する（ステップＳ１１４）。
【０１１７】
プレイヤキャラクタオブジェクトＰと仮想カメラＣとの間に遮蔽物オブジェクトＳがある場合には（ステップＳ１１４でＹＥＳ）、コリジョン判定部３２３は、プレイヤキャラクタオブジェクトＰ、遮蔽物オブジェクトＳ、仮想カメラＣの移動先の位置に基づいて、第２ベクトルＶ２が（遮蔽物オブジェクトＳに最初に交差する点で）遮蔽物オブジェクトＳに内側から交差するか否か（第２判定）、すなわち、仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの内部であるか否か（コリジョン状態にあるか否か）を判定する（ステップＳ１１５）。
【０１１８】
仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳとコリジョン状態にあると判定された場合には（ステップＳ１１５でＹＥＳ）、カメラ移動部３２４は、そのような移動先ではなく、回避位置に仮想カメラＣを移動させる（ステップＳ１１６）。仮想カメラＣは、第２判定で遮蔽物オブジェクトＳに最初に交差すると判定された点に視点が来るように移動される。
【０１１９】
遮蔽物判定部３２２の第１判定において、プレイヤキャラクタオブジェクトＰと仮想カメラＣの移動先の位置との間に遮蔽物オブジェクトＳがないと判定された場合（ステップＳ１１４にてＮＯ）、及び、コリジョン判定部３２３の第２判定において、仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳとコリジョン状態にない（遮蔽物オブジェクトＳの内部にない）と判定された場合（ステップＳ１１５にてＮＯ）には、カメラ移動部３２４は、カメラ移動先算出部３２１が追従制御のために算出した移動先の位置に仮想カメラＣを移動させる（ステップＳ１１７）。
【０１２０】
カメラ移動部３２４がステップＳ１１６又はステップＳ１１７で仮想カメラＣを移動させると、画像生成部３３は、そのように移動された仮想カメラとゲーム処理の結果に基づいて、仮想空間の画像を生成する。このとき、コリジョン状態はないが遮蔽物があると判定されている場合には（ステップＳ１１４にてＹＥＳの後、ステップＳ１１５にてＮＯ）、画像生成部３３は、プレイヤキャラクタオブジェクトＰの部分をシルエットで示す画像を生成する。
【０１２１】
制御部３０は、上記の処理をゲーム制御部３１におけるゲーム処理の処理レートごと、ないしは画像生成部３３における画像のフレームレートで、繰り返し行う。すなわち、図１１のフロー（ステップＳ１１１〜Ｓ１１８）は、処理レートないしはフレームレート（例えば、１／６０秒）で繰り返される。
【０１２２】
以上説明したように、本実施の形態の情報処理システム（ゲームシステム）１００によれば、仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの内部であるか否か（コリジョン状態にあるか否か）の判定を交差ポリゴンの有無及び交差ポリゴンについてのベクトルの内積計算で行うので、処理負荷を軽減できる。
【０１２３】
また、仮想カメラＣの移動先の位置が遮蔽物オブジェクトＳの内部にない（コリジョン状態にない）場合に、追従制御を継続するので、仮想カメラＣの移動がより自然になり、画像生成部３３によって生成される画像の変化（映像）もより自然になる。
【０１２４】
さらに、撮像対象であるプレイヤキャラクタオブジェクトＰが遮蔽物オブジェクトＳによって遮蔽される場合に、プレイヤキャラクタオブジェクトＰをシルエットで表示することとしたので、遮蔽されている場合にもプレイヤキャラクタオブジェクトＰの位置や動きを確認することができる。
【０１２５】
なお、上記の実施の形態では、情報処理システム１００をゲームシステムに適用した例を説明したが、情報処理システムは、ゲームシステムに限られず、例えば、バーチャルリアリティを提供するシステム、現実空間を模倣するシミュレーションシステム等に応用してもよい。
【符号の説明】
【０１２６】
１００  情報処理システム
２００  本体装置
２０１  ディスプレイ
２０２  タッチパネル
２０３ａ、２０３ｂ  スピーカ孔
３００  左コントローラ
３０２  アナログスティック
３０３  右方向ボタン
３０４  下方向ボタン
３０５  上方向ボタン
３０６  左方向ボタン
４００  右コントローラ
４０２  アナログスティック
４０３  Ａボタン
４０４  Ｂボタン
４０５  Ｘボタン
４０６  Ｙボタン
５００  クレードル
６００  据置型モニタ
１０  入力部
２０  記憶部
３０  制御部
３１  ゲーム制御部
３２  カメラ制御部
３２１  カメラ移動先算出部
３２２  遮蔽物判定部（第１判定部）
３２３  コリジョン判定部（第２判定部）
３２４  カメラ移動部
３３  画像生成部
４０  表示部
Ｃ  仮想カメラ
Ｐ  プレイヤキャラクタオブジェクト
Ｓ  遮蔽物オブジェクト
Ｖ１  第１ベクトル
Ｖ２  第２ベクトル
【図１】
2018112789.tif 000003
【図２】
2018112789.tif 000004
【図３】
2018112789.tif 000005
【図４】
2018112789.tif 000006
【図５】
2018112789.tif 000007
【図６】
2018112789.tif 000008
【図７】
2018112789.tif 000009
【図８】
2018112789.tif 000010
【図９】
2018112789.tif 000011
【図１０】
2018112789.tif 000012
【図１１】
2018112789.tif 000013