(57)【特許請求の範囲】
【請求項１】
ゲームコンテンツに係るデータを提供する提供装置と、該提供装置から該データを受信し、前記ゲームコンテンツに係る描画処理を実行することにより前記ゲームコンテンツに係るゲーム画面を生成する実行装置とで構成されるデータ提供システムであって、
前記実行装置は、
前記ゲームコンテンツに係るデータのうち、少なくとも該ゲームコンテンツに係る描画処理の実行開始時に必要な最低限のデータを含む第１のデータとするデータを設定する設定手段と、
前記設定手段による設定に基づいて、前記第１のデータの提供要求、及び前記ゲームコンテンツに係るデータのうちの前記第１のデータ以外の第２のデータの提供要求を前記提供装置に送信する要求送信手段と、
前記提供装置から前記第１のデータ及び前記第２のデータを受信する受信手段と、
前記受信手段により受信されたデータを用いて前記ゲームコンテンツに係るゲーム画面を生成する生成手段と、を有し、
前記提供装置は、
前記実行装置から、前記第１のデータ及び前記第２のデータの提供要求を受信する要求受信手段と、
前記要求受信手段により前記第１のデータの提供要求が受信されたことに応じて、前記第１のデータを前記実行装置に送信する第１の送信手段と、
前記要求受信手段により前記第２のデータの提供要求が受信されたことに応じて、前記第２のデータを前記実行装置に送信する第２の送信手段と、を有し、
前記要求送信手段は、前記第１のデータの受信の完了後、前記第２のデータの提供要求を送信し、
前記生成手段は、前記第１のデータの受信の完了まで待機した後、受信した前記第１のデータを用いて前記ゲームコンテンツに係るゲーム画面の生成を開始し、前記第２のデータの受信後は前記第１のデータ及び前記第２のデータを用いて前記ゲームコンテンツに係るゲーム画面の生成を行う
ことを特徴とするデータ提供システム。
【請求項２】
前記要求送信手段は、前記ゲームコンテンツに係るデータの各々が前記第１のデータ及び前記第２のデータのいずれであるかを示す情報を参照し、前記提供装置に前記第１のデータあるいは前記第２のデータの提供要求を送信することを特徴とする請求項１に記載のデータ提供システム。
【請求項３】
前記実行装置は、前記受信手段による前記第１のデータの受信が完了した場合に、受信が完了したことを通知する通知手段をさらに有することを特徴とする請求項１または２に記載のデータ提供システム。
【請求項４】
前記第１のデータ及び前記第２のデータの各々は、所定の単位の複数のデータで構成され、
前記受信手段は、前記第１のデータ及び前記第２のデータに係る前記所定の単位のデータを順次受信し、
前記生成手段は、前記受信手段により前記第２のデータに係る前記所定の単位のデータを受信された場合に、前記第１のデータと該受信された前記第２のデータに係る前記所定の単位のデータを用いてゲーム画面を生成する
ことを特徴とする請求項１乃至３のいずれか１項に記載のデータ提供システム。
【請求項５】
前記第１のデータあるいは前記第２のデータを有する他の実行装置が存在する場合に、
前記要求送信手段は、前記第１のデータ及び前記第２のデータの提供要求を前記他の実行装置に送信し、
前記受信手段は、前記他の実行装置から前記第１のデータ及び前記第２のデータを受信し、
前記生成手段は、前記提供装置及び前記他の実行装置から受信した前記第１のデータあるいは前記第２のデータを用いてゲーム画面を生成する
ことを特徴とする請求項１乃至４のいずれか１項に記載のデータ提供システム。
【請求項６】
前記第１のデータ及び前記第２のデータの各々は、所定の単位の複数のデータで構成され、
前記実行装置は、前記ゲームコンテンツに係るデータを有する他の実行装置の各々から、該他の実行装置が有する前記ゲームコンテンツに係るデータを示す管理情報を受信する情報受信手段をさらに有し、
前記要求送信手段は、前記情報受信手段により受信された前記管理情報に基づいて、前記第１のデータ及び前記第２のデータのうちの他の実行装置が有する前記所定の単位のデータの提供要求の送信先を、前記提供装置から該他の実行装置に変更する
ことを特徴とする請求項５に記載のデータ提供システム。
【請求項７】
前記第１のデータ及び前記第２のデータの各々は、所定の単位の複数のデータで構成され、
前記提供装置は、前記要求受信手段により複数の前記実行装置から同一のゲームコンテンツに係るデータの提供要求を受信している場合に、前記第１の送信手段及び前記第２の送信手段により送信されるデータの送信先を制御する制御手段をさらに有し、
前記制御手段は、前記複数の実行装置に送信される前記第１のデータ及び前記第２のデータに係る前記所定の単位のデータが分散するように、各実行装置に対して前記第１の送信手段及び前記第２の送信手段により送信される前記所定の単位のデータの送信順を制御する
ことを特徴とする請求項５または６に記載のデータ提供システム。
【請求項８】
ゲームコンテンツに係る描画処理を実行することで該ゲームコンテンツに係るゲーム画面を生成する実行装置に対して、前記ゲームコンテンツに係るデータを提供する提供装置であって、
前記ゲームコンテンツに係るデータのうち、少なくとも該ゲームコンテンツに係る描画処理の実行開始時に必要な最低限のデータを含む第１のデータとして前記実行装置において設定されたデータの提供要求、及び前記ゲームコンテンツに係るデータのうちの前記第１のデータ以外の第２のデータの提供要求を前記実行装置から受信する要求受信手段と、
前記要求受信手段により前記第１のデータの提供要求が受信されたことに応じて、前記第１のデータを前記実行装置に送信する第１の送信手段と、
前記要求受信手段により前記第２のデータの提供要求が受信されたことに応じて、前記第２のデータを前記実行装置に送信する第２の送信手段と、を有し、
前記要求受信手段は、前記第１の送信手段による前記第１のデータの前記実行装置への送信が完了した後に、該実行装置から前記第２のデータの提供要求を受信する
ことを特徴とする提供装置。
【請求項９】
ゲームコンテンツに係るデータを提供する提供装置から該データを受信し、前記ゲームコンテンツに係る描画処理を実行することにより前記ゲームコンテンツに係るゲーム画面を生成する実行装置であって、
前記ゲームコンテンツに係るデータのうち、少なくとも該ゲームコンテンツに係る描画処理の実行開始時に必要な最低限のデータを含む第１のデータとするデータを設定する設定手段と、
前記設定手段による設定に基づいて、前記第１のデータの提供要求、及び前記ゲームコンテンツに係るデータのうちの前記第１のデータ以外の第２のデータの提供要求を前記提供装置に送信する要求送信手段と、
前記提供装置から前記第１のデータ及び前記第２のデータを受信する受信手段と、
前記受信手段により受信されたデータを用いて前記ゲームコンテンツに係るゲーム画面を生成する生成手段と、を有し、
前記要求送信手段は、前記第１のデータの受信の完了後、前記第２のデータの提供要求を送信し、
前記生成手段は、前記第１のデータの受信の完了まで待機した後、受信した前記第１のデータを用いて前記ゲームコンテンツに係るゲーム画面の生成を開始し、前記第２のデータの受信後は前記第１のデータ及び前記第２のデータを用いて前記ゲームコンテンツに係るゲーム画面の生成を行う
ことを特徴とする実行装置。
【請求項１０】
ゲームコンテンツに係るデータを提供する提供装置と、該提供装置から該データを受信し、前記ゲームコンテンツに係る描画処理を実行することにより前記ゲームコンテンツに係るゲーム画面を生成する実行装置とで構成されるデータ提供システムの制御方法であって、
前記実行装置が、前記ゲームコンテンツに係るデータのうち、少なくとも該ゲームコンテンツに係る描画処理の実行開始時に必要な最低限のデータを含む第１のデータとするデータを設定する設定工程と、
前記実行装置が、前記設定工程における設定に基づいて、前記第１のデータの提供要求、及び前記ゲームコンテンツに係るデータのうちの前記第１のデータ以外の第２のデータの提供要求を前記提供装置に送信する要求送信工程と、
前記提供装置が、前記実行装置から、前記第１のデータ及び前記第２のデータの提供要求を受信する要求受信工程と、
前記提供装置が、前記要求受信工程において前記第１のデータの提供要求が受信されたことに応じて、前記第１のデータを前記実行装置に送信する第１の送信工程と、
前記提供装置が、前記要求受信工程において前記第２のデータの提供要求が受信されたことに応じて、前記第２のデータを前記実行装置に送信する第２の送信工程と、
前記実行装置が、前記提供装置から前記第１のデータ及び前記第２のデータを受信する受信工程と、
前記実行装置が、前記受信工程において受信されたデータを用いて前記ゲームコンテンツに係るゲーム画面を生成する生成工程と、を有し、
前記実行装置は前記要求送信工程において、前記第１のデータの受信の完了後、前記第２のデータの提供要求を送信し、
前記実行装置は前記生成工程において、前記第１のデータの受信の完了まで待機した後、受信した前記第１のデータを用いて前記ゲームコンテンツに係るゲーム画面の生成を開始し、前記第２のデータの受信後は前記第１のデータ及び前記第２のデータを用いて前記ゲームコンテンツに係るゲーム画面の生成を行う
ことを特徴とするデータ提供システムの制御方法。
【請求項１１】
ゲームコンテンツに係る描画処理を実行することで該ゲームコンテンツに係るゲーム画面を生成する実行装置に対して、前記ゲームコンテンツに係るデータを提供する提供装置の制御方法であって、
前記ゲームコンテンツに係るデータのうち、少なくとも該ゲームコンテンツに係る描画処理の実行開始時に必要な最低限のデータを含む第１のデータとして前記実行装置において設定されたデータの提供要求、及び前記ゲームコンテンツに係るデータのうちの前記第１のデータ以外の第２のデータの提供要求を前記実行装置から受信する要求受信工程と、
前記要求受信工程において前記第１のデータの提供要求が受信されたことに応じて、前記第１のデータを前記実行装置に送信する第１の送信工程と、
前記要求受信工程において前記第２のデータの提供要求が受信されたことに応じて、前記第２のデータを前記実行装置に送信する第２の送信工程と、を有し、
前記要求受信工程において、前記第１の送信工程における前記第１のデータの前記実行装置への送信が完了した後に、該実行装置から前記第２のデータの提供要求が受信される
ことを特徴とする提供装置の制御方法。
【請求項１２】
ゲームコンテンツに係るデータを提供する提供装置から該データを受信し、前記ゲームコンテンツに係る描画処理を実行することにより前記ゲームコンテンツに係るゲーム画面を生成する実行装置の制御方法であって、
前記ゲームコンテンツに係るデータのうち、少なくとも該ゲームコンテンツに係る描画処理の実行開始時に必要な最低限のデータを含む第１のデータとするデータを設定する設定工程と、
前記設定工程における設定に基づいて、前記第１のデータの提供要求、及び前記ゲームコンテンツに係るデータのうち、前記第１のデータ以外の第２のデータの提供要求を前記提供装置に送信する要求送信工程と、
前記提供装置から前記第１のデータ及び前記第２のデータを受信する受信工程と、
前記受信工程において受信されたデータを用いて前記ゲームコンテンツに係るゲーム画面を生成する生成工程と、を有し、
前記要求送信工程において、前記第１のデータの受信の完了後、前記第２のデータの提供要求が送信され、
前記生成工程において、前記第１のデータの受信の完了まで待機した後、受信した前記第１のデータを用いて前記ゲームコンテンツに係るゲーム画面の生成が開始され、前記第２のデータの受信後は前記第１のデータ及び前記第２のデータを用いて前記ゲームコンテンツに係るゲーム画面の生成が行われる
ことを特徴とする実行装置の制御方法。
【請求項１３】
１以上のコンピュータを、請求項１乃至７のいずれか１項に記載のゲーム提供システムの各手段として機能させるためのプログラム。
【請求項１４】
コンピュータに、請求項１１に記載の提供装置の各工程を実行させるためのプログラム。
【請求項１５】
コンピュータに、請求項１２に記載の実行装置の各工程を実行させるためのプログラム。
【請求項１６】
請求項１３乃至１５のいずれか１項に記載のプログラムを記録したコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ提供システム、コンテンツ提供機器、コンテンツ再生機器、制御方法、プログラム、及び記録媒体に関し、特に、コンテンツ提供に係る機器間のデータ通信技術に関する。
【背景技術】
【０００２】
パーソナルコンピュータ（ＰＣ）、携帯電話、スマートフォン、家庭用ゲーム機器、携帯型ゲーム機器等の端末を使用することで、ユーザは様々なコンテンツを利用することができる。ユーザに対するコンテンツの提供は、使用される端末に予めパッケージとしてインストールされたアプリケーション等を実行する等、端末に保持されることで実現される。また近年では、コンテンツの利用時にコンテンツに係るデータをインストールすることなく、外部の機器から通信を介して一時的にデータを取得してユーザに提供する方法もとられている。【０００３】
例えば、ネットワークを介してゲームコンテンツを提供する、所謂オンラインゲームサービスにおいては、端末はサービス提供サーバに接続することでゲームコンテンツに関するデータを受信した後、端末上でゲームを実行することができる。また特許文献１には、他のゲーム機器からゲームプログラムをダウンロードし、ダウンロード完了後に該ゲームプログラムを実行してゲームコンテンツをユーザに提供する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３７６１０９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述のオンラインゲームサービスのように、サービスの利用時にコンテンツに係るデータの受信を必要とするサービスではデータの受信完了までコンテンツ提供が行われないため、ユーザは提供開始までデータ受信状態のまま待機する必要があった。特に、近年では端末単体の処理能力の向上に伴い、端末で扱えるデータ量も増加しているため、コンテンツに係るデータの総データ量も増加傾向にある。即ち、データ通信の通信速度が改善されない限りユーザの待機時間は必然的に長期化し得、結果としてこのような待機時間の長期化はユーザの興趣を削ぐ可能性があった。【０００６】
本発明は、上述の問題点に鑑みてなされたものであり、通信を介したコンテンツ提供におけるユーザビリティを改善するコンテンツ提供システム、コンテンツ提供機器、コンテンツ再生機器、制御方法、プログラム、及び記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００７】
前述の目的を達成するために、本発明のデータ提供システムは、以下の構成を備える。
ゲームコンテンツに係るデータを提供する提供装置と、該提供装置から該データを受信し、ゲームコンテンツに係る描画処理を実行することによりゲームコンテンツに係るゲーム画面を生成する実行装置とで構成されるデータ提供システムであって、実行装置は、ゲームコンテンツに係るデータのうち、少なくとも該ゲームコンテンツに係る描画処理の実行開始時に必要な最低限のデータを含む第１のデータとするデータを設定する設定手段と、設定手段による設定に基づいて、第１のデータの提供要求、及びゲームコンテンツに係るデータのうちの第１のデータ以外の第２のデータの提供要求を提供装置に送信する要求送信手段と、提供装置から第１のデータ及び第２のデータを受信する受信手段と、受信手段により受信されたデータを用いてゲームコンテンツに係るゲーム画面を生成する生成手段と、を有し、提供装置は、実行装置から、第１のデータ及び第２のデータの提供要求を受信する要求受信手段と、要求受信手段により第１のデータの提供要求が受信されたことに応じて、第１のデータを実行装置に送信する第１の送信手段と、要求受信手段により第２のデータの提供要求が受信されたことに応じて、第２のデータを実行装置に送信する第２の送信手段と、を有し、要求送信手段は、第１のデータの受信の完了後、第２のデータの提供要求を送信し、生成手段は、第１のデータの受信の完了まで待機した後、受信した第１のデータを用いてゲームコンテンツに係るゲーム画面の生成を開始し、第２のデータの受信後は第１のデータ及び第２のデータを用いてゲームコンテンツに係るゲーム画面の生成を行うことを特徴とする。
【発明の効果】
【０００８】
このような構成により本発明によれば、通信を介したコンテンツ提供におけるユーザビリティを改善することが可能となる。【０００９】
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
【図面の簡単な説明】
【００１０】
添付図面は明細書に含まれ、その一部を構成し、本発明の実施の形態を示し、その記述と共に本発明の原理を説明するために用いられる。
【図１Ａ】本発明の実施形態１に係るコンテンツ提供システムのシステム構成を示した図
【図１Ｂ】本発明の実施形態２に係るコンテンツ提供システムのシステム構成を示した図
【図２Ａ】本発明の実施形態に係るコンテンツサーバ１００の機能構成を示したブロック図
【図２Ｂ】本発明の実施形態に係るクライアント端末２００の機能構成を示したブロック図
【図３】本発明の実施形態１に係る、クライアント端末２００において実行されるデータ取得処理を例示したフローチャート
【図４】本発明の実施形態２に係る、クライアント端末２００において実行されるデータ取得処理を例示したフローチャート
【発明を実施するための形態】
【００１１】
［実施形態１］
以下、本発明の例示的な実施形態について、図面を参照して詳細に説明する。なお、以下に説明する一実施形態は、コンテンツ提供システムに係るコンテンツ提供機器の一例としての、管理するコンテンツに係るデータを配信可能なコンテンツサーバと、コンテンツ提供システムに係るコンテンツ再生機器の一例としての、コンテンツサーバからコンテンツに係るデータを受信して再生可能なクライアント端末とに、本発明を適用した例を説明する。しかし、本発明は、コンテンツに係るデータの配信あるいは該データを受信して再生することが可能な任意の機器に適用可能である。
【００１２】
また、本実施形態のコンテンツ提供システムでは、コンテンツサーバ１００が提供するコンテンツはネットワークを介して行われる、所謂オンラインゲームコンテンツであるものとして説明する。クライアント端末２００には、ゲーム実行に係る基本的なプログラムはアプリケーションとして実行されており、ユーザは該アプリケーションを実行することでコンテンツサーバ１００への接続を開始し、コンテンツサーバ１００が提供するゲームコンテンツサービスを利用することができる。クライアント端末２００は、コンテンツサーバ１００からゲームコンテンツに係るデータを受信することで、該データを用いて生成された画面をクライアント端末２００が有する後述の表示部２０８に表示することができる。あるいは、受信した音声データを再生することができる。しかしながら、コンテンツサーバ１００が提供するコンテンツはゲームコンテンツに限られるものではなく、クライアント端末２００がコンテンツサーバ１００から受信したコンテンツに係るデータを用いて該コンテンツの再生処理を実行するコンテンツであれば適用可能である。
【００１３】
《コンテンツ提供システムの構成》
図１Ａは、本発明の実施形態に係るコンテンツ提供システムのシステム構成を示した図である。
【００１４】
図示されるように、本実施形態のコンテンツ提供システムにおいてコンテンツサーバ１００とクライアント端末２００とは、インターネット等の公衆回線であるネットワーク３００を介して接続される。なお、本実施形態ではコンテンツサーバ１００が提供するコンテンツがオンラインゲームコンテンツであるためコンテンツサーバ１００とクライアント端末２００とはネットワーク３００を介して接続されるものとして説明するが、両機器が直接接続されるものであってもよいことは、容易に理解されよう。またコンテンツサーバ１００とクライアント端末２００とは、他の中継機器を介して接続されてもよいことは言うまでもない。
【００１５】
〈コンテンツサーバ１００の機能構成〉
次に、本実施形態のコンテンツサーバ１００の機能構成について、図２Ａのブロック図を用いて詳細を説明する。
【００１６】
サーバＣＰＵ１０１は、コンテンツサーバ１００が有する各ブロックの動作を制御する。具体的にはサーバＣＰＵ１０１は、サーバＲＯＭ１０２に記憶されている各ブロックの動作プログラムを読み出し、サーバＲＡＭ１０３に展開して実行することにより各ブロックの動作を制御する。
【００１７】
サーバＲＯＭ１０２は、例えば書き換え可能な不揮発性メモリである。サーバＲＯＭ１０２は、コンテンツサーバ１００が有する各ブロックの動作プログラムだけでなく、各ブロックの動作において必要となるパラメータ等を記憶する。またサーバＲＯＭ１０２には、コンテンツサーバ１００が提供するコンテンツサービスの利用者アカウントやパスワード等が管理される。
【００１８】
サーバＲＡＭ１０３は、揮発性メモリである。サーバＲＡＭ１０３は、コンテンツサーバ１００が有する各ブロックの動作プラグラムの展開領域としてだけでなく、各ブロックの動作において出力された中間データ等を記憶する格納領域としても用いられる。
【００１９】
データ選択部１０４は、クライアント端末２００からコンテンツについての提供要求があった場合に、該クライアント端末２００に対して送信するデータを決定し、後述のサーバ通信部１０６を介して送信する。本実施形態でコンテンツサーバ１００が提供するゲームコンテンツに係るデータは、サーバ記録媒体１０５に記録されている。サーバ記録媒体１０５は、例えばＨＤＤ等のコンテンツサーバ１００に接続された記録装置であってよい。サーバ記録媒体１０５に記録されているゲームコンテンツに係るデータの各々には、各データについて予め定められた分類情報が関連付けられているものとする。分類情報は、モデルデータやテクスチャデータ、あるいはコリジョン判定用データ等、そのデータの種類に限らず、使用用途等を分類可能な情報であってよい。
【００２０】
サーバ通信部１０６は、所定の通信プロトコルで外部機器との通信を行う、コンテンツサーバ１００が有する通信インタフェースである。サーバ通信部１０６は、所謂通信プロトコルスタックであり、コンテンツサーバ１００と外部の通信線やアンテナとの接続部（ＯＳＩ参照モデルにおける物理層）と、ＰＰＰ、ＨＤＬＣ、ＩＰｖ４、ＩＰＸ、ＴＣＰ、ＵＤＰ等の通信プロトコル（ＯＳＩ参照モデルにおけるリンク層、ネットワーク層、トランスポート層等の任意の通信プロトコル）とを含む。サーバ通信部１０６は場合によってはトランスポート層及びネットワーク層を含まなくてもよい。
【００２１】
〈クライアント端末２００の機能構成〉
次に、本実施形態のクライアント端末２００の機能構成について、図２Ｂのブロック図を用いて詳細を説明する。
【００２２】
ＣＰＵ２０１は、クライアント端末２００が有する各ブロックの動作を制御する。具体的にはＣＰＵ２０１は、ＲＯＭ２０２に記憶されている各ブロックの動作プログラムを読み出してＲＡＭ２０３に展開して実行することにより各ブロックの動作を制御する。
【００２３】
ＲＯＭ２０２は、例えば書き換え可能な不揮発性メモリである。ＲＯＭ２０２は、クライアント端末２００が有する各ブロックの動作プログラムに加えて、各ブロックの動作に必要なパラメータ等を格納する。
【００２４】
また本実施形態ではＲＯＭ２０２には、コンテンツサーバ１００が提供するコンテンツについて、ユーザにより設定された、少なくとも描画処理（再生処理）の実行開始時に必要とするデータを特定する情報（必要データ情報）が格納される。なお、必要データ情報には、例えばメインキャラクタについてのモデルデータ等、ゲームコンテンツの画面において最低限描画される対象について必要となる基本的なデータは含まれるものとする。しかしながら、必要データ情報に含められるデータはこれに限られず、ユーザが所望する条件でコンテンツに係る画面が提供されるよう、選択可能であるものとする。
【００２５】
ＲＡＭ２０３は、揮発性メモリである。ＲＡＭ２０３は、クライアント端末２００が有する各ブロックの動作プログラムの展開領域としてだけでなく、各ブロックの動作において出力された中間データ等を記憶する格納領域としても用いられる。
【００２６】
要求データ決定部２０４は、コンテンツサーバ１００が提供するゲームコンテンツについて、クライアント端末２００における該コンテンツに係る画面の描画に必要となるデータを決定する。具体的には要求データ決定部２０４は、コンテンツに係るデータの受信状況に応じて、必要データ情報を参照して必要データの送信要求をコンテンツサーバ１００に対して行う。なお、要求データ決定部２０４により生成された送信要求は、通信部２０５を介してコンテンツサーバ１００に送信される。
【００２７】
通信部２０５は、例えばサーバ通信部１０６と同じ通信プロトコルで外部機器との通信を行う、クライアント端末２００が有する通信インタフェースである。
【００２８】
ＧＰＵ２０７は、コンテンツサーバ１００が提供するゲームコンテンツに係る画面を生成する。具体的にはＧＰＵ２０７は、ＣＰＵ２０１の制御の下、コンテンツサーバ１００から受信したコンテンツに係るデータを用いて、接続された不図示のＶＲＡＭに後述の表示部２０８に表示する画面を描画する。
【００２９】
データ保持部２０６は、コンテンツサーバ１００から受信したコンテンツに係るデータを格納する記録装置である。ＧＰＵ２０７による画面の描画が行われる際は、データ保持部２０６に保持されたデータは読み出され、不図示のＧＰＵメモリに展開された後、適宜処理されてＶＲＡＭに描画される。
【００３０】
表示部２０８は、例えばＬＣＤ等のクライアント端末２００が有する表示装置である。表示部２０８は、クライアント端末２００に設けられた一体型の表示装置であってもよいし、クライアント端末２００に接続された外部の表示装置であってもよい。
【００３１】
操作入力部２０９は、例えば操作ボタンやキーボード、あるいはタッチパネル等のクライアント端末２００が有するユーザインタフェースである。操作入力部２０９は、ユーザによる操作入力がなされると、該入力を解析し、操作内容に対応した制御信号をＣＰＵ２０１に伝送する。
【００３２】
《データ受信動作》
まず、本実施形態のコンテンツ提供システムにおける、データ受信動作について説明する。
【００３３】
本実施形態のコンテンツ提供システムでは、ゲームコンテンツに係るデータをクライアント端末２００におけるユーザへのコンテンツの提供開始に少なくとも必要とするデータ（第１のデータ）と、提供開始には必要としないデータ（第２のデータ）の２種類に分類し、それぞれ異なるタイミングで受信する。具体的にはクライアント端末２００は、第１のデータを受信した後に、第２のデータの受信を開始する。即ち、コンテンツに係るデータを全て受信した後にユーザへのコンテンツ提供を行うための処理を実行していた従来の方法とは異なり、本実施形態のコンテンツ提供システムではクライアント端末２００は、第１のデータを集中的に受信後にはコンテンツの提供を行うための処理の実行を開始できる。このように、全てのデータを受信しなくともユーザへのゲームコンテンツの提供が可能となるため、コンテンツ提要に係るユーザの待機時間を低減できる。
【００３４】
本実施形態のコンテンツ提供システムにおいて、ゲームコンテンツに係るデータが第１のデータ及び第２のデータのいずれであるかは、上述した必要データ情報により判別される。本実施形態では、要求データ決定部２０４がゲームコンテンツに係るデータの送信要求を行う際に必要データ情報を参照し、まだ受信していない第１のデータが存在する場合に該当のデータについての送信要求を行うものとして説明するが、２種類のデータを分けて受信する方法はこれに限られるものではない。
【００３５】
例えばデータの送信要求は、１つのシーンについて１回の送信要求で行われてもよい。この場合、データの送信要求とともに必要データ情報がコンテンツサーバ１００に送信されればよく、コンテンツサーバ１００においてサーバＣＰＵ１０１は受信した必要データ情報を参照して、まず第１のデータを集中的にクライアント端末２００に送信すればよい。
【００３６】
また例えば必要データ情報は、コンテンツを利用するユーザアカウントに関連付けられてコンテンツサーバ１００に保持されていてもよい。この場合、ユーザはクライアント端末２００を使用して設定フェーズでユーザ独自の必要データ情報を生成し、コンテンツサーバ１００に格納させればよい。サーバＣＰＵ１０１は、クライアント端末２００からのコンテンツに係るデータの送信要求を受信した場合に、まずクライアント端末２００を使用してサービスログインしているユーザアカウントに関連付けられた必要データ情報を参照し、まず第１のデータの送信を開始すればよい。
【００３７】
なお、本実施形態では必要データ情報は、例えば待機時間短縮重視、グラフィック品質重視等、ユーザの趣向に応じて設定可能であるものとして説明するが、これに限られるものではない。例えば、上述した分類情報の種別に応じて第１のデータか第２のデータ化を規定するものであってもよい。また例えば、コンテンツサーバ１００とクライアント端末２００との間のデータ転送レートに応じて、サーバＣＰＵ１０１あるいはＣＰＵ２０１により設定が変更されるものであってもよい。即ち、十分なデータ転送レートが確保できない環境にある場合は待機時間が長期化するため、自動的に第１のデータに係るデータサイズを低減するように必要データ情報は変更されてよい。
【００３８】
〈データ分類例〉
ここで、ゲームコンテンツに応じた第１のデータ及び第２のデータの分類例について以下に示す。なお、以下は例示を目的としたものであり、本発明の実施がこれに限られるものではないことは容易に想像されよう。
【００３９】
・２Ｄグラフィック
例えば所謂格闘ゲームやアクションゲームのような２Ｄグラフィックゲームの場合、ゲームのユーザが利用する主要キャラクタのグラフィックデータやキャラクタに対して設定されているコリジョン情報等は第１のデータとして優先的に送信される。一方、背景となるグラフィックデータや時間表示等のＧＵＩデータ等、コンテンツの提供開始時に必ずしも表示あるいは使用する必要のないデータは第２のデータとして第１のデータの送信完了後に送信される。
【００４０】
・３Ｄグラフィック
３Ｄシーンをキャラクタが移動するような３Ｄグラフィックゲームの場合、ユーザの操作キャラクタや協力プレイ中のユーザの操作キャラクタ等の、発生しているイベントにおける主要キャラクタ等のモデルデータ（あるいは頂点及び頂点の結線データ）、描画範囲の地形データ及び地形オブジェクトのモデルデータ、主要キャラクタ及び主要キャラクタ付近のコリジョン情報やバイナリ空間分割（ＢＳＰ）情報等は第１のデータとして優先的に送信される。一方、主要キャラクタ以外のモデルデータ等は第２のデータとして送信されればよい。
【００４１】
なお、３Ｄグラフィックゲームにおける分類はこれに限らず、特に描画する深度範囲が設定される場合は、該範囲に属するキャラクタやオブジェクトのモデルデータを第１のデータとしてもよい。バイナリ空間分割（ＢＳＰ）情報を用いる場合、該情報に従って手前に描画されるキャラクタやオブジェクトのモデルデータを第１のデータとして分類してもよい。
【００４２】
またモデルデータ自体（各頂点情報）に色情報が設定されている場合は、モデルデータに適用するテクスチャデータは第２のデータとして分類してもよい。またフィールドの遠景として適用するテクスチャデータについては、第１のデータとして分類してもよい。
【００４３】
また、３Ｄシーンに２Ｄ表示されるようなＧＵＩデータ等は２Ｄグラフィックゲームと同様に第２のデータとして分類してよい。
【００４４】
・思考ルーチン
所謂ボードゲームにおけるＡＩに係る思考ルーチン等の情報は、ゲームにおいて一貫したデータである必要があり、ゲームの開始時から必要になる情報であるため、第１のデータとして分類されることが好ましい。なお、例えば３ＤグラフィックゲームにおけるＮＰＣキャラクタ等の行動パターンを規定する思考ルーチンについては、ゲームにおいて一貫している必要性が低いため、一部のデータのみが第１のデータとして分類され、その他のデータは第２のデータとして分類されてもよい。
【００４５】
・動画データ
ゲームコンテンツにおいて再生される動画データは、データサイズが大きいため第２のデータとして分類されることが好ましい。しかしながら、符号化単位（ＧＯＰ）で分類を変更してもよく、例えば先頭から規定の数のＧＯＰについては第１のデータとして分類されてもよい。
【００４６】
・音声データ
ゲームコンテンツにおいて再生される音声データは、その用途に応じて分類が変更されてよい。例えば効果音等、ユーザ操作に対するレスポンスが要求される音声データについては第１のデータ、ＢＧＭ等のレスポンスが要求されない音声データについては第２のデータとして分類されればよい。
【００４７】
このようにクライアント端末２００が受信するゲームコンテンツに係るデータの分類について、データの属性ごとに例示したが、この他にもデータサイズに着目して以下のように分類を規定してもよい。
【００４８】
例えば、動画データやテクスチャデータ等の静止画データは、データサイズの低減を優先して符号化レートや解像度を低下させたデータを第１のデータとして提供し、第２のデータとして好適な符号化レートや解像度のデータを提供するようにしてもよい。この際、第２のデータは第１のデータを置き換えるデータであってもよいし、Ｈ．２６４／ＳＶＣの拡張レイヤ等のように第１のデータに対する差分情報であってもよい。
【００４９】
またこのことは音声データやモデルデータについても同様に考えることができる。即ち、音声データについてもサンプリングレートや符号化レートを低減したデータを第１のデータとして分類し、好適なサンプリングレートや符号化レートの音声データを第２のデータとして後から提供する形であってもよい。またモデルデータについても、簡易的なモデルデータを第１のデータとして提供し、詳細なモデルデータを後から第２のデータとして提供する形であってもよい。
【００５０】
《データ取得処理》
上述のような構成をもつ本実施形態のクライアント端末２００において実行されるゲームコンテンツに係るデータを取得するデータ取得処理について、図３のフローチャートを用いて具体的な処理を説明する。該フローチャートに対応する処理は、ＣＰＵ２０１が、例えばＲＯＭ２０２に記憶されている対応する処理プログラムを読み出し、ＲＡＭ２０３に展開して実行することにより実現することができる。なお、本データ取得処理は、例えばゲームコンテンツにおいてシーンの切り替えイベントが発生し、コンテンツサーバ１００から新たなデータを受信する必要が生じた際に開始されるものとして説明する。
【００５１】
Ｓ３０１で、ＣＰＵ２０１は、コンテンツサーバ１００から取得する必要があるデータ（要求データ）を要求データ決定部２０４に決定させる。具体的にはＣＰＵ２０１は、ゲームの実行を制御するゲーム処理において特定した、次のシーンの描画に用いられるデータを示す情報を要求データ決定部２０４に伝送する。要求データ決定部２０４は、次のシーンの描画に用いられるデータを示す情報を参照し、このうちデータ保持部２０６に保持されていないデータを要求データとして決定する。
【００５２】
Ｓ３０２で、要求データ決定部２０４はＣＰＵ２０１の制御の下、第１のデータの提供要求を通信部２０５を介してコンテンツサーバ１００に送信する。具体的には要求データ決定部２０４は、ＲＯＭ２０２に記憶されている必要データ情報を参照し、Ｓ３０１において決定した要求データのうち、第１のデータに分類されているデータについて提供要求を生成する。そして要求データ決定部２０４は該提供要求を通信部２０５に伝送し、送信させる。
【００５３】
Ｓ３０３で、ＣＰＵ２０１は、通信部２０５がコンテンツサーバ１００からデータを受信したか否かを判断する。ＣＰＵ２０１は、通信部２０５がデータを受信したと判断した場合は処理をＳ３０４に移し、受信していないと判断した場合は処理をＳ３０５に移す。
【００５４】
Ｓ３０４で、ＣＰＵ２０１は、受信したデータをデータ保持部２０６に格納する。このとき、ＣＰＵ２０１は例えばＲＡＭ２０３に記憶されている、データ保持部２０６に格納されているデータを管理する管理情報を更新する。
【００５５】
Ｓ３０５で、ＣＰＵ２０１は、次のシーンの描画処理に少なくとも必要となる第１のデータの受信が完了したか否かを判断する。具体的にはＣＰＵ２０１は、第１のデータを全て受信したことを要求データ決定部２０４から通知されたか否かを判断する。要求データ決定部２０４は管理情報を監視し、提供要求を行った第１のデータの全てがデータ保持部２０６に格納された場合に、該通知を行うものとする。ＣＰＵ２０１は、第１のデータの受信が完了した場合は、ゲーム処理における描画処理の実行を開始し、処理をＳ３０６に移す。またＣＰＵ２０１は、第１のデータの受信が完了していない場合は処理をＳ３０３に戻す。
【００５６】
Ｓ３０６で、要求データ決定部２０４はＣＰＵ２０１の制御の下、第２のデータの提供要求を通信部２０５を介してコンテンツサーバ１００に送信する。
【００５７】
Ｓ３０７で、ＣＰＵ２０１は、通信部２０５がコンテンツサーバ１００からデータを受信したか否かを判断する。ＣＰＵ２０１は、通信部２０５がデータを受信したと判断した場合は処理をＳ３０８に移し、受信していないと判断した場合は処理をＳ３０９に移す。
【００５８】
Ｓ３０８で、ＣＰＵ２０１は、受信したデータをデータ保持部２０６に格納する。このとき、ＣＰＵ２０１は例えばＲＡＭ２０３に記憶されている、データ保持部２０６に格納されているデータを管理する管理情報を更新する。またこのときＣＰＵ２０１は、受信したデータは第２のデータであるため、既に開始したゲーム処理の描画処理において、該データを含めて描画処理を実行する。より詳細にはＣＰＵ２０１は、次に描画するフレームについての描画処理において、第１のデータ及び受信した第２のデータを用いる。
【００５９】
Ｓ３０９で、ＣＰＵ２０１は、次のシーンの描画に用いられる全てのデータの受信が完了したか否かを判断する。具体的にはＣＰＵ２０１は、第１及び第２のデータを全て受信したことを要求データ決定部２０４から通知されたか否かを判断する。要求データ決定部２０４は管理情報を監視し、提供要求を行った第２のデータの全てがデータ保持部２０６に格納された場合に、該通知を行うものとする。ＣＰＵ２０１は、次のシーンの描画に用いられる全てのデータの受信が完了したと判断した場合は本データ取得処理を完了し、完了していないと判断した場合は処理をＳ３０７に戻す。
【００６０】
このようにすることで、ＣＰＵ２０１は、予め設定された次のシーンの描画を開始するために必要であるデータを優先して取得することができるため、ユーザにゲームコンテンツを提供するまでに要する待機時間を短縮することができる。即ち、以上説明したように、本実施形態のコンテンツ提供システムは、通信を介したコンテンツ提供におけるユーザビリティを改善することができる。
【００６１】
［実施形態２］
上述した実施形態１では、ゲームコンテンツに係るデータはコンテンツサーバ１００からクライアント端末２００に対してのみ送信されるものとして説明したが、本発明の実施はこれに限られるものではない。本実施形態では、クライアント端末２００は、コンテンツサーバ１００以外の他のクライアント端末２００からもゲームコンテンツに係るデータを受信できるものとする。
【００６２】
《コンテンツ提供システムの構成》
図１Ｂは、本実施形態に係るコンテンツ提供システムのシステム構成を示している。図においてクライアント端末２００ａ及び２００ｂはネットワーク３００を介してコンテンツサーバ１００に接続しており、両機器とも基本的にはゲームコンテンツに係るデータをコンテンツサーバ１００から受信する。しかし、本実施形態においてクライアント端末２００ａと２００ｂとは１対１の通信（例えばピアツーピア（Ｐ２Ｐ）通信）が可能であり、各々、既にコンテンツサーバ１００から受信しているデータについては、他のクライアント端末に提供可能であるものとする。
【００６３】
Ｐ２Ｐ通信を行う場合、クライアント端末間の通信は専用のサーバを介して行う必要がない。即ち、通信相手であるクライアント端末に対して直接データ送信を行うことができ、通信量（トラフィック）の低減が見込める。本実施形態では、クライアント端末２００がＰ２Ｐ通信により他のクライアントからのデータ取得を可能とすることで、ゲームコンテンツに係るデータの受信をさらに短時間で、効率よく行う態様について説明する。
【００６４】
なお、本実施形態におけるコンテンツサーバ１００及びクライアント端末２００の機能構成は、クライアント端末２００の通信部２０５がＰ２Ｐ通信機能を有する点を除いて同一であるため、説明を省略する。また、本実施形態ではクライアント端末間での通信はＰ２Ｐ通信により行われるものとして説明するが、通信方式はこれに限られるものではなく、近距離無線通信やアドホックモードによる通信等であってよい。
【００６５】
《データ取得処理》
次に、本実施形態のクライアント端末２００において実行されるゲームコンテンツに係るデータを取得するデータ取得処理について、図４のフローチャートを用いて具体的な処理を説明する。該フローチャートに対応する処理は、ＣＰＵ２０１が、例えばＲＯＭ２０２に記憶されている対応する処理プログラムを読み出し、ＲＡＭ２０３に展開して実行することにより実現することができる。なお、本データ取得処理は、例えばゲームコンテンツにおいてシーンの切り替えイベントが発生し、コンテンツサーバ１００から新たなデータを受信する必要が生じた際に開始されるものとして説明する。
【００６６】
また、本実施形態のデータ取得処理において、実施形態１のデータ取得処理と同様の処理を行うステップについては同一の参照番号を付して説明を省略し、以下では本実施形態の特徴的な処理についてのみ説明する。
【００６７】
Ｓ４０１で、ＣＰＵ２０１は、ＲＡＭ２０３に記憶されている管理情報を読み出して通信部２０５に伝送し、現在コンテンツサーバ１００に接続している他のクライアント端末に対して送信させる。現在コンテンツサーバ１００に接続している他のクライアント端末の情報は、例えばゲーム処理の実行においてコンテンツサーバ１００から提供されればよい。該情報には、他のクライアント端末のグローバルＩＰアドレス等、他のクライアント端末への接続に必要となる情報が含まれる。
【００６８】
Ｓ４０２で、ＣＰＵ２０１は、現在コンテンツサーバ１００に接続している他のクライアント端末から、該他のクライアント端末のデータ保持部２０６に保持されているデータを示す管理情報の受信期間として所定期間、処理を待機する。このときＣＰＵ２０１は、他のクライアント端末から管理情報を受信した場合に、受信したクライアント端末を特定する情報に関連付けて該管理情報をＲＡＭ２０３に格納する。ＣＰＵ２０１は、所定期間の経過後、処理をＳ４０３に移す。
【００６９】
Ｓ４０３で、ＣＰＵ２０１は、コンテンツサーバ１００あるいは他のクライアント端末２００から取得する要求データを要求データ決定部２０４に決定させる。さらに要求データ決定部２０４は要求データの決定後、要求する各データをいずれの機器に要求するかを決定する。具体的には要求データ決定部２０４は、ＲＡＭ２０３に格納されている他のクライアント端末２００についての管理情報を参照し、各データを分散させて取得できるように取得先の機器を決定する。
【００７０】
Ｓ４０４で、要求データ決定部２０４はＣＰＵ２０１の制御の下、第１のデータの提供要求を通信部２０５を介して、Ｓ４０３において決定した各データの取得先の機器に送信し、処理をＳ３０３に移す。
【００７１】
またＳ３０５において第１のデータの受信が完了したと判断した場合、ＣＰＵ２０１は処理をＳ４０５に移す。Ｓ４０５で、要求データ決定部２０４はＣＰＵ２０１の制御の下、第２のデータの提供要求を通信部２０５を介して、各データの取得先の機器に送信し、処理をＳ３０７に移す。
【００７２】
このようにすることで、本実施形態のクライアント端末２００は、コンテンツサーバ１００に接続している他のクライアント端末が存在する場合は、該他のクライアント端末からもデータを取得することで、ゲームコンテンツに係るデータの取得に要する時間を全体的に短縮することができる。
【００７３】
なお、上述したデータ取得処理では、Ｓ４０１及びＳ４０２においてのみ管理情報を他のクライアント端末と共有するものとして説明したが、本発明の実施はこれに限られない。例えば、マルチユーザ用のオンラインゲームで協力プレイを行っている場合、協力プレイを行っているユーザが使用する各クライアント端末は、同様のゲーム進行を行っている。即ち、ゲーム進行が同様であった場合、他のクライアント端末も同じタイミングでデータ取得処理を実行するものと考えられるため、データ取得処理の開始段階で他のクライアント端末が次のシーンの描画に用いられるデータを保持しないことが考えられる。このような場合、データの受信に伴って管理情報を更新した際に、ＣＰＵ２０１はコンテンツサーバ１００に接続されている他のクライアント端末に管理情報を送信してもよい。
【００７４】
またさらにコンテンツサーバ１００は各クライアント端末から受信した提供要求を参照し、同一のデータが複数のクライアント端末から要求されている場合は、該データを各クライアント端末に送信する順番を異ならせるようにしてもよい。即ち、コンテンツサーバ１００に接続されているクライアント端末が保持するデータを意図的に異ならせることで、Ｐ２Ｐ通信によるデータ取得を効率的に利用させて、次のシーンの描画に用いるデータの取得に要する総時間を短縮してもよい。このとき、データ送信の意図的な分散はファイル単位で行われてもよいし、符号化単位等、１つのファイルを分割したデータの分散的な送信により行われてもよい。
【００７５】
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
【図１Ａ】
0005624224.tif 000002
【図１Ｂ】
0005624224.tif 000003
【図２Ａ】
0005624224.tif 000004
【図２Ｂ】
0005624224.tif 000005
【図３】
0005624224.tif 000006
【図４】
0005624224.tif 000007