JP6829301B2 - 情報処理装置、動作制御方法及び動作制御プログラム - Google Patents

情報処理装置、動作制御方法及び動作制御プログラム Download PDF

Info

Publication number
JP6829301B2
JP6829301B2 JP2019221320A JP2019221320A JP6829301B2 JP 6829301 B2 JP6829301 B2 JP 6829301B2 JP 2019221320 A JP2019221320 A JP 2019221320A JP 2019221320 A JP2019221320 A JP 2019221320A JP 6829301 B2 JP6829301 B2 JP 6829301B2
Authority
JP
Japan
Prior art keywords
virtual
virtual camera
contact position
position information
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019221320A
Other languages
English (en)
Other versions
JP2020042857A (ja
Inventor
晃典 牧野
晃典 牧野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koei Tecmo Games Co Ltd
Original Assignee
Koei Tecmo Games Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koei Tecmo Games Co Ltd filed Critical Koei Tecmo Games Co Ltd
Priority to JP2019221320A priority Critical patent/JP6829301B2/ja
Publication of JP2020042857A publication Critical patent/JP2020042857A/ja
Application granted granted Critical
Publication of JP6829301B2 publication Critical patent/JP6829301B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

本発明は、情報処理装置、動作制御方法及び動作制御プログラムに関する。
仮想空間にプレイヤーキャラクタ又はノンプレイヤーキャラクタ(以下、総称して「キャラクタ」ともいう。)と背景とを表示し、遊技者の操作に応じてキャラクタに所定の動作を行わせる技術が知られている。(例えば、特許文献1参照)。
キャラクタを操作する遊技者が回転や並進等の入力操作を行うと、該入力操作に応じてキャラクタの位置、方向等がどのように変化するかを求める演算処理が行われる。次に、キャラクタの位置、方向等の変化に伴い、背景の建物等のオブジェクトが画面上でどのように見えるかを求める演算処理が行われる。この演算処理には、予め記録部に記憶された各オブジェクトの位置情報が使用される。
上記二つの演算処理は、遊技者による操作に追従してリアルタイムで行われる。遊技者の操作に対するキャラクタの動作は、キャラクタの背後からキャラクタを捉える仮想カメラで撮影され、撮影結果が表示される。これにより、遊技者による操作に応じてキャラクタを画面上に表示することができる。
特開2001−276420号公報
しかしながら、キャラクタの動作が高速な場合やキャラクタの動作が急激に変化する場合、キャラクタを後方から追従する仮想カメラが、背景のオブジェクトに衝突する場合がある。その場合、仮想カメラがキャラクタに追従できず、キャラクタを適切に表示することが困難になる。
そこで、一側面では、本発明は、仮想空間にてキャラクタを適切に表示することを目的とする。
一つの案では、仮想空間に表示されたキャラクタを撮影する仮想カメラと、キャラクタと背景とを表示する表示部と、前記仮想カメラと前記キャラクタとの間に設けられた第1の仮想体が、表示した前記背景のオブジェクトと接触する接触位置情報を検出する検出部と、検出した前記接触位置情報に基づき前記背景のオブジェクトを回避するように前記仮想カメラの動作を制御する動作制御部と、を有し、前記検出部は、前記仮想カメラを包含する第2の仮想体が、表示した前記背景のオブジェクトと接触する接触位置情報を検出し、前記検出部は、前記接触したオブジェクトから前記第1の仮想体又は前記第2の仮想体に加えられる圧力を示す圧力情報を検出し、前記動作制御部は、前記接触位置情報及び前記圧力情報に基づき前記仮想カメラを前記接触したオブジェクトから所定距離離して動作を制御する、情報処理装置が提供される。
一側面によれば、仮想空間にてキャラクタを適切に表示することができる。
従来のキャラクタの動作と仮想カメラの動作の一例を示す図。 一実施形態にかかる情報処理装置の機能構成の一例を示す図。 一実施形態にかかる接触位置テーブルの構成の一例を示す図。 一実施形態にかかる情報処理装置のハードウェア構成の一例を示す図。 一実施形態にかかる仮想カメラの障害回避動作の一例を示す図。 一実施形態にかかる仮想カメラ動作制御処理の一例を示すフローチャート。 一実施形態にかかる仮想カメラの障害回避動作制御処理の一例を示すフローチャート。 一実施形態にかかる仮想カメラの障害回避動作の一例を示す図。 一実施形態にかかる仮想カメラの障害回避動作の一例を示す図。
以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
図1に示すように、仮想空間におけるプレイヤーキャラクタPCの動作は、例えば、プレイヤーキャラクタPCの背後等からプレイヤーキャラクタPCを捉える仮想カメラVで撮影され、その撮影結果がディスプレイに表示される。
仮想カメラVは、仮想体Cで包含されている。仮想体Cは、実際には画面上には表示されない。なお、後述する仮想体C1〜C8は、総称して仮想体Cとも称呼される。例えば、仮想体Cが画面に表示されているオブジェクトObに接触すると、仮想体Cがクッションとなって内部の仮想カメラVは外界の障害物(オブジェクト)から保護される。これにより、仮想カメラVは、プレイヤーキャラクタPCに追従してプレイヤーキャラクタPCの動作を撮影し、スムーズに表示することができる。
ところが、プレイヤーキャラクタPCが高速に移動している場合やその動作が急激に変化する場合、仮想カメラVがプレイヤーキャラクタPCに追従する際に追従しきれずにオブジェクトObに衝突する場合がある。図1の下側は、プレイヤーキャラクタPCが急激に曲がったため、仮想体Cが潰され、仮想カメラVを保護しきれずに仮想カメラVがオブジェクトObに衝突した一例を示す。この結果、仮想カメラVはプレイヤーキャラクタPCを適切に表示することができない。そこで、本発明の一実施形態に係る情報処理装置10では、仮想空間にてプレイヤーキャラクタPCを適切に表示可能な仮想カメラの動作制御を提供する。
[情報装置の機能構成]
まず、本発明の一実施形態に係る情報処理装置10の機能構成の一例について、図2を参照しながら説明する。本実施形態に係る情報処理装置10は、遊技者がプレイヤーキャラクタPCを操作することで所定のゲームを実行する。また、情報処理装置10は、ゲーム中、仮想カメラの動作制御を行う。情報処理装置10は、パーソナルコンピュータ、タブレット型機器、ゲーム機器、スマートフォン等のいずれの電子機器であってもよい。
情報処理装置10は、入力部11、撮影部12、検出部13、記録部14、動作制御部15、グラフィック処理部16、サウンド処理部17、表示部18及び音出力部19を有する。
入力部11は、コントローラ等の入力装置からの入力情報を受け付ける。撮影部12は、プレイヤーキャラクタPCを撮影する仮想カメラVの機能を有する。検出部13は、表示部18に表示した背景のステージ上の建物等のオブジェクトと仮想空間に設けられた仮想体Cとが接触する接触位置情報を検出する。検出部13は、仮想体をバウンド、回転又はスライド等させることでオブジェクトと接触する接触位置情報を検出してもよい。
接触位置情報には、オブジェクトと仮想体Cとの接触位置が含まれる。接触位置情報には、オブジェクトと仮想体Cとの接触深度及び接触回避方向が含まれてもよい。接触深度は、オブジェクトと仮想体Cとが接触したときに仮想体Cがオブジェクトから与えられる押し込み量を示す。接触回避方向は、オブジェクトと仮想体Cとの接触状態に応じて、仮想体Cがオブジェクトとの接触を回避するための方向を示す。
記録部14は、図3に一例を示す接触位置テーブル31に、仮想体番号301、接触位置情報302、圧力情報303及び距離情報304を記録する。検出部13は、接触位置情報に含まれ得る接触位置、接触深度及び接触回避方向に基づき、仮想体Cに加えられる圧力を算出し、記録部14は、算出された圧力を圧力情報303に記録する。この圧力情報303に基づき、後述される仮想カメラの障害回避が必要か否かが判断される。
記録部14は、バウンド、回転又はスライドしながら移動する仮想体CとオブジェクトObとが接触した座標を接触位置情報302に記録する。記録部14は、接触時にオブジェクトObと仮想体Cとの距離を距離情報304に記録する。具体的には、図5に示す仮想カメラVを包含していない仮想体C1、C4〜C8の場合、記録部14は、接触時にオブジェクトObと仮想体C1、C4〜C8のそれぞれとの距離を距離情報304に記録する。他方、図5に示す仮想カメラVを包含している仮想体C2、C3の場合、記録部14は、接触時にオブジェクトObと仮想体C2,C3のぞれぞれの接触面から仮想カメラVのある点までの距離を距離情報304に記録する。
記録部14は、各種データ及び各種プログラムを記録する。各種プログラムには、仮想カメラ動作制御処理プログラム32及び仮想カメラの障害回避動作制御処理プログラム33が含まれる。これらのプログラムは、情報処理装置10にて遊技者が所定のゲームを行う間に実行される。
図2に戻り、動作制御部15は、仮想空間にてキャラクタの動作を制御する。なお、本実施形態では、プレイヤーキャラクタPCの動作を主に制御するが、動作制御部15は、ノンプレイヤーキャラクタNPCの動作や仮想空間にて動作可能なすべてのオブジェクトの動作を制御する。本実施形態では、例えば風になびく木等の動作可能なすべてのオブジェクト、ノンプレイヤーキャラクタNPC及びプレイヤーキャラクタPCを総称して「キャラクタ」という。
動作制御部15は、接触位置情報302に基づき背景のオブジェクトObを回避するように仮想カメラVの動作を制御する。また、動作制御部15は、接触位置情報302のみならず圧力情報303に基づき、接触時に仮想カメラVがオブジェクトObから受けた圧力を考慮して仮想カメラVがオブジェクトObに衝突することを回避するように仮想カメラVの動作を制御してもよい。また、例えば、動作制御部15は、接触位置情報302のみならず距離情報304に基づき、接触時の仮想カメラVとオブジェクトObとの距離を考慮して仮想カメラVがオブジェクトObに衝突することを回避するように仮想カメラVの動作を制御してもよい。
グラフィック処理部16は、表示部18に接続されている。動作制御部15から描画命令が出力されると、グラフィック処理部16は、表示部18に画像を表示するビデオ信号を出力する。これにより、表示部18は、プレイヤーキャラクタPCと背景のステージとを仮想空間に表示する。グラフィック処理部16から出力されるビデオ信号に含まれる画像の1フレーム時間は、例えば30分の1秒である。グラフィック処理部16は、フレーム単位(すなわち、30分の1秒単位)で1枚の画像の描画を実行する。
サウンド処理部17は、音出力部19に接続されている。グラフィック処理部16からサウンド出力の指示命令が出力されると、音出力部19は、スピーカー20にサウンド信号を出力する。これにより、仮想空間にてプレイヤーキャラクタPCの状況に応じたサウンドが出力される。
[情報処理装置のハードウェア構成]
次に、本発明の一実施形態に係る情報処理装置10のハードウェア構成の一例について、図4を参照しながら説明する。本実施形態に係る情報処理装置10は、CPU(Central Processing Unit)21、ROM(Read Only Memory)22、RAM(Random Access Memory)23及びHDD(Hard Disk Drive)24を有している。また、本実施形態に係る情報処理装置10は、グラフィックカード25、外部I/F(インターフェース)26、通信I/F27、入力I/F28、ディスプレイ29及びスピーカー20を有している。各部は、それぞれがバスで相互に接続されている。
ROM22は、電源を切っても内部データを保持することができる不揮発性の半導体メモリである。ROM22には、プログラム及びデータが格納されている。RAM23は、プログラムやデータを一時保持する揮発性の半導体メモリである。
HDD24は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムには、情報処理装置10の全体を制御する基本ソフトウェア及びアプリケーションソフトウェアがある。HDD24には、各種のデータベースが格納されてもよい。本実施形態では、HDD24には、仮想カメラ動作制御処理プログラム32及び仮想カメラの障害回避動作制御処理プログラム33等の各種プログラムが格納される。また、HDD24には、接触位置テーブル31が格納される。
CPU21は、ROM22やHDD24からプログラムやデータをRAM23上に読み出し、上記各種処理を実行することで、情報処理装置10の全体の制御や情報処理装置10に搭載された機能を実現する。具体的には、図1に示す検出部13及び動作制御部15の機能は、情報処理装置10にインストールされた仮想カメラ動作制御処理プログラム32及び仮想カメラの障害回避動作制御処理プログラム33がCPU21に実行させる処理により実現される。
外部I/F26は、情報処理装置10を外部装置に接続するインターフェースである。外部装置には、記録媒体26aなどがある。これにより、情報処理装置10は、外部I/F26を介して記録媒体26aの読み取り及び書き込みを行うことができる。記録媒体26aの一例としては、CD(Compact Disk)、DVD(Digital Versatile Disk)、SDメモリカード(SD Memory card)又はUSBメモリ(Universal Serial Bus memory)等が挙げられる。
例えば、情報処理装置10には、仮想カメラ動作制御処理プログラム32及び仮想カメラの障害回避動作制御処理プログラム33等のゲームプログラムが格納された記録媒体26aを装着することが可能である。これらのプログラムは、外部I/F26により読み出されて、RAM23に読み込まれる。
CPU21は、RAM23に読み込まれた上記の各種プログラムを処理し、グラフィックカード25にゲームの進行に応じた画像の出力を指示する。グラフィックカード25は、指示に従い画面に表示するゲーム場面に応じた画像処理を行い、ディスプレイ29にプレイヤーキャラクタPCの画像及びステージの画像を描画させる。これにより、グラフィック処理部16及び表示部18の機能が実行される。
グラフィックカード25から出力される画像の一フレーム時間は、例えば1/30〜1/60秒である。グラフィックカード25は、フレーム単位で1枚の画像の描画を実行する。すなわち、一秒間に30回〜60回のフレームの画像が描画される。
また、CPU21は、RAM23に読み込まれた上記の各種プログラムを処理し、ゲームの進行に応じてスピーカー20から所定の音を出力させる。これにより、サウンド処理部17及び音出力部19の機能が実行される。
ディスプレイ29はタッチパネル式としても良い。これにより、コントローラ1を用いずに入力操作を行うことができる。この場合、タッチパネルにより検出されたタッチ位置の入力情報は、RAM23に格納され、CPU21はRAM23に格納された入力情報をもとに各種の演算処理を実行する。
通信I/F27は、情報処理装置10をネットワークに接続するインターフェースである。また、通信I/F27は、アンテナを有する通信ユニットを介して、他のゲーム機器と無線により通信を行う機能を有していてもよい。
入力I/F28は、コントローラ1に接続するインターフェースである。コントローラ1は、操作ボタン2及び方向キー3を有する。遊技者は、操作ボタン2を操作することでプレイヤーキャラクタPCに所定の動作を行わせることができる。また、遊技者は、方向キー3を操作することでプレイヤーキャラクタPCを所定の方向に移動させることができる。入力I/F28は、遊技者がコントローラ1を用いて行った入力操作に基づく入力情報をRAM23に格納させる。これにより、入力部11の機能が実行される。
CPU21は、RAM23に格納された入力情報に基づきプレイヤーキャラクタPCの動作等の各種の演算処理を実行する。また、入力I/F28は、CPU21からの指示に従いRAM23に記憶されているゲームの進行状況を示すデータをメモリカード28aに保存させ、メモリカード28aに保存されている中断時のゲームのデータを読み出してRAM23に転送する処理を行う。仮想空間に表示されたキャラクタを撮影する仮想カメラの機能は、CPU21が仮想カメラ動作制御処理プログラム32及び仮想カメラの障害回避動作制御処理プログラム33を実行することによって実現される。
(仮想体)
図5に仮想体Cの配置の一例を示すように、検出部13は、仮想カメラVとプレイヤーキャラクタPCとの間に仮想体C1を配置してもよい。仮想体Cの数は、1個でもよいし、プレイヤーキャラクタPCの位置に応じて複数個が設けられてもよい。例えば、仮想カメラVを包含する仮想体C2を包含する位置に仮想体C3が設けられてもよい。この場合、検出部13は、仮想カメラV及び仮想体C2を包含する仮想体C3が、オブジェクトObと接触する接触位置を検出する。図5に仮想体C4〜C8にて示すように、仮想体Cを仮想カメラVの前方方向、後方方向又は側方方向に一つ又は複数個設けられてもよい。
仮想体Cの振動(バウンド数)は、1フレームに1回、つまり、1秒に30〜60回程度であってもよいし、これ以外の回数であってもよい。仮想体Cを用いてオブジェクトの接触位置を測定するときには、仮想体Cに所定の動作を行わせる。所定の動作には、仮想体Cをバウンドさせる、仮想体Cをすべらせる、及び仮想体Cを振動させる、回転させる等の動作が含まれる。
なお、仮想体C1は、仮想カメラVと記キャラクタとの間に設けられた第1の仮想体の一例である。仮想体C2は、仮想カメラVを包含する第2の仮想体の一例である。仮想体C3は、仮想カメラV及び第2の仮想体を包含する第3の仮想体の一例である。仮想体C4〜C8は、仮想カメラVの前方方向、後方方向又は側方方向に設けられた第4の仮想体の一例である。
[仮想カメラ動作制御処理]
次に、本実施形態に係る仮想カメラ動作制御処理について図6及び図7を参照して説明する。図6は、一実施形態にかかる仮想カメラ動作制御処理の一例を示すフローチャートである。図7は、一実施形態にかかる仮想カメラの障害回避動作制御処理の一例を示すフローチャートである。本実施形態に係る仮想カメラ動作制御処理は、ゲーム進行中にプレイヤーキャラクタPCの動作を撮影する。
図6の本処理が開始されると、撮影部12は、プレイヤーキャラクタPCを撮影する(ステップS10)。次に、検出部13は、その時点でのプレイヤーキャラクタPCの位置情報及び移動速度を取得する(ステップS12)。次に、検出部13は、取得した位置情報及び移動速度に応じて仮想体Cを配置する(ステップS14)。
図5に示すように、検出部13は、プレイヤーキャラクタPCと仮想カメラVとの間仮想体C1を配置してもよい。検出部13は、仮想体C2を包含する位置に仮想体C3を配置してもよい。検出部13は、仮想カメラVの前方方向、後方方向又は側方方向に一つ又は複数個の仮想体C4〜C8を設けてもよい。
ここでは、図8に示すように、検出部13は、プレイヤーキャラクタPCと仮想カメラVとの間に仮想体C1を配置し、その他の仮想体を配置しない。なお、仮想体Cは球状である。ただし、検出部13は、仮想体Cの大きさや形状を適宜変更させることができる。例えば、仮想体Cは、球状、カプセル状、棒状、矩形状、円錐状、多角形、楕円、円等の形状であってもよい。本実施形態にかかる情報処理装置10が提供するゲームが3次元の仮想空間におけるゲームである場合、仮想体Cはこれに応じて3次元の仮想物体となる。本実施形態にかかる情報処理装置10が提供するゲームが2次元の仮想空間におけるゲームである場合、これに応じて、仮想体Cは2次元の仮想物体となる。
検出部13は、表示した背景(ステージ)の設定によって仮想体Cの大きさを可変に制御することができる。例えば、ステージが大きい場合には仮想体Cを大きくし、ステージが小さい場合には仮想体Cを小さくしてもよい。
検出部13は、キャラクタのアクションによって仮想体Cの大きさを可変に制御してもよい。例えば、キャラクタのアクションとしてキャラクタの移動速度が速い程仮想体Cを大きくし、移動速度が遅い程仮想体Cを小さくしてもよい。
図6に戻り、検出部13は、所定位置に配置された仮想体CがオブジェクトObに衝突したかを判定する(ステップS16)。検出部13は、仮想体CがオブジェクトObに衝突しないと判定した場合、通常通り仮想カメラVをプレイヤーキャラクタPCに追従させる動作を制御し(ステップS24)、本処理を終了する。
他方、ステップS16にて、検出部13は、仮想体CがオブジェクトObに衝突したと判定した場合、記録部14は、衝突した位置の座標を接触位置テーブル31の接触位置情報302に記録する(ステップS18)。記録部14は、接触位置情報302とともに圧力情報303及び距離情報304を記録してもよい。
例えば、図8の例では、仮想体C1がオブジェクトObの角部と接触(衝突)したときの座標(x、y)が、仮想体番号301「C1」に対応する接触位置情報302に保存される。また、接触の際にオブジェクトObから仮想体C1に加わる圧力P1が圧力情報303に保存される。また、接触の際のオブジェクトObと仮想カメラVとの距離D1が距離情報304に保存される。
仮想体C1は、プレイヤーキャラクタPCと仮想カメラVとの間に位置する。そのため、プレイヤーキャラクタPCが進む方向によって仮想カメラVがオブジェクトObと衝突するか否かは、オブジェクトObと仮想カメラVとの間に位置する仮想体C1の接触位置情報によって予測できる。
そこで、図6のステップS20において、検出部13は、仮想カメラVの障害物があるかを判定する(ステップS20)。検出部13は、接触位置テーブル31の仮想体番号301「C1」に対応する接触位置情報302に基づき仮想カメラVの障害物を検出する。例えば、図3では、仮想体番号301「C1」に対応する接触位置情報302に、図8に示す座標(x、y)が保存されている。よって、検出部13は、仮想カメラVがプレイヤーキャラクタPCに追従する際の障害物にオブジェクトObを検出し、障害の位置に座標(x、y)を検出する。この結果、検出部13は、仮想カメラVの障害物があると判定し、図7の仮想カメラの障害回避動作制御処理を実行し(ステップS22)、本処理を終了する。
なお、ステップS20にて、検出部13は、仮想カメラVの障害物がないと判定した場合、通常通り仮想カメラVをプレイヤーキャラクタPCに追従させる動作を制御し(ステップS24)、本処理を終了する。
なお、検出部13は、1フレームに対して1回のみステップS16の衝突判定を行ってもよいし、1フレームに対して複数回ステップS16の衝突判定を行ってもよい。
[仮想カメラの障害回避動作制御処理]
次に、ステップS22の仮想カメラの障害回避動作制御処理について、図7を参照して説明する。動作制御部15は、接触位置テーブル31から仮想体番号301が「C1」の接触位置情報302、圧力情報303及び距離情報304を取得する(ステップS30)。次に、動作制御部15は、取得した接触位置情報302、圧力情報303及び距離情報304に基づき、障害物を回避するための仮想カメラの動作を制御し(ステップS32)、本処理を終了する。
例えば、動作制御部15は、接触位置情報302に基づき特定される接触位置にて仮想カメラVがオブジェクトObと接触や衝突を起こさないように仮想カメラVの動作を制御する。その際、動作制御部15は、圧力情報303に基づき圧力が大きい程仮想カメラVの軌道を接触位置から離すように仮想カメラVの動作を制御してもよい。また、距離情報304に基づき距離が近い程仮想カメラVの軌道を接触位置から離すように仮想カメラVの動作を制御してもよい。
ただし、動作制御部15は、ステップS30、ステップS32において、圧力情報303を考慮せずに接触位置情報302と距離情報304とを考慮して仮想カメラVの動作を制御してもよい。距離情報304を考慮せずに接触位置情報302と圧力情報303とを考慮して仮想カメラVの動作を制御してもよいし、接触位置情報302のみ考慮して仮想カメラVの動作を制御してもよい。
例えば、図8(a)では、動作制御部15は、仮想体C1がオブジェクトObに接触したときの接触位置情報(x,y)、圧力情報P1及び距離情報D1に基づき、図8(b)に示す仮想カメラVの移動経路Rを仮想カメラVに圧力が加えられた方向にずらす。その結果、仮想カメラVは、オブジェクトObに衝突しない経路Rを通ってプレイヤーキャラクタPCに追従できる。このように、本実施形態にかかる動作制御方法によれば、仮想カメラVが進行方向に存在するオブジェクトObに衝突するかを予測(先読み)し、これにより、スムーズなカメラ動作を実現する。この結果、仮想空間にてプレイヤーキャラクタPCの動作を適切に表示することができる。
(変形例)
以上、本実施形態にかかる仮想カメラVの動作制御及び障害物回避動作制御では、背景のオブジェクトObと接触する位置が、仮想カメラVとプレイヤーキャラクタPCとの間に設けられた仮想体C1を用いて検出された。そして、検出した接触位置情報に基づきオブジェクトObを回避するように仮想カメラVの動作が制御された。
これに対して、変形例にかかる仮想カメラVの動作制御及び障害物回避動作制御では、図9(a)に示すように、オブジェクトObと接触する位置が、仮想カメラV及び仮想体C2を包含する仮想体C3を用いて検出される。仮想体C1によってもオブジェクトObと接触する位置が検出される。そして、検出した接触位置情報等に基づきオブジェクトObを回避するように仮想カメラVの動作が制御される。なお、ここでは仮想体C3による接触位置情報の取得と仮想カメラVの障害物回避動作制御について説明する。
図9(a)にてプレイヤーキャラクタPCが紙面の上方へ進行すると、仮想カメラVはこれに追従する。プレイヤーキャラクタPCの前方方向の両側にオブジェクトObがあり、狭い通路が形成されている。
図9(b)にてプレイヤーキャラクタPCが狭い通路内を進行すると、仮想カメラVはこれに追従する。このとき、仮想カメラVの内側にある仮想体C2は、オブジェクトObに接触しない。これに対して、仮想カメラV及び仮想体C2の外側にある仮想体C3は、オブジェクトObに接触する。これにより、検出部13は、接触位置及びオブジェルObから得られる圧力を検出する。動作制御部15は、検出結果に基づき、オブジェクトObの壁で覆われた通路の幅を予測し、仮想カメラVをまっすぐに進行させるように制御する。このようにして仮想カメラVが進行する方向の障害物を予測することで、仮想カメラVが障害物へ衝突することを回避し、スムーズなカメラ動作を実現することができる。この結果、仮想空間にてプレイヤーキャラクタPCを適切に表示することができる。
本実施形態及び変形例にかかる仮想カメラVの動作制御方法によれば、仮想カメラVがプレイヤーキャラクタPCに追従する際の経路上の障害物を予測するために一つ以上の仮想体Cを有する。例えば、仮想カメラVとプレイヤーキャラクタPCとの間に仮想体C1を配置することで、プレイヤーキャラクタPCの進行方向であって仮想カメラVの前方のオブジェクトObを予測することができる。また、仮想カメラVの周囲に、仮想カメラVを囲む仮想体C2と異なる大型の仮想体C3を配置することで、仮想カメラVの周囲の比較的広い範囲のオブジェクトObを予測することができる。これにより、仮想カメラVが前方又は周囲のオブジェクトObに衝突する前に仮想カメラが移動する経路を変更させることで、スムーズなカメラ動作を実現し、仮想空間にてキャラクタを適切に表示することができる。
なお、図5に示すように、大型の仮想体C3を配置するとともに又は仮想体C3を配置する替わりに仮想カメラVの後方に仮想体C4を配置してもよい。これにより、仮想カメラVが後方のオブジェクトObに衝突する前に、仮想体C4により後方にあるオブジェクトObを予測することができる。これにより、プレイヤーキャラクタPCが後ずさりしたときに仮想カメラVが後方へ移動する際に、後方のオブジェクトObとの接触を回避することができる。
また、仮想体C4を配置するとともに又は仮想体C4を配置する替わりに、仮想カメラVの両側に仮想体C5及び仮想体C6を配置してもよい。また、仮想カメラVの前方方向に仮想体C7及び仮想体C8を配置してもよい。これにより、仮想体C1により、プレイヤーキャラクタPCと仮想カメラVとの間の状態を先読みするとともに、仮想カメラVの移動方向の前方の状態、両側の状態及び後方の状態を複数の仮想体C4〜C8により先読みすることができる。これにより、周囲のオブジェクトObに衝突する前に仮想カメラVの動作を的確に変更させることができる。
以上、情報処理装置、動作制御方法及び動作制御プログラムを上記実施形態により説明したが、本発明にかかる情報処理装置、動作制御方法及び動作制御プログラムは上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び変形例が複数存在する場合、矛盾しない範囲で組み合わせることができる。
10:情報処理装置
11:入力部
12:撮影部
13:検出部
14:特定部
15:動作制御部
16:グラフィック処理部
17:サウンド処理部
18:表示部
19:音出力部
20:スピーカー
21:CPU
22:ROM
23:RAM
24:HDD
25:グラフィックカード
26:外部I/F
26a:記録媒体
27:通信I/F
28:入力I/F
28a:メモリカード
29:ディスプレイ
30:記録部
31:接触位置テーブル
C1〜C4:仮想体
Ob1〜Ob3:オブジェクト
PC:プレイヤーキャラクタ

Claims (7)

  1. 仮想空間に表示されたキャラクタを撮影する仮想カメラと、
    キャラクタと背景とを表示する表示部と、
    前記仮想カメラと前記キャラクタとの間に設けられた第1の仮想体が、表示した前記背景のオブジェクトと接触する接触位置情報を検出する検出部と、
    検出した前記接触位置情報に基づき前記背景のオブジェクトを回避するように前記仮想カメラの動作を制御する動作制御部と、を有し、
    前記検出部は、前記仮想カメラを包含する第2の仮想体が、表示した前記背景のオブジェクトと接触する接触位置情報を検出し、
    前記検出部は、前記接触したオブジェクトから前記第1の仮想体又は前記第2の仮想体に加えられる圧力を示す圧力情報を検出し、
    前記動作制御部は、前記接触位置情報及び前記圧力情報に基づき前記仮想カメラを前記接触したオブジェクトから所定距離離して動作を制御する、
    情報処理装置。
  2. 記検出部は、前記接触したオブジェクトから前記第1の仮想体又は前記第2の仮想体までの距離を示す距離情報を検出し、
    前記動作制御部は、前記接触位置情報、前記圧力情報及び前記距離情報に基づき前記仮想カメラを前記接触したオブジェクトから所定距離離して動作を制御する、
    請求項1に記載の情報処理装置。
  3. 前記検出部は、前記仮想カメラの前方方向、後方方向又は側方方向に設けられた第4の仮想体が、表示した前記背景のオブジェクトと接触する接触位置情報を検出する、
    請求項1又は2のいずれか一項に記載の情報処理装置。
  4. 前記検出部は、表示した前記背景によって前記第1の仮想体、前記第2の仮想体を包含する3の仮想体及び前記第4の仮想体の大きさを制御し、表示した前記背景のオブジェクトと接触する接触位置情報を検出する、
    請求項3に記載の情報処理装置。
  5. 前記検出部は、前記キャラクタのアクションによって前記第1の仮想体、前記第2の仮想体を包含する前記第3の仮想体及び前記第4の仮想体の大きさを制御し、表示した前記背景のオブジェクトと接触する接触位置情報を検出する、
    請求項に記載の情報処理装置。
  6. 仮想カメラにより仮想空間に表示されたキャラクタを撮影し、
    キャラクタと背景とを表示し、
    前記仮想カメラと前記キャラクタとの間に設けられた第1の仮想体が、表示した前記背景のオブジェクトと接触する接触位置情報を検出し、
    検出した前記接触位置情報に基づき前記背景のオブジェクトを回避するように前記仮想カメラの動作を制御し、
    前記仮想カメラを包含する第2の仮想体が、表示した前記背景のオブジェクトと接触する接触位置情報を検出し、
    前記接触したオブジェクトから前記第1の仮想体又は前記第2の仮想体に加えられる圧力を示す圧力情報を検出し、
    前記接触位置情報及び前記圧力情報に基づき前記仮想カメラを前記接触したオブジェクトから所定距離離して動作を制御する、
    処理をコンピュータが実行する動作制御方法。
  7. 仮想カメラにより仮想空間に表示されたキャラクタを撮影し、
    キャラクタと背景とを表示し、
    前記仮想カメラと前記キャラクタとの間に設けられた第1の仮想体が、表示した前記背景のオブジェクトと接触する接触位置情報を検出し、
    検出した前記接触位置情報に基づき前記背景のオブジェクトを回避するように前記仮想カメラの動作を制御し、
    前記仮想カメラを包含する第2の仮想体が、表示した前記背景のオブジェクトと接触する接触位置情報を検出し、
    前記接触したオブジェクトから前記第1の仮想体又は前記第2の仮想体に加えられる圧力を示す圧力情報を検出し、
    前記接触位置情報及び前記圧力情報に基づき前記仮想カメラを前記接触したオブジェクトから所定距離離して動作を制御する、
    処理をコンピュータに実行させる動作制御プログラム。
JP2019221320A 2019-12-06 2019-12-06 情報処理装置、動作制御方法及び動作制御プログラム Active JP6829301B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019221320A JP6829301B2 (ja) 2019-12-06 2019-12-06 情報処理装置、動作制御方法及び動作制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019221320A JP6829301B2 (ja) 2019-12-06 2019-12-06 情報処理装置、動作制御方法及び動作制御プログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2015210832A Division JP6649742B2 (ja) 2015-10-27 2015-10-27 情報処理装置、動作制御方法及び動作制御プログラム

Publications (2)

Publication Number Publication Date
JP2020042857A JP2020042857A (ja) 2020-03-19
JP6829301B2 true JP6829301B2 (ja) 2021-02-10

Family

ID=69798502

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019221320A Active JP6829301B2 (ja) 2019-12-06 2019-12-06 情報処理装置、動作制御方法及び動作制御プログラム

Country Status (1)

Country Link
JP (1) JP6829301B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3700857B2 (ja) * 2004-03-03 2005-09-28 コナミ株式会社 ゲームプログラム及びゲーム装置
JP4489800B2 (ja) * 2007-08-30 2010-06-23 株式会社スクウェア・エニックス 画像生成装置及び方法、並びにプログラム及び記録媒体
JP2014235596A (ja) * 2013-06-03 2014-12-15 任天堂株式会社 情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法

Also Published As

Publication number Publication date
JP2020042857A (ja) 2020-03-19

Similar Documents

Publication Publication Date Title
JP6649742B2 (ja) 情報処理装置、動作制御方法及び動作制御プログラム
JP6419278B1 (ja) 制御装置、制御方法、及びプログラム
JP4661866B2 (ja) ゲーム装置において実行される表示制御プログラム
WO2022063177A1 (zh) 一种虚拟摄像机的控制方法及装置、设备
KR100969873B1 (ko) 가상 공간과 현실 공간을 연계한 로봇 게임 시스템 및 로봇게임 방법
EP2354893A1 (en) Reducing inertial-based motion estimation drift of a game input controller with an image-based motion estimation
JP2009279038A (ja) ゲームプログラムおよび記録媒体
US20190019334A1 (en) Storage medium, information processing apparatus and control method
US11297303B2 (en) Control apparatus, control method, and storage medium
US20150138063A1 (en) Motion control of a virtual environment
CN110622219A (zh) 交互式增强现实
US20200306636A1 (en) Game device, control method of game device, and storage medium that can be read by computer
JP2019057291A (ja) 制御装置、制御方法、及びプログラム
JP2006260602A (ja) 画像処理装置
US11882363B2 (en) Control apparatus and learning apparatus and control method
JP6829301B2 (ja) 情報処理装置、動作制御方法及び動作制御プログラム
JP6706470B2 (ja) 情報処理装置、位置情報検出方法及び位置情報検出プログラム
JP6420380B2 (ja) ゲームプログラム及びゲームシステム
US10994205B2 (en) Information processing apparatus, arrangement method, and arrangement program
JP6755647B2 (ja) 情報処理装置、姿勢動作制御方法及び姿勢制御プログラム
JP6612090B2 (ja) 情報処理装置、動作制御方法及び動作制御プログラム
US20210162305A1 (en) Game device, game processing method, and medium
JP6987634B2 (ja) 情報処理装置、表示制御プログラム及び表示制御方法
JP7434385B2 (ja) 制御装置、制御方法、及びプログラム
JP7303340B2 (ja) プログラム、画像処理方法、及び画像処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201222

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210121

R150 Certificate of patent or registration of utility model

Ref document number: 6829301

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250