(57)【要約】【課題】画面の表示態様を切り替え可能なゲームにおいて、表示態様が切り替わった場合でも、ユーザに違和感を抱かせないこと。【解決手段】携帯端末は、矩形のディスプレイ（１３０）と、プロセッサ（１９０）と、傾きを検出するための傾きセンサ（１８５）とを備える。ゲームプログラム（１５１）は、プロセッサに、傾きセンサの検出結果に応じて、仮想空間に配置される仮想カメラ（４２０）の視界のアスペクト比を、縦長の第１アスペクト比と横長の第２アスペクト比との間で切り替えるステップと、仮想カメラが第１アスペクト比で撮影する第１撮影画像、および第２アスペクト比で撮影する第２撮影画像において、予め定められた条件を満たす位置に第１部品を重ね合わせた画像をディスプレイに表示するステップとを実行させる。第１部品は、撮影画像の少なくとも一部がディスプレイに表示されている状態において一時的にディスプレイに表示される。【選択図】図１５
2018057463.tif 000002
【特許請求の範囲】
【請求項１】
矩形のディスプレイと、プロセッサと、傾きを検出するための傾きセンサとを備える携帯端末で実行されるゲームプログラムであって、
前記ゲームプログラムは、前記プロセッサに、
仮想空間を規定するステップと、
前記仮想空間に仮想カメラを配置するステップと、
前記傾きセンサの検出結果に応じて、前記仮想カメラの視界のアスペクト比を、縦長の第１アスペクト比と横長の第２アスペクト比との間で切り替えるステップと、
前記仮想カメラの撮影する撮影画像に、前記撮影画像とは独立した部品画像を重ね合わせた画像を前記ディスプレイに表示するステップとを実行させ、
前記部品画像は、前記撮影画像の少なくとも一部が前記ディスプレイに表示されている状態において一時的に前記ディスプレイに表示される第１部品を含み、
前記表示するステップは、前記仮想カメラが前記第１アスペクト比で撮影する第１撮影画像、および前記第２アスペクト比で撮影する第２撮影画像において、予め定められた条件を満たす位置に前記第１部品を重ね合わせることを含む、ゲームプログラム。
【請求項２】
前記予め定められた条件は、前記撮影画像に含まれる予め定められたオブジェクトの位置に対して、予め定められた方位に予め定められた距離だけ離れた位置に、前記第１部品を重ね合わせることを含む、請求項１に記載のゲームプログラム。
【請求項３】
前記表示するステップは、前記第１部品を、前記ディスプレイの端部に表示することを含み、
前記予め定められた条件は、前記第１および第２撮影画像における前記第１部品が表示される位置によって内分される上下または左右の割合が一致することを含む、請求項１に記載のゲームプログラム。
【請求項４】
前記予め定められた条件は、前記第１撮影画像の中央位置から前記第１部品が配置される横方向の距離と、前記第２撮影画像の中央位置から前記第１部品が配置される横方向の距離とが等しいことを含む、請求項１または２に記載のゲームプログラム。
【請求項５】
前記予め定められた条件は、前記第１撮影画像の中央位置から前記第１部品が配置される縦方向の距離と、前記第２撮影画像の中央位置から前記第１部品が配置される縦方向の距離とが等しいことを含む、請求項１または２に記載のゲームプログラム。
【請求項６】
前記部品画像は、前記撮影画像の少なくとも一部が前記ディスプレイに表示されている状態において定常的に前記ディスプレイに表示される第２部品を含み、
前記表示するステップは、前記仮想カメラが前記第１アスペクト比で撮影する第１撮影画像、および前記第２アスペクト比で撮影する第２撮影画像において、所定の条件を満たす位置に前記第２部品を重ね合わせることを含む、請求項１〜５のいずれか１項に記載のゲームプログラム。
【請求項７】
矩形のディスプレイと、傾きを検出するための傾きセンサとを含む携帯端末において、ゲームを提供する方法であって、
仮想空間を規定するステップと、
前記仮想空間に仮想カメラを配置するステップと、
前記傾きセンサの検出結果に応じて、前記仮想カメラの視界のアスペクト比を、縦長の第１アスペクト比と横長の第２アスペクト比との間で切り替えるステップと、
前記仮想カメラの撮影する撮影画像に、前記撮影画像とは独立した部品画像を重ね合わせた画像を前記ディスプレイに表示するステップとを備え、
前記部品画像は、前記撮影画像の少なくとも一部が前記ディスプレイに表示されている状態において一時的に前記ディスプレイに表示される第１部品を含み、
前記表示するステップは、前記仮想カメラが前記第１アスペクト比で撮影する第１撮影画像、および前記第２アスペクト比で撮影する第２撮影画像において、予め定められた条件を満たす位置に前記第１部品を重ね合わせることを含む、ゲームを提供する方法。
【請求項８】
ゲームを提供するための情報処理装置であって、
矩形のディスプレイと、
前記ディスプレイに表示される内容を制御するためのプロセッサと、
前記ディスプレイの傾きを検出するための傾きセンサと、
一連の命令を格納するためのメモリとを備え、
前記一連の命令が前記プロセッサによって実行されると、
前記プロセッサは、
仮想空間を規定して、当該仮想空間に仮想カメラを配置し、
前記傾きセンサの検出結果に応じて、前記仮想カメラの視界のアスペクト比を、縦長の第１アスペクト比と横長の第２アスペクト比との間で切り替え、
前記仮想カメラの撮影する撮影画像に、前記撮影画像とは独立した部品画像を重ね合わせた画像を前記ディスプレイに表示するように構成され、
前記部品画像は、前記撮影画像の少なくとも一部が前記ディスプレイに表示されている状態において一時的に前記ディスプレイに表示される第１部品を含み、
前記プロセッサはさらに、前記仮想カメラが前記第１アスペクト比で撮影する第１撮影画像、および前記第２アスペクト比で撮影する第２撮影画像において、予め定められた条件を満たす位置に前記第１部品を重ね合わせるように構成されている、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この開示は、ゲームプログラムの技術に関し、より特定的には、画面に表示する内容を制御する技術に関する。
【背景技術】
【０００２】
近年、スマートフォンやタブレットなどの携帯端末向けのゲームが急速に普及している。一般的に、これら携帯端末は、長方形のディスプレイを搭載する。携帯端末向けゲームの中には、携帯端末に搭載されるディスプレイの長辺と短辺の長さに合わせて、ゲーム画面を縦長のアスペクト比の画面と、横長のアスペクト比の画面との間で切り替えるものがある（非特許文献１）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“ファミ通Ａｐｐ  コロプラの新作「スリリングショットブレイブズ」さっそくプレイ指南”、［online］、［平成２８年６月２７日検索］、インターネット〈URL：http://app.famitsu.com/20140303_326407/〉
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ユーザは、ゲームを進行させるにあたって、画面に表示される情報を都度確認しながら、携帯端末やコントローラなどを操作する。
【０００５】
そのため、上記のように画面の表示態様が切り替わる場合においても、ユーザが必要とする情報を、ユーザが見やすい形態で表示する技術が求められている。
【０００６】
本開示は、上記のような問題を解決するためになされたものであって、ある局面における目的は、画面の表示態様を切り替え可能なゲームにおいて、表示態様が切り替わった場合でも、ユーザに違和感を抱かせない技術を提供することである。
【課題を解決するための手段】
【０００７】
ある実施形態に従うと、携帯端末で実行されるゲームプログラムが提供される。この携帯端末は、矩形のディスプレイと、プロセッサと、傾きを検出するための傾きセンサとを備える。このゲームプログラムは、プロセッサに、仮想空間を規定するステップと、仮想空間に仮想カメラを配置するステップと、傾きセンサの検出結果に応じて、仮想カメラの視界のアスペクト比を、縦長の第１アスペクト比と横長の第２アスペクト比との間で切り替えるステップと、仮想カメラの撮影する撮影画像に、撮影画像とは独立した部品画像を重ね合わせた画像をディスプレイに表示するステップとを実行させる。部品画像は、撮影画像の少なくとも一部がディスプレイに表示されている状態において一時的にディスプレイに表示される第１部品を含む。表示するステップは、仮想カメラが第１アスペクト比で撮影する第１撮影画像、および第２アスペクト比で撮影する第２撮影画像において、予め定められた条件を満たす位置に第１部品を重ね合わせることを含む。
【０００８】
この発明の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解されるこの発明に関する次の詳細な説明から明らかとなるであろう。
【図面の簡単な説明】
【０００９】
【図１】ある実施形態に従うゲーム配信システムの構成例を示す図である。
【図２】ある実施形態に従う携帯端末の構成を示すブロック図である。
【図３】ある実施形態に従うサーバの機能的な構成を示すブロック図である。
【図４】ある実施形態に従う仮想空間および仮想カメラについて説明する図である。
【図５】仮想カメラの視界領域をＸ方向から見たＹＺ断面を表す図である。
【図６】仮想カメラの視界領域をＹ方向から見たＸＺ断面を表す図である。
【図７】ある実施形態に従う縦画面表示と横画面表示との切り替えについて説明する図である。
【図８】ある実施形態に従うタッチスクリーンに表示される画像の生成方法の一例について説明する図である。
【図９】ある実施形態に従う常時表示部品と一時表示部品とについて説明する図である。
【図１０】ある実施形態に従う縦長画面および横長画面における一時表示部品の位置関係について説明する図（その１）である。
【図１１】他の実施形態に従う縦長画面および横長画面における一時表示部品の位置関係について説明する図（その２）である。
【図１２】さらに他の実施形態に従う縦長画面および横長画面における一時表示部品７８０の位置関係について説明する図（その３）である。
【図１３】さらに他の実施形態に従う縦長画面および横長画面における一時表示部品７８０の位置関係について説明する図（その４）である。
【図１４】さらに他の実施形態に従う縦長画面および横長画面における一時表示部品１４２０の位置関係について説明する図（その５）である。
【図１５】縦長画面および横長画面を切り替えるとき制御について説明するフローチャートである。
【発明を実施するための形態】
【００１０】
以下、この発明の実施形態について図面を参照しながら詳細に説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【００１１】
（ゲーム配信システム１の構成）
図１は、ある実施形態に従うゲーム配信システム１の構成例を示す図である。図１に示すように、ゲーム配信システム１は、ユーザが使用する情報処理装置と、サーバ２０とを含む。情報処理装置とサーバ２０とは、ネットワーク８０によって互いに通信可能に接続されている。
【００１２】
図１の例では、ユーザが使用する情報処理装置として、携帯端末１０Ａ、携帯端末１０Ｂおよび携帯端末１０Ｃ（以下、携帯端末１０Ａ、１０Ｂ、１０Ｃなどの携帯端末を総称して「携帯端末１０」と表すこともある）など複数の携帯端末が示されている。携帯端末１０Ａと携帯端末１０Ｂとは、無線基地局８１と通信することにより、ネットワーク８０と接続する。携帯端末１０Ｃは、家屋などの施設に設置される無線ルータ８２と通信することにより、ネットワーク８０と接続する。携帯端末１０は、タッチスクリーンを備える端末であり、例えば、スマートフォン、ファブレット、タブレットなどである。
【００１３】
携帯端末１０は、ゲームプログラムを実行することにより、ゲームプログラムに応じたゲームをプレイする環境をユーザに対して提供する。携帯端末１０には、例えば、アプリ等を配信するプラットフォームを介してダウンロードされたゲームプログラムがインストールされる。携帯端末１０は、ダウンロードされたゲームプログラム、または、予めプリインストールされているゲームプログラムを実行することで、ユーザによるゲームのプレイを可能とする。携帯端末１０が、ゲームプログラムを実行すると、携帯端末１０と、サーバ２０とが、通信して、ゲームの進行に応じてゲームに関連するデータが、携帯端末１０とサーバ２０との間で送受信される。
【００１４】
サーバ２０は、ゲームのプレイに必要なデータを、適宜、携帯端末１０へ送信することで、携帯端末１０でのゲームのプレイを進行させる。サーバ２０は、ゲームをプレイする各ユーザの、ゲームに関連する各種データを管理する。サーバ２０は、携帯端末１０と通信し、各ユーザのゲームの進行に応じて、画像、音声、テキストデータその他のデータを携帯端末１０へ送信する。
【００１５】
例えば、サーバ２０は、ユーザがゲームのストーリーを進行させた進行状況、ユーザが使用可能なキャラクタの情報（例えば、キャラクタの能力を示すパラメータ）、当該キャラクタが使用する道具の性能を示すパラメータその他の各種データを管理する。また、サーバ２０は、ゲームの運営者がユーザに対して行なうキャンペーン、ゲームにおける不具合の発生、不具合の解消その他のゲームの運営に関連する情報等をユーザに通知する処理を行なう。
【００１６】
ゲームプログラムは、ユーザがゲームをプレイするモードとして、一人のユーザがプレイする場合（シングルプレイ）と、複数人のユーザが協力してプレイする場合（マルチプレイ）とに対応している。例えば、ゲーム配信システム１のサーバ２０が、マルチプレイに参加するユーザを特定して各ユーザの各携帯端末１０と通信すること等により、マルチプレイでゲームをプレイする環境を各ユーザに提供する。
【００１７】
ゲーム配信システム１は、マルチプレイに対応することにより、例えば、アクションゲームであれば、ユーザ同士が協力してゲームを進行させること、または、ユーザどうしでの対戦を可能とする。
【００１８】
＜構成＞
サーバ２０のハードウェアの構成を説明する。サーバ２０は、主たる構成要素として、通信ＩＦ（Interface）２２と、入出力ＩＦ２３と、メモリ２５と、ストレージ２６と、プロセッサ２９とを備える。各構成要素は、通信バスを介して互いに接続されている。
【００１９】
通信ＩＦ２２は、例えばＬＡＮ（Local  Area  Network）規格など各種の通信規格に対応しており、携帯端末１０など外部の通信機器との間でデータを送受信するためのインタフェースとして機能する。
【００２０】
入出力ＩＦ２３は、サーバ２０への情報の入力を受け付けるとともに、サーバ２０の外部へ情報を出力するためのインタフェースとして機能する。入出力ＩＦ２３は、マウス、キーボード等の情報入力機器の接続を受け付ける入力受付部と、ディスプレイ等の情報出力機器の接続を受け付ける出力部とを含む。入力受付部は、一例として、ＰＳ／２コネクタ、ＵＳＢ（Universal  Serial  Bus）コネクタ等により実現される。出力部は、一例として、ＶＧＡ（Video  Graphics  Array）コネクタ、ＤＶＩ（Digital  Visual  Interface）コネクタ、ＨＤＭＩ（High  Definition  Multimedia  Interface）（登録商標）コネクタ、Displayportコネクタ等により実現される。
【００２１】
メモリ２５は、処理に使用されるデータ等を記憶するための記憶装置である。メモリ２５は、例えば、プロセッサ２９が処理を行なう際に一時的に使用するための作業領域をプロセッサ２９に提供する。メモリ２５は、ＲＯＭ（Read  Only  Memory）、ＲＡＭ（Random  Access  Memory）等により実現される。
【００２２】
ストレージ２６は、プロセッサ２９が読み込んで実行するための各種プログラムおよびデータを記憶するための記憶装置である。ストレージ２６が記憶する情報は、ゲームプログラム、ゲームプログラムに関連する情報、ゲームプログラムをプレイするユーザの情報その他の情報を含む。ストレージ２６は、ＨＤＤ（Hard  Disk  Drive）、フラッシュメモリ等により実現される。
【００２３】
プロセッサ２９は、ストレージ２６に記憶されるプログラム等を読み込んで実行することにより、サーバ２０の動作を制御する。プロセッサ２９は、例えば、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）、ＧＰＵ（Graphics  Processing  Unit）等を含む。
【００２４】
（携帯端末１０の構成）
図２は、ある実施形態に従う携帯端末１０の構成を示すブロック図である。図２を参照して、携帯端末１０は、アンテナ１１０と、無線通信ＩＦ１２０と、タッチスクリーン１３０と、入出力ＩＦ１４０と、記憶部１５０と、音声処理回路１６０と、マイク１７０と、スピーカ１８０と、加速度センサ１８５と、プロセッサ１９０とを備える。
【００２５】
アンテナ１１０は、携帯端末１０が発する信号を電波として空間へ放射する。また、アンテナ１１０は、空間から電波を受信して受信信号を無線通信ＩＦ１２０へ送出する。
【００２６】
無線通信ＩＦ１２０は、アンテナ１１０等を介して他の通信機器と信号を送受信するための変復調処理などを行なう無線通信用の通信モジュールとして機能する。無線通信ＩＦ１２０は、チューナー、高周波回路等により実現される。無線通信ＩＦ１２０は、携帯端末１０が送受信する無線信号の変復調や周波数変換を行い、受信信号をプロセッサ１９０へ出力する。
【００２７】
タッチスクリーン１３０は、ユーザからの入力を受け付ける。プロセッサ１９０は、当該入力に応じた情報をディスプレイ１３２に出力する。タッチスクリーン１３０は、ユーザの入力操作を受け付けるための部材（タッチパネル１３１）を含む。また、タッチスクリーン１３０は、メニュー画面や、ゲームの進行を画面に表示するための部材（ディスプレイ１３２）を含む。一例として、タッチパネル１３１およびディスプレイ１３２は、縦の長さと横の長さとが異なる矩形である。タッチパネル１３１は、例えば静電容量方式に従い、ユーザの指などが接近したことを検出する。ディスプレイ１３２は、例えばＬＣＤ（Liquid  Crystal  Display）、有機ＥＬ（ElectroLuminescence）ディスプレイその他の表示装置によって実現される。
【００２８】
入出力ＩＦ１４０は、携帯端末１０への情報の入力を受け付けるとともに、携帯端末１０の外部へ情報を出力するためのインタフェースとして機能する。入出力ＩＦ１４０は、一例として、ＵＳＢ（Universal  Serial  Bus）コネクタ等により実現される。
【００２９】
記憶部１５０は、フラッシュメモリ、ＲＡＭ（Random  Access  Memory）等により構成され、携帯端末１０が使用するプログラム、および、携帯端末１０がサーバ２０から受信する各種データ等を記憶する。
【００３０】
音声処理回路１６０は、音声信号の変復調を行なう。音声処理回路１６０は、マイク１７０から入力される信号を変調して、変調後の信号をプロセッサ１９０に出力する。また、音声処理回路１６０は、音声信号をスピーカ１８０に出力する。音声処理回路１６０は、例えば、音声処理用のプロセッサによって実現される。マイク１７０は、周囲の音声を音声信号に変換してプロセッサ１９０へ出力するための音声入力部として機能する。スピーカ１８０は、音声信号を音声に変換して、携帯端末１０の外部へ出力するための音声出力部として機能する。
【００３１】
加速度センサ１８５は、携帯端末１０の傾きを検知する。加速度センサ１８５は、重力加速度の計測が可能で、携帯端末１０の姿勢、より具体的には、重力方向に対するディスプレイ１３２の傾きを検出し得る。傾きを検出するためのセンサとしては、加速度センサ１８５の他にも、例えばジャイロセンサ、傾斜センサなどを用いてもよい。
【００３２】
プロセッサ１９０は、記憶部１５０に記憶されるプログラムを読み込んで実行することにより、携帯端末１０の動作を制御する。
【００３３】
携帯端末１０がゲームプログラム１５１を実行する処理について、より詳細に説明する。ある局面において、記憶部１５０は、ゲームプログラム１５１と、ゲーム情報１５２と、ユーザ情報１５３とを記憶する。携帯端末１０は、例えば、サーバ２０からゲームプログラムをダウンロードして記憶部１５０に記憶させる。また、携帯端末１０は、ゲームの進行に伴いサーバ２０と通信することで、ゲーム情報１５２およびユーザ情報１５３等の各種のデータをサーバ２０と送受信する。
【００３４】
ゲームプログラム１５１は、携帯端末１０においてゲームを進行させるためのプログラムである。ゲーム情報１５２は、ゲームプログラム１５１が参照する各種のデータを含む。ゲーム情報１５２は、例えば、ゲームにおいて仮想空間に配置するオブジェクトの情報、オブジェクトに対応付けられた効果の情報（例えば、キャラクタに設定されるスキルの情報）などを含む。ユーザ情報１５３は、ゲームをプレイするユーザについての情報を含む。ユーザ情報１５３は、例えば、ゲームをプレイするユーザを識別する情報、マルチプレイ時に協力してゲームをプレイする他のユーザを識別する情報その他の情報を含む。
【００３５】
プロセッサ１９０は、ゲームプログラム１５１を読み込んで実行することにより、入力操作受付部１９１、ゲーム進行処理部１９２、移動操作検出部１９３、仮想カメラ制御部１９４、オブジェクト制御部１９５、および表示制御部１９６として機能する。
【００３６】
入力操作受付部１９１は、タッチスクリーン１３０の出力に基づいて、ユーザの入力操作を受け付ける。具体的には、入力操作受付部１９１は、ユーザの指などがタッチパネル１３１に接近したことを、タッチスクリーン１３０を構成する面の横軸および縦軸からなる座標系の座標として検出する。
【００３７】
入力操作受付部１９１は、タッチスクリーン１３０に対するユーザの操作を判別する。入力操作受付部１９１は、例えば、（１）「接近操作」、（２）「リリース操作」、（３）「タップ操作」、（４）「ダブルタップ操作」、（５）「長押し操作（ロングタッチ操作）」、（６）「ドラッグ操作（スワイプ操作）」、（７）「ムーブ操作」、（８）「フリック操作」、その他のユーザの操作を判別する。入力操作受付部１９１が判別するユーザの操作は、上記に限られない。例えば、タッチパネル１３１が、ユーザがタッチパネル１３１に対して押下する圧力の大きさを検出可能な機構を有する場合、入力操作受付部１９１は、ユーザが押下した圧力の大きさを判別する。また、プロセッサ１９０は、タッチスクリーン１３０へのユーザの指などの接近を検出している状態を、「タッチオン状態」と判別する。プロセッサ１９０は、タッチスクリーン１３０へのユーザの指などの接近を検出しない状態を、「タッチオフ状態」と判別する。プロセッサ１９０は、タッチスクリーン１３０が逐次出力するユーザの指などの接近位置を示す座標を、「タッチナウ」の座標として受け付ける。
【００３８】
ここで、（１）「接近操作」とは、ユーザが指などをタッチスクリーン１３０に接近させる操作である。タッチスクリーン１３０は、ユーザの指などが接近したこと（ユーザの指などがタッチスクリーン１３０に接触したことを含む）をタッチパネル１３１により検出し、検出したタッチスクリーン１３０の座標に応じた信号をプロセッサ１９０へ出力する。プロセッサ１９０は、タッチスクリーン１３０へのユーザの指などの接近を検出しない状態から、接近を検出したときに、「タッチオフ状態」から「タッチオン状態」になったと判別する。
【００３９】
（２）「リリース操作」とは、ユーザがタッチスクリーン１３０から指を離す操作である。入力操作受付部１９１は、例えば、ユーザが指などをタッチスクリーン１３０に接触させている状態から、指を離す操作をしたときに、「リリース操作」が入力されたと判別する。プロセッサ１９０は、タッチスクリーン１３０へのユーザの指などの接近を検出している状態から、接近を検出しない状態になったときに、状態が「タッチオン状態」から「タッチオフ状態」になったと判別する。
【００４０】
（３）「タップ操作」とは、ユーザがタッチスクリーン１３０に対して指などを接近させる接近操作をした後に、接近操作をした位置でリリース操作を行なうことである。入力操作受付部１９１は、接近操作が検出されない状態（ユーザの指などがタッチパネル１３１から離れており、タッチパネル１３１がユーザの指などの接近を検出していない状態）から、接近操作を検出した場合に、その検出した座標を「タッチ開始位置」として保持する。入力操作受付部１９１は、タッチ開始位置の座標と、リリース操作をする直前に（タッチオフ状態が検出される直前に）タッチパネル１３１により検出されている座標とがほぼ同一である場合（接近操作が検出された座標から一定範囲内の座標においてリリース操作にかかる座標が検出された場合）に、ユーザの操作を「タップ操作」と判別する。
【００４１】
（４）「ダブルタップ操作」とは、ユーザがタップ操作を一定時間内に２回行なう操作である。入力操作受付部１９１は、例えば、ユーザの操作をタップ操作と判別してから一定時間内に、タップ操作にかかる座標で再びタップ操作を判別した場合に、「ダブルタップ操作」が入力されたと判別する。
【００４２】
（５）「長押し操作」とは、ユーザがタッチスクリーン１３０を押し続ける操作である。タッチスクリーン１３０は、ユーザの操作を検出して接近操作を判別してから、接近操作が検出された座標において接近操作が継続している時間が一定時間を超えた場合に、「長押し操作」（「長押し操作」を、「ロングタッチ操作」と称することもある）が入力されたと判別する。
【００４３】
（６）「ドラッグ操作」とは、ユーザがタッチスクリーン１３０に指などを接近させた接近状態を維持したまま、指をスライドさせる操作である。
【００４４】
（７）「ムーブ操作」とは、ユーザがタッチスクリーン１３０において、接近操作を維持しつつ、タッチスクリーン１３０に指などを接近させている位置を移動させてリリース操作を行なう一連の操作をいう。
【００４５】
（８）「フリック操作」は、ユーザがムーブ操作を予め定められた時間よりも短い時間で行なう操作をいう。フリック操作は、ユーザがタッチスクリーン１３０で指を弾くような操作である。記憶部１５０は、例えば、ユーザがムーブ操作を行なう時間と比較するための閾値を保持する。プロセッサ１９０は、ユーザがタッチスクリーン１３０において指などを接近させている位置を一定距離移動させるまでの時間が、当該閾値未満の場合にフリック操作が入力されたと判断する。また、プロセッサ１９０は、上記時間を複数の閾値と比較し得る。プロセッサ１９０は、上記時間が第１の閾値よりも短い場合（比較的素早く指を弾く場合）は、フリック操作が「強フリック」であると判断し、第１の閾値よりも大きく第２の閾値（第２の閾値を、第１の閾値よりも大きく設定する）よりも小さい場合に、フリック操作が「弱フリック」であると判断し得る。
【００４６】
ゲーム進行処理部１９２は、ユーザの操作に応じて、各種のプログラムを呼び出す等によりゲームを進行させる処理を行なう。例えば、ゲーム進行処理部１９２は、サーバ２０と通信し、ゲームの進行に応じてサーバ２０へデータを送信する処理、サーバ２０からゲームに関連するデータを受信する処理、ゲームの進行に応じてユーザに報酬を付与する処理、時間の経過を計測する処理その他の処理を行なう。
【００４７】
移動操作検出部１９３は、タッチスクリーン１３０に対するユーザの入力操作に基づいて、ゲームに登場するキャラクタを移動させる入力操作を検出する。例えば、ゲームプログラム１５１がアクションゲーム、ロールプレイングゲーム、アクションロールプレイングゲームである場合、移動操作検出部１９３は、ユーザの入力操作に基づいて、ユーザの操作するキャラクタを移動させる方向を検出する。このように、移動操作検出部１９３は、ユーザがキャラクタの移動方向を指定する入力操作を受け付ける。
【００４８】
具体的には、移動操作検出部１９３は、ユーザがドラッグ操作を行った場合に、タッチ開始位置の座標とタッチスクリーン１３０の検出結果とに基づいて、キャラクタの移動方向を検出する。移動操作検出部１９３の詳細な処理は、後述する。
【００４９】
仮想カメラ制御部１９４は、仮想空間に配置される各オブジェクトを、どのようにユーザに見せるかを決定する。具体的には、仮想カメラ制御部１９４は、プロセッサ１９０がゲームプログラム１５１を読み込んで実行することで生成される仮想空間において、仮想カメラの配置（カメラワーク）を制御する。プロセッサ１９０は、仮想空間における仮想カメラの撮影画像をディスプレイ１３２に表示することで、ユーザに対しゲームのプレイ環境を提供する。
【００５０】
また、仮想カメラ制御部１９４は、加速度センサ１８５が検出する重力方向に対するディスプレイ１３２の傾きに応じて、仮想カメラの視界のアスペクト比を変更する。当該制御については後述する。
【００５１】
オブジェクト制御部１９５は、入力操作受付部１９１が受け付けたユーザの操作内容に基づいてゲームに登場する各種オブジェクト（例えば、ＧＵＩ（Graphical  User  Interface）画面など）の生成、変形、移動などの処理を制御する。オブジェクト制御部１９５は、例えば、ユーザがキャラクタを移動させるためのタッチスクリーン１３０に対する入力操作に基づいて、キャラクタの移動方向を示すオブジェクトを生成する。
【００５２】
表示制御部１９６は、仮想カメラのカメラワークに従った画像をディスプレイ１３２に出力する。表示制御部１９６は、仮想空間内における仮想カメラの配置に応じて、ディスプレイ１３２の表示内容を決定し、決定した表示内容に従う画像、テキスト等の各種の情報をディスプレイ１３２に出力する。
【００５３】
また、表示制御部１９６は、加速度センサ１８５が検出する重力方向に対するディスプレイ１３２の傾きに応じて、ディスプレイ１３２の表示画面を回転させ、縦長画面と横長画面とを切り替える。一例として、加速度センサ１８５は、重力方向に対するディスプレイ１３２の長手方向の角度（０〜１８０度）を検出する。表示制御部１９６は、加速度センサ１８５が検出する角度が４５度以下、または１３５度よりも大きい場合、ディスプレイ１３２に縦長画面を表示する。一方、表示制御部１９６は、加速度センサ１８５が検出する角度が４５度よりも大きく１３５度以下である場合、ディスプレイ１３２に横長画面を表示する。
【００５４】
（サーバ２０の構成）
図３は、ある実施形態に従うサーバ２０の機能的な構成を示すブロック図である。図３を参照して、サーバ２０の詳細な構成を説明する。サーバ２０は、プログラムに従って動作することにより、記憶部２５０と、制御部２９０として機能する。
【００５５】
記憶部２５０は、携帯端末１０においてユーザがゲームを進行させるための各種プログラムおよびデータを記憶する。ある局面において、記憶部２５０は、ゲームプログラム２５１と、ゲーム情報２５２と、ユーザ情報２５３とを記憶する。記憶部２５０は、メモリ２５およびストレージ２６によって構成される。
【００５６】
ゲームプログラム２５１は、サーバ２０が携帯端末１０と通信して、携帯端末１０においてゲームを進行させるためのプログラムである。ゲームプログラム２５１は、ゲームを進行させるための各種データであるゲーム情報２５２およびユーザ情報２５３等を参照して、ユーザの入力操作に応じてゲームを進行させる。プロセッサ２９は、ゲームプログラム２５１を実行することにより、携帯端末１０とデータを送受信する処理、携帯端末１０のユーザが行った操作内容に応じてゲームを進行させる処理、ゲームをプレイするユーザの情報を更新する処理その他の処理を行なう。
【００５７】
ゲーム情報２５２は、ゲームプログラム２５１が参照する各種のデータを含む。ゲーム情報２５２は、オブジェクト管理テーブル２５２Ａと、パッシブスキル管理テーブル２５２Ｂと、アクティブスキル管理テーブル２５２Ｃとを含む。
【００５８】
オブジェクト管理テーブル２５２Ａは、ゲームの仮想空間内に配置されるオブジェクト、および当該オブジェクトに設定される情報を含む。携帯端末１０は、仮想空間内に配置されるオブジェクトを、仮想空間内に配置される仮想カメラによって撮影した画像をディスプレイ１３２に表示することでゲームを進行させる。
【００５９】
ここで、オブジェクトとしては、例えば、携帯端末１０のユーザが操作するキャラクタ（以下、「自キャラクタ」とも称する）を示すオブジェクト、自キャラクタが装着する装着対象物を示すオブジェクト、仮想空間におけるフィールドを形成する木や岩などを示すオブジェクトなど様々なものがある。プロセッサ１９０は、ユーザがタッチスクリーン１３０に対して予め定められた入力操作を行なうこと、ゲームの進行に伴い一定の条件を満たすこと、その他の様々な事象の発生を契機として、オブジェクトに対応付けられた処理を行なう。
【００６０】
例えば、あるオブジェクトに対してユーザがタッチスクリーン１３０に対して接近操作を行なうことで、プロセッサ１９０は、オブジェクトを、ユーザによって選択された状態とする。また、例えば、プロセッサ１９０は、ユーザによるドラッグ操作を受け付けることで、ユーザが移動対象とするオブジェクト（例えば、自キャラクタ）を、ドラッグ操作に応じて移動させる等の処理を行なう。また、例えば、プロセッサ１９０は、ユーザがオブジェクトに対して行なうタッチ操作を受け付けることで、ユーザに対し、ゲームを有利に進めるための報酬を付与する等の処理を行なう。
【００６１】
パッシブスキル管理テーブル２５２Ｂは、オブジェクトを識別する情報と、オブジェクトに対応付けられたパッシブスキルの情報とが対応付けられている。ここで、パッシブスキルとは、例えば、ゲームにおいて予め定められた条件が満たされたときに発動され、ユーザがゲームを有利に進行させることができるものである。例えば、パッシブスキルが発動した場合に、キャラクタの移動速度が向上する等の、ゲームを有利に進行させられる効果を発揮させる。
【００６２】
アクティブスキル管理テーブル２５２Ｃは、オブジェクトを識別する情報と、オブジェクトに対応付けられたアクティブスキルの情報とが対応付けられている。ここで、アクティブスキルとは、例えば、ゲームにおいて予め定められた条件が満たされたときに発動可能な状態となる。アクティブスキルが発動すると、ユーザは、ゲームを有利に進行させることができる。
【００６３】
ユーザ情報２５３は、ゲームをプレイするユーザについての情報である。ユーザ情報２５３は、ユーザ管理テーブル２５３Ａを含む。ユーザ管理テーブル２５３Ａは、各ユーザを識別する情報と、ユーザがゲームを進行させた度合いを示す情報と、ユーザがゲーム内で保有するアイテム、キャラクタ、キャラクタが使用する装着物等の情報その他の情報を含む。
【００６４】
制御部２９０は、送受信部２９１、サーバ処理部２９２、データ管理部２９３、マッチング部２９４、計測部２９５としての機能を含む。これらの機能は、サーバ２０のプロセッサ２９が、記憶部２５０に記憶されるゲームプログラム２５１を実行することにより、実現される。
【００６５】
送受信部２９１は、ゲームプログラム１５１を実行する携帯端末１０と各種情報を送受信する。携帯端末１０とサーバ２０とは、オブジェクトを仮想空間に配置する要求、オブジェクトを削除する要求、オブジェクトを移動させる要求、ユーザが獲得する報酬に応じて各種パラメータを更新する要求、何らかの条件を満たした旨の通知、ゲームを進行させるための画像、音声その他のデータを送受信する。
【００６６】
サーバ処理部２９２は、サーバ２０によりゲームの進行に必要な処理を行なう。サーバ処理部２９２は、例えば、携帯端末１０から受信した情報に基づいて、ゲーム情報２５２、ユーザ情報２５３などのデータを更新する。サーバ処理部２９２は、更新したデータを携帯端末１０に送信することでゲームを進行させる。
【００６７】
データ管理部２９３は、サーバ処理部２９２の処理結果に従って、記憶部２５０に記憶される各種データを更新する処理、データベースにレコードを追加／更新／削除する処理などを行なう。
【００６８】
マッチング部２９４は、複数のユーザを関連付けるための一連の処理を行なう。マッチング部２９４は、例えば、ユーザがマルチプレイを行なうための入力操作を行った場合に、ゲームを協力してプレイさせるユーザ同士を関連付ける処理などを行なう。
【００６９】
計測部２９５は、時間を計測する処理を行なう。計測部２９５は、例えば、仮想空間に配置される各オブジェクトについて時間の経過を計測する。また、計測部２９５は、携帯端末１０がゲームプログラム１５１を実行している累計時間を計測する。サーバ２０は、携帯端末１０から各種の計測結果を受信する。この計測結果は、携帯端末１０がゲームプログラム１５１を実行することにより計測される。サーバ２０は、受信した各種の計測結果と、計測部２９５の計測結果とを照合することで、携帯端末１０とサーバ２０との間の、各種の時間に関する情報を同期させる。
【００７０】
＜構成のまとめ＞
以上のように、ある実施形態のゲーム配信システム１の構成を説明してきた。当該実施形態において、ゲームプログラム１５１は、例えばアクションロールプレイングゲームであり、仮想空間内の仮想カメラの配置に応じた画面をタッチスクリーン１３０に表示させることでゲームを進行させる。
【００７１】
例えば、ゲームプログラム１５１がアクションロールプレイングゲームである場合、ゲーム進行処理部１９２は、画像やテキストなどディスプレイ１３２に表示するデータを決定する処理、プレイ対象とする１以上のイベント（クエスト）をディスプレイ１３２に表示してイベントの選択をユーザから受け付ける処理、ユーザの操作に応じてイベントを進める処理などの基本的な処理を行なう。
【００７２】
（仮想カメラの視界）
図４は、ある実施形態に従う仮想空間および仮想カメラについて説明する図である。ある局面において、携帯端末１０のプロセッサ１９０は、ゲーム進行処理部１９２として、仮想空間４１０を規定する。続いて、プロセッサ１９０は、オブジェクト制御部１９５として、ゲームプログラム１５１を実行することにより、仮想空間４１０に建物、木、岩、などのオブジェクトを含むフィールド（マップ）を形成する。オブジェクト制御部１９５は、仮想空間に形成されるフィールドに、携帯端末１０のユーザが操作する自キャラクタ、自キャラクタを攻撃する敵キャラクタ、仮想カメラ４２０などのオブジェクトを配置する。プロセッサ１９０は、表示制御部１９６として、仮想カメラ４２０が撮影する画像４３０をディスプレイ１３２に表示する。
【００７３】
図５および図６を参照して、仮想カメラの視界（視野角）について説明する。図５は、仮想カメラ４２０の視界領域をＸ方向から見たＹＺ断面を表す図である。図６は、仮想カメラ４２０の視界領域をＹ方向から見たＸＺ断面を表す図である。
【００７４】
一例として、仮想カメラ４２０の視界（視野角）は、タッチスクリーン１３０（ディスプレイ１３２）の縦の画素数および横の画素数に応じて定められる。図５および図６を参照して、ＹＺ断面における仮想カメラ４２０の視野角αおよび、ＸＺ断面における仮想カメラ４２０の視野角βは、一例として、ディスプレイ１３２の縦（長辺）の画素数（長さ）と、横（短辺）の画素数に基づいて設定される。
【００７５】
表示制御部１９６がディスプレイ１３２に縦長画面を表示する場合、仮想カメラ制御部１９４は、仮想カメラ４２０の視野角αをディスプレイ１３２の縦の画素数に応じて設定し、視野角βを横の画素数に応じて設定する。一方、表示制御部１９６がディスプレイ１３２に横長画面を表示する場合、仮想カメラ制御部１９４は、仮想カメラ４２０の視野角αをディスプレイ１３２の横の画素数に応じて設定し、視野角βを縦の画素数に応じて設定する。すなわち、仮想カメラ制御部１９４は、加速度センサ１８５の検出する携帯端末１０の傾きに応じて、仮想カメラ４２０の視界のアスペクト比を、縦長のアスペクト比と横長のアスペクト比との間で切り替える。
【００７６】
（縦画面と横画面との切り替え）
図７は、ある実施形態に従う縦画面表示と横画面表示との切り替えについて説明する図である。状態（Ａ）において、加速度センサ１８５は、タッチスクリーン１３０の長辺方向が重力方向に対して０度傾いている状態を示す。表示制御部１９６は、加速度センサ１８５の検出結果に応じて、タッチスクリーン１３０に縦長画面を表示する。
【００７７】
状態（Ａ）において、タッチスクリーン１３０には、ユーザが操作する自キャラクタ７１０と、敵キャラクタ７２０と、木７３０とが表示されている。さらに、タッチスクリーン１３０には、ＧＵＩ等の常時表示部品７４０，７５０，７６０，７７０と、メッセージ等の一時表示部品７８０とが表示されている。以下、常時表示部品と一時表示部品とを総称して独立部品とも称する。
【００７８】
ある局面において、常時表示部品７４０および７５０はそれぞれ、異なるアクティブスキルを発動させるためのボタンであり得る。ユーザがタッチスクリーン１３０上に表示される常時表示部品７４０または７５０を押下すると、プロセッサ１９０はゲーム進行処理部１９２として、ゲーム情報１５２を参照して、常時表示部品７４０または７５０に対応するアクティブスキルを発動させる。
【００７９】
ある局面において、常時表示部品７６０は、メニューボタンであり得る。ユーザがタッチスクリーン１３０上に表示される常時表示部品７６０を押下すると、プロセッサ１９０は、ゲームを行なう環境（例えば、タッチパネル１３１の入力感度）を変更するための設定画面を表示する。ある局面において、常時表示部品７７０は、自キャラクタ７１０の体力（ヒットポイント）を表示する体力ゲージであり得る。
【００８０】
ある局面において、一時表示部品７８０は、ゲームの進行に応じて生じた事象を表示するためのメッセージであり得る。
【００８１】
ある局面において、携帯端末１０のユーザは、携帯端末１０を縦長の状態（Ａ）から携帯端末１０を傾けて、横長の状態（Ｂ）へと遷移させる。これにより、加速度センサ１８５は、タッチスクリーン１３０の長辺方向が重力方向に対して略９０度傾いている旨を検出する。
【００８２】
プロセッサ１９０は、表示制御部１９６として、この加速度センサ１８５の検出結果に応じて、タッチスクリーン１３０に表示される画面を９０度回転させ、縦長画面から横長画面に切り替える。またプロセッサ１９０は、仮想カメラ制御部１９４として、タッチスクリーン１３０の画面表示が横画面表示に切り替わるとともに、仮想カメラ４２０の視界（視野角）を縦長のアスペクト比から横長のアスペクト比に切り替える。
【００８３】
またプロセッサ１９０は、オブジェクト制御部１９５として、タッチスクリーン１３０の画面表示が横画面表示に切り替わるとともに、独立部品の表示位置を変更する。この制御の詳細は、後述する。
【００８４】
（タッチスクリーンに表示される画像の生成方法）
図８は、ある実施形態に従うタッチスクリーン１３０に表示される画像の生成方法の一例について説明する図である。一例として、図７の状態（Ａ）に表示される画像の生成方法について説明する。
【００８５】
分図（Ａ）を参照して、プロセッサ１９０は、オブジェクト制御部１９５として、仮想空間４１０に仮想カメラ４２０と、自キャラクタ７１０と、敵キャラクタ７２０と、木７３０とを配置する。一例として、オブジェクト制御部１９５は、仮想カメラ４２０の視界の略中央部に自キャラクタ７１０を配置する。プロセッサ１９０は、ユーザのタッチスクリーン１３０に対するドラッグ操作に応じて、自キャラクタ７１０および仮想カメラ４２０を移動する。これにより、分図（Ｂ）に示される仮想カメラ４２０の撮影する画像８１０は、ドラッグ操作に応じて変化する。
【００８６】
分図（Ｃ）を参照して、プロセッサ１９０は、オブジェクト制御部１９５として、仮想空間４１０とは異なる仮想空間８３０に、仮想カメラ８４０と、常時表示部品７４０，７５０，７６０，７７０、および一時表示部品７８０とを配置する。より具体的には、オブジェクト制御部１９５は、仮想カメラ８４０の視界内に収まるように独立部品を配置する。仮想カメラ８４０は、独立部品を撮影することにより、部品画像を得る。
【００８７】
プロセッサ１９０は、仮想カメラ制御部１９４として、仮想カメラ８４０の配置位置を固定する。すなわち、仮想カメラ制御部１９４は、移動操作検出部１９３がユーザのタッチスクリーン１３０に対するドラッグ操作を検出したとしても、当該ドラッグ操作に応じて仮想カメラ８４０を移動させない。これにより、分図（Ｄ）に示される仮想カメラ８４０の撮影する画像８２０は、ドラッグ操作に応じて変化しない。
【００８８】
プロセッサ１９０は、表示制御部１９６として、仮想カメラ４２０が撮影する画像に、仮想カメラ８４０が撮影する画像（部品画像）を重ね合わせて、図７の状態（Ａ）に示される画像を生成する。表示制御部１９６は、生成した画像をディスプレイ１３２に表示する。当該構成によれば、オブジェクト制御部１９５は、ドラッグ操作に応じて、仮想カメラ４２０と自キャラクタ７１０とともに、独立部品を動かさなくてもよい。そのため、プロセッサ１９０の処理速度を向上し得る。
【００８９】
上記説明したように、仮想カメラ制御部１９４は、タッチスクリーン１３０に表示される画面が縦長画面から横長画面に切り替わるとともに、仮想カメラ４２０の視界（視野角）を縦長のアスペクト比から横長のアスペクト比に切り替える。このとき、自キャラクタ７１０は、アスペクト比が変更された後の仮想カメラ４２０の視界の略中央に位置する。
【００９０】
また、仮想カメラ制御部１９４は、タッチスクリーン１３０に表示される画面が縦長画面から横長画面に切り替わるとともに、仮想カメラ８４０の視界も上記縦長のアスペクト比から上記横長のアスペクト比に切り替える。
【００９１】
当該アスペクト比の切り替えに応じて、オブジェクト制御部１９５は、独立部品の配置位置をアスペクト比を変更後の仮想カメラ８４０の視界に収まるように配置する。
【００９２】
（常時表示部品と一時表示部品）
図９は、ある実施形態に従う常時表示部品と一時表示部品とについて説明する図である。なお、図９において図７と同一符号を付している部分については同じであるため、その説明は繰り返さない。
【００９３】
状態（Ａ）において、ユーザは、タッチスクリーン１３０上で指を左から右にスライドするドラッグ操作９１０を行なう。プロセッサ１９０は、移動操作検出部１９３としてユーザのドラッグ操作が示す方向を検出する。一例として、移動操作検出部１９３は、ユーザの操作をドラッグ操作と判別している場合に、ドラッグ操作の起点となるタッチ開始位置を起点とし、タッチスクリーン１３０がユーザの指などの接近を検出している位置（タッチ継続位置）を終点とするベクトル方向を検出する。プロセッサ１９０は、仮想カメラ制御部１９４およびオブジェクト制御部１９５として、移動操作検出部１９３が検出するベクトル方向、すなわち右方向に自キャラクタ７１０および仮想カメラ４２０を移動させる。一方、仮想カメラ制御部１９４は、独立部品を撮影する仮想カメラ８４０を移動操作検出部１９３が検出するベクトル方向に移動させない。これによりタッチスクリーン１３０に表示される画像は、状態（Ａ）から状態（Ｂ）に遷移する。
【００９４】
状態（Ｂ）を参照して、自キャラクタ７１０が敵キャラクタ７２０および木７３０に対して右方向に移動しているのに対して、独立部品は移動していない。
【００９５】
次に状態（Ｂ）および（Ｃ）を参照して、常時表示部品７４０〜７７０と一時表示部品７８０とについて説明する。常時表示部品７４０〜７７０は、仮想カメラ４２０が撮影する画像の少なくとも一部がディスプレイ１３２に表示されている状態において、定常的にディスプレイ１３２に表示される。一方、一時表示部品７８０は、仮想カメラ４２０が撮影する画像の少なくとも一部がディスプレイ１３２に表示されている状態において、一時的にディスプレイ１３２に表示される。
【００９６】
状態（Ｂ）の状態から一定時間が経過すると、オブジェクト制御部１９５が、仮想空間８３０から一時表示部品７８０を消去する。そのため、状態（Ｂ）の状態から一定時間が経過した状態（Ｃ）において、一時表示部品７８０はタッチスクリーン１３０から消えている。
【００９７】
（縦長画面および横長画面における一時表示部品の表示位置）
次に、図１０〜１４を用いて、ディスプレイ１３２が縦長画面を表示しているときの一時表示部品の位置と、横長画面を表示しているときの一時表示部品の位置との相関関係について説明する。縦長画像は、仮想カメラ４２０と８４０とが縦長のアスペクト比で撮影する画像を重ね合わせた画像である。横長画像は、仮想カメラ４２０と８４０とが横長のアスペクト比で撮影する画像を重ね合わせた画像である。
【００９８】
図１０は、ある実施形態に従う縦長画面および横長画面における一時表示部品７８０の位置関係について説明する図である。なお、図１０において図７と同一符号を付している部分については同じであるため、その説明は繰り返さない。
【００９９】
状態（Ａ）を参照して、タッチスクリーン１３０に縦長画面が表示されている状態において、オブジェクト制御部１９５は、自キャラクタ７１０の位置を基準に、一時表示部品７８０の配置位置を決定する。状態（Ａ）に示される例において、オブジェクト制御部１９５は、一時表示部品７８０が自キャラクタ７１０から予め定められた方位γに予め定められた距離１０１０だけ離れた位置に表示されるように、仮想空間８３０に一時表示部品７８０を配置する。
【０１００】
状態（Ｂ）を参照して、タッチスクリーン１３０に横長画面が表示されている状態において、オブジェクト制御部１９５は、縦長画面表示時における一時表示部品７８０の配置条件と同じ条件で、仮想空間８３０に一時表示部品７８０を配置する。すなわち、オブジェクト制御部１９５は、一時表示部品７８０が自キャラクタ７１０から予め定められた方位γに予め定められた距離１０１０だけ離れた位置に表示されるように、仮想空間８３０に一時表示部品７８０を配置する。
【０１０１】
上記によれば、ユーザが携帯端末１０を傾けてタッチスクリーン１３０に表示される画面が縦長画面と横長画面との間で切り替わったとしても、縦長画面および横長画面における一時表示部品７８０と自キャラクタ７１０との位置関係が維持される。また、ユーザは、縦長画面および横長画面において、主にユーザの操作対象である自キャラクタ７１０付近を注目する。そのため、縦長画面と横長画面とが切り替わった場合であっても、ユーザの視界における自キャラクタ７１０と一時表示部品７８０との位置関係が維持される。これにより、ユーザは、携帯端末１０を傾けて縦長画面と横長画面とを切り替えたときに、シームレスに一時表示部品７８０を認識できる。
【０１０２】
図１１は、他の実施形態に従う縦長画面および横長画面における一時表示部品７８０の位置関係について説明する図である。なお、図１１において図７と同一符号を付している部分については同じであるため、その説明は繰り返さない。
【０１０３】
状態（Ａ）を参照して、タッチスクリーン１３０に縦長画面が表示されている状態において、オブジェクト制御部１９５は、タッチスクリーン１３０の長辺の長さを予め定められた割合で内分する位置に一時表示部品７８０が表示されるように制御する。状態（Ａ）に示される例において、オブジェクト制御部１９５は、一時表示部品７８０がタッチスクリーン１３０の長辺方向に対して表示される位置１１１０によって内分される距離１１２０と距離１１３０との割合が予め定められた割合になるように、仮想空間８３０に一時表示部品７８０を配置する。
【０１０４】
状態（Ｂ）を参照して、タッチスクリーン１３０に横長画面が表示されている状態においても、オブジェクト制御部１９５は、タッチスクリーン１３０の短辺の長さを上記予め定められた割合で内分する位置に一時表示部品７８０が表示されるように制御する。すなわち、オブジェクト制御部１９５は、一時表示部品７８０がタッチスクリーン１３０の短辺方向に対して表示される位置１１５０によって内分される距離１１６０と距離１１７０との割合が、距離１１２０と距離１１３０との割合と等しくなるように、仮想空間８３０に一時表示部品７８０を配置する。
【０１０５】
上記によれば、タッチスクリーン１３０に表示される画面が縦長画面と横長画面との間で切り替わった場合でも、表示画面に対する一時表示部品７８０の相対的な位置があまり変わらない。そのため、ユーザは、携帯端末１０を傾けて縦長画面と横長画面とを切り替えたときに、違和感なくシームレスに一時表示部品７８０を認識できる。
【０１０６】
なお、上記の例では、オブジェクト制御部１９５は、縦長画面における一時表示部品７８０によって内分される上下の割合と横長画面における一時表示部品７８０によって内分される上下の割合が等しくなるように、一時表示部品７８０を配置する。他の局面において、オブジェクト制御部１９５は、縦長画面における一時表示部品７８０によって内分される左右の割合と横長画面における一時表示部品７８０によって内分される左右の割合が等しくなるように、一時表示部品７８０を配置してもよい。
【０１０７】
図１２は、さらに他の実施形態に従う縦長画面および横長画面における一時表示部品７８０の位置関係について説明する図である。なお、図１２において図７と同一符号を付している部分については同じであるため、その説明は繰り返さない。
【０１０８】
状態（Ａ）を参照して、タッチスクリーン１３０に縦長画面が表示されている状態において、オブジェクト制御部１９５は、一時表示部品７８０が縦長画面の横方向における中央線１２１０から予め定められた距離１２２０の位置に表示されるように、仮想空間８３０に一時表示部品７８０を配置する。
【０１０９】
状態（Ｂ）を参照して、タッチスクリーン１３０に横長画面が表示されている状態において、オブジェクト制御部１９５は、一時表示部品７８０が横長画面の横方向における中央線１２３０から予め定められた距離１２２０の位置に表示されるように、仮想空間８３０に一時表示部品７８０を配置する。
【０１１０】
すなわち、オブジェクト制御部１９５は、縦長画面および横長画面において、横方向における中央線から等しい距離に一時表示部品７８０を配置する。
【０１１１】
上記によれば、一時表示部品７８０は、横長画面において、縦長画面時の横幅を基準とした位置に配置される。そのため、ユーザは、携帯端末１０を傾けて縦長画面と横長画面とを切り替えたときに、違和感なくシームレスに一時表示部品７８０を認識できる。
【０１１２】
なお、上記の例では、一時表示部品７８０が、縦長画面時の横幅（短辺の長さ）を基準とした位置に一時表示部品７８０を配置する構成としたが、他の局面において、横長画面時の縦幅（短辺の長さ）を基準として一時表示部品７８０を配置する構成であってもよい。そこで、図１３を用いて具体的に当該構成について説明する。
【０１１３】
図１３は、さらに他の実施形態に従う縦長画面および横長画面における一時表示部品７８０の位置関係について説明する図である。状態（Ａ）および（Ｂ）を参照して、オブジェクト制御部１９５は、横長画面および縦長画面において、縦方向における中央線１３１０および１３３０それぞれから等しい距離１３２０に、一時表示部品７８０を配置する。
【０１１４】
上記によれば、一時表示部品７８０は、縦長画面において、横長画面時の縦幅を基準とした位置に配置される。そのため、ユーザは、携帯端末１０を傾けて縦長画面と横長画面とを切り替えたときに、違和感なくシームレスに一時表示部品７８０を認識できる。
【０１１５】
図１４は、さらに他の実施形態に従う縦長画面および横長画面における一時表示部品１４２０の位置関係について説明する図である。なお、図１４において図７と同一符号を付している部分については同じであるため、その説明は繰り返さない。
【０１１６】
状態（Ａ）を参照して、タッチスクリーン１３０には、敵キャラクタのうち比較的強力なボスキャラクタ１４１０と、一時表示部品１４２０とが表示されている。一時表示部品１４２０は、例えば、ユーザにとってボスキャラクタ１４１０との戦いを有利に進めるためのメッセージである。
【０１１７】
ある局面において、オブジェクト制御部１９５は、自キャラクタ７１０および仮想カメラ４２０を、ボスキャラクタ１４１０を中心に移動させる。より具体的には、移動操作検出部１９３が検出する右ベクトル方向１４３０に対して、オブジェクト制御部１９５は、自キャラクタ７１０および仮想カメラ４２０をボスキャラクタ１４１０を中心に反時計回りに移動させる。これにより、タッチスクリーン１３０には、常に自キャラクタ７１０およびボスキャラクタ１４１０が表示される。
【０１１８】
ユーザは、ボスキャラクタ１４１０の動作に応じて、自キャラクタ７１０を操作する。このような状況において、独立部品がボスキャラクタ１４１０上に覆いかぶさって表示されることは好ましくない。そのため、一時表示部品１４２０は、タッチスクリーン１３０の端部に表示される。
【０１１９】
状態（Ａ）および（Ｂ）に示されるように、一時表示部品１４２０が縦長画面および横長画面における左右の端部に配置される場合、オブジェクト制御部１９５は、これら画面の上下方向における一時表示部品１４２０の配置位置が予め定められた条件を満たすように制御する。
【０１２０】
図１４の例において、オブジェクト制御部１９５は、縦長画面および横長画面において一時表示部品１４２０が配置される上下方向の位置１４５０および１４７０それぞれによって内分される上下の割合、すなわち、距離１４６０と距離１４６５との割合と、距離１４８０と距離１４８５との割合とが等しくなるように、一時表示部品１４２０を配置する。
【０１２１】
上記によれば、オブジェクト制御部１９５は、縦長画面および横長画面において、一時表示部品１４２０とボスキャラクタ１４１０とが重なる部分を最小限に抑えつつ、一時表示部品１４２０の表示位置の一貫性を担保できる。そのため、ユーザは、携帯端末１０を傾けて縦長画面と横長画面とを切り替えたときに、一時表示部品１４２０によってボスキャラクタ１４１０の動作確認を邪魔されることなく、かつ、違和感なくシームレスに一時表示部品１４２０を認識できる。
【０１２２】
なお、他の局面において、オブジェクト制御部１９５は、縦長画面および横長画面において、画面の上下方向における中央線から等しい距離に一時表示部品１４２０を配置する構成であってもよい。
【０１２３】
図１０〜１４では縦長画面および横長画面における一時表示部品の配置位置について説明したが、常時表示部品についても同様に配置し得る。これにより、ユーザは、携帯端末１０を傾けて縦長画面と横長画面とを切り替えたときに、シームレスに常時表示部品を認識できる。
【０１２４】
図１５は、上記一連の縦長画面および横長画面を切り替えるとき制御について説明するフローチャートである。図１５に示される処理は、プロセッサ１９０が記憶部１５０に格納されるゲームプログラム１５１を実行することにより実現される。また、図１５に示される処理は、仮想カメラ４２０および８３０の撮影する画像がタッチスクリーン１３０に表示されているときに実行される。
【０１２５】
ステップＳ１５１０において、プロセッサ１９０は、加速度センサ１８５の検出する傾きが属する範囲が切り替わった否かを判断する。一例として、加速度センサ１８５は、重力方向に対するタッチスクリーン１３０の長手方向の角度（０〜１８０度）を検出する。プロセッサ１９０は、当該角度が４５度以下、および１３５度よりも大きい範囲と、４５度よりも大きく１３５度以下の範囲との間で切り替わったか否かを判断する。
【０１２６】
プロセッサ１９０は、加速度センサ１８５の検出する傾きが属する範囲が切り替わったと判断した場合（ステップＳ１５１０においてＹＥＳ）、処理をステップＳ１５２０に進める。そうでない場合（ステップＳ１５１０においてＮＯ）、プロセッサ１９０は処理をステップＳ１５１０に戻す。
【０１２７】
ステップＳ１５２０において、プロセッサ１９０は、仮想カメラ制御部１９４として、仮想カメラ４２０および８４０の視界のアスペクト比を変更する。一例として、ステップＳ１５１０で加速度センサ１８５が検出する傾きが属する範囲が、４５度よりも大きく１３５度以下の範囲に切り替わった場合、仮想カメラ制御部１９４は、仮想カメラ４２０および８４０の視界のアスペクト比を縦長のアスペクト比から横長のアスペクト比に変更する。
【０１２８】
ステップＳ１５３０において、プロセッサ１９０は、オブジェクト制御部１９５として、仮想空間８３０に配置される独立部品の配置位置を変更する。このとき、オブジェクト制御部１９５は、ある独立部品について、仮想カメラ４２０が縦長のアスペクト比で撮影する画像に対して重ね合わせられる位置および、横長のアスペクト比で撮影する画像に対して重ね合わせられる位置がそれぞれ、上記説明した共通する予め定められた条件を満たすように、配置位置を変更する。
【０１２９】
ステップＳ１５４０において、プロセッサ１９０は、表示制御部１９６として、タッチスクリーン１３０に表示される画面を回転させる。これにより、タッチスクリーン１３０に表示される画面が縦長画面と横長画面との間で切り替わる。その後、プロセッサ１９０は、処理をステップＳ１５１０に戻す。
【０１３０】
なお、他の局面において、ステップＳ１５２０と、ステップＳ１５３０と、ステップＳ１５４０とは、任意の順番に入れ替えられてもよい。
【０１３１】
上記によれば、タッチスクリーン１３０に表示される画面が縦長画面と横長画面との間で切り替わったとしても、独立部品は、縦長画面および横長画面において、共通する予め定められた条件に従って配置される。そのため、独立部品は、縦長画面および横長画面において、似たような位置に配置される。その結果、ユーザは、ユーザは、携帯端末１０を傾けて縦長画面と横長画面とを切り替えたときに、シームレスに独立部品を認識できる。換言すれば、ゲームプログラム１５１は、縦長画面と横長画面との切り替え時にユーザに違和感を抱かせないことにより、ユーザのゲームへの没入感をより向上し得る。
【０１３２】
今回開示された実施形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１３３】
１  ゲーム配信システム、１０，１０Ａ，１０Ｂ，１０Ｃ  携帯端末、２０  サーバ、２５  メモリ、２６  ストレージ、２９，１９０  プロセッサ、８０  ネットワーク、８１  無線基地局、８２  無線ルータ、１１０  アンテナ、１３０  タッチスクリーン、１３１  タッチパネル、１３２  ディスプレイ、１５０，２５０  記憶部、１５１，２５１  ゲームプログラム、１５２，２５２  ゲーム情報、１５３，２５３  ユーザ情報、１６０  音声処理回路、１７０  マイク、１８０  スピーカ、１８５  加速度センサ、１９１  入力操作受付部、１９２  ゲーム進行処理部、１９３  移動操作検出部、１９４  仮想カメラ制御部、１９５  オブジェクト制御部、１９６  表示制御部、２５２Ａ  オブジェクト管理テーブル、２５２Ｂ  パッシブスキル管理テーブル、２５２Ｃ  アクティブスキル管理テーブル、２５３Ａ  ユーザ管理テーブル、２９０  制御部、２９１  送受信部、２９２  サーバ処理部、２９３  データ管理部、２９４  マッチング部、２９５  計測部、４１０，８３０  仮想空間、４２０，８４０  仮想カメラ、７１０  自キャラクタ、７２０  敵キャラクタ、７３０  木、７４０，７５０，７６０，７７０  常時表示部品、７８０，１４２０  一時表示部品、９１０  ドラッグ操作、１４１０  ボスキャラクタ。
【図１】
2018057463.tif 000003
【図２】
2018057463.tif 000004
【図３】
2018057463.tif 000005
【図４】
2018057463.tif 000006
【図５】
2018057463.tif 000007
【図６】
2018057463.tif 000008
【図７】
2018057463.tif 000009
【図８】
2018057463.tif 000010
【図９】
2018057463.tif 000011
【図１０】
2018057463.tif 000012
【図１１】
2018057463.tif 000013
【図１２】
2018057463.tif 000014
【図１３】
2018057463.tif 000015
【図１４】
2018057463.tif 000016
【図１５】
2018057463.tif 000017