【文献】
3DS「タッチ!ダブルペンスポーツ」PV(女子マネージャー篇),[online],YouTube LLC,2011年 3月31日,YouTube、[2016年8月26日検索]、特に1分11秒〜1分16秒頃を参照,URL,https://www.youtube.com/watch?v=yJh6TVE-LnA
【文献】
志賀康紀,バンダイナムコ、3DS「タッチ!ダブルペンスポーツ」 両手を使って”タッチ”する新感覚スポーツゲーム,[online],株式会社インプレス,2011年 3月31日,GAME Watch、[2016年8月26日検索]、特に【ボクシング】の項を参照,URL,http://game.watch.impress.co.jp/docs/news/436103.html
【文献】
タッチ!ダブルペンスポーツ Touch!DoublePenSports,週刊ファミ通,株式会社エンターブレイン,2011年 5月19日,第26巻第23号,P.176-179,特にP.177下部の「ボクシング」の項を参照
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0009】
[本発明の実施形態の説明]
最初に、本発明の実施形態の内容を列記して説明する。本発明の一実施形態のゲームプログラムは、以下のような構成を備える。
【0010】
(項目1) ゲームプログラムであって、第1および第2領域を少なくとも設けたタッチパネルを備えるコンピュータに、前記第1および第2領域の任意の位置において、第1および第2スライド操作をそれぞれ独立して受け付けるステップ(S320,S330)と、
前記第1および第2スライド操作に対応する第1および第2特徴量をそれぞれ決定するステップ(S340)と、
前記第1および第2特徴量に基づいて、ゲーム空間のキャラクタを動作させるステップであって、前記第1および第2スライド操作には、動作対象の前記キャラクタが有する第1および第2対象部の操作がそれぞれ関連づけられる、ステップ(S360)と
を含む方法を実行させる、ゲームプログラム。
本項目のゲームプログラムによれば、任意の位置でタッチ操作を受け付け可能とし、また、簡単な操作感を維持しつつキャラクタ動作制御を可能にし、更に、ユーザによる独立したタッチ操作を複数受け付けることにより、より複雑なキャラクタ動作制御を可能にする。
【0011】
(項目2) 項目1記載のゲームプログラムにおいて、
前記第1特徴量が、前記第1スライド操作における第1開始点からの第1スライド方向および/または第1スライド距離を含み(S410)、
前記第2特徴量が、前記第2スライド操作における第2開始点からの第2スライド方向および/または第2スライド距離を含む(S410)、ゲームプログラム。
本項目のゲームプログラムによれば、タッチ操作が複雑なスライド操作であっても、簡単な操作感を維持しつつキャラクタ動作制御を可能にする。
【0012】
(項目3) 項目2記載のゲームプログラムにおいて、
前記第1および第2開始点からの各スライド距離が、前記第1および第2対象部の移動速度にそれぞれ関連づけられる(S430,S440)、ゲームプログラム。
【0013】
(項目4) 項目3記載のゲームプログラムにおいて、
前記第1および第2開始点からの各スライド距離が、所定の閾値を超えた場合に、前記第1および第2対象部の各移動速度がそれぞれ0以外の値に設定される(S430)、ゲームプログラム。
本項目のゲームプログラムによれば、スライド距離とスライド方向を常に連動させることもなく、より臨場感のある操作性をユーザに提供可能である。
【0014】
(項目5) 項目2から4のいずれか一項記載のゲームプログラムにおいて、
前記第1および第2開始点からの各スライド方向が、前記第1および第2対象部の移動方向のそれぞれに関連づけられる(S450)、ゲームプログラム。
【0015】
(項目6) 項目2から5のいずれか一項記載のゲームプログラムにおいて、前記方法が、更に、
前記第1および第2スライド操作に伴って、前記第1および第2特徴量に基づいて、前記第1および第2開始点から第1および第2スライド点まで伸びる弾性形状を有するオブジェクトの画像をそれぞれ生成して、前記タッチパネルに表示するステップ(S350)を含む、ゲームプログラム。
本項目のゲームプログラムによれば、ユーザにとって直観的に優れた操作性を提供可能な弾性オブジェクト画像を提供することができる。
【0016】
[発明の実施形態の詳細]
本発明の実施形態に係るゲームプログラムの具体例を、以下に図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
【0017】
図1に示される本実施形態のゲームシステム1は、複数のユーザにゲームを提供するものである。ゲームシステム1は、複数のユーザ端末100と、ゲームサーバ200と、を含む。各ユーザ端末100とゲームサーバ200は、ネットワーク2を介して接続されている。ゲームサーバ200は、ゲームに関する各種サービスを各ユーザ端末100に提供する。ネットワーク2は、インターネットや、図示しない無線基地局によって構築される各種移動通信システム(例えば、所謂3G、4G移動通信システム、LTE(Long Term Evolution))や、所定のアクセスポイントによりインターネットに接続可能な無線ネットワーク(例えば、WiFi(登録商標))を含んでいてもよい。
【0018】
ユーザ端末100はスマートフォンやフィーチャーフォン、PDA、タブレット型コンピュータ等の携帯型の端末装置であることが好ましい。ユーザ端末100は、通信バスにより互いに電気的に接続されたプロセッサ10と、メモリ11と、ストレージ12と、通信インターフェース(IF)13と、入出力IF14と、タッチパネル15と、を備える。
【0019】
ゲームサーバ200はワークステーションやパーソナルコンピュータのような汎用コンピュータであることが好ましい。ゲームサーバ200は、通信バスにより互いに電気的に接続されたプロセッサ20と、メモリ21と、ストレージ22と、通信インターフェース(IF)23と、入出力IF24と、を備える。
【0020】
プロセッサ10,20は、CPU(Central Processing Unit)やMPU(Micro processing unit)、GPU(Graphics Processing Unit)等を含んで構成され、ユーザ端末100およびゲームサーバ200全体の制御を行う。
【0021】
メモリ11,21は、ROM(Read Only Memory)やRAM(Random Access Memory)等の揮発性記憶装置で構成され得る主記憶装置を含んで構成される。ストレージ12,22は、フラッシュメモリやHDD(Hard Disk Drive)などの不揮発性記憶装置で構成され得る補助記憶装置を含んで構成される。メモリ11,21は、ストレージ12,22からロードされた各種プログラムやデータが一時的に記憶され、プロセッサ10,20に対して作業領域を提供する。ゲームサーバ200のストレージ22にはゲームプログラム等のゲームデータが格納され、ユーザ端末100のストレージ12には、ゲームサーバ200からダウンロードされるゲームプログラム等のゲームデータが格納される。当該ゲームプログラムは、メモリ11,21に展開され、プロセッサ10,20によって実行される。メモリ11,21には、プロセッサ10,20が当該ゲームプログラムに従って動作している間に生成した各種ゲームデータも一時的に格納される。
【0022】
通信IF13,23は、ユーザ端末100とゲームサーバ200の間で各種データを送受信するための通信制御機能を備える。通信制御機能には、例えば、無線LAN接続機能、有線または無線LANや携帯電話回線網を介したインターネット接続機能、近距離無線通信機能などが含まれる。本実施形態では、当該データは所定のゲームプログラムやユーザ情報、ゲーム情報といったゲームデータ、それらをユーザ端末100とゲームサーバ200の間に送受信させる指示や、ゲームを進行させるための指示を含む。
【0023】
ユーザ端末100の入出力IF14は、USB(Universal Serial Bus)等を介した各種データ入出力機能や、音声入出力機能を備える。
タッチパネル15は、タッチパッドのような入力部151と液晶ディスプレイのような表示部152とを組み合わせた電子部品である。入力部151はユーザの作用(主に、タッチ操作、スライド操作、スワイプ操作、及びタップ操作等の物理的接触操作)が入力された画面位置の情報を検知して外部へ情報信号として出力する機能を備える。タッチパネル15は、静電容量方式や抵抗膜方式等、いずれの方式を採用したものであってもよい。
【0024】
ゲームサーバ200の入出力IF24は、マウスやキーボード等の情報入力機器である入力部や、液晶ディスプレイ等の出力部を備えており、主にコンピュータの情報をモニタリングするために用いられる。
【0025】
図2は、ユーザ端末100のゲーム進行処理に関する主要な機能を示すブロック図である。ユーザ端末100は、プロセッサ10、メモリ11、ストレージ12、通信IF13、入出力IF14等の協働により、制御部110および記憶部120として機能し得る。制御部110は、記憶部120に格納されたゲームプログラムによって、作用受付部111、ゲーム処理部112、領域割当部113、判定部114、オブジェクト制御部115、キャラクタ制御部116、および画像生成部117として機能し得る。
【0026】
作用受付部111は、タッチパネル15の入力部151に対するユーザの作用を検知する。作用受付部111は、タッチパネル15や、その他の入出力IF14を介したコンソールによる操作指示等から、いかなる入力がなされたかを判別し、その結果をゲーム処理部112等の必要な要素に出力する。タッチパネル15に対する作用入力がなされた場合には、入力位置の座標情報や、作用の種類(タッチ操作やスライド操作など)を検知する。また、連続して検知されていた入力が途切れることを検知することで、タッチパネル15から接触入力が解除されたことを検知する。
【0027】
ゲーム処理部112は、ユーザ端末100全体の動作を制御し、各要素間におけるデータの送受信や、ゲームの実行に必要な演算処理を行う。例えば、ゲームプログラムの起動や終了を実施する。また、作用受付部111で検知された作用に基づいてゲームプログラムに従ったゲームを進行させ、その結果としてのゲーム画像を描画するよう、画像生成部117に指示する。また、通信IF13を介してゲームサーバ200に各種情報・要求を送信し、その結果としての情報を受信して、さらにゲームを進行させる処理を実行する。
【0028】
判定部114は、ゲーム進行に必要な各種判定を実行する。判定部114は、タッチパネル15で受け付けたユーザ作用がスライド操作であるかをスライド操作情報検出部114aでの検出によって判定する。また、判定部114は、ゲーム処理部112からの判定要求に基づいて、必要に応じて記憶部120に記憶された各種ゲームデータを参照し、ゲーム進行判定部114bによって、ゲーム進行の判定(例えば、ゲームオーバー判定)を実施する。
【0029】
オブジェクト制御部115は、記憶部120に記憶されたオブジェクト制御情報に基づいて、作用受付部111が受け付けたユーザの作用に応じて表示部152に表示される各種オブジェクト(GUI:Graphical User Interface(グラフィカル・ユーザ・インタフェース)等)を制御する。各種オブジェクトは、作用受付部111が受け付けたユーザの作用や記憶部120に記憶されたゲームプログラムに基づいて、所定の態様で制御されることが好ましい。
【0030】
キャラクタ制御部116は、記憶部120に記憶されたキャラクタ制御情報に基づいて、ユーザが操作するキャラクタをはじめとした各種ゲームキャラクタに所定の動作をさせるよう制御する。
【0031】
画像生成部117は、記憶部120に格納され各種ゲームデータや、ゲームプログラムによる演算結果、ユーザの入力部151に対する作用に基づいて、表示部152に表示されるゲーム画面やゲームオブジェクト、ゲームキャラクタ等の画像を生成する。これにより、ユーザはタッチパネル15に対する各種操作の入力に対する出力をインタラクティブに視認することができ、ユーザ端末100の操作性が向上される。
【0032】
図3は、ゲームサーバ200のゲーム進行処理に関する主要な機能を示すブロック図である。ゲームサーバ200は、プロセッサ20、メモリ21、ストレージ22、通信IF23、入出力IF24等の協働により、制御部210および記憶部220として機能し得る。本実施形態のゲームサーバ200は、各ユーザ端末100にゲーム進行に必要な情報を提供するゲーム提供機能を有している。ゲームサーバ200は、ユーザ端末100から各種の指示を受信し、ユーザ端末100上で動作可能なゲームプログラムや、Webページ(ゲーム画面等)や、ユーザ情報やゲームパラメータ等の各種ゲームデータ、各種通知等を送信する。制御部210は、記憶部220に格納されたゲームプログラムによって、受信部211、ゲーム処理部212、判定部213、データ管理部214、画像生成部215として機能し得る。
【0033】
受信部211は、各ユーザ端末100からの各種情報を受け付ける。各ユーザ端末100は、制御部110の制御により各種情報をゲームサーバ200に対して送信し、ゲームサーバ200は、ネットワーク2、通信IF23を介して当該情報を受信し、受信部211が情報の内容を識別して受け付ける。
【0034】
ゲーム処理部212は、ゲームサーバ200全体の動作を制御し、各要素間におけるデータの送受信や、ゲームの進行に必要な演算処理を行う。例えば、受信部211で受信されたユーザ端末100からの情報・要求に基づいてゲームプログラムに従った演算処理を実行する。その結果としての各種ユーザ情報やゲーム情報といったゲームデータ、ゲームプログラム等を、通信IF13を介してユーザ端末100に送信し、ユーザ端末100においてさらにゲームを進行させる。
【0035】
判定部213は、ゲーム処理部212におけるゲーム進行処理に必要な各種判定を実行する。判定部213は、記憶部220に記憶されたゲームプログラムの制御に基づいて、各種ゲームデータやデータベースを参照し、ゲーム進行に必要な各種判定を実行する。
【0036】
データ管理部214は、ゲーム処理部212における各種演算結果に基づいて、記憶部220に格納される各種ゲームデータやデータベースのレコードの追加/更新/削除を行うことにより、必要な処理を実行する。
【0037】
画像生成部215は、ゲーム処理部212や判定部213の制御によりゲームの進行に必要なゲームデータに関連するゲーム画像等の画像を生成する。当該画像はゲーム処理部212の制御に基づいてユーザ端末100に送信される。
【0038】
記憶部220には、ゲームを所定のシナリオに基づいて進行させるためのゲーム進行処理プログラムやユーザの認証プログラム等を含む各種ゲームプログラムが格納される。ゲームプログラムの一例として、以下において、ユーザがタッチ操作によって自動車を操縦するゲームへの適用を想定する。本実施形態においては、各種オブジェクトを所定の態様で制御するためのオブジェクト制御情報や、入力されたユーザ作用に基づいてキャラクタの動作を特徴的に制御するためのキャラクタ制御情報を含む。記憶部220にはゲームの進行に必要な各種ゲーム情報も格納されている。本実施形態においては、当該ゲーム情報は各種キャラクタやゲームステージの情報をマスター管理するためのデータベースを含む。加えて、記憶部220には、各ユーザに関する情報が格納される。キャラクタ情報は各キャラクタの成長度(レベル)を含み、各種ゲーム情報と関連付けられることにより、ユーザ・キャラクタのパラメータを定義することが可能である。このように、記憶部220にはゲームに関連する各種ゲーム情報やユーザ情報を管理するデータベースが構築されていることが好ましい。
【0039】
図4は、記憶部220に格納されるキャラクタ管理テーブルの一例を示す。キャラクタ管理テーブルはキャラクタ情報を含み、キャラクタ情報は、車種や重量といった自動車に関するパラメータを含む。車種はキャラクタたる自動車の種別を示すパラメータである。車種に応じてユーザ操作性を異なるように設定するのがよい(例えば、「軽自動車」であれば操作が簡単等)。また、車輪の重量等のパラメータに応じて、ユーザ操作の難易度が異なるように設定してもよい。
【0040】
図5は、記憶部220に格納されるステージ管理テーブルの一例を示す。ステージ管理テーブルはステージ情報を含み、自動車を操縦させるコースが規定される。一例として、ステージ毎に、比較的平坦で簡単に操作できるロード・ステージか、アップダウンが激しく操作も難しいオフロード・ステージかがステージ種別として規定される。上記以外にも、ステージをクリアするための制限時間等もステージ毎に規定されてもよい(図示せず)。
【0041】
図6は、記憶部220に格納されるユーザ管理テーブルの一例を示す。ユーザ管理テーブルはユーザ情報を含み、ユーザ情報は各ユーザを特定する識別子(ユーザID)に対して保有キャラクタ管理情報が関連付けて記憶される。また、保有キャラクタを特定する情報に対してユーザのレベルのようなパラメータが関連付けて記憶される。保有キャラクタ情報は当該ユーザが入手して保有しているキャラクタの識別情報である。レベルは、保有キャラクタの成長度を規定するパラメータである。各キャラクタに関する車種等のパラメータは
図4に示すキャラクタ管理テーブルにマスター管理される。ユーザは、ユーザ情報に記憶された保有キャラクタのパラメータに基づいて規定されるゲーム・シナリオに応じて、各種ゲームをプレイすることができる。
【0042】
ユーザ端末100の記憶部120には、ゲームサーバ200の記憶部220からダウンロードされたゲームプログラムやゲーム情報、ユーザ情報の全部または一部が格納される。記憶部120には、ゲームを所定のシナリオに基づいて進行させるためのゲーム進行処理プログラムやユーザの認証プログラム等を含む各種ゲームプログラムが格納される(図示せず)。また、各種オブジェクトを所定の態様で制御するためのオブジェクト制御情報や、入力されたユーザ作用に基づいてキャラクタの動作を特徴的に制御するためのキャラクタ制御情報を含む。更に、記憶部120にはゲームの進行に必要な各種ゲーム情報も格納される。当該ゲーム情報は各種キャラクタやステージに関する基本的なパラメータのうち、ゲームを進行させる上で必要な情報が格納される。加えて、記憶部120には、ユーザに関するプレイ履歴情報(ランク、熟練度等)(図示せず)や、当該ユーザに関連付けられた保有キャラクタに関するキャラクタ管理情報が格納される。キャラクタ管理情報は各キャラクタの成長度といった補正パラメータを含み、各種ゲーム情報と関連付けられることにより、当該ユーザが保有するキャラクタを定義することが可能である。
【0043】
上記のユーザ端末100の機能の少なくとも一部は、ゲームサーバ200が備えるように構成されていてもよい。また、上記のゲームサーバ200の機能の少なくとも一部は、ユーザ端末100が備えるように構成されていてもよい。すなわち、本実施形態におけるゲームプログラムが実行されることにより所定の機能が実現されるコンピュータは、上述のユーザ端末100やゲームサーバ200を含む情報制御装置等から任意に選択され得る。
【0044】
以下、本実施形態によるゲームシステム1の処理の流れを、
図7から
図14を参照して詳細に説明する。
図7は、ゲーム・シナリオの一例を示す概略図である。
図8および
図12は、ゲームシステム1で実行される処理フローの一例を示すフローチャートである。
図9および
図10はゲーム進行のためのユーザによる基本スライド操作例を示す図である。
図11、
図13および
図14は、ユーザ操作を通じたキャラクタ動作を説明するための図である。なお、以下において「スライド操作」なる表現は、特に注記する場合を除き「右手スライド操作」および「左手スライド操作」の両方を含むものである。
【0045】
図7は、本実施形態のゲームプログラムが適用される横スクロール型の自動車操縦ゲームの概要図である。ユーザによる左手および右手の指でのスライド操作を通じて、水平方向から見たゲーム空間において、自動車キャラクタCHを横方向(画面上部の>(右)方向)に向けて操縦するゲームを想定する。ここでは、車種「SUV」の自動車キャラクタCHがステージb(ステージ種別:「オフロード」)上で操縦されるシナリオを想定する。自動車キャラクタCHは、前輪部および後輪部の一組の車輪部、並びに車体部を備える。ユーザによる2つのスライド操作に応じて、自動車キャラクタCHの車体部の重心が移動制御される。つまり、当該自動車操縦ゲームでは、ユーザにより、如何に車体部のバランスを失うことなく、前輪部および後輪部を地面に接地させながら操縦できるかを競うバランスゲームである。2つスライド操作の各々に、前輪部および後輪部の各動作が関連づけられる。これにより、直感的に自動車キャラクタCHの前輪部および後輪部を操作可能とする。
図7では、2つのスライド操作をユーザが行った結果、自動車キャラクタCHは右方向に進行しつつも、後輪部が上方向に浮き車体部がバランスを失って「前のめり状態」になっている。また、2つのスライド操作に対し、水滴形状の弾性オブジェクトが関連づけられ、オブジェクト画像I1,I2が表示される。
【0046】
ゲームの全体進行は、
図8のフローチャートにしたがって実施される。全体処理フローは、主に、ゲーム開始前の初期設定フェーズおよびゲーム開始後のゲーム実行フェーズの2つのフェーズを含む。初期設定フェーズでは、ゲーム開始前に、領域割当部113が、タッチパネルの表示部152上の表示領域に複数の領域を設ける。そして、各領域を、作用受付部111で受け付ける所定のタッチ操作に予め割り当てる(S310)。端末装置を横持ちする場合は、
図9の割り当て例のように、表示部152の表示領域を左半分と右半分に2分割し、例えば、左手用の操作領域と右手用のスライド操作領域にそれぞれ割り当てるのがよい。なお、領域の数および各領域の形状や大きさは何れのものにも設定することができる。例えば、右利きユーザであれば、右手スライド操作領域が広めに形成されるように、ユーザ設定を受け付け可能としてもよい。また、タッチ操作を受け付けない操作禁止用の領域を設けても良い。
【0047】
ゲーム処理部112により、ゲームが開始されゲーム実行フェーズに移行する。作用受付部111は、任意のタイミング、且つ左手用操作領域と右手用スライド操作領域の任意の位置で、左手タッチ操作および右手タッチ操作をそれぞれ独立して受け付ける(S320)。作用受付部111は、左手タッチ操作および右手タッチ操作を同時に受け付けてもよいし、一方のみを受け付けるのでもよい。左手タッチ操作および右手タッチ操作の各タッチ開始位置は、記憶部120に格納される。2つのタッチ操作を1つの領域で同時に受け付けた場合は、作用受付部111が先に受け付けたタッチ操作のみを有効化するのがよい。引き続き、スライド操作情報検出部114aは各タッチ操作がスライド操作であるかを判定する(S330)。1つのスライド操作領域において所定のフレームレート(例えば30fbps)毎に複数のタッチ位置が連続して検出された場合に、スライド操作情報検出部114aは当該タッチ操作がスライド操作であると判定するように構成される。
【0048】
S330でスライド操作が判定されない場合(「いいえ」の場合)は、再度S320でのタッチ操作の受け付け待ち状態となる。一方、S330で「はい」の場合は、特徴量決定部116aが、右手および左手スライド操作に対応する右手および左手スライド操作特徴量を決定する(S340)。「右手スライド操作」および「左手スライド操作」の一方または双方が本実施形態における「スライド操作」であり得る。スライド操作特徴量は、スライド操作におけるタッチ開始位置(スライド開始点)からの現在のスライド点までのスライド方向および/またはスライド距離を含むとよい。S340でスライド操作特徴量が決定されると、オブジェクト制御部115および画像生成部117が、スライド操作特徴量に基づいて、弾性オブジェクト画像を生成する(S350)。具体的には、スライド操作が行われると、スライド開始点から現在のスライド点まで伸びる弾性形状を有するオブジェクトの画像が生成される。生成されたオブジェクト画像がタッチパネルの表示部152に表示される。
【0049】
S340で弾性オブジェクト画像を生成するのに併せて、キャラクタ動作部116bがスライド操作特徴量に基づいて、ゲーム空間内のキャラクタを動作させる(S360)。また、画面生成部117が当該動作に関するアニメーションを生成する。左手スライド操作および右手スライド操作には、自動車キャラクタの後輪部および前輪部の動作がそれぞれ関連づけられて、当該自動車キャラクタの動作が制御される。S360でのキャラクタ動作の結果、ゲーム進行判定部114bは、更に、キャラクタの継続動作の可能/不可能を判定する(S370)。継続動作可能の場合(S370で「いいえ」の場合)には、再びS330でのスライド操作判定に戻り、S330からS370までの一連の処理を所定のフレームレート毎に繰り返す。他方、継続動作不可能の場合(S370で「はい」の場合)は、ゲーム処理部112がゲームを終了させる。
【0050】
図10を参照して、S350での弾性オブジェクト画像の生成について説明する。
図10は、右手スライド操作領域での画像例であるが、左手スライド操作領域においても同様のことがいえる。スライド開始点(x0,y0)から現在スライド点(x1,y1)までのスライド操作ベクトルVに応じて、弾性オブジェクト画像Iが生成され、表示部152に表示される。xy位置座標について、例えば、表示部152の領域の中心を原点(0,0)とした直交座標系とするのがよい。具体的には、縦方向が+1.0、且つ縦方向下端が−1.0となるように調整し、それに合わせて横方向のタッチ領域範囲が規定されるのがよい。一例として、一般的なスマートフォンであれば、これを縦持ちする場合の横方向のタッチ領域範囲は、概ね−0.6(左端)から+0.6(右端)となることが知られる。
【0051】
弾性オブジェクト画像Iは、基部、先端部、およびこれらの間の接続部を有する水滴形状の弾性オブジェクトの画像として形成される。S320のような初期タッチの場合の初期弾性オブジェクト形状は円形状とするのがよい。弾性オブジェクトの形状は、正方形または3角形状から成る複数のポリゴンのセット(メッシュ)によって形成可能である。つまり、各ポリゴンの各頂点座標を所定の数式に代入することにより、水滴形状の弾性オブジェクトを表現することができる。図示されるように、弾性オブジェクト画像Iは、弾性オブジェクトの基部がタッチ開始点に固定的に位置合わせされ、弾性オブジェクトの先端部が指のタッチ位置に追従するように形成するのがよい。フレームレート毎に、オブジェクトが弾性変形して伸縮する態様の画像が生成および表示される。ユーザにとって直観的に優れた操作性を提供可能な弾性オブジェクト画像を提供することができる。
【0052】
図11に、
図10での右手スライド操作例に対応する前輪部の操作例を示す。スライド開始点(x0,y0)から現在スライド点(x1,y1)までのスライド操作ベクトルV(x1−x0,y1−y0)(右上方向の点線矢印)は、その特徴量としてスライド方向およびスライド距離を有する。当該スライド操作ベクトルVに対応して、
図11(a)の状態から
図11(b)の状態へと自動車キャラクタCHが動作制御される。具体的には、車体部に対し、前輪部が移動制御および回転制御される。スライド操作ベクトルVにおけるスライド方向が前輪部の移動方向に関連づけられ、同じくスライド距離が前輪部の回転速度(即ち、前輪部の移動速度)に関連づけられる。なお、スライド方向を更に前輪部の回転方向として関連付けてもよく、スライド操作の左右方向に応じて回転方向を決定するようにしてもよい。左スライド操作による後輪部も動作制御についても同様であるが、左右のスライド操作に関連づけられる機能を異なるように構成してもよい。一例として、左スライド操作に対しては、その左右方向に応じてアクセルまたはブレーキの一方を決定すると共に、スライド距離をその強さとして関連づけるよう(右スライド操作とは異なるように)構成してもよい。
【0053】
図10および
図11に関連し、更に
図12に、S360でのキャラクタ制御部116によるキャラクタ動作の制御について説明する。スライド操作を通じて、その特徴量としてスライド開始点からのスライド方向およびスライド距離が取得される(S410)。取得したスライド距離が所定の閾値を超えているかが判定される(S420)。スライド距離が所定の閾値を超える場合にのみ、当該スライド距離に基づいて移動速度が0以外の値に設定される(S430)。スライド距離が所定の閾値に達していない場合は、移動速度=0として車輪は回転されない(S440)。また、スライド方向に基づいて車輪部の移動方向が決定される(S450)。移動速度および車輪部移動方向に基づいて車輪が操作され、自動車キャラクタが動作される(S460)。上記閾値を用いることにより、本実施形態では、スライド距離とスライド方向を常に連動させなくてもよく、より臨場感のある操作性をユーザに提供することができる。
【0054】
図13および
図14を参照して、横スクロール型の自動車操縦ゲームにおいて、スライド操作を通じて自動車キャラクタをバランスさせる動作制御の概要について説明する。
図13に自動車キャラクタの基本操作例を示し、
図14にその応用操作例を示す。
図11で説明したように、ユーザは、スライド操作(スライド方向およびスライド距離)に基づいて、車体部のバランスを取りながら自動車キャラクタを動作させる。
図13(a)では、タッチパネル15上でタッチ操作が何ら行われていないため、車両キャラクタも停止している。車体線(点線)が地面(実線)と平行の状態である。
図13(b)では、左手で左方向にスライド操作を、右手で右方向にスライド操作を行っている。これを受けて、自動車キャラクタは、後輪部が左方向に、前輪部が右方向に移動するとともに、各スライド距離に応じたスピードで進行方向(矢印の右方向)に移動する。車体部のバランスの観点では、2つのスライド距離を一致させながら、前輪部および後輪部の各回転速度を合わせるように操作するのがよい。
図13(c)では、自動車キャラクタの進行方向に対し地面が若干の角度で下がっており、下り坂の状況である。本ゲームでは、車体部のバランスをとるためには、車輪を地面に接地させることを必要とする。この場合は、後輪部を上方向に上げ、前輪部を下方向に下げることで、車体線が地面と平行になるように調整する必要がある。具体的には、図示されるように、ユーザは、左手で左上方向にスライド操作を、右手で左下方向にスライド操作をすることになる。本ゲームでは、少なくとも車体線が地面と平行となる状況では、継続動作が可能と判断されゲームが続行するものとしている。
【0055】
図14(a)は、
図13(c)よりも更に急勾配な下り坂の状況である。自動車キャラクタが水平方向を向いている限り、最大限に、後輪部を上方向に上げ、且つ前輪部を下方向に下げたとしても、後輪部のみが地面に接地し前輪部は浮いた状況になる。つまり、車体線が地面と平行にはならない。例えば、この状況で、ユーザの左手スライド操作により、一定回転速度以上で後輪部を回転させた場合は、バランスが取れずに車体部の重心が上方向に移ることになる。即ち、
図14(b)のように車体部全体が回転することになる。最終的には、車体後方部が地面に触れることにより、継続動作が不可能となり自動車操縦ゲームは終了する。当該回転動作は、正確には、前輪部および後輪部の接地の状況、前輪部および後輪部の位置および回転速度に加え、車両の重量等をパラメータにして物理演算することにより決定されるがここでは詳細は省略する。また、ゲームの終了判定には、車体のゲーム空間内の位置情報(前方部や後方部の位置情報を含む)をパラメータとして取得する必要があるがやはり詳細は省略する。他方、ユーザの左手スライド操作により、後輪部を引き上げつつ一定の回転速度未満にセーブしながら、右手スライド操作により、前輪部を下げる操作を維持することで、車体部の重心が下方に下がるよう動作される。その結果、
図14(c)のように車体部のバランスが取れ、車体線が地面と再度平行になり、継続動作が可能と判断されゲームが続行する。
【0056】
上記では、自動車キャラクタを操縦する横スクロール型のゲーム例について説明したが、これに限定されない。キャラクタは一組の操作対象部を備えるものであればよく、前輪部および後輪部を備えるものとして自動車以外にも二輪車等としてもよい。また、キャラクタとして飛行機のように左右一組の翼を備えるものを採用してもよい。更には、横スクロール型のゲームではなく、縦スクロール型のゲームとしても適用可能である。一例として、ゲーム空間を垂直方向から見た縦スクロール型の飛行機操縦ゲームが想定され得る。具体的には、ユーザによる左右両方のスライド操作を通じて、各スライド方向に関連づけられた翼の方向、および各スライド距離に関連づけられる翼からの噴射量に基づいて、機体バランスを取りながらユーザに飛行機を操縦させるゲームが考えられる。
【0057】
上述した実施形態は、本発明の理解を容易にするための例示に過ぎず、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良することができると共に、本発明にはその均等物が含まれることは言うまでもない。
【解決手段】第1および第2領域を少なくとも設けたタッチパネルを備えるコンピュータに、第1および第2領域の任意の位置において、第1および第2スライド操作をそれぞれ独立して受け付けるステップと、第1および第2スライド操作に対応する第1および第2特徴量をそれぞれ決定するステップと、前記第1および第2特徴量に基づいて、ゲーム空間のキャラクタを動作させるステップであって、第1および第2スライド操作には、動作対象のキャラクタが有する第1および第2対象部の操作がそれぞれ関連づけられる、ステップと、を含む方法を実行させる、ゲームプログラムが得られる。