JP2017037404A - 情報処理装置、情報処理システム、及び情報処理プログラム - Google Patents
情報処理装置、情報処理システム、及び情報処理プログラム Download PDFInfo
- Publication number
- JP2017037404A JP2017037404A JP2015157247A JP2015157247A JP2017037404A JP 2017037404 A JP2017037404 A JP 2017037404A JP 2015157247 A JP2015157247 A JP 2015157247A JP 2015157247 A JP2015157247 A JP 2015157247A JP 2017037404 A JP2017037404 A JP 2017037404A
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- character
- speed
- information
- display
- 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.)
- Pending
Links
Abstract
【課題】計算コストを大幅に削減する情報処理装置等を提供する。【解決手段】情報処理サーバ31と、複数の情報処理装置31、33、34とを有する情報処理システム30であって、情報処理装置は、ディスプレイを備え、ユーザ操作を検知することによって画面上に表示させたキャラクタをディスプレイ上で移動制御させるとともに、情報処理サーバ31へキャラクタの位置及び速度に関する情報を送信し、情報処理サーバ31を介して送信される情報処理装置とは異なる他の情報処理装置のディスプレイ上で移動制御される、キャラクタとは別の他のキャラクタの位置及び速度に関する情報を受信するものである。受信した他のキャラクタの位置及び速度に関する情報に基づき、時刻tn及びtn+1の間の位置及び速度の多項式補間処理を行うものとして、キャラクタの(x,y)座標及び速度(vx,vy)に関する多項式補間を行う。【選択図】図3
Description
本発明は、キャラクタ移動等を伴うゲーム等を進行する情報処理装置、情報処理システム、及び情報処理プログラムに関する。
従来、タブレットやスマートフォン、携帯ゲーム、携帯電話等の情報処理端末装置のタッチパネル式ディスプレイ上に表示させたキャラクタオブジェクト等を、指やペン等を用いたタッチパネルに対する直接操作によって移動させる技術が提案されている。
また、ディスプレイ上に表示させるキャラクタ等のオブジェクトの移動や軌跡等を滑らかに見せるための多く技術も古くから提案されてきた。
また、ディスプレイ上に表示させるキャラクタ等のオブジェクトの移動や軌跡等を滑らかに見せるための多く技術も古くから提案されてきた。
例えば、受信値を補間して曲線等を近似する技術が提案されている(特許文献1)。
すわなち、特許文献1には、N個の受信値を補間する曲線を生成する画像処理装置であって、前記受信値から1組の仮想値を生成する第1生成手段と、前記仮想値を用いて前記受信値を補間する曲線を生成する第2生成手段とを備え、前記第1生成手段は、1つの仮想値に対応して、前記N個の受信値よりN’個の受信値を抽出して受信値群を形成し、所定のN’個の係数を用いて前記受信値群より前記1つの仮想値を生成し、他の仮想値について夫々異なる受信値群を形成し、夫々の受信値群について前記所定のN’個の係数をくり返し用いることで少なくとも前記1組の仮想値の部分集合を獲得することを特徴とする画像処理装置が開示されている。
また、より現実的な波の変化を表現することを可能とし、同時に処理装置の負荷を大きくしないアニメーション生成プログラム及びこれを用いた画像処置技術も提案されている(特許文献2)。
すなわち、特許文献2には、一の方向及び前記一の方向と交差する方向に進行する波のアニメーション画像を生成するアニメーション生成プログラムであって、所定経過時間毎に対応し、三次元座標を有する複数の接続点で結ばれた複数の波のキーパターンフレームを格納するメモリから、特定経過時間の前後の経過時間に対応する2つのキーパターンフレームの読み出しを制御し、画像処理部に対し、前記読み出された2つのキーパターンフレームを、前記特定経過時間とその前後の経過時間との割合に対応して、前記特定経過時間に対するパターンフレームを曲線補間により生成させ、前記曲線補間により生成されるパターンフレームを所定のパラメータにより補正させ、前記パターンフレームを曲線となるように、補間計算させ、前記補間計算により得られた曲線のパターンフレームを所定長さで区切りポリゴン頂点を有するモデルデータを作成させ、前記作成されたモデルデータを前記一の方向に前記ポリゴン頂点をつないで構成される波の画像に対応するポリゴンデータとテクスチャデータによりディスプレイに波のアニメーション画像を表示させることを特徴とするアニメーション生成プログラムが開示されている。
また、ユーザに対して操作の支援を行うことができるとともに、キャラクタの動作をゲージの形状によって確認することができる画像表示プログラム等も提案されている(特許文献3)。
すなわち、特許文献3には、ゲーム画面に表示されるキャラクタをゲームの進行状況に応じて表示するための画像表示プログラムであって、あらかじめ設定されている前記キャラクタの動作に関する動作データに基づいて前記キャラクタの動作に応じた形状のゲージを生成するゲージ生成手段と、生成されたゲージを前記キャラクタの動作に応じてゲーム画面に表示するゲージ表示手段としてビデオゲーム装置を機能させることを特徴とする画像表示プログラムが開示されている。
しかしながら、上記の従来技術は、オブジェクトの個々の曲線や移動軌跡等を滑らかに見せるための技術であり、具体的には多項式補間やスプライン補間といった古典的な技術をベースとするもので、近年のゲーム等におけるキャラクタ動作の安定を確保するためには、さらなる改良が必要とされる。
特に、近年では、プレーヤによってキャラクタが直接操作されるSNSゲームにおいても、現実的な意味でのリアルタイム・マルチプレイが主流になりつつあり、インターネット環境下で、各プレーヤの操作するキャラクタを各プレーヤ端末のディスプレイ上に全て登場させ、かつ、全体を滑らかに見せるためには、計算コストの大幅な削減を達成できるオブジェクト画像表示方法ないし画像処理方法が求められている。
そこで、本発明の一実施形態にかかる情報処理システムは、情報処理サーバと、前記情報処理サーバにネットワークを介して接続可能に構成された複数の情報処理装置とを有する情報処理システムであって、
前記情報処理装置は、
ディスプレイを備え、ユーザ操作を検知することによって画面上に表示させたキャラクタを前記ディスプレイ上で移動制御させるとともに、前記情報処理サーバへ前記キャラクタの位置及び速度に関する情報を送信し、
前記情報処理サーバを介して送信される前記情報処理装置とは異なる他の情報処理装置のディスプレイ上で移動制御される、前記キャラクタとは別の他のキャラクタの位置及び速度に関する情報を受信するものであって、
前記受信した前記他のキャラクタの位置及び速度に関する情報に基づき、時刻tn及びtn+1の間の位置及び速度の多項式補間処理を行うものとして、次式に基づいて前記キャラクタのx座標及び速度のx成分(vxとする)に関する多項式補間を行い、
さらに、次式に基づいて前記キャラクタのy座標及び速度のy成分(vyとする)に関する多項式補間を行うことを特徴とする。
但し、αi、βi(i=0,1,2,3)は、多項式の係数である。
前記情報処理装置は、
ディスプレイを備え、ユーザ操作を検知することによって画面上に表示させたキャラクタを前記ディスプレイ上で移動制御させるとともに、前記情報処理サーバへ前記キャラクタの位置及び速度に関する情報を送信し、
前記情報処理サーバを介して送信される前記情報処理装置とは異なる他の情報処理装置のディスプレイ上で移動制御される、前記キャラクタとは別の他のキャラクタの位置及び速度に関する情報を受信するものであって、
前記受信した前記他のキャラクタの位置及び速度に関する情報に基づき、時刻tn及びtn+1の間の位置及び速度の多項式補間処理を行うものとして、次式に基づいて前記キャラクタのx座標及び速度のx成分(vxとする)に関する多項式補間を行い、
さらに、次式に基づいて前記キャラクタのy座標及び速度のy成分(vyとする)に関する多項式補間を行うことを特徴とする。
但し、αi、βi(i=0,1,2,3)は、多項式の係数である。
本発明の一実施形態にかかる画像表示装置等によれば、従来の手法に比べ、計算コストの大幅削減を達成するオブジェクト等の画像表示ないし画像処理を行う情報処理装置等を提供できるという特段の効果を奏する。
本発明の一実施形態にかかる情報処理装置及び情報処理プログラムについて、図面を参照しながら詳細に説明する。
図1に、本発明の一実施形態にかかる情報処理装置としてのタブレット端末の外観構成を示す。図1において、情報処理装置(タブレット端末)15は、筐体部151とディスプレイ152と筐体151の下部中央部に設けられたハードウェアボタン153とからなる。ディスプレイ152は典型的には液晶ディスプレイ(LCD)等で構成され、文字や静止画像や動画など様々な情報を表示することができる。また、ディスプレイ152にメニューボタンやソフトウェアキーボードを表示させ、これを指ないしタッチペン(不図示)等で触れることによりタブレット端末15への指示(コマンド)とすることができる。この点で上記ハードウェアボタン153は必須の構成要素ではないが、本発明の説明の便宜上、一定の機能を担うボタンとして実装されている。もちろん、これらハードウェアボタン153を、ディスプレイ152の一部に表示させたメニューボタンで代替させることも可能である。
また、ディスプレイ152には、マルチタッチ入力パネルが含まれており、タッチ入力パネル上でのタッチ入力位置座標が入力デバイスインタフェース(不図示)を介してタブレット端末15の処理系(CPU)へ送信され処理される。そして、このマルチタッチ入力パネルは、パネルに対する複数の接触点を同時に感知することができるよう構成されている。この検出(センサ)については様々な方法で実現することができ、必ずしも接触センサに限られず、例えば、光学式のセンサを利用してパネルに対する指示点を抽出することも可能である。さらに、センサには、接触式のセンサや光学式のセンサのほか、人の肌の接触を感知する静電容量方式のセンサを用いることも可能である。
また、図1には現れていないが、タブレット端末15は、マイクやスピーカを備えることもできる。この場合にはマイクより拾ったユーザの声などを判別して入力コマンドとすることも可能である。さらに、図1には現れていないが、タブレット端末15の背面等には、CMOS等のカメラデバイスが実装されている。
図2に、本発明の一実施形態にかかるタブレット端末15を構成するハードウェアの機能ブロック図を例示する。タブレット端末15の動作は、以下に説明するハードウェアの個々の動作、及びソフトウェアとこれらハードウェアとの連携動作によって実現されている。
図2において、ハードウェアブロック全体としてのタブレット端末200は、大別すると、図1におけるハードウェアボタン153、ディスプレイ152に設けられたマルチタッチ入力パネル、マイク等で構成される入力部201と、プログラムやデータ等を記憶するためのハードディスク、RAM及び/又はROM等で構成される記憶部202と、プログラムによって様々な数値計算や論理演算を行うCPUによって構成される中央処理部203と、ディスプレイ152等で構成される表示部204と、チップや電気系統等の制御を行うための制御部205と、インターネットにアクセスするためのスロットや光通信を行うためのポート、及び通信インタフェースから構成される通信インタフェース部206と、スピーカやバイブレーション等の出力部207と、時刻等を計時するための計時部208と、CMOS等のイメージセンサからなるセンサ部209と、装置内の各モジュールに電源を供給するための電源部210とからなり、これらのモジュールは必要に応じて適宜通信バスや給電線(図2においては、便宜上各線が適宜区分された結線211としてひとまとめに表す)によって接続されている。
なお、センサ部209には、タブレット端末200(15)の位置を特定するためのGPSセンサモジュールを含めることとしても良い。また、センサ部209を構成するCMOS等のイメージセンサによって検知された信号は、入力部201において入力情報として処理することができる。
なお、センサ部209には、タブレット端末200(15)の位置を特定するためのGPSセンサモジュールを含めることとしても良い。また、センサ部209を構成するCMOS等のイメージセンサによって検知された信号は、入力部201において入力情報として処理することができる。
また、本発明の実施に必要なプログラムないしソフトウェアは、通常、記憶部202を構成するハードディスクディスク、SSD(Solid State Drive)、フラッシュメモリ等にインストールないし記憶され、プログラムないしソフトウェアの実行時には、必要に応じて記憶部202内のメモリにその全部又は一部のソフトウェアモジュールとして読み出され、CPU203において演算実行される。
なお、演算実行は必ずしもCPU等の中央処理部203で行われる必要はなく、図示しないディジタルシグナルプロセッサ(DSP)等の補助演算装置を用いることもできる。
図3に、本発明の一実施形態にかかる情報処理装置をサーバないしシステムに接続して使用した場合の情報処理システムの全体構成例を示す。本発明の特徴的な処理動作は、情報処理装置単体でも実施可能であるが、本発明はこれに限定されるものではなく、情報処理サーバやゲームサーバに接続したうえで実施することもできる。この場合、情報処理装置単体でも実行可能な処理ルーチンのうちの少なくとも一部はサーバで実施されることになる。また、情報処理装置を操作するプレーヤの情報やポイント等のデータがサーバにおいて保存管理されるという場合もある。以下、図3を参照して、サーバに接続された情報処理装置がシステム全体として本発明の一実施形態を実施する場合の態様を説明する。
図3に示されるように、情報処理システム30は、その最小限の構成として、情報処理サーバ31と、プレーヤが使用する各種情報処理装置(図において、例示的に、PC32及び33、携帯電話34、携帯情報端末ないしタブレット端末15が示されている。以下、総称して「端末」とも言うこともある)とで構成され、サーバ及び各種端末間は、図3に示されるように専用回線やインターネット等の公衆回線(有線の回線として、36〜38)で相互に通信可能に接続されている。また、回線は有線であっても無線であってもよく、無線の場合、携帯電話34及び携帯情報端末ないしタブレット端末15は、無線で図示しない基地局や無線ルータ等を介してインターネット39に乗り入れ、更に回線38を介して情報処理サーバ31と相互に通信可能に接続される。
なお、本願の出願時点での携帯電話や携帯情報端末ないしタブレットは、パーソナルコンピュータ(PC)に比肩する処理能力(通信処理速度や画像処理能力等)を備えているものも多く、小型のコンピュータとも言うべきものである。
また、本発明の実施に必要なプログラムないしソフトウェアは、通常、PCや携帯情報端末の記憶部におけるHDD、SSD等にインストールないし記憶され、プログラムないしソフトウェアの実行時には、必要に応じて記憶部内のメモリにその全部又は一部のソフトウェアモジュールとして読み出され、CPUにおいて演算実行される。
なお、演算実行は必ずCPU等の中央処理部で行われる必要はなく、図示しないディジタルシグナルプロセッサ(DSP)等の補助演算装置を用いることもできる。
また、情報処理サーバ31のハードウェア構成も、基本的にはPCを採用することができる。なお、本発明はこれに限定されるものではないが、情報処理サーバ31は、必要に応じてそのハードウェアスペックを上げるにあたり、複数のPC(一例として、数十台〜数万台)を並列的に作動させることによって大規模データの処理に適した構成をとることもできる。
次に、図4の動作フローを用いて、本発明にかかる一実施形態における情報処理装置を含むシステム、情報処理装置(ユーザ端末)ないしコンピュータプログラムの動作を説明する。
既に述べたように、本発明の特徴的な動作は、情報処理装置単体としても実施可能であるとともに、少なくともその一部を情報処理サーバ等のサーバに実施させることができる。
既に述べたように、本発明の特徴的な動作は、情報処理装置単体としても実施可能であるとともに、少なくともその一部を情報処理サーバ等のサーバに実施させることができる。
図4は、本発明の一実施形態における情報処理装置を含むシステムの全体動作フローの概略を示す。図4において、「ユーザ端末」は情報処理装置であり、図1におけるタブレット端末15のほか、同図のPC12、13、携帯電話14などがこれに対応し、「情報処理サーバ」は、図3における情報処理サーバ31がこれに対応する。また、図4中、t1〜t10は時系列の流れを示し、経時的に後述する動作や処理が行われるものである。
まず、日時t1において、ユーザ(プレーヤ)は、ユーザ端末を介して情報処理サーバから自身のユーザ端末を本発明にかかる情報処理装置として動作させるためのアプリケーションソフトウェアをダウンロードする(ステップS401)。このアプリケーションソフトウェアは、本発明にかかるプログラムの一部又は全部を処理するためのクライアントソフトウェアないしアプリケーションソフトウェアである。そして、ダウンロードしたアプリケーションソフトウェアをユーザ端末にインストールする(ステップS402)。このとき、時刻t2において、ユーザ端末からは、必要に応じてユーザ登録としてユーザ自身のメールアドレスのほか、一例として、次表のようなプロフィール情報を情報処理サーバへアップロード(ステップS403)して登録管理させることもできる(ステップS404)。
以上のデータ項目は、ユーザデータとして情報処理サーバ上で保存される(ステップS405)。時刻t3以降は、ユーザ(プレーヤ)が情報処理装置を操作することによりゲームを開始することができる。
次に、ユーザ端末にアプリをダウンロード及びインストールしたユーザは、時刻t4においてアプリケーションソフトウェアを起動する(ステップS406)。時刻t4〜時刻t5まで、例示的にユーザは情報処理装置(端末)でのゲーム遊戯に興じている。
時刻t5になると、ユーザはいったん本発明の一実施形態にかかるアプリケーションソフトウェアを中断ないし終了する。このとき、必要に応じて、アプリケーションのステータス情報(得点やレベルアップの有/無、あるいは、レベルアップに伴う使用可能なコンテンツの権限データ、到達したステージ情報等のゲームの状況を表わす情報等、ゲームを再開ないし継続するために必要な各種パラメータ情報)を情報処理サーバへ転送し(ステップS407)、サーバではこれを受信して当該ユーザのユーザ情報としてのステータス情報を更新(ステップS408)及び保存(ステップS409)する。図4においては、これらの処理は、時刻t6までに完了している。
なお、本発明の一実施形態にかかるアプリケーションソフトウェアを情報処理装置にインストールした後は、端末上で完全にクローズドに実行可能な形態とすることももちろん可能であり、この場合は、上述のステップS404〜ステップS405、並びに、ステップS408〜ステップS409を省略することができ、必要な情報があれば端末のメモリ上に保存管理される。
次に、図4において、時刻t7〜時刻t10では、本発明の一実施形態にかかるアプリケーションソフトウェアの少なくとも一部を情報処理サーバにおいて実施する場合の実施形態例を示している。この場合、ユーザ(プレーヤ)は、ログイン動作と、コマンド送信という2つの典型的なユーザ端末操作を行い、情報処理サーバから必要なデータ送信を受け、あるいは、サービス提供を受けることとなる。
例えば、図4において、時刻t7においてユーザが自身の情報処理装置を介してサーバへのログイン処理を行う(ステップS410)と、情報処理サーバでは必要な認証処理が適宜行われ(ステップS411)、時刻t8において、ユーザがサービス提供を受けられるためのデータを送信する(ステップS412)。例えば、端末からのコマンドを受信可能に構成されたトップメニュー画面や、アプリケーションの起動画面等である。
時刻t9において、ユーザは情報処理装置を介して何らかのコマンドを送信する(ステップS413)。このコマンドは、メニュー画面に表示されたメニューの選択かもしれないし、アプリケーション起動画面であれば、アプリケーションを開始するための開始コマンドの場合もある。サーバ側では、このコマンドを受けて、サービス処理を開始する(ステップS414)。そして、時刻t10において、サーバから端末の要求に応じたサービスが提供される(ステップS415)。
なお、図4には図示していないが、時刻t10以降も、端末からは随時コマンドを送信することができ(例えば、ゲームアプリケーション実行中の操作コマンドなど)、都度、サーバでは端末からのコマンド受信を受けてサービスを提供することができる(例えば、ゲームアプリケーション実行中の操作コマンドを受けて対象となるオブジェクトを移動させたり、その他の演算処理をしたりするなど)。
その他付加的に、ユーザ(プレーヤ)は、一例としてユーザ端末から特定の相手もしくは特定多数の相手に向けてメッセージを送信することもできる(図4において不図示)。このメッセージは、情報処理サーバにて中継され、特定の相手もしくは特定多数の相手に転送され相手方において受信される。また、送信したメッセージは自身の端末でも確認できる。このようなコミュニケーションツールはいわばオプションであり、必要に応じて実装することができる。
(操作系の定義)
一般的に、タッチパネルに対する直接操作には、タップ、フリック等の操作があるが、本発明の一実施形態においては、一例として次のような操作系を定義する。
1.始点
タッチパネルに対し、ユーザの指等が非接触状態から接触状態となったときに触れた点。ただし、ジャンプ指示と判断されたフレームの直後は、その時点でタッチパネルに接触している点が新たな始点としてリセットされる(このリセット処理は、本発明の大きな特徴部分であり、後述する)。
一般的に、タッチパネルに対する直接操作には、タップ、フリック等の操作があるが、本発明の一実施形態においては、一例として次のような操作系を定義する。
1.始点
タッチパネルに対し、ユーザの指等が非接触状態から接触状態となったときに触れた点。ただし、ジャンプ指示と判断されたフレームの直後は、その時点でタッチパネルに接触している点が新たな始点としてリセットされる(このリセット処理は、本発明の大きな特徴部分であり、後述する)。
2.終点
ある時点において、ユーザの指等がタッチパネルに対して始点から接触した状態を保ったまま接地している点(必ずしも、指等がタッチパネルから離れること、すなわち、非接触状態となることは、終点となるための必須条件ではない)。接触状態にある終点を「現接地点」とも言う。
また、現接地点にある指がタッチパネルに接触した状態を保って移動している場合には、一例として、現接地点から遡って一定の過去における一定時刻ごとの接地点座標から、刻々と変化する速度成分を算出することにより、「現接地点での移動速度」を抽出することもできる。
ある時点において、ユーザの指等がタッチパネルに対して始点から接触した状態を保ったまま接地している点(必ずしも、指等がタッチパネルから離れること、すなわち、非接触状態となることは、終点となるための必須条件ではない)。接触状態にある終点を「現接地点」とも言う。
また、現接地点にある指がタッチパネルに接触した状態を保って移動している場合には、一例として、現接地点から遡って一定の過去における一定時刻ごとの接地点座標から、刻々と変化する速度成分を算出することにより、「現接地点での移動速度」を抽出することもできる。
3.タップ
ユーザの指等が画面に触れている状態(接触状態)から触れていない状態(非接触状態)へ遷移するタイミングで検知される操作であって、始点と直前の終点の距離が一定の値未満である場合に検知される直接操作。
ユーザの指等が画面に触れている状態(接触状態)から触れていない状態(非接触状態)へ遷移するタイミングで検知される操作であって、始点と直前の終点の距離が一定の値未満である場合に検知される直接操作。
4.フリック
ユーザの指等が画面に触れている状態(接触状態)から触れていない状態(非接触状態)へ遷移するタイミングで検知される操作であって、始点と直前の終点の距離が一定の値以上であり、かつユーザがタッチパネル画面に触れている時間が一定の値未満である場合に検知される直接操作。なお、フリックの向きは、始点と直前の終点を結ぶ直線の向きであるものとする。
ユーザの指等が画面に触れている状態(接触状態)から触れていない状態(非接触状態)へ遷移するタイミングで検知される操作であって、始点と直前の終点の距離が一定の値以上であり、かつユーザがタッチパネル画面に触れている時間が一定の値未満である場合に検知される直接操作。なお、フリックの向きは、始点と直前の終点を結ぶ直線の向きであるものとする。
5.操作方向が「横向き」であること(横向きであると判断される条件例)
タッチパネルに接触したユーザの指等の始点と終点とを結ぶベクトルの水平成分が画面の水平軸に対して成す角度が一定の未満であること
タッチパネルに接触したユーザの指等の始点と終点とを結ぶベクトルの水平成分が画面の水平軸に対して成す角度が一定の未満であること
6.操作方向が「下向き」であること(下向きであると判断される条件例)
タッチパネルに接触したユーザの指等の始点と終点とを結ぶベクトルの垂直成分が画面の垂直軸に対して成す角度が一定の値未満であり、かつ始点よりも終点が鉛直下方向にあること。
タッチパネルに接触したユーザの指等の始点と終点とを結ぶベクトルの垂直成分が画面の垂直軸に対して成す角度が一定の値未満であり、かつ始点よりも終点が鉛直下方向にあること。
7.距離A及び距離B
本実施例においては、A<Bとなる所定長とする。
本実施例においては、A<Bとなる所定長とする。
そして、図5に、本発明の一実施形態にかかる情報処理装置に対する操作系を例示する。すなわち、図5(A)及び(B)に示されたものは、本発明の一実施形態にかかる情報処理装置が備えるタッチパネルに対するユーザの指等による操作例であり、本発明の一実施形態にかかる情報処理装置は、かかる操作を検知してキャラクタ等の動作に反映させる。
図5(A)では、始点T1(黒丸)から現接地点T2(白丸に黒ドット)まで、ユーザの指等が接触状態を保ったままタッチパネルに対して描いた軌跡を表わしている。図5(B)では、図5(A)の状態から指等をタッチパネルから離した状態(非接触状態)を表わしており、現接地点T2は、非接触状態となる終点T3(白丸)となる。
図6に、本発明の一実施形態にかかる情報処理装置ないし情報処理プログラムの処理例を示す。典型的には、本発明の一実施形態にかかる情報処理プログラムは、ステップS401に示したような、情報処理サーバからダウンロードされるアプリケーションソフトウェアに組み込まれている。
このアプリケーションソフトウェアが情報処理装置にダウンロードされてインストールされると、情報処理プログラムは、情報処理装置が備えるタッチパネルと協働して作動し、ユーザの指等による直接操作を検知及び判断してアプリケーションソフトウェア上のキャラクタ等の移動等をさせる。
このアプリケーションソフトウェアが情報処理装置にダウンロードされてインストールされると、情報処理プログラムは、情報処理装置が備えるタッチパネルと協働して作動し、ユーザの指等による直接操作を検知及び判断してアプリケーションソフトウェア上のキャラクタ等の移動等をさせる。
あるいは、本発明の他の実施形態にかかる情報処理プログラムは、少なくともその一部が情報処理サーバ上に置かれ、ステップS414に示したようなサービス処理として作動する。この場合は、ユーザが直接操作する情報処理装置のタッチパネルとネットワーク等を介して協働して作動することとなる。
また、本発明の一実施形態にかかるアプリケーションソフトウェアは、典型的には、横スクロール型のアクションゲームという形態で実施されるが、本発明は必ずしもこれに制限されることはなく、スクロールやアクションを前提としないゲーム等としても実施可能である。
図6のステップS601において、ゲーム等のアプリケーションが開始(起動)されると、ステップS602に進み、一例として、情報処理装置の画面上にキャラクタや障害物等の配置を行う(その様子の具体例は、図7を参照して後述する)。
次に、ステップS603において、タッチパネルへの直接操作を待つ(同ステップにおいて、Noとなるループ)。この処理は、典型的には、タッチパネルに対するユーザの指等の検知と、検知があった場合の位置、及び必要に応じてその位置(近辺)にキャラクタが描画されているかどうかの判断等を含むイベントドリブン型の検知処理が実行される。
なお、本発明は、全てのアクションや動作について、必ずしも、画面に表示された「キャラクタ」そのものに対する直接操作のみを検出することには限定されない。もちろん、キャラクタに直接触る操作に基づきキャラクタのアクションや動作をさせると、より直感性が増して良好なものとなる。しかしながら、本発明はこれに限定されるものではなく、必要に応じて、例えば、攻撃アクションや後述するジャンプ動作等については、キャラクタそのものではなく画面上のどこをタップしても発動させるように制御することも可能である。
なお、本発明は、全てのアクションや動作について、必ずしも、画面に表示された「キャラクタ」そのものに対する直接操作のみを検出することには限定されない。もちろん、キャラクタに直接触る操作に基づきキャラクタのアクションや動作をさせると、より直感性が増して良好なものとなる。しかしながら、本発明はこれに限定されるものではなく、必要に応じて、例えば、攻撃アクションや後述するジャンプ動作等については、キャラクタそのものではなく画面上のどこをタップしても発動させるように制御することも可能である。
ここで、キャラクタへの直接操作があった(ステップS603において、Yes)場合は、ステップS604へ進み、画面上におけるその位置及び時刻を始点(X0,Y0,T0)として保存すると共に、始点から終点までの速度計測及び/又は距離計測を開始する。
なお、速度計測は、始点が検知された位置及び時刻と終点の位置及び時刻とから、単位時間当たりの速度を水平成分と垂直成分とに分けて都度算出される。また、距離計測は、始点位置と終点位置とから現時点での始点からの距離が都度算出される。
ここでの「都度算出」とは、一例として、毎秒数回〜数十回程度の頻度であり、図6のフローチャートでは、例えば、(1)ステップS603から進み、ステップS609において「No」となってステップS603へ復帰するループ、(B)ステップS603から進み、ステップS612において「No」となってステップS603へ復帰するループ、(C)ステップS603から進み、ステップS605、ステップ615、ステップS617、ステップS619においてそれぞれ「No」と判断され、更にステップS621からステップS603へ復帰するループが、上述の頻度で実行される。
ここでの「都度算出」とは、一例として、毎秒数回〜数十回程度の頻度であり、図6のフローチャートでは、例えば、(1)ステップS603から進み、ステップS609において「No」となってステップS603へ復帰するループ、(B)ステップS603から進み、ステップS612において「No」となってステップS603へ復帰するループ、(C)ステップS603から進み、ステップS605、ステップ615、ステップS617、ステップS619においてそれぞれ「No」と判断され、更にステップS621からステップS603へ復帰するループが、上述の頻度で実行される。
つまり、上述の頻度でステップS606のアクション判定(後述)やステップS614の動作判定(後述)が行われることとなり、ユーザの直接操作に基づく速度計測や距離計測により、所定のアクションや動作を行うものと判断された場合には、それぞれ決められた後述のアクションや動作が行われる。
(アクション系処理)
そして、ステップS605では、ユーザの指等がタッチパネルから離れたか(非接触となったか)が判断される。Yesの場合には、ステップS606へ進み、これまでに計測された距離計測や連続接触時間等に基づいてアクション判定が行われる。
そして、ステップS605では、ユーザの指等がタッチパネルから離れたか(非接触となったか)が判断される。Yesの場合には、ステップS606へ進み、これまでに計測された距離計測や連続接触時間等に基づいてアクション判定が行われる。
ステップS606でアクション判定が行われると、判定結果に応じてキャラクタのアクションの振り分けが行われる。つまり、まずは一例として、ステップS607に進み、直前の直接操作が「タップ」と判断された(Yes)場合には、ステップS608へ進み、キャラクタによる攻撃動が実行される。
一方で、ステップS607において直前の直接操作が「タップ」ではない(No)と判断された場合には、ステップS609へ進み、直前の直接操作が「フリック」であったかどうかが判断される。ステップS609において、直前の直接操作が「フリック」と判断された(Yes)場合には、さらに、ステップS610へ進み、フリックの向きが横向きであったかどうかが判断され、横向き(ステップS610において、Yes)と判断された場合には、ステップS611へ進み、キャラクタの緊急回避動作が実行される。
ステップS610において、フリックの向きが横向きでない(No)と判断された場合には、さらに、ステップS612へ進み、フリックの向きが下向きであったかどうかが判断され、下向き(ステップS612において、Yes)と判断された場合には、ステップS613へ進み、足場すり抜け動作が実行される。
(動作系処理)
また、ステップS605において、接触状態が維持される(No)場合には、ステップS614へ進み、これまでに計測された速度計測や距離計測等に基づいて動作判定が行われる。
また、ステップS605において、接触状態が維持される(No)場合には、ステップS614へ進み、これまでに計測された速度計測や距離計測等に基づいて動作判定が行われる。
ステップS614で動作判定が行われると、判定結果に応じてキャラクタの動作の振り分けが行われる。つまり、まずは一例として、ステップS615へ進み、現時点での直接操作が「歩き」と判断された(Yes)場合には、ステップS616へ進み、キャラクタは歩行動作となる(例えば、画面右方向への歩行の場合には、キャラクタの歩行と共に背景画面は左へスクロール処理される)。
一方で、ステップS615において現時点での直接操作が「歩き」ではない(No)と判断された場合には、ステップS617へ進み、現時点での直接操作が「走り」であるかどうかが判断される。ステップS617において、現時点での直接操作が「走り」と判断された(Yes)場合には、ステップS618へ進み、キャラクタは歩行よりも速度の速い走行動作となる(例えば、画面右方向への走行の場合には、キャラクタの走行と共に背景画面は左へスクロール処理される。この場合のスクロール速度は、キャラクタの歩行時のスクロール速度よりも速い)。
ステップS617において、現時点での直接操作が「走り」ではないと判断された(No)場合には、さらに、ステップS619へ進み、直接操作が「ジャンプ」であるかどうかが判断される。ステップS619において、現時点での直接操作が「ジャンプ」と判断された(Yes)場合には、ステップS620へ進み、キャラクタはジャンプ動作となる。
そして、ステップS621へ到達した処理は、ステップS603へ復帰する。
(アクション/動作の判定基準例)
次に、上述したアクションや動作の判定基準例を説明する。いずれも、ユーザの指等のタッチパネルに対する直接操作を検知して、キャラクタのそれぞれのアクションコマンドや動作コマンドに割り当てるものであるが、直接操作を検知するものであるだけに、できる限り、直接操作とアクション/動作のイメージが合致するようなコマンド割り当てが好ましい。
次に、上述したアクションや動作の判定基準例を説明する。いずれも、ユーザの指等のタッチパネルに対する直接操作を検知して、キャラクタのそれぞれのアクションコマンドや動作コマンドに割り当てるものであるが、直接操作を検知するものであるだけに、できる限り、直接操作とアクション/動作のイメージが合致するようなコマンド割り当てが好ましい。
1.攻撃コマンド
ユーザの指等による、タッチパネル(画面)上でのタップ操作が検出されること。必ずしも、キャラクタないしキャラクタ付近の位置をタップする必要はない。
ユーザの指等による、タッチパネル(画面)上でのタップ操作が検出されること。必ずしも、キャラクタないしキャラクタ付近の位置をタップする必要はない。
2.緊急回避コマンド
ユーザの指等による、タッチパネル(画面)上での横向きのフリックが検出されること。必ずしも、キャラクタないしキャラクタ付近の位置でのフリックである必要はない。なお、緊急回避動作を行う方向は、検出されたフリックの方向と一致させるものとする。
ユーザの指等による、タッチパネル(画面)上での横向きのフリックが検出されること。必ずしも、キャラクタないしキャラクタ付近の位置でのフリックである必要はない。なお、緊急回避動作を行う方向は、検出されたフリックの方向と一致させるものとする。
3.足場すり抜けコマンド
ユーザの指等による、タッチパネル(画面)上での下向きのフリックが検出されること。必ずしも、キャラクタないしキャラクタ付近の位置でのフリックである必要はない。
ユーザの指等による、タッチパネル(画面)上での下向きのフリックが検出されること。必ずしも、キャラクタないしキャラクタ付近の位置でのフリックである必要はない。
4.歩行動作コマンド
ユーザの指等による、タッチパネル(画面)上での接触状態が継続している場合であって、始点と終点の距離がA以上B未満の範囲内にあること(一例として、A=1cm、B=2.5cmなど。A及びBの物理的長さは任意に設定可能である)。必ずしも、キャラクタないしキャラクタ付近の位置での直接操作である必要はない。
ユーザの指等による、タッチパネル(画面)上での接触状態が継続している場合であって、始点と終点の距離がA以上B未満の範囲内にあること(一例として、A=1cm、B=2.5cmなど。A及びBの物理的長さは任意に設定可能である)。必ずしも、キャラクタないしキャラクタ付近の位置での直接操作である必要はない。
5.走行動作コマンド
ユーザの指等による、タッチパネル(画面)上での接触状態が継続している場合であって、始点と終点の距離がB以上であること(一例として、B=2.0cmや2.5cmなど。Bの物理的長さは任意に設定可能である)。必ずしも、キャラクタないしキャラクタ付近の位置での直接操作である必要はない。
ユーザの指等による、タッチパネル(画面)上での接触状態が継続している場合であって、始点と終点の距離がB以上であること(一例として、B=2.0cmや2.5cmなど。Bの物理的長さは任意に設定可能である)。必ずしも、キャラクタないしキャラクタ付近の位置での直接操作である必要はない。
6.ジャンプ動作コマンド
ユーザの指等による、タッチパネル(画面)上での接触状態が継続している場合であって、指等の接触点の移動速度の鉛直方向成分が一定の値以上に達したこと。必ずしも、キャラクタないしキャラクタ付近の位置での直接操作である必要はない。
なお、ジャンプ動作コマンドは、接触点の移動速度の鉛直方向成分を判断しているという点において、一定以上の距離及び一定未満の接触時間を判断するフリックとは異なるものである。
ユーザの指等による、タッチパネル(画面)上での接触状態が継続している場合であって、指等の接触点の移動速度の鉛直方向成分が一定の値以上に達したこと。必ずしも、キャラクタないしキャラクタ付近の位置での直接操作である必要はない。
なお、ジャンプ動作コマンドは、接触点の移動速度の鉛直方向成分を判断しているという点において、一定以上の距離及び一定未満の接触時間を判断するフリックとは異なるものである。
図7に、本発明の一実施形態にかかる情報処理装置における画面構成例を示す。同図では、ステップS602において情報処理装置の画面上にキャラクタや障害物等が配置されてから、そのキャラクタを直接操作により移動制御している様子を示している。
図7において、画面152には、地面71と、障害物72と、その上を歩行ないし走行可能であって、必要に応じて(すり抜けコマンドが発動されれば)下方向へすり抜け可能な足場73とが配置されている。また、表示部74は、キャラクタ75の残りのスタミナや獲得したポイントやアイテム等のステータス情報を表示可能な表示エリアである。
こうした環境において、キャラクタ75を直接操作して移動制御する。図7においては、キャラクタ75の動作態様のうちのいくつかを75a〜75cとして例示している。
すなわち、キャラクタ75aは、歩行動作コマンドを受けて歩行中であり、キャラクタ75bは、その後、障害物72を乗り越えるためにジャンプ動作中である。
また、キャラクタ75cは、障害物72上に乗り上げたあと、しばらく歩行ないし走行によって足場73を画面右方向へ移動中であったが、例えば前方(画面右側)から敵が襲ってきたなどした(不図示)ために、足場すり抜けコマンドによって足場73を下方へすり抜けているところである。
また、キャラクタ75cは、障害物72上に乗り上げたあと、しばらく歩行ないし走行によって足場73を画面右方向へ移動中であったが、例えば前方(画面右側)から敵が襲ってきたなどした(不図示)ために、足場すり抜けコマンドによって足場73を下方へすり抜けているところである。
もちろん、図7には示されていないが、キャラクタ75に対して攻撃コマンドを発動したり、他のコマンド発動により走行動作や緊急回避動作をさせたりすることもできる(その処理フローや動作例は上述したとおりである)。
(実質的なリアルタイム・マルチプレイ)
また、本発明の一実施形態にかかる情報処理装置、及び情報処理システム等では、実質的なリアルタイム・マルチプレイが実現されている。つまり、図7を参照してこれまで説明したキャラクタ75の動きは、1ユーザの操作指示による1キャラクタの動作処理例を説明したが、本発明の一実施形態にかかる情報処理装置、及び情報処理システム等では、これと同様の原理で、他のユーザの指示操作による他のキャラクタの動作を同時に(同期させて)画面152上に表示させることができる。個々のユーザ端末における当該ユーザが操作するキャラクタの動作例は、図7を参照して説明したとおりであるが、他のユーザキャラクタを同時に(同期させて)自己が操作するキャラクタと共に表示させるには、一定間隔(一例として、10〜15fps、本願の出願時点で、60fpsの時間レートによる実施も可能ではある)で、他のキャラクタの位置情報と速度情報とを受信して自己が操作するキャラクタと共に表示させるという手法を採用することができる(自己が操作するキャラクタの位置及び速度情報も、逐次情報処理サーバへアップロードされ、同じゲームを同時に遊戯している他のユーザ端末へ、一定の時間間隔で送信されることとなる)。
また、本発明の一実施形態にかかる情報処理装置、及び情報処理システム等では、実質的なリアルタイム・マルチプレイが実現されている。つまり、図7を参照してこれまで説明したキャラクタ75の動きは、1ユーザの操作指示による1キャラクタの動作処理例を説明したが、本発明の一実施形態にかかる情報処理装置、及び情報処理システム等では、これと同様の原理で、他のユーザの指示操作による他のキャラクタの動作を同時に(同期させて)画面152上に表示させることができる。個々のユーザ端末における当該ユーザが操作するキャラクタの動作例は、図7を参照して説明したとおりであるが、他のユーザキャラクタを同時に(同期させて)自己が操作するキャラクタと共に表示させるには、一定間隔(一例として、10〜15fps、本願の出願時点で、60fpsの時間レートによる実施も可能ではある)で、他のキャラクタの位置情報と速度情報とを受信して自己が操作するキャラクタと共に表示させるという手法を採用することができる(自己が操作するキャラクタの位置及び速度情報も、逐次情報処理サーバへアップロードされ、同じゲームを同時に遊戯している他のユーザ端末へ、一定の時間間隔で送信されることとなる)。
このようにして、同じゲーム(の同じ画面)を複数のユーザで共有しながら、互いに動きを伴ったプレーが可能になる。
図7では、例示的に、キャラクタ75を操作するユーザ(タブレット端末15を操作するユーザである)とは異なる複数のユーザがネットワークを介して、同時にこのゲームをプレーしており、キャラクタ76(同図において、左向きに歩行中である)、及びキャラクタ77(同図において、右から左へ大きくジャンプ中である)がそれぞれ他のユーザの操作指示にしたがって、実質的にリアルタイムに移動ないし動作を行っている。
(本発明の特徴)
そして、本発明の一実施形態にかかる情報処理装置、及び情報処理システム等では、自身が操作するキャラクタのみならず、ネットワークを介して同時にプレーしている他のユーザが操作する1以上のキャラクタの動作をも滑らかに表示処理するために、後述する改善された補間処理を行うことが大きな特徴となっている。
そして、本発明の一実施形態にかかる情報処理装置、及び情報処理システム等では、自身が操作するキャラクタのみならず、ネットワークを介して同時にプレーしている他のユーザが操作する1以上のキャラクタの動作をも滑らかに表示処理するために、後述する改善された補間処理を行うことが大きな特徴となっている。
次に、図8を参照して、本発明の一実施形態にかかる情報処理装置ないし情報処理プログラムにおけるキャラクタの具体的な表示処理例(ここには、独自の多項式補間処理が含まれる)を説明する。図8に示される処理フローは、典型的には情報処理装置で実施されるが、少なくともその一部が情報処理サーバで実施されても良い。
また、図8に示される処理フローが実行されるタイミングは、典型的には、ゲーム開始後、任意のタイミングで、一定間隔ごとに実施される(この点で、図6に示されるフローの特定の処理部分と、必ず同期がとれていなければならないというものではない)。
また、図8に示される処理フローが実行されるタイミングは、典型的には、ゲーム開始後、任意のタイミングで、一定間隔ごとに実施される(この点で、図6に示されるフローの特定の処理部分と、必ず同期がとれていなければならないというものではない)。
一方で、自身が操作しているキャラクタの位置及び速度情報については、例えば、図6に示されるフローのステップS616(歩き動作)、ステップS618(走り動作)、ステップS620(ジャンプ動作)において、適宜情報処理サーバへ送信されることが望ましい(但し、この送信タイミングについても、必ずしも限定的なものではなく、キャラクタの移動の有無に関わらず、常に一定の間隔で送信されるように構成しても良い)。
図8のステップS801において処理を開始すると、ステップS801に進み、情報処理サーバから他ユーザのキャラクタの関する座標同期イベントが到来したかどうかが判断される。ここで、他のユーザが操作するキャラクタ複数あれば、その数だけ座標同期イベントがサーバから情報処理装置へ送信されることとなる。
ここで、座標同期イベントのデータ構造は、基本的にある時刻tにおける対象キャラクタの位置座標及速度ベクトルが含まれる。そのデータ構造例は下表のとおりである。
また、かかる座標同期イベントのデータ構造の他の形態として、時刻tn及びtn+1の間の位置及び速度の補間を考え、イベントは一定間隔で送られてくるものという前提で処理すれば、時刻情報を含ませる必要はない。その場合のデータ構造例は下表のとおりである。
※位置及び速度ベクトルは、n番目(時刻tnに相当)の到来データとして処理される(到来するデータの順番さえ管理しておけば、時間間隔は固定なので、例えばゲーム開始後の時刻などは自動的に算出可能である)。
そして、ステップS802において、「Yes」の場合は、ステップS803へ進み、座標同期イベントを受信して時刻tnにおけるキャラクタの位置(xn,yn)及び速度(vxn,vyn)を受信し、ステップS804へ進み、独自の多項式補間処理(後述)を施して表示させるべきキャラクタの新たな位置及び速度を算出して、画面上に表示させる。
一方で、ステップS802において、「No」の場合は、対象となるキャラクタは移動ないし動作していないので、そのまま処理を抜ける(ステップS805)。再び、対象となるキャラクタに移動ないし動作が生じたときには、情報処理サーバから座標同期イベントが到来してくることになる。
さて、ステップS804において実施される独自の多項式処理について、以下に詳述する。
まず、n回目に座標同期イベントを受信した時刻をtnとし、そのイベントの受信において取得された位置情報を(xn,yn)、速度を(vxn,vyn)とする。
次に、時刻tn及びtn+1の間の位置及び速度の補間を考える。その場合の補間関数は、まず、x座標(及び速度のx成分)について着目し、位置x(t)が時刻tの三次元多項式で表現されるものと仮定して次式を得る。
但し、αiは多項式の係数である。
但し、αiは多項式の係数である。
次に、多項式の条件として、次の条件を採用する。
上記条件を連立一次方程式として表現し直すと、次式を得る。
上記連立一次方程式によって、αiを求めれば、x座標(及び速度のx成分)に関する多項式補間を得ることができる。
同様に導き出される下記連立一次方式によって、βiを求めれば、y座標(及び速度のy成分)に関する多項式補間を得ることができる。
但し、βiは多項式の係数である。
但し、βiは多項式の係数である。
(補足)
なお、上記の説明では、発明の理解のために、2次元座標(x,y)が移動する場合の補間(つまり、2次元平面における補間)について説明したが、もちろん本発明はこれに制限されるものではない。上記の説明でもパラメータごとに補間処理ができることからも明らかなように、3次元座標(x,y,z)で表わされる点が3次元空間を移動する際の補間処理にも容易に適用できることは当業者であれば容易に理解できるであろう。
なお、上記の説明では、発明の理解のために、2次元座標(x,y)が移動する場合の補間(つまり、2次元平面における補間)について説明したが、もちろん本発明はこれに制限されるものではない。上記の説明でもパラメータごとに補間処理ができることからも明らかなように、3次元座標(x,y,z)で表わされる点が3次元空間を移動する際の補間処理にも容易に適用できることは当業者であれば容易に理解できるであろう。
さらに、デカルト座標系(直行座標系)のみならず、極座標系や球面座標系における位置移動に対しても、若干の要素(一例として、微分要素)が加味される必要はあるが、上記の考え方を適用することができる。
以下の説明においても、同様である。
(本発明のさらなる改善点)
ここまで説明した補間処理においては、tn及びtn+1はイベント毎に異なる値となるため、イベント毎に異なる係数行列をもつ連立一次方程式を解く計算コストがかなり大きなものとなる。
そこで、本発明では、以下に説明する無次元化を行うことにより、かかる計算コストを軽減することができる。
ここまで説明した補間処理においては、tn及びtn+1はイベント毎に異なる値となるため、イベント毎に異なる係数行列をもつ連立一次方程式を解く計算コストがかなり大きなものとなる。
そこで、本発明では、以下に説明する無次元化を行うことにより、かかる計算コストを軽減することができる。
まず、無次元化時刻を導入するが、ここでも、x座標(及び速度のx成分)について着目し、つまり、
のとき、
のとき、
のとき、
となるような一意に定まる一次式を導入して、無次元化に関する次式を得る。
但し、i=0,1,2,3として、
は多項式の係数である。
この場合、上記の多項式に適用すべき条件として、次のものを採用する。
すると、上式に対応する連立一次方程式は、次式のとおりとなる。
上式によれば、係数行列がtn及びtn+1に依存しないことが分かるので、各イベント処理時に次の行列演算式を実行すれば良いこととなる。
同様にして、βiを求めれば、y座標(及び速度のy成分)に関する次の行列演算式を得ることができる。
但し、i=0,1,2,3として、
は多項式の係数である。
但し、i=0,1,2,3として、
は多項式の係数である。
上式による行列演算により、従来の多項式補間処理における計算コストを大きく低減することができる。
以上、具体例に基づき、情報処理装置、情報処理システム、及びプログラム等の実施形態を説明したが、本発明の実施形態としては、システム又は装置を実施するための方法又はプログラムの他、プログラムが記録された記憶媒体(一例として、光ディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、磁気テープ、ハードディスク、メモリカード)等としての実施態様をとることも可能である。
また、プログラムの実装形態としては、コンパイラによってコンパイルされるオブジェクトコード、インタプリタにより実行されるプログラムコード等のアプリケーションプログラムに限定されることはなく、オペレーティングシステムに組み込まれるプログラムモジュール等の形態であっても良い。
さらに、プログラムは、必ずしも制御基板上のCPUにおいてのみ、全ての処理が実施される必要はなく、必要に応じて基板に付加された拡張ボードや拡張ユニットに実装された別の処理ユニット(DSP等)によってその一部又は全部が実施される構成とすることもできる。
本明細書(特許請求の範囲、要約、及び図面を含む)に記載された構成要件の全て及び/又は開示された全ての方法又は処理の全てのステップについては、これらの特徴が相互に排他的である組合せを除き、任意の組合せで組み合わせることができる。
また、本明細書(特許請求の範囲、要約、及び図面を含む)に記載された特徴の各々は、明示的に否定されない限り、同一の目的、同等の目的、または類似する目的のために働く代替の特徴に置換することができる。したがって、明示的に否定されない限り、開示された特徴の各々は、包括的な一連の同一又は均等となる特徴の一例にすぎない。
さらに、本発明は、上述した実施形態のいずれの具体的構成にも制限されるものではない。本発明は、本明細書(特許請求の範囲、要約、及び図面を含む)に記載された全ての新規な特徴又はそれらの組合せ、あるいは記載された全ての新規な方法又は処理のステップ、又はそれらの組合せに拡張することができる。
15 タブレット端末(情報処理装置の一形態)
30 情報処理システム
31 情報処理サーバ
32、33 PC(情報処理装置の一形態)
34 携帯電話(情報処理装置の一形態)
39 公衆回線(専用線、インターネット等)
30 情報処理システム
31 情報処理サーバ
32、33 PC(情報処理装置の一形態)
34 携帯電話(情報処理装置の一形態)
39 公衆回線(専用線、インターネット等)
Claims (6)
- 情報処理サーバと、前記情報処理サーバにネットワークを介して接続可能に構成された複数の情報処理装置とを有する情報処理システムであって、
前記情報処理装置は、
ディスプレイを備え、ユーザ操作を検知することによって画面上に表示させたキャラクタを前記ディスプレイ上で移動制御させるとともに、前記情報処理サーバへ前記キャラクタの位置及び速度に関する情報を送信し、
前記情報処理サーバを介して送信される前記情報処理装置とは異なる他の情報処理装置のディスプレイ上で移動制御される、前記キャラクタとは別の他のキャラクタの位置及び速度に関する情報を受信するものであって、
前記受信した前記他のキャラクタの位置及び速度に関する情報に基づき、時刻tn及びtn+1の間の位置及び速度の多項式補間処理を行うものとして、次式に基づいて前記キャラクタのx座標及び速度のx成分(vxとする)に関する多項式補間を行い、
さらに、次式に基づいて前記キャラクタのy座標及び速度のy成分(vyとする)に関する多項式補間を行うことを特徴とする情報処理システム。
但し、αi、βi(i=0,1,2,3)は、多項式の係数である。 - 情報処理サーバと、前記情報処理サーバにネットワークを介して接続可能に構成された複数の情報処理装置とを有する情報処理システムであって、
前記情報処理装置は、
ディスプレイを備え、ユーザ操作を検知することによって画面上に表示させたキャラクタを前記ディスプレイ上で移動制御させるとともに、前記情報処理サーバへ前記キャラクタの位置及び速度に関する情報を送信し、
前記情報処理サーバを介して送信される前記情報処理装置とは異なる他の情報処理装置のディスプレイ上で移動制御される、前記キャラクタとは別の他のキャラクタの位置及び速度に関する情報を受信するものであって、
前記受信した前記他のキャラクタの位置及び速度に関する情報に基づき、時刻tn及びtn+1の間の位置及び速度の多項式補間処理を行うものとして、次式に基づいて前記キャラクタのx座標及び速度のx成分(vxとする)に関する多項式補間を行い、
さらに、次式に基づいて前記キャラクタのy座標及び速度のy成分(vyとする)に関する多項式補間を行うことを特徴とする情報処理システム。
但し、
及び
(i=0,1,2,3)は、多項式の係数である。 - 情報処理サーバと、前記情報処理サーバにネットワークを介して接続可能に構成されディスプレイを備える複数の情報処理装置とを有する情報処理システム上で実行されるコンピュータプログラムであって、前記システム上で実行されたとき、
前記情報処理装置に、
ユーザ操作を検知することによって画面上に表示させたキャラクタを前記ディスプレイ上で移動制御させる処理ステップと、
前記情報処理サーバへ前記キャラクタの位置及び速度に関する情報を送信させる処理ステップと、
前記情報処理サーバを介して送信される前記情報処理装置とは異なる他の情報処理装置のディスプレイ上で移動制御される、前記キャラクタとは別の他のキャラクタの位置及び速度に関する情報を受信させる処理ステップと、
前記受信した前記他のキャラクタの位置及び速度に関する情報に基づき、時刻tn及びtn+1の間の位置及び速度の多項式補間処理を行うものとして、次式に基づいて前記キャラクタのx座標及び速度のx成分(vxとする)に関する多項式補間を行わせる処理ステップと、
さらに、次式に基づいて前記キャラクタのy座標及び速度のy成分(vyとする)に関する多項式補間を行わせる処理ステップとを実行することを特徴とするプログラム。
但し、αi、βi(i=0,1,2,3)は、多項式の係数である。 - 情報処理サーバと、前記情報処理サーバにネットワークを介して接続可能に構成されディスプレイを備える複数の情報処理装置とを有する情報処理システムで実行されるコンピュータプログラムであって、前記システム上で実行されたとき、
前記情報処理装置に、
ユーザ操作を検知することによって画面上に表示させたキャラクタを前記ディスプレイ上で移動制御させる処理ステップと、
前記情報処理サーバへ前記キャラクタの位置及び速度に関する情報を送信させる処理ステップと、
前記情報処理サーバを介して送信される前記情報処理装置とは異なる他の情報処理装置のディスプレイ上で移動制御される、前記キャラクタとは別の他のキャラクタの位置及び速度に関する情報を受信させる処理ステップと、
前記受信した前記他のキャラクタの位置及び速度に関する情報に基づき、時刻tn及びtn+1の間の位置及び速度の多項式補間処理を行うものとして、次式に基づいて前記キャラクタのx座標及び速度のx成分(vxとする)に関する多項式補間を行わせる処理ステップと、
さらに、次式に基づいて前記キャラクタのy座標及び速度のy成分(vyとする)に関する多項式補間を行わせる処理ステップとを実行することを特徴とするプログラム。
但し、
及び
(i=0,1,2,3)は、多項式の係数である。 - 情報処理サーバと、前記情報処理サーバにネットワークを介して接続可能に構成された複数の情報処理装置とを有する情報処理システムにおける情報処理装置であって、
前記情報処理装置は、
ディスプレイを備え、ユーザ操作を検知することによって画面上に表示させたキャラクタを前記ディスプレイ上で移動制御させるとともに、前記情報処理サーバへ前記キャラクタの位置及び速度に関する情報を送信し、
前記情報処理サーバを介して送信される前記情報処理装置とは異なる他の情報処理装置のディスプレイ上で移動制御される、前記キャラクタとは別の他のキャラクタの位置及び速度に関する情報を受信するものであって、
前記受信した前記他のキャラクタの位置及び速度に関する情報に基づき、時刻tn及びtn+1の間の位置及び速度の多項式補間処理を行うものとして、次式に基づいて前記キャラクタのx座標及び速度のx成分(vxとする)に関する多項式補間を行い、
さらに、次式に基づいて前記キャラクタのy座標及び速度のy成分(vyとする)に関する多項式補間を行うことを特徴とする情報処理装置。
但し、αi、βi(i=0,1,2,3)は、多項式の係数である。 - 情報処理サーバと、前記情報処理サーバにネットワークを介して接続可能に構成された複数の情報処理装置とを有する情報処理システムにおける情報処理装置であって、
前記情報処理装置は、
ディスプレイを備え、ユーザ操作を検知することによって画面上に表示させたキャラクタを前記ディスプレイ上で移動制御させるとともに、前記情報処理サーバへ前記キャラクタの位置及び速度に関する情報を送信し、
前記情報処理サーバを介して送信される前記情報処理装置とは異なる他の情報処理装置のディスプレイ上で移動制御される、前記キャラクタとは別の他のキャラクタの位置及び速度に関する情報を受信するものであって、
前記受信した前記他のキャラクタの位置及び速度に関する情報に基づき、時刻tn及びtn+1の間の位置及び速度の多項式補間処理を行うものとして、次式に基づいて前記キャラクタのx座標及び速度のx成分(vxとする)に関する多項式補間を行い、
さらに、次式に基づいて前記キャラクタのy座標及び速度のy成分(vyとする)に関する多項式補間を行うことを特徴とする情報処理装置。
但し、
及び
(i=0,1,2,3)は、多項式の係数である。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015157247A JP2017037404A (ja) | 2015-08-07 | 2015-08-07 | 情報処理装置、情報処理システム、及び情報処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015157247A JP2017037404A (ja) | 2015-08-07 | 2015-08-07 | 情報処理装置、情報処理システム、及び情報処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017037404A true JP2017037404A (ja) | 2017-02-16 |
Family
ID=58047780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015157247A Pending JP2017037404A (ja) | 2015-08-07 | 2015-08-07 | 情報処理装置、情報処理システム、及び情報処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017037404A (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04127279A (ja) * | 1990-06-11 | 1992-04-28 | Hitachi Ltd | 物体の運動経路生成装置および方法 |
JP2003006127A (ja) * | 2001-06-18 | 2003-01-10 | Cyberstep Inc | 分散処理システム、分散処理方法、およびその方法を利用可能なクライアント端末 |
-
2015
- 2015-08-07 JP JP2015157247A patent/JP2017037404A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04127279A (ja) * | 1990-06-11 | 1992-04-28 | Hitachi Ltd | 物体の運動経路生成装置および方法 |
JP2003006127A (ja) * | 2001-06-18 | 2003-01-10 | Cyberstep Inc | 分散処理システム、分散処理方法、およびその方法を利用可能なクライアント端末 |
Non-Patent Citations (1)
Title |
---|
岡田 紀雄: "V850マイコン基板を使ってロボットを動かす 転ばない二足歩行ロボットの製作(後編)", INTERFACE 第34巻 第5号, vol. May 2008, JPN6019007009, 1 May 2008 (2008-05-01), JP, pages 134 - 138, ISSN: 0004109650 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9604133B2 (en) | Touch-controlled game character motion providing dynamically-positioned virtual control pad | |
US9652063B2 (en) | Input direction determination system, terminal, server, network system, information storage medium, and input direction determination method | |
US8545325B2 (en) | Communication game system | |
JP7339318B2 (ja) | ゲーム内位置ベースのゲームプレイコンパニオンアプリケーション | |
JP6767515B2 (ja) | 位置に基づくゲームプレイコンパニオンアプリケーションへユーザの注目を向ける方法及びシステム | |
JP2017035215A (ja) | 情報処理装置、情報処理システム、及びキャラクタ移動制御プログラム | |
JP2016220846A (ja) | メッセージ送信機能を備えたゲームプログラム、メッセージ送信方法及びメッセージ送信機能付きコンピュータ端末 | |
US11759702B2 (en) | Game system, processing method, and information storage medium | |
JP2016220847A (ja) | メッセージ送信機能を備えたゲームプログラム、メッセージ送信方法及びメッセージ送信機能付きコンピュータ端末 | |
JP6523378B2 (ja) | ゲームプログラム、ゲームプログラムを実行する方法、および情報処理装置 | |
KR20180010240A (ko) | 유저 입력의 조작성을 향상시키는 프로그램, 게임 시스템, 전자 장치, 서버 및 게임 제어 방법 | |
JP2014085816A (ja) | プログラム、情報処理装置、情報処理方法および情報処理システム | |
JP4514198B2 (ja) | ゲームプログラムおよびゲーム装置 | |
JP2017035214A (ja) | 情報処理装置、情報処理システム、及びキャラクタ移動制御プログラム | |
KR102308927B1 (ko) | 화면 출력 방법 및 이를 수행하기 위한 디스플레이 장치 | |
JP2017037404A (ja) | 情報処理装置、情報処理システム、及び情報処理プログラム | |
JP2015008987A (ja) | プログラムおよびゲーム装置 | |
JP2015123109A (ja) | プログラム及びサーバ | |
JP7220616B2 (ja) | ゲームプログラム、ゲームシステム、ゲーム装置およびゲーム制御方法 | |
JP2014117573A (ja) | コンピュータプログラム、及びコンピュータシステム | |
JP2021053466A (ja) | ゲームプログラム、ゲームプログラムを実行する方法、および情報処理装置 | |
JP4729115B2 (ja) | ゲームプログラム、ゲーム装置および方法 | |
KR20200080818A (ko) | 화면 출력 방법 및 이를 수행하기 위한 디스플레이 장치 | |
JP2015231437A (ja) | プログラム及びゲームシステム | |
KR20120076532A (ko) | 스마트폰 기반의 체감형 퍼즐 게임 시스템 및 그 실행 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180207 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190305 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20190910 |