IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社バンダイナムコゲームスの特許一覧

特開2024-142946エンターテインメントシステム、プログラム及び情報処理装置
<>
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図1
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図2
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図3
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図4
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図5
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図6
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図7
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図8
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図9
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図10
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図11
  • 特開-エンターテインメントシステム、プログラム及び情報処理装置 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024142946
(43)【公開日】2024-10-11
(54)【発明の名称】エンターテインメントシステム、プログラム及び情報処理装置
(51)【国際特許分類】
   G06Q 50/10 20120101AFI20241003BHJP
   A63F 13/525 20140101ALI20241003BHJP
   A63F 13/67 20140101ALI20241003BHJP
   G06T 19/00 20110101ALI20241003BHJP
【FI】
G06Q50/10
A63F13/525
A63F13/67
G06T19/00 A
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2023055368
(22)【出願日】2023-03-30
(71)【出願人】
【識別番号】000134855
【氏名又は名称】株式会社バンダイナムコエンターテインメント
(74)【代理人】
【識別番号】100090387
【弁理士】
【氏名又は名称】布施 行夫
(74)【代理人】
【識別番号】100090398
【弁理士】
【氏名又は名称】大渕 美千栄
(72)【発明者】
【氏名】山田 秀樹
【テーマコード(参考)】
5B050
5L049
5L050
【Fターム(参考)】
5B050AA10
5B050BA09
5B050CA07
5B050CA08
5B050EA26
5B050FA02
5B050FA05
5L049CC18
5L050CC18
(57)【要約】
【課題】映像に関する学習情報に基づいて、ユーザにとって満足度の高い映像を提供すること。
【解決手段】仮想空間に、少なくとも1つの仮想カメラを配置する。仮想カメラから見える映像を生成する。映像に関する学習情報は、前記映像に関する評価情報を含み、学習情報に基づいて、映像を生成する。
【選択図】図12
【特許請求の範囲】
【請求項1】
仮想空間で行われるエンターテインメントコンテンツにおいて、生成された映像を提供するエンターテインメントシステムであって、
仮想空間に、少なくとも1つの仮想カメラを配置する仮想カメラ制御部と、
前記仮想カメラから見える映像を生成する映像生成部と、を含み、
前記映像に関する学習情報は、前記映像に関する評価情報を含み、
前記映像生成部は、
前記学習情報に基づいて、映像を生成することを特徴とするエンターテインメントシステム。
【請求項2】
請求項1において、
前記学習情報は、
前記仮想カメラの情報を含むことを特徴とするエンターテインメントシステム。
【請求項3】
請求項1又は2において、
前記学習情報は、
前記仮想カメラの被写体に関する情報を含むことを特徴とするエンターテインメントシステム。
【請求項4】
請求項1又は2において、
前記学習情報は、
ゲーム状況に関する情報を含むことを特徴とするエンターテインメントシステム。
【請求項5】
請求項1又は2において、
前記学習情報は、
画像分析に関する情報を含むことを特徴とするエンターテインメントシステム。
【請求項6】
請求項1又は2において、
前記学習情報は、
他のプレーヤの学習情報を含むことを特徴とするエンターテインメントシステム。
【請求項7】
請求項1又は2において、
前記評価情報は、
前記映像に対する、プレーヤの入力に基づく評価情報であることを特徴とするエンターテインメントシステム。
【請求項8】
請求項1又は2において、
前記評価情報は、
前記映像に対する、複数のプレーヤからの評価情報であることを特徴とするエンターテインメントシステム。
【請求項9】
請求項1又は2において、
前記評価情報は、
前記映像と、所与の基準映像との差異情報であることを特徴とするエンターテインメントシステム。
【請求項10】
請求項1又は2において、
プレーヤの入力情報に基づいて、生成された複数の映像の中から、提供する映像を選択する選択部を、更に含むことを特徴とするエンターテインメントシステム。
【請求項11】
仮想空間で行われるエンターテインメントコンテンツにおいて、生成された映像を提供するプログラムであって、
仮想空間に、少なくとも1つの仮想カメラを配置する仮想カメラ制御部と、
前記仮想カメラから見える映像を生成する映像生成部として、コンピュータを機能させ、
前記映像に関する学習情報は、前記映像に関する評価情報を含み、
前記映像生成部は、
前記学習情報に基づいて、映像を生成することを特徴とするプログラム。
【請求項12】
仮想空間で行われるエンターテインメントコンテンツにおいて、生成された映像を提供する情報処理装置であって、
仮想空間に、少なくとも1つの仮想カメラを配置する仮想カメラ制御部と、
前記仮想カメラから見える映像を生成する映像生成部と、を含み、
前記映像に関する学習情報は、前記映像に関する評価情報を含み、
前記映像生成部は、
前記学習情報に基づいて、映像を生成することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、エンターテインメントシステム、プログラム及び情報処理装置に関する。
【背景技術】
【0002】
従来から、三次元仮想空間(例えば、ゲーム空間)において、仮想カメラを配置し、仮想カメラから見える画像を生成するシステムが知られている。例えば、特許文献1では、ゲーム状況に応じて、仮想カメラの制御を行うシステムが開示されている(特許文献1を参照)。
【0003】
また、近年、データを分析及び学習することで生成された学習モデルを利用するゲームシステムが存在する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2022-164663号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来の仮想カメラの制御を行うシステムは、ユーザにとって満足度の高い仮想カメラの制御を行うことができない問題点があった。また、映像に関して学習し、ユーザにとって満足度の高い映像を提供することが好ましい。
【0006】
本発明は、上記課題に鑑みたものであり、映像に関する学習情報に基づいて、ユーザにとって満足度の高い映像を提供することを目的とする。
【課題を解決するための手段】
【0007】
(1)本発明は、
仮想空間で行われるエンターテインメントコンテンツにおいて、生成された映像を提供するエンターテインメントシステムであって、
仮想空間に、少なくとも1つの仮想カメラを配置する仮想カメラ制御部と、
前記仮想カメラから見える映像を生成する映像生成部と、を含み、
前記映像に関する学習情報は、前記映像に関する評価情報を含み、
前記映像生成部は、
前記学習情報に基づいて、映像を生成することを特徴とするエンターテインメントシステムに関する。
【0008】
また、本発明は、上記各部を含む情報処理装置(学習装置、端末装置、ゲーム装置、サーバ装置)に関する。本発明は、上記各部としてコンピュータを機能させるプログラムに関する。また、本発明は、コンピュータが読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶する情報記憶媒体に関する。
【0009】
本発明は、映像に関する学習情報は、当該映像に関する評価情報を含む。本発明は、当該学習情報に基づいて、映像を生成するので、ユーザにとって満足度の高い映像を提供することができる。
【0010】
「学習」とは、例えば、機械学習である。また、「学習」とは、情報を蓄積(記憶)することでもよい。
【0011】
(2)また、本発明に係るエンターテインメントシステム、情報処理装置、プログラム、情報記憶媒体において、学習情報は、前記仮想カメラの情報を含むようにしてもよい。
【0012】
本発明によれば、仮想空間の仮想カメラ情報を学習情報とすることで、リアルで品質の高い映像を生成することができる。仮想空間の仮想カメラ情報は、例えば、仮想カメラの位置や向き、視野角(画角)などを含む。また、仮想空間の仮想カメラの情報を学習情報とすることで、例えば、カメラの位置や向きを最適化することで、生成された映像の見栄えを良くすることができる。
【0013】
(3)また、本発明に係るエンターテインメントシステム、情報処理装置、プログラム、情報記憶媒体において、学習情報は、仮想カメラの被写体に関する情報を含むようにしてもよい。
【0014】
本発明は、仮想カメラの被写体の情報を含めるので、被写体の情報としてキャラクタのポーズや表情、動作などを含めることで、より自然な動きを持った映像を生成することができる。また、本発明は、仮想カメラの被写体の情報を含めるので、より効果的で表現力を向上させた映像生成が可能になる。
【0015】
(4)また、本発明に係るエンターテインメントシステム、情報処理装置、プログラム、情報記憶媒体において、学習情報は、ゲーム状況に関する情報を含むようにしてもよい。
【0016】
本発明によれば、ゲーム状況に関する情報を学習情報に含めることで、生成される映像がより自然なものにすることができる。例えば、ゲーム状況が、プレーヤの操作対象のキャラクタが攻撃する状況である情報を学習情報に含めることで、生成される映像の攻撃シーンをリアルなものにすることができる。
【0017】
また、本発明によれば、ゲーム状況に関する情報を学習情報に含めることで、映像の表現力を向上させることができる。例えば、ゲーム状況が、プレーヤの操作対象のキャラクタが攻撃する状況である場合、映像に緊張感や攻撃の迫力を加えることができる。
【0018】
また、本発明によれば、ゲーム状況に関する情報を学習情報に含めることで、生成される映像の多様性を増やすことができる。例えば、第1のキャラクタの攻撃シーン、第2のキャラクタの攻撃シーンなどゲーム状況を変えることで、様々な映像を生成することができる。
【0019】
(5)また、本発明に係るエンターテインメントシステム、情報処理装置、プログラム、情報記憶媒体において、学習情報は、画像分析に関する情報を含むようにしてもよい。
【0020】
本発明は、画像分析に関する情報を学習情報に含めることで、生成される映像がより正確になる。例えば、画像の特徴量や構造を分析し、それを学習情報に含めることで、より精度の高い映像を生成できる。
【0021】
また、本発明は、画像分析に関する情報を学習情報に含めることで、映像の表現力を向上させることができる。例えば、画像の色彩や構造の分析を通じて、映像にリアルな質感を付加することができる。
【0022】
また、本発明は、画像分析に関する情報を学習情報に含めることで、生成される映像の多様性を増やすことができる。例えば、画像の種類や画像に含まれるオブジェクト(例え
ば、キャラクタ)の形状などを分析することで、様々な映像を生成することができる。
【0023】
(6)また、本発明に係るエンターテインメントシステム、情報処理装置、プログラム、情報記憶媒体において、前記学習情報は、他のプレーヤの学習情報を含むようにしてもよい。
【0024】
本発明によれば、他のプレーヤの学習情報を含めるので、ユーザビリティ及び学習精度を向上することができる。
【0025】
(7)また、本発明に係るエンターテインメントシステム、情報処理装置、プログラム、情報記憶媒体において、評価情報は、前記映像に対する、プレーヤの入力に基づく評価情報であってもよい。本発明によれば、映像についてプレーヤが意思で評価することができる。
【0026】
(8)また、本発明に係るエンターテインメントシステム、情報処理装置、プログラム、情報記憶媒体において、評価情報は、前記映像に対する、複数のプレーヤからの評価情報であってもよい。
【0027】
ここで、「複数のプレーヤからの評価情報」は、ビッグデータに該当するものであってもよい。ビッグデータは、大量かつ多様な種類のデータを示す。複数のプレーヤの情報を含めると、その量や種類は増加する。例えば、複数のプレーヤの評価情報をビッグデータとして扱うことにより、より多角的な分析や予測が可能となる。例えば、複数のプレーヤの評価情報を統合することで、より正確な予測を行うことができる。
【0028】
(9)また、本発明に係るエンターテインメントシステム、情報処理装置、プログラム、情報記憶媒体において、前記評価情報は、前記映像と、所与の基準映像との差異情報であってもよい。
【0029】
本発明によれば、生成された当該映像と所与の基準映像(例えば、アニメ映像、実写映像など)との差異情報を評価情報として用いることにより、基準映像を考慮した正確な予測を行うことができる。その結果、リアルな映像を提供することができる。
【0030】
(10)また、本発明に係るエンターテインメントシステム、情報処理装置、プログラム、情報記憶媒体において、プレーヤの入力情報に基づいて、生成された複数の映像の中から、提供する映像を選択する選択部を、更に含むようにしてもよい。
【0031】
本発明によれば、生成された複数の映像の中から、プレーヤが見たい映像を選択することが可能となり、プレーヤに満足感の高い映像サービスを提供することができる。
【図面の簡単な説明】
【0032】
図1】本実施形態のゲームシステムの構成の一例を示す図。
図2】本実施形態のサーバ装置の機能ブロックを示す図。
図3】本実施形態の端末装置の機能ブロックを示す図。
図4】本実施形態において、映像の生成を説明するための図。
図5】本実施形態の学習情報を説明するための図。
図6】本実施形態のカメラワークの種類と値を説明するための図。
図7】本実施形態の映像ID、学習情報ID、評価情報との対応関係を示す図。
図8】本実施形態において、映像の生成を説明するための図。
図9】本実施形態において、映像の生成を説明するための図。
図10】本実施形態の映像選択に関する説明図。
図11】本実施形態において、映像の生成を説明するための図。
図12】本実施形態のAIによる映像生成のフローチャート。
【発明を実施するための形態】
【0033】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0034】
[1]エンターテインメントシステムの概要
まず、図1を用いて本実施形態のエンターテインメントシステムの概要及び概要構成について説明する。なお、図1は、本実施形態のエンターテインメントシステムの構成を示すシステム構成の一例を示す図である。
【0035】
サーバ装置10は、インターネット(ネットワークの一例)を介して通信接続された端末装置(ゲーム装置)20を用いて、所与のサービスを提供することが可能な情報処理装置である。
【0036】
端末装置20は、家庭用テレビゲーム機、パーソナルコンピュータ(PCとも言う。)スマートフォン、携帯電話、PHS、コンピュータ、PDA、携帯型ゲーム機等、画像生成装置、業務用ゲーム装置、アーケードゲーム装置、筐体などの情報処理装置であり、インターネット(WAN)、LANなどのネットワークを介してサーバ装置10に接続可能な装置である。端末装置20には、入力部260が接続されるとともに、表示部290が接続される。
【0037】
本実施形態の端末装置20は、学習機能(例えば、機械学習による学習機能)を有する。端末装置20は、学習装置と言い換えてもよい。また、端末装置20は、機械学習による推論機能(予測機能)を有する。端末装置20は、推論装置(予測装置)と言い換えてもよい。
【0038】
[1.1]クライアントサーバモデルで構成されるエンターテインメントシステム
本実施形態のエンターテインメントシステムは、図1に示すように、サーバ装置10と、端末装置20(例えば、端末装置20A、20B、20C)とが、インターネット(ネットワークの一例)に接続可能に構成される。
【0039】
プレーヤ(ユーザ)は、端末装置20からサーバ装置10にアクセスすることにより、インターネットを介してサーバ装置10から送信される情報に基づき、ゲームをプレイすることができる。
【0040】
特に、本実施形態では、第1のキャラクタと第2のキャラクタとが対戦するゲームを実行させるサーバ装置10から、プレーヤの端末装置20に、ゲームに関する情報を提供する。端末装置20によって受け付けられたプレーヤの操作入力に関する情報をサーバ装置10に送信する。サーバ装置10から端末装置20にゲームに関する情報を送信する。
【0041】
本実施形態は、一つのサーバ装置10によって各ゲームを端末装置20に提供してもよいし、複数のサーバ装置10を連動させてサーバシステムを構築し、各ゲームを端末装置20に提供してもよい。
【0042】
なお、サーバ装置10だけで本発明に関する各種の処理を行うようにしてもよいし、端末装置20だけで本発明に関する各種の処理を行うようにしてもよい。
【0043】
[1.2]端末装置
本実施形態のエンターテインメントシステムは、サーバ装置10の機能を備えた単一の端末装置、すなわち、サーバ装置などの他の機器に依存せず単独で動作する装置(スタンドアローン)によって実現してもよい。
【0044】
また、本実施形態では、サーバ装置10と接続せずに、端末装置20だけで本発明を実現するものであってもよい。例えば、P2P(ピア・ツー・ピア方式)による通信によって複数の端末装置20で実現するエンターテインメントシステムであってもよい。
【0045】
そして、このような端末装置を有線又は無線によって複数連結させ、一の端末装置がホスト(サーバ装置10)として機能して、複数の端末装置によって実現してもよい。
【0046】
なお、端末装置は、端末装置だけでなく、タブレット型情報端末装置やパーソナルコンピュータ、又は、アミューズメントパークに設置される端末装置(筐体)でもよい。
【0047】
[1.3]クラウド型のエンターテインメントシステム
また、本実施形態のエンターテインメントシステムはクラウド型のエンターテインメントシステムでもよい。例えば、クラウド型のエンターテインメントシステムでは、サーバ装置10(クラウド装置)だけで基本的な処理(ゲーム処理、描画処理などを含む)を行い、端末装置20側ではサーバ装置10(クラウド装置)の処理結果の表示制御のみを行う。また、端末装置20は、サーバ装置10に対してコントローラの操作入力(操作情報、入力情報)などの情報を送信する。なお、かかる場合、端末装置20は、操作入力以外の情報を送信してもよい。
【0048】
さらに、本実施形態では、入力を除き、上記の端末装置20の処理部200の各機能及びゲームプログラムの実行をサーバ装置10で実行し、当該端末装置20は、入力とストリーミングによる画像表示を実行することによって、上記のゲームを実現してもよい。
【0049】
また、エンターテインメントシステムは、インターネット上の所与の記憶領域に、サーバ装置10に記憶される情報、端末装置20に記憶される情報を記憶するようにしてもよい。
【0050】
[1.4]複数のコントローラを備えた端末装置
また、本実施形態では、1台の端末装置20が複数のコントローラ(入力部260)を備えたものでもよい。なお、複数のプレーヤが1台の端末装置20の各プレーヤのコントローラを用いてゲームをプレイする場合、複数のプレーヤが現実的に近くにいることが想定される。
【0051】
[1.5]ソーシャルゲームの例
また、本実施形態では、コミュニケーション型のサービスを提供するSNSサーバとして機能してもよい。ここで、SNSサーバとは、複数のプレーヤ間でコミュニケーションを提供することが可能なサービスを提供する情報処理装置であってもよい。
【0052】
また、本実施形態では、例えば、SNSサーバとして機能する場合には、提供するSNSの動作環境(API(アプリケーションプログラミングインタフェース)、プラットフォーム等)を利用して実行されるソーシャルゲーム(Social Game)と呼ばれるゲームを提供できる。
【0053】
なお、ソーシャルゲームとは、既存のオンラインゲームとは違い、専用のクライアントソフトウェアを必要とせず、WebブラウザとSNSのアカウントのみで利用可能なゲー
ムが含まれる。また、本実施形態では、ネットワークを介して他のプレーヤの端末装置20と接続し、オンラインで同時に同じゲーム進行を共有することができるオンラインゲームを提供することが可能な構成を有している。
【0054】
[1.6]ブラウザゲームの例
特に、本実施形態では、端末装置20のWebブラウザ上で提供されるゲーム、例えばHTML、FLASH(登録商標)、CGI、PHP、shockwave、Java(登録商標)アプレット、JavaScript(登録商標)など様々な言語で作られたブラウザゲーム(Webブラウザで設置サイトを開くだけで起動するゲーム)を提供してもよい。
【0055】
また、端末装置20は、Webページ(HTML形式のデータ)を閲覧可能なWebブラウザを備えている。すなわち、端末装置20は、サーバ装置10との通信を行うための通信制御機能、及びサーバ装置10から受信したデータ(Webデータ、HTML形式で作成されたデータなど)を用いて表示制御を行うとともに、プレーヤ操作のデータをサーバ装置10に送信するWebブラウザ機能などを備え、画面をプレーヤに提供する各種の処理を実行し、プレーヤによってゲームを実行させるようになっている。ただし、端末装置20は、サーバ装置10から提供されたゲーム制御情報を取得して所定のゲーム処理を実行し、ゲーム処理に基づくゲームを実行してもよい。
【0056】
具体的には、端末装置20は、所定ゲームを行う旨の要求をサーバ装置10に対して行うと、サーバ装置10のゲームサイトに接続され、ゲームが開始される。特に、端末装置20は、必要に応じてAPIを用いることにより、SNSサーバとして機能するサーバ装置10に所定の処理を行わせ、又は、SNSサーバとして機能するサーバ装置10が管理するプレーヤの情報等を取得させてゲームを実行する構成を有してもよい。
【0057】
[1.7]その他
本実施形態では、1つの(装置、プロセッサ)で構成されていてもよいし、複数の(装置、プロセッサ)で構成されていてもよい。サーバ装置10の記憶領域(後述する記憶部170)に記憶される情報(例えば、プレーヤの情報、ゲーム情報等)を、ネットワーク(イントラネット又はインターネット)を介して接続されたデータベース(広義には記憶装置、メモリ)に記憶するようにしてもよい。なお、端末装置20とサーバ装置10との通信回線は、有線でもよいし無線でもよい。
【0058】
[2]サーバ装置
次に、図2を用いて本実施形態のサーバ装置10について説明する。なお、図2は、本実施形態のサーバ装置10の機能ブロックを示す図である。また、本実施形態の本実施形態では図2の構成要素(各部)の一部を省略した構成としてもよい。
【0059】
本実施形態では、管理者やその他の入力に用いるための入力部160、所定の情報が記憶された情報記憶媒体180、端末装置20やその他と通信を行う通信部196、主に提供するゲームに関する処理を実行する処理部100、及び、主にゲームに用いる各種のデータを記憶する記憶部170を含む。
【0060】
入力部160は、システム管理者等がゲームに関する設定やその他の必要な設定、データの入力に用いるものである。例えば、本実施形態の入力部160は、マウスやキーボード等によって構成される。
【0061】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディス
ク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などによって構成される。
【0062】
通信部196は、外部(例えば、端末、他のサーバや他のネットワークシステム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどによって構成される。
【0063】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能は、RAM(VRAM)などによって構成される。なお、記憶部170に記憶される情報は、データベースで管理してもよい。
【0064】
また、本実施形態の記憶部170は、主記憶部171の他に、ゲームに関する情報を示すゲーム情報が記憶されるエンターテインメント情報記憶部174、及び、プレーヤ情報記憶部(ユーザ情報記憶部)176を有している。
【0065】
特に、エンターテインメント情報記憶部174には、エンターテインメントコンテンツ(例えば、ゲーム)が実施される仮想空間(ゲームフィールド)の情報、仮想カメラの情報、エンターテインメントコンテンツで用いられる設定値等が記憶される。
【0066】
また、プレーヤ情報記憶部176には、プレーヤ毎(ユーザ毎)に、プレーヤID(ユーザID)に対応付けてプレーヤ情報(ユーザの情報)が記憶される。プレーヤIDは、プレーヤを識別するための識別情報である。
【0067】
処理部100は、記憶部170内の主記憶部171をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0068】
処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
【0069】
例えば、処理部100(プロセッサ)は、情報記憶媒体180に記憶されているプログラムに基づいて、サーバ装置10全体の制御を行うとともに、各部間におけるデータ等の受け渡しの制御などの各種の処理を行う。さらに、端末装置20からの要求に応じた各種サービスを提供する処理を行う。
【0070】
なお、本実施形態では、サーバ装置10が処理部100の一部又は全部の処理を行ってもよいし、端末装置20が処理部100の一部の処理を行ってもよい。
【0071】
処理部100は、エンターテインメント制御部111、表示制御部112、受け付け部119、通信制御部120、Web処理部121、管理部122、通知部123を含む。
【0072】
エンターテインメント制御部111は、本実施形態のゲーム(例えば、対戦ゲーム)を提供するための各種制御を行う。例えば、処理部100は、端末装置20と連動し、当該端末装置20を介して入力されたプレーヤの入力に基づいて、各プレーヤにおいて本実施形態で提供するゲームのゲーム処理を実行する。
【0073】
また、処理部100は、タイマ機能を有し、ゲームの進行状況を管理するため、各端末装置20と同期を取るために用いるようにしてもよい。特に、現在時刻や予め設定された
時刻を各部に出力するようにしてもよい。
【0074】
エンターテインメント制御部111は、プレーヤの操作入力(操作情報)に基づいて、ゲーム処理を実行する。例えば、エンターテインメント制御部111は、プレーヤの端末装置20から当該プレーヤの操作入力(操作情報)を受信して、エンターテインメントに関する処理を行う。例えば、エンターテインメント制御部111は、ゲーム処理を行うようにしてもよい。また、オンライン対戦時には、各プレーヤとのマッチング処理等を行う。
【0075】
表示制御部112は、ゲーム状況に応じてサーバ装置10が生成した画面(画像)を、端末装置20の表示部290に表示するように制御する。つまり、サーバ装置10が生成した画面(画像)の表示先を、端末装置20の表示部290とする。
【0076】
表示制御部112は、プレーヤ毎に、プレーヤの端末装置20に表示する画面(ゲーム画像、演出画像)を表示するための制御を行う。
【0077】
受け付け部119は、ゲームに関する情報を受け付けてもよい。例えば、受け付け部119は、受け付け部119は、端末装置20から操作入力の内容を受信して受け付けてもよい。
【0078】
また、受け付け部119は、通信制御部120によるデータ送受信によって、プレーヤの入力やゲームに関する情報などを受け付けるようにしてもよい。
【0079】
通信制御部120は、端末装置20との接続(セッションやコネクション)を確立し、ネットワークを介してデータを通信(送受信)する処理を行う。
【0080】
例えば、通信制御部120は、プレーヤの端末装置20に、ゲームに関する情報を送信する。また、通信制御部120は、プレーヤの端末装置20から、当該端末装置20によって受け付けられたプレーヤの操作情報を受信する。また、通信制御部120は、端末装置20にゲームに関する情報を送信する。
【0081】
Web処理部121は、Webサーバとして機能する。例えば、Web処理部121は、HTTP(Hypertext Transfer Protocol)等の通信プロトコルを通じて、端末装置20にインストールされているWebブラウザの要求に応じてデータを送信する処理、及び、端末装置20のWebブラウザによって送信されるデータを受信する処理を行う。
【0082】
管理部122は、ゲーム情報や、プレーヤ毎に、プレーヤの識別情報に対応付けられたプレーヤの情報を管理する。
【0083】
また、通知部123は、プレーヤに所与の情報を通知する。なお、「通知」するとは、プレーヤ(プレーヤの端末装置20)に対して情報を通知することである。なお、「通知」を、提供、提示、表示、送信という文言に言い換えて解釈してもよい。
【0084】
通知部123は、画面を端末装置20において通知するように送信制御をしてもよい。つまり、通知部123は、画面(画像)の表示制御情報を生成し、生成した表示制御情報を、プレーヤの端末装置20(例えば、端末装置20の表示部290)に表示するように制御する。
【0085】
なお、サーバ装置10は、以下に説明する端末装置20の全部又は一部の機能を有して
いてもよい。
【0086】
[3]端末装置
次に、図3を用いて本実施形態の端末装置20について説明する。なお、図3は、本実施形態における端末装置20の構成を示す機能ブロック図の一例である。また、本実施形態の端末装置20は図3の構成要素(各部)の一部を省略した構成としてもよい。
【0087】
情報記憶媒体280(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。
【0088】
入力部260は、操作入力(操作信号)を入力可能なボタンやレバーを備える。端末装置20は、プレーヤに表示部290に表示されたエンターテインメントコンテンツの画面を視聴しながら、エンターテインメントに関する処理を行う。
【0089】
なお、入力部260は、タッチパネル又はタッチパネル型ディスプレイなどにより実現できてもよい。すなわち、入力部260は、画像が表示される画面上における2次元の指示位置座標(x,y)を検出可能な検出部262を備えている。例えば、入力部260は、接触検出領域(タッチパネル)における、2次元の接触位置座標(x,y)を検出可能な検出部262を備えている。なお、表示画面(以下、特別な場合を除き「タッチパネル」という。)への接触操作は、指先を用いて行うようにしてもよいし、タッチペンなどの入力機器を用いて行うようにしてもよい。
【0090】
また、入力部260は、キーボード、ステアリング、マイク、加速度センサなどを備えていてもよい。
【0091】
記憶部270は、記憶部270は、200や通信部296などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。
【0092】
記憶部270の記憶領域の一例の図である。そして、本実施形態の記憶部270は、主記憶部271と、画像バッファ272と、エンターテインメント情報記憶部274、映像記憶部275、プレーヤ情報記憶部276と、学習記憶部278、学習モデル記憶部279を含む。なお、これらの一部を省略する構成としてもよいし、サーバ装置10の記憶部170或いはネットワークを介して接続された所与の記憶装置(クラウド上の記憶領域)がその一部を構成してもよい。
【0093】
主記憶部271は、ワーク領域として使用される。画像バッファ272には、映像生成部230によって生成された画像データ(表示画像)が記憶される。なお、サーバ装置10が生成した画像データを受信し、当該画像データを画像バッファ272に記憶してもよい。
【0094】
エンターテインメント情報記憶部274には、エンターテイメント情報が記憶される。例えば、エンターテインメント情報記憶部274には、ゲーム情報が記憶される。なお、端末装置20は、サーバ装置10から、ゲーム情報を受信して、エンターテインメント情報記憶部274に、当該ゲーム情報を記憶してもよい。
【0095】
ゲーム情報は、コマンド情報、キャラクタ情報を含む。エンターテインメント情報記憶部274に記憶されるゲーム情報は、キャラクタの行動情報及び当該行動情報に関連する関連情報を含んでもよい。また、エンターテインメント情報記憶部274に記憶されるゲ
ーム情報は、ゲームフィールド(ゲーム空間)の情報、仮想カメラの情報、キャラクタ情報、その他ゲームで用いられる設定値等を含んでもよい。
【0096】
キャラクタ情報は、キャラクタに関する情報である。例えば、キャラクタのパラメータ(体力値、攻撃力、防御力等のパラメータ)、キャラクタが有するアイテム(武器)、レベル(段位、ランク)等である。レベルは、技量レベルの高さ、キャラクタの強さを示す。本実施形態では、レベルは、ゲーム成績によって順次更新される。
【0097】
プレーヤ情報記憶部276は、プレーヤの情報が記憶される。なお、端末装置20は、サーバ装置10から、プレーヤIDに対応するプレーヤ情報を受信して、プレーヤ情報記憶部276に記憶するようにしてもよい。
【0098】
例えば、プレーヤ情報記憶部276には、プレーヤのレベル、プレイ履歴、プレイ傾向、プレーヤに関連する他のプレーヤの情報、等が記憶される。
【0099】
なお、プレーヤ情報は、プレーヤの操作入力(操作情報)を含んでもよい。また、プレーヤ情報は、プレーヤに対応付けられたプレーヤの情報だけでなく、プレーヤのゲーム媒体(例えば、プレーヤが所有するキャラクタ、カード、アイテムなどのゲーム媒体)の情報等を含む概念であってもよい。
【0100】
学習記憶部278には、学習情報が記憶される。また、学習記憶部278には、評価情報が記憶される。具体的に、学習記憶部278には、映像(動画象、画像のデータ)が記憶される。この映像は、本実施形態の映像生成部230によって生成される映像も含む。また、AI(AIはArtificial Intelligenceの略)が生成した映像も含んでもよい。また、端末装置20は、他の情報処理装置から学習情報を受信して学習記憶部278に記憶するようにしてもよい。
【0101】
学習モデル記憶部279には、学習モデル(モデル)が記憶される。学習モデルは、入力データと出力データとの相関関係(関係性)や傾向を数式(関数)で表したものである。学習モデル記憶部279には、学習部218において機械学習された学習モデルが記憶される。
【0102】
情報記憶媒体280について説明すると、情報記憶媒体280は、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)を記憶することができる。なお、処理部200は、後述するように、情報記憶媒体280に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。
【0103】
表示部290は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。
【0104】
特に、本実施形態では表示部290は、タッチパネルディスプレイを用いることによりプレーヤがゲーム操作を行う入力部260としても機能する。ここでタッチパネルとして、例えば抵抗膜方式(4線式、5線式)、静電容量方式、電磁誘導方式、超音波表面弾性波方式、赤外線走査方式などのタッチパネルを用いることができる。
【0105】
音出力部292は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【0106】
通信部296は、外部(例えばサーバ装置10や他の端末装置20)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0107】
なお、端末装置20は、サーバ装置10が有する情報記憶媒体180や記憶部170に記憶されている本実施形態の各部としてコンピュータを機能させるためのプログラムやデータを、ネットワークを介して受信し、受信したプログラムやデータを情報記憶媒体280や記憶部270に記憶してもよい。このようにプログラムやデータを受信して端末装置20を機能させる場合も本発明の範囲内に含めることができる。
【0108】
処理部200(プロセッサ)は、入力部260からの入力データやプログラムなどに基づいて、サーバ装置10と連動して、エンターテインメント制御(例えば、ゲーム処理)、画像生成処理、或いは音生成処理などの処理を行う。
【0109】
また、処理部200は、入力部260によって入力されたプレーヤの操作入力に基づき、ゲーム処理(例えば、対戦ゲーム等の処理)、等を行う。また、処理部200は、サーバ装置10と連動して実行してもよいし、その一部又は全部がサーバ装置10に形成されていてもよい。
【0110】
また、処理部200は、記憶部270をワーク領域として各種処理を行う。処理部200の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0111】
処理部200は、通信制御部211、オブジェクト空間設定部212、移動・動作制御部213、操作入力受付部214、エンターテインメント制御部215、行動制御部217、学習部218、設定部219、提供部222、仮想カメラ制御部223、選択部224、記憶処理部225、映像生成部230、音処理部240を含む。なお、これらの一部を省略する構成としてもよい。
【0112】
通信制御部211は、サーバ装置10とデータを送受信する処理を行う。また、通信制御部211は、サーバ装置10から受信したデータを記憶部270に格納する処理、受信したデータを解析する処理、その他のデータの送受信に関する制御処理等を行う。
【0113】
通信制御部211は、サーバ装置10から受信した情報に基づいてエンターテインメントコンテンツを制御する場合に、サーバ装置10から送信された情報を受信し、サーバ装置に、端末装置20の情報を送信する。
【0114】
通信制御部211は、他のプレーヤの端末装置20と、エンターテインメントコンテンツを制御する場合に、他のプレーヤの端末装置20から送信された情報を受信し、他のプレーヤの端末装置20に、自端末装置20の情報を送信する。
【0115】
通信制御部211は、プレーヤからの通信開始の操作入力を受け付けた場合に、他の端末装置20又はサーバ装置10との通信を行うようにしてもよい。
【0116】
また、通信制御部211は、他の端末装置20又はサーバ装置10と通信接続が確立されてから当該通信接続が切断されるまで、データを所定周期で互いに送受信する処理を行う。
【0117】
通信制御部211は、サーバ装置10にプレーヤの識別情報や操作入力を送信して、データ(プレーヤのWebページ、画面等)をサーバ装置10から受信する処理を行う。
【0118】
通信制御部211は、所定周期でサーバ装置10とデータ送受信を行ってもよいし、入力部260からの操作入力を受け付けた場合に、サーバ装置10とデータ送受信を行ってもよい。特に、本実施形態の通信制御部211は、所与の画面情報(例えば、画面の情報等)を、サーバ装置10から受信する処理を行うようにしてもよい。
【0119】
さらに、通信制御部211は、複数の端末装置20によって構成されるネットワークシステムの場合は、複数の端末装置20間でデータの送受信を行いながらオンラインゲームを実行するピア・ツー・ピア(いわゆるP2P)方式によって通信制御を実行してもよいし、サーバ装置10を介して各端末装置20がデータ(情報)の送受信を行いながらオンラインゲームを実行するクライアント・サーバ方式によって通信制御を実行してもよい。
【0120】
なお、本実施形態のエンターテインメントシステムでは、有線通信のみならず無線通信でデータを送受信してもよい。
【0121】
オブジェクト空間設定部212は、オブジェクトをオブジェクト空間(仮想的三次元空間)に配置する処理を行う。キャラクタの他に、建物、球場、車、樹木、柱、壁、マップ(地形)などの表示物を、オブジェクト空間に配置する処理を行う。ここでオブジェクト空間とは、仮想的なゲーム空間であり、例えば、ワールド座標系、仮想カメラ座標系のように、三次元座標(X,Y,Z)においてオブジェクトが配置される空間である。
【0122】
例えば、オブジェクト空間設定部212は、ワールド座標系にオブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)を配置する。また、例えば、ワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
【0123】
オブジェクト空間設定部212は、スクリーン(二次元画像、画面、スクリーン座標系)上に、特殊コマンドの入力指示オブジェクト、マーカーなどの指示オブジェクトを配置する処理を行うようにしてもよい。また、オブジェクト空間設定部212は、オブジェクト空間(三次元空間、ワールド座標系、仮想カメラ座標系、モデル座標系)に、指示オブジェクトを配置するようにしてもよい。
【0124】
移動・動作制御部213は、オブジェクト空間にあるオブジェクトの移動・動作演算を行う。すなわち入力部260から受け付けた操作入力や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させたりする処理を行う。
【0125】
移動・動作制御部213は、オブジェクト空間において、主要なオブジェクトであるキャラクタオブジェクト(キャラクタ)の移動動作を制御する。
【0126】
具体的には、移動・動作制御部213は、入力部260への操作入力に基づくキーデータに基づいて、自機を操作するプレーヤの操作対象のプレーヤキャラクタの動作を制御する処理、当該キャラクタが繰り出す攻撃技のヒット判定処理及び、相手キャラクタから攻撃を受けた際のダメージ処理などを行う。
【0127】
移動・動作制御部213は、対戦相手が実プレーヤである場合、対戦相手の端末装置20において入力されたキーデータを取得し、取得したキーデータに基づいて、相手キャラクタが繰り出す攻撃技の移動・動作、当該攻撃技のヒット判定処理、及び、プレーヤキャ
ラクタから攻撃を受けた際のダメージの移動・動作処理などを行う。
【0128】
移動・動作制御部213は、対戦相手がコンピュータ(CPU)である場合、所定のプログラム、アルゴリズムに基づいて、コンピュータキャラクタ(NPC(ノンプレーヤキャラクタ)ともいう)が繰り出す攻撃技の移動・動作、当該攻撃技のヒット判定処理、及び、プレーヤキャラクタから攻撃を受けた際のダメージの移動・動作処理などを行う。つまり、対戦相手がコンピュータである場合、プレーヤによって操作されずに、コンピュータキャラクタの移動・動作の制御を行う。
【0129】
移動・動作制御部213は、コンピュータキャラクタが、AIによって制御されるAIキャラクタである場合、学習モデルを用いて推論される行動による移動・動作を行う。
【0130】
また、移動・動作制御部213は、係る処理を1フレーム(例えば、1/60秒)毎に行う。なお、フレームは、オブジェクトの移動・動作処理や画像生成処理を行う時間の単位である。
【0131】
操作入力受付部214は、プレーヤによって入力部260に入力された操作入力に基づいて、操作指示コマンドを受け付ける。
【0132】
エンターテインメント制御部215は、開始条件が満たされた場合にエンターテインメントコンテンツ(例えば、ゲーム)を開始する処理、エンターテインメントコンテンツを進行させる処理、キャラクタ、敵キャラクタなどのオブジェクトを配置する処理、オブジェクトを表示する処理、エンターテインメントコンテンツの結果(例えば、ゲーム結果)を演算する処理、或いは終了条件が満たされた場合にエンターテインメントコンテンツを終了する処理などが含まれる。
【0133】
プレーヤがコンピュータと対戦ゲームを行う場合、エンターテインメント制御部215は、操作入力受付部214によって受け付けられたプレーヤの操作入力の情報と、コンピュータで制御される情報(例えば、行動制御部217によって決定された行動の情報を含む)に基づいて、ゲームの進行を行う。
【0134】
実プレーヤ同士で対戦ゲームを行う場合エンターテインメント制御部215は、端末装置20Aの操作入力受付部214によって受け付けられた第1のプレーヤの操作入力の情報と、第2のプレーヤの端末装置20Bから送信された情報であって、端末装置20Bにおける第2のプレーヤの操作入力の情報と、に応じて、ゲームの進行を行う。
【0135】
エンターテインメント制御部215は、キャラクタ同士が、相互に攻撃や防御を行い、両者の体力値を減少させる。そして、両者の体力値に基づいて勝敗を判定する。
【0136】
行動制御部217は、キャラクタの行動(例えば、攻撃、防御、演技などの行動)を制御する処理を行う。例えば、行動制御部217は、プレーヤの操作入力に基づいて、当該プレーヤの操作対象のキャラクタ(以下、「第1のキャラクタ」ともいう。)の行動を制御する。
【0137】
また、行動制御部217は、学習部218において学習(例えば、機械学習)された学習データ(例えば、学習モデル)を用いて、コンピュータによって制御されるコンピュータキャラクタ(以下、「第2のキャラクタ」ともいう。)の行動を制御するようにしてもよい。
【0138】
学習部218は、映像に関して学習(例えば、機械学習)する。例えば、端末装置20
は、所定の入力データを入力すると、カメラワーク(仮想カメラの制御情報)が出力されるモデル(学習モデル)を機械学習によって生成する。
【0139】
入力データとしては、エンターテインメントコンテンツの現時点での情報でもよい。例えば、現時点でのイベント情報(イベントの種類)、ゲーム開始時点から現時点までの時間、イベント期間、仮想空間に存在するキャラクタ(アバター)の情報、音情報、画像情報、などである。なお、入力データにカメラワークの情報を含んでもよい。カメラワークのパターンを学習データに加えることで、より正確なカメラワークの予測ができるようになる。
【0140】
設定部219は、プレーヤの情報に基づいて、学習頻度を設定する。また、設定部219は、学習情報を構成する複数の項目それぞれの重みを設定する。これらの項目にそれぞれ異なる重要度がある場合、それぞれの項目に対して重みを設定することで、より正確な映像生成が可能になる。なお、重みを設定する方法としては、機械学習アルゴリズムのハイパーパラメーターの調整や、特定の項目に対する正確度を測定する検証指標の設定などがある。
【0141】
設定部219は、プレーヤの操作入力に基づき、学習情報の複数の項目それぞれの優先順位を設定するようにしてもよい。
【0142】
提供部222は、映像をプレーヤに提供する処理を行う。例えば、端末装置20の表示部290に映像を表示する処理を行う。
【0143】
提供部222は、サーバ装置10から受信した映像を表示してもよい。なお、提供部222は、Webブラウザを用いて表示情報や画面を表示してもよい。
【0144】
仮想カメラ制御部223は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。
【0145】
仮想カメラ制御部223は、仮想空間に、少なくとも1つの仮想カメラを配置する。つまり、1つの仮想カメラ或いは2以上の仮想カメラを仮想空間に配置する。
【0146】
具体的には、仮想カメラ制御部223は、三次元の画像を生成する場合には、ワールド座標系における仮想カメラの位置(X、Y、Z)、回転角度(例えば、X、Y、Z軸の各軸の正方向からみて時計回りに回る場合における回転角度)を制御する処理を行う。
【0147】
すなわち、仮想カメラ制御部223は、仮想カメラの視点位置、視線方向、画角、移動方向、移動速度の少なくとも1つを制御する処理を行う。
【0148】
選択部224は、プレーヤの入力情報に基づいて、生成された複数の映像の中から、提供する映像を選択する。
【0149】
記憶処理部225は、生成した映像を映像記憶部275に記憶する処理を行う。
【0150】
映像生成部230は、処理部200で行われる種々の処理の結果に基づいて描画処理を行い、これにより画像を生成し、表示部290に出力する。
【0151】
すなわち、映像生成部230は、仮想空間において、仮想カメラから見える映像(画像、動画像)を生成する。
【0152】
映像生成部230は次のように映像を構成する画像生成を行う。例えば、映像生成部230は、オブジェクト(モデル)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むオブジェクトデータ(モデルデータ)が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理(頂点シェーダによるシェーディング)が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。
【0153】
頂点処理では、頂点処理プログラム(頂点シェーダプログラム、第1のシェーダプログラム)に従って、頂点の移動処理や、座標変換、例えばワールド座標変換、視野変換(カメラ座標変換)、クリッピング処理、透視変換(投影変換)、ビューポート変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。
【0154】
そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。そして、ラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(ピクセルシェーダによるシェーディング、フラグメント処理)が行われる。
【0155】
ピクセル処理では、ピクセル処理プログラム(ピクセルシェーダプログラム、第2のシェーダプログラム)に従って、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を画像バッファ272(ピクセル単位で画像情報を記憶できるバッファ。VRAM、レンダリングターゲット、フレームバッファ)に出力(描画)する。
【0156】
すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。
【0157】
なお、頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現される。
【0158】
プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【0159】
そして映像生成部230は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【0160】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)のオブジェクトデータ(オブジェクトの頂点の位置座標、テクスチャ座標、色データ(輝度データ)、法線ベクトル、或いはα値等)は、記憶部270に保存される。
【0161】
テクスチャマッピングは、記憶部270に記憶されるテクスチャ(テクセル値)をオブジェクトにマッピングするための処理である。
【0162】
具体的には、オブジェクトの頂点に設定(付与)されるテクスチャ座標等を用いて記憶部270からテクスチャ(色(RGB)、α値などの表面プロパティ)を読み出す。そして、二次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【0163】
隠面消去処理としては、描画ピクセルのZ値(奥行き情報)が格納されるZバッファ(奥行きバッファ)を用いたZバッファ法(奥行き比較法、Zテスト)による隠面消去処理を行うことができる。
【0164】
すなわち、オブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファに格納されるZ値を参照する。そして参照されたZバッファのZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファのZ値を新たなZ値に更新する。
【0165】
αブレンディング(α合成)は、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)のことである。
【0166】
例えば、αブレンディングでは、これから画像バッファ272に描画する描画色(上書きする色)C1と、既に画像バッファ272(レンダリングターゲット)に描画されている描画色(下地の色)C2とを、α値に基づいて線形合成処理を行う。つまり、最終的な描画色をCとすると、C=C1*α+C2*(1-α)によって求めることができる。
【0167】
なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
【0168】
また、映像生成部230は、他の端末(第2の端末)とネットワークを介してデータを送受信するマルチプレーヤオンラインゲームを行う場合は、端末(第1の端末)の操作対称のオブジェクトの移動に追従する仮想カメラ(端末(第1の端末)で制御される仮想カメラ)から見える画像を生成する処理を行う。つまり、各端末が独立した描画処理を行う。
【0169】
特に、本実施形態では、映像生成部230は、映像に関する学習情報に基づいて、映像を生成するようにしてもよい。なお、映像に関する学習情報は、当該映像に関する評価情報を含む。
【0170】
つまり、映像生成部230は、トレーニング完了したモデル(学習済みモデル)にデータを入力し、新しい映像を生成(出力)する。
【0171】
入力するデータは、学習情報を元に学習された学習済みモデルに対して、新しい入力データを与えることで、モデルが予測を行うためのデータである。つまり、学習情報はモデルをトレーニングするためのデータセットであり、トレーニングを完了したモデルに入力するデータは、モデルが学習した結果を用いて予測を行うためのデータとなる。例えば、
音処理部240は、処理部200で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部292に出力する。なお、音処理部240は、サーバ装置10の音処理部140と全部又は一部の処理と同様の処理を行ってもよい。
【0172】
なお、本実施形態の端末装置20は、1人のプレーヤのみがプレイできるシングルプレーヤモード、或いは、複数のプレーヤがプレイできるマルチプレーヤモードでゲームプレイできるように制御してもよい。例えば、マルチプレーヤモードで制御する場合には、ネットワークを介して他の端末装置20とデータを送受信してゲーム処理を行うようにしてもよいし、1つの端末装置20が、複数の入力部からの操作入力に基づいて処理を行うようにしてもよい。
【0173】
本実施形態の端末装置20が、P2Pなどによって複数の端末装置20でゲームを行う場合は、一の端末装置20がホストとしての役割を担い、処理を実行してもよい。かかる場合、ホストとしての端末装置20は、サーバ装置10の各処理部(各処理部の一部又は全部)の処理を行うようにしてもよい。
【0174】
また、本実施形態の端末装置20は、サーバ装置10と同等の処理を行い、当該端末装置20の表示部に画面を表示するようにしてもよい。
【0175】
[4]概要
本実施形態のエンターテインメントシステムは、仮想空間で行われるエンターテインメントコンテンツにおいて、生成された映像を提供する。
【0176】
例えば、エンターテインメントシステムは、仮想空間に、少なくとも1つの仮想カメラを配置する。そして、図4に示すように、エンターテインメントシステムは、プレーヤ(ユーザ)に、仮想カメラにおいて生成された1カット目の映像MV1を提供する。続いて、仮想カメラにおいて生成された2カット目の映像MV2を提供する。続いて、仮想カメラにおいて生成された3カット目の映像MV3を提供する。
【0177】
例えば、1カット目の映像MV1では、T0~T1の期間においてキャラクタOB1と仮想カメラの位置(視点)との距離が2メートル以内になるように仮想カメラを設定して、キャラクタOB1を近距離で正面から撮影する。例えば、T0~T1の期間の所与のタイミングにおいて、仮想カメラの視点を位置CP1に設定し、仮想カメラの視線方向を方向CV1に設定し、仮想カメラから見える画像を生成する。
【0178】
例えば、2カット目の映像MV2では、T1~T2の期間において、仮想カメラの位置(視点)との距離が2メートル以内に設定して、キャラクタOB1を近距離で正面の下方向から撮影する。例えば、T1~T2の期間の所与のタイミングにおいて、仮想カメラの視点を位置CP2に設定し、仮想カメラの視線方向を方向CV2に設定し、仮想カメラから見える画像を生成する。
【0179】
3カット目では、T2~T3の期間において、1、2カット目よりもキャラクタOB1から離れた位置に仮想カメラを設定し、キャラクタOB1とキャラクタEA1(敵キャラクタ)を被写体となるように撮影する。例えば、キャラクタOB1と仮想カメラの位置(視点)との距離が10メートル以上になるように仮想カメラを設定する。例えば、T2~T3の期間の所与のタイミングにおいて、仮想カメラの視点を位置CP3に設定し、仮想カメラの視線方向を方向CV3に設定し、仮想カメラから見える画像を生成する。
【0180】
本実施形態のエンターテインメントシステムは、仮想カメラに関する情報を学習する。例えば、1~3カットの各映像MV1、MV2、MV3を生成した仮想カメラに関する情報を学習する。
【0181】
そして、図4に示すように、4カット目の期間(T3~T4の期間)において、学習情報に基づいて仮想カメラの制御を行い、当該仮想カメラから見える4カット目の映像MV
4を生成する。
【0182】
特に、本実施形態では、1~3カットの各映像MV1、MV2、MV3の評価情報に基づいて、4カット目の映像MV4を生成する。例えば、MV1の評価が高い場合、キャラクタOB1と仮想カメラの位置(視点)との距離が2メートル以内であるので、4カット目では、キャラクタOB1を正面方向から撮影する。また、キャラクタOB1と仮想カメラの位置(視点)との距離が2メートル以内となるように、仮想カメラの位置を決定する。このように、本実施形態によれば、映像の評価を加味して、新たな映像MV4を自動で生成してユーザに提供する。ゆえに、ユーザにとって満足度の高い映像MV4を提供することができる。
【0183】
[5]映像生成の説明
「映像」は、「動画」と「静止画」の両方の意味を含む。つまり、「映像」は、複数の画像を時系列に連続して表示する。また、映像生成は、映像を構成する複数の画像それぞれの画像生成を意味する。
【0184】
本実施形態では、仮想空間(3次元仮想空間、又は、ゲーム空間とも言う)に、仮想カメラを配置し、仮想カメラから見える画像を生成する。例えば、フレームレート(例えば、60fps(fpsはFrame Per Secondの略)に基づいて、画像を生成する。
【0185】
本実施形態では、所定の期間である1カット分の長さの映像を生成する。1カット分の長さは、映像の時間的な長さを示す。本実施形態での1カット分の長さは、例えば、5~10秒であるが、10秒以上でもよいし、5秒未満でもよい。
【0186】
[6]AIによる映像生成の説明
本実施形態では、AI(例えば、深層学習)によって映像(画像、動画)を生成する。なお、AIとは、Artificial Intelligenceの略である。
【0187】
例えば、本実施形態のエンターテインメントシステムは、仮想空間に配置された仮想カメラの位置、キャラクタの位置、等のパラメータを学習する。
【0188】
したがって、キャラクタの位置、仮想カメラの位置などを学習しているので、AIで映像を生成する場合において、この場面は、どの視点がよいか、誰を被写体とすべきか、どのような構図で、どのようなカメラワークがよいのか、等を決めて映像を生成する。
【0189】
[7]学習情報
AIで映像を生成する場合において、学習情報とは、AIが映像を生成するために必要なデータや知識のことである。静止画や動画、テキストや音声などの言語情報、物理法則や光源などの数値情報などがある。
【0190】
そして、AIで仮想空間において、仮想カメラから見える画像を生成するためには、学習情報として、3Dモデルやポーズなどの情報が必要である。これらの情報を含んだデータセットを使用して、AIは3Dモデルやポーズなどの情報を学習し、仮想空間において、仮想カメラから見える画像を生成することができる。
【0191】
特に、本実施形態のエンターテインメントシステムは、映像に関する情報を学習する。学習情報は、例えば、被写体、構図、イベントの演出内容、等である。
【0192】
学習情報は、仮想カメラの情報を含む。仮想カメラの情報とは、仮想カメラの視点(位
置)、向き(視線方向)、仮想カメラの画角、等である。
【0193】
また、仮想カメラの情報とは、仮想カメラの種類(望遠レンズ、魚眼レンズ、近距離用カメラ、など)、仮想カメラの切り替えタイミング、等を含む。
【0194】
仮想カメラの切り替えタイミングとは、第Nカット目(例えば、1カット目)の映像から、第N+1カット目(例えば、2カット目)の映像の切り替えのタイミングである。
【0195】
また、仮想カメラの情報とは、仮想カメラの移動方法を含む。移動方法とは、左右に移動するパン、上下に移動するティルト、被写体(例えば、キャラクタ)に連動して移動する移動情報、被写体に対して仮想カメラが近づく又は遠ざかる移動情報(ドリー・イン、ドリー・アウト)の情報、仮想カメラが揺れる情報、を含む。
【0196】
また、仮想カメラの情報とは、画角の変化(ズームイン、ズームアウト)の情報も含む。
【0197】
また、学習情報は、画像情報を含む。画像情報とは、オブジェクト(モデル)の情報(例えば、頂点の位置座標、テクスチャ座標、色データ、法線ベクトル、α値)を含む。画像情報とは、エフェクト情報、テクスチャ情報、ぼかしの情報、半透明合成処理の情報を含む。また、画像情報とは、画像のピクセル単位での情報(色、法線、輝度、α値など)を含む。また、環境情報(光源、影、雨、雪などの天候、日中、夜間の情報)を含む。
【0198】
学習情報は、仮想カメラの被写体に関する情報を含む。被写体に関する情報とは、例えば、被写体のキャラクタ(例えば、プレーヤキャラクタ、相手キャラクタ(敵キャラクタ)のキャラクタ名、キャラクタID、数、等の情報である。
【0199】
また、被写体に関する情報は、被写体がキャラクタである場合、当該キャラクタのオブジェクト(3Dモデル)の形状や構造、テクスチャの情報、ポーズを含む。
【0200】
被写体に関する情報は、画面における被写体の占有率も含んでもよい。例えば、映像(1カット目の期間において提供した映像)の各画像において被写体(キャラクタOB1が画面上に表示される占有率を算出し、当該映像期間における平均の占有率を算出する。例えば、1カット目は、キャラクタOB1がアップで表示されるため、占有率は80%であり、3カット目は、キャラクタOB1が遠くから撮影しているため、占有率は20%である、など、映像単位で、占有率が異なることがある。
【0201】
また、被写体に関する情報とは、被写体を照らす光源の情報(光源の位置、向き)を含んでもよい。光源とは、仮想空間における太陽、ライトでもよいし、被写体が逆光にならないようにするために当該被写体を照射するための光源でもよい。
【0202】
学習情報は、ゲーム状況に関する情報を含む。ゲーム状況に関する情報は、プレーヤの入力情報(操作情報)を含む。
【0203】
例えば、ゲーム状況に関する情報は、プレーヤの操作対象のプレーヤキャラクタが攻撃側であるゲーム状況であるのか、プレーヤキャラクタが攻撃を受ける側のゲーム状況であるのか、プレーヤキャラクタが防御するゲーム状況であるのか、等の情報を含む。また、ゲーム状況に関する情報は、プレーヤキャラクタ及び敵キャラクタ(相手キャラクタ)それぞれの攻撃力、防御力、体力値などのパラメータの情報を含む。
【0204】
学習情報は、画像分析に関する情報を含む。画像分析に関する情報とは、画像情報でも
よいし、生成した画像を分析して得られる情報である。例えば、画像分析に関する情報とは、生成した画像の各画素の情報(明度)、エフェクトの情報である。
【0205】
画像分析に関する情報は、画像上どうようなキャラクタがどれだけ移っているかを示す情報を含む。
【0206】
例えば、画像分析に関する情報は、所与の基準映像(例えば、アニメ映像、実写映像)を取り込み、当該基準映像の画像と生成した画像とを比較して分析した分析結果(例えば、一致度)でもよい。
【0207】
学習情報は、他のプレーヤの学習情報を含む。例えば、有名人(有名な監督、有名なゲームプレーヤー、Eスポーツ優勝者、等)が操作して映像生成された際の学習情報を事前に設定し(プリセットし)、ダウンロードできるようにしてもよい。
【0208】
また、学習情報は、イベント(演出)の情報(識別情報、開始時点、イベント期間などの情報)、音楽情報を含んでもよい。
【0209】
なお、本実施形態の学習情報は、AIが処理できるように数値化される必要がある。数値化とは、例えば、文字列や画像などの非数値データを数値データに変換することである。例えば、画像を数値化する場合は、画像の各ピクセルの色や明度を数値に変換する。また、テキストを数値化する場合は、テキストの各単語や文字を数値に変換する。音声を数値化する場合は、音声の波形や周波数を数値に変換する。
【0210】
[8]学習情報の具体例
図5は、学習情報の一例を示す。学習情報は、複数の項目(複数の要素)が存在する。各項目に変数名及びその値を対応付ける。
【0211】
学習情報は、イベント(演出内容)の項目を含む。当該項目の変数は、Event-Typeである。本実施形態では、イベントの種類に応じて予め数値を決定する。そして、変数に数値を設定する。例えば、通常の敵との剣による攻撃のイベントの場合は、「1」が設定される。また、通常の敵とのビーム砲による攻撃のイベントの場合は、「2」が設定される。また、ボス敵との攻撃のイベントの場合は、「3」が設定される。
【0212】
また、学習情報は、ゲーム開始時点からイベントの所与の時点(例えば、イベントの開始時点)までの経過時間を示す時間(期間)の項目を含む。当該項目の変数名は、Timeであり、例えば、通常の敵との剣による攻撃のイベント(Event-Tyep=1)の開始時点が、ゲーム開始時点から300秒経過している場合、Timeに「300」を設定する。
【0213】
また、学習情報は、イベントの期間の項目を含む。当該項目の変数名は、Event-Periodである。例えば、通常の敵との剣による攻撃のイベント(Event-Tyep=1)の期間が60秒である場合、Event-Periodに「60」を設定する。
【0214】
また、学習情報は、イベントにおいて、被写体となるキャラクタの項目を含む。当該項目の変数名は、Objectである。キャラクタOB1の場合「1」が設定され、キャラクタOB2の場合「2」が設定され、キャラクタEA1の場合、「3」が設定される。例えば、被写体となるキャラクタがキャラクタOB1の場合、変数のObjectに「1」が設定される。複数の被写体が存在する場合には、複数の値が設定される。
【0215】
また、学習情報は、イベントにおいての音楽情報を含んでもよい。当該項目の変数名は、Event-Musicである。本実施形態では、BGMの楽曲の種類を数値化し、イベントにおいて出力したBGMの値を変数に設定する。例えば、BGMが楽曲「〇〇のテーマ」である場合は数値「1」を設定し、BGMが楽曲「〇〇の行進曲」である場合は、数値「2」を設定する。
【0216】
また、学習情報は、仮想カメラのカメラワークの種類を含む。当該項目の変数名は、Camera-Typeである。本実施形態では、カメラワークの種類を数値化し、イベントにおいて使用したカメラワークの値を変数に設定する。
【0217】
図6は、カメラワークの種類と値の関係図を示す。
【0218】
カメラワークの種類Aは、キャラクタを近距離(例えば、仮想カメラとキャラクタとの距離が2メートル以内)で正面から撮影する。例えば、カメラワークの種類Aの値は「1」である。
【0219】
カメラワークの種類Bは、キャラクタを近距離(例えば、仮想カメラとキャラクタとの距離2メートル以内)で正面下方向から撮影する。例えば、カメラワークの種類Bの値は「2」である。
【0220】
カメラワークの種類Cは、キャラクタを遠距離(例えば、仮想カメラとキャラクタとの距離が10メートル以上)で撮影する。例えば、カメラワークの種類Cの値は「3」である。
【0221】
図5に戻り、学習情報は、画像情報を含む。当該項目の変数名は、Imageである。本実施形態では、画素単位で、画素値、明度などの情報を数値化し設定する。
【0222】
本実施形態の学習情報(例えば、画像情報などの学習情報)は、配列、行列などの所与の形式で数値を設定する場合もある。また、本実施形態では、映像の単位毎に、映像を識別するための映像IDと、映像に対応する学習情報を識別するための学習情報IDを割り振る。
【0223】
なお、エンターテインメントシステムは、学習情報に基づいてデータセットを生成してもよい。データセットは、学習に使用される具体的な画像やデータの集合体である。
【0224】
[9]評価情報
本実施形態のエンターテインメントシステムは、映像に対応付けて、当該映像に対する評価情報を取得し学習記憶部278に記憶する。映像と学習情報とは対応付けられている。よって、学習情報と評価情報とは対応関係にある。なお、広義に、学習情報は評価情報を含むものと解釈してもよい。
【0225】
評価対象の映像は、本実施形態において、学習モデルを用いずに生成される映像(例えば、プレーヤの入力情報やコンピュータ制御によって生成された映像)でもよいし、学習モデルを用いて生成される映像でもよい。
【0226】
評価情報は、映像に対する、プレーヤの入力に基づく評価情報としてもよい。例えば、評価情報は1~5の値域で評価される評価でもよい。数値が高い程、高評価であることを示す。また、評価情報は、映像に対応する、「いいね」などの評価指標の数でもよい。
【0227】
例えば、プレーヤがゲームプレイ中にリアルタイムに生成される映像について、プレー
ヤがゲーム操作していない場合は、熱中して映像を鑑賞していると考えられる。したがって、映像の提供中にプレーヤからの入力が無い場合、当該映像について高評価と判定する。例えば、当該映像について評価値「5」を設定する。また、プレーヤが映像の提供中において、プレーヤから所定の入力(キャンセルの入力、ゲームプレイに関係ない操作入力など)を検出した場合、当該映像に対して、低評価と判定する。例えば、当該映像について評価値「1」を設定する。
【0228】
また、評価情報は、映像に対する、複数のプレーヤからの評価情報としてもよい。複数のプレーヤからの評価情報は、「ビッグデータ」と言い換えてもよい。つまり、評価情報は、インターネット環境において、世界中の複数のプレーヤの評価の統計データとしてもよい。例えば、所与の映像について、複数のプレーヤの評価値の平均値を算出し、算出された平均値を当該映像に対応付けて設定する。
【0229】
評価情報は、映像と所与の基準映像との差異情報としてもよい。基準映像とは、例えば、アニメ映像、実写映像、CG(Computer Graphics)映像など基準となる映像である。例えば、本実施形態のゲームが、特定のアニメに基づくゲーム(例えば、アニメの世界観によるゲーム)を実行可能であることを前提とした場合であって、生成された映像が、当該アニメ映像の名シーンの再現するために生成した映像であるとする。かかる場合、場合、生成された当該映像とアニメ映像との差異情報(例えば、差異が大小、一致度、等)を判定し、当該差異情報を評価情報として用いる。
【0230】
例えば、アニメ映像が、正面の下方向からキャラクタOB1を撮影するシーンである場合において、生成された映像が、正面からキャラクタOB1を撮影するシーンである場合、違いが大きいと判断する。一方、生成された映像が、正面の下方向からキャラクタOB1を撮影するシーンである場合、違いが小さいと判断する。生成された映像とアニメ映像との差異が小さい場合、評価の値を高くし、差異が大きい場合、評価の値を低くする。
【0231】
また、生成された映像とアニメ映像との一致度を算出した場合、一致度が高い程、評価の値を高くする。
【0232】
エンターテインメントシステムは、インターネットを介して接続された所与の情報処理装置(例えば、配信サイトの情報処理装置)から、映像に対応付けられる評価情報を取得してもよい。
【0233】
評価情報は、配信サイトを通じて映像を見ている視聴者(例えば、プレーヤ)が、アプリやウェブ経由で、称賛や応援を数値化した情報(例えば、映像についての「投げ銭」の合計金額、「いいね」の数、等)、視聴者数、でもよい。
【0234】
なお、本実施形態では、映像について学習情報を取得するタイミングと、当該映像について評価情報を取得するタイミングは異なっていてもよい。
【0235】
また、エンターテインメントシステムは、AIによって生成しプレーヤに提供した映像において、プレーヤからの評価が高い映像については、その評価をもとに、学習モデルのパラメータを調整し、AIの精度を上げるようにする。
【0236】
[10]評価情報の記憶
図7は、映像ID、学習情報ID、評価情報との対応関係の一例を示す。本実施形態では、映像ID、学習情報ID及び評価情報を学習記憶部278に蓄積して記憶する。このように蓄積された情報に基づいて、どのようなカメラワークのときに、プレーヤがどのような評価をしたのか、等の情報を得ることができる。
【0237】
そして、AIによって映像生成する際に、現在の状況で最適な学習情報を検索し、プレーヤにとって評価がよい映像を生成することができる。例えば、プレーヤが被写体をプレーヤキャラクタとし、プレーヤキャラクタを近い距離で撮影するカメラワークの映像について、評価が最も高い場合は、そのカメラワークで新たな映像を生成する。
【0238】
なお、AIによって生成された映像について、プレーヤの評価が低い場合は、その低い評価を当該映像に対応付けて記憶する。そして、次回のAIにより映像生成において利用される。
【0239】
[11]評価情報に基づく映像生成
本実施形態のエンターテインメントシステムは、映像に対する評価情報(広義には学習情報)に基づいて、新たな映像を生成する。
【0240】
例えば、通常の敵との剣による攻撃のイベントが発生した場合に、当該イベント発生時に似た状況のときに映像を生成したときのカメラワークを探索する。
【0241】
学習情報の各項目において一致度を算出し、一致度が70%以上のカメラワークを探索してもよい。そして、探索されたカメラワークのうち、最も評価値の高いものを採用する。そして、採用されたカメラワークで、通常の敵との剣による攻撃のイベントの映像を生成する。
【0242】
具体例を説明する。例えば、図4に示すように、攻撃のイベントがタイミングT0で発生し、その後、タイミングT3において、AIによる映像MV4を生成する場合は、次のように制御する。
【0243】
すなわち、エンターテインメントシステムは、学習情報に基づいて、新たな映像を生成する。例えば、タイミングT3において、既に学習された学習情報に関連付けられた映像MV1、MV2、MV3が存在する。そして、本実施形態では、映像MV1の評価値が「5」、映像MV2の評価値が「4」、映像MV3の評価値が「4」である。すると、本実施形態では、最も評価値の高い映像MV1の学習情報に基づいて、新たな映像を生成する。
【0244】
例えば、新たな映像生成過程において、仮想カメラとキャラクタとの距離が2メートル以内であり、正面からキャラクタを撮影するカメラワークを採用し、映像MV4を生成する。このようにすれば、プレーヤは満足感の得られる映像を鑑賞することができる。
【0245】
なお、図8に示すように、4コマの映像MV5~MV8で構成される攻撃のイベントが発生した場合、エンターテイメントシステムは、映像MV5(T10~T11期間の映像)、映像MV6(T11~T12期間の映像)、映像MV7(T12~T13期間の映像)、映像MV8(T13~T14期間の映像)を生成する。
【0246】
本実施形態では、学習情報に基づいて、新たな映像を生成する。例えば、既に行われた攻撃のイベントにおいて、学習された学習情報に関連付けられた映像MV1、MV2、MV3、MV4が存在する。そして、映像MV1の評価値が「5」、映像MV2の評価値が「4」、映像MV3の評価値が「4」、映像MV4の評価値が「3」である。
【0247】
すると、本実施形態では、最も評価値の高い映像MV1の学習情報に基づいて、映像MV5、映像MV6、映像MV7、映像MV8を生成する。
【0248】
なお、同じ評価値「5」の映像の学習情報が存在する場合は、少なくとも1つの映像の学習情報に基づいて、新たな映像を生成する。
【0249】
[12]映像の選択
本実施形態のエンターテインメントシステムは、プレーヤの入力情報に基づいて、生成された複数の映像の中から、提供する映像を選択してもよい。
【0250】
例えば、1コマの映像MV9で構成される攻撃のイベントが発生した場合において、説明する。かかる場合、図9に示すように、エンターテインメントシステムは、期間T20~T21に対応する複数の映像を生成してもよい。すなわち、学習情報に関連付けられた映像のうち、最も評価の高い映像(例えば、映像MV1)の学習情報によって2種類の映像MV9-1、映像MV9-2を、期間T20~T21に対応する映像として生成してもよい。
【0251】
エンターテインメントシステムは、図10に示すように、プレーヤが入力情報に基づいて、複数の映像の中から、当該プレーヤに提供(表示)する1つの映像の選択を受け付けてもよい。例えば、提供する映像の候補の映像MV9-1と、映像MV9-2のサムネイル画像を表示する。プレーヤの入力情報に基づいて、選択された映像を提供する。例えば、プレーヤから映像MV9-1の選択を受け付けた場合(例えば、映像MV9-1のサムネイル画像へのクリックの入力を受け付けた場合)、映像MV9-1を当該プレーヤの端末装置20に表示する。
【0252】
また、エンターテインメントシステムは、4コマの映像MV10、MV11、MV12、MV13で構成される攻撃のイベントが発生した場合、次のように制御する。
【0253】
すなわち、図11に示すように、エンターテインメントシステムは、複数種類の映像を生成してもよい。例えば、学習情報に関連付けられた映像のうち、最も評価の高い映像(例えば、映像MV1)の学習情報によって2種類の映像MVA、MVBを生成する。
【0254】
つまり、本実施形態では、映像MV10-1(T30~T31期間の映像)、MV11-1(T31~T32期間の映像)、MV12-1(T32~T33期間の映像)、MV13-1(T33~T34期間の映像)の一連の映像MVA(T30~T34期間の映像)を生成する。また、映像MV10-2(T30~T31期間の映像)、MV11-2(T31~T32期間の映像)、MV12-2(T32~T33期間の映像)、MV13-2(T33~T34期間の映像)の一連の映像MVB(T30~T34期間の映像)を生成する。
【0255】
また、エンターテインメントシステムは、プレーヤが入力情報に基づいて、複数の映像の中から、当該プレーヤに提供(表示)する1つの映像の選択を受け付けてもよい。例えば、提供する映像の候補の映像MVAと、映像MVBのサムネイル画像を表示し、プレーヤの入力情報に基づいて、映像MVAの選択を受け付けた場合、映像MVAを当該プレーヤの端末装置20に表示する。
【0256】
また、エンターテインメントシステムは、プレーヤが選択した映像に基づいて学習を行ってもよい。つまり、学習モデルのパラメータ等を調整してもよい。このようにすれば、例えば、種類Aのカメラワーク(キャラクタを近距離で撮影するカメラワーク)で撮影した映像についてプレーヤからの選択が多い場合、AIによって種類Aのカメラワークでの映像を生成することができるように、調整できる。
【0257】
[13]映像提供の例
[13.1]ゲームコンテンツに関する映像提供の例
本実施形態のエンターテインメントシステムの例を説明する。例えば、エンターテインメントシステムは、キャラクタ(キャラクタオブジェクト)が配置された第1の仮想空間で発生したイベントに基づいて、第2の仮想空間で当該キャラクタの演出を行うシミュレーションRPG(RPGはロールプレイングゲームの略)のゲームシステムであってもよい。
【0258】
すなわち、エンターテインメントコンテンツは、当該ゲームのサービスそのもの、演出、映像などである。
【0259】
具体的には、当該ゲームシステムは、シミュレーションパート(第1のパート又はゲームパートとも言う。)において、キャラクタを移動させるための第1の仮想空間と、演出パート(第2のパートとも言う。)において、演出を行うための第2の仮想空間を用意する。なお、第1の仮想空間と、第2の仮想空間とは、それぞれ独立して存在するものである。
【0260】
例えば、第1の仮想空間において、プレーヤの操作対象のキャラクタOB1が敵であるキャラクタEA1に対して攻撃を行うイベントが発生したとする。すると、シミュレーションパートから演出パートに移行し、プレーヤに映像を提供する。本実施形態では、演出パートにおいて、仮想カメラに関する学習情報に基づいて、仮想カメラから見える映像を生成する。
【0261】
[13.2]メタバースでアバターを撮影する映像
エンターテインメントシステムは、プレーヤのアバター(分身)のキャラクタが配置されたメタバース(仮想空間)で発生したイベント(例えば、演劇イベント)であってもよい。
【0262】
メタバースとは、インターネット上の仮想空間のことを示す。その仮想空間でユーザ同士がコミュニケーションを取ることができる。メタバースにおける仮想空間は、VR(仮想現実)ゴーグルやAR(拡張現実)グラスなどのデバイスを使ってアクセスすることができる。ユーザは自分の分身となるアバターを作成し、様々なサービスやコンテンツを楽しむことができる。
【0263】
すなわち、エンターテインメントコンテンツは、仮想空間でのアバターの行動を楽しむサービスそのもの、イベント、映像などでもよい。
【0264】
例えば、複数のプレーヤそれぞれのアバターを仮想空間に配置させる。演劇のイベントでは、各アバターの配役が決められ、各アバターが役に応じた演技を仮想空間で行う。
【0265】
そして、仮想空間に仮想カメラを配置させ、仮想空間から見える演劇をする様子を撮影し、撮影された映像を、各プレーヤに提供する。
【0266】
エンターテイメントシステムは、映像に対応する学習情報に基づいて、仮想カメラを制御する。例えば、白雪姫の演劇を行う場合に、毒リンゴを白雪姫にあげるシーンでは、評価値が最も高い学習情報に基づいて、映像を生成する。
【0267】
例えば、毒リンゴを持つ老女役のアバター被写体とするカメラワークの映像について低評価であり、毒リンゴを受け取る白雪姫役のアバター被写体とするカメラワークの映像について高評価である場合、毒リンゴを受け取る白雪姫役のアバター被写体とするカメラワークで、映像を生成する。
【0268】
また、毒リンゴを白雪姫が食べるシーンでは、必ず白雪姫を被写体とし、かつ、白雪姫の口元を視線方向とし、画角などを予め決められた値で、映像を生成するように制御してもよい。このような特別なカメラワークがあるシーンの学習情報を学習してもよい。
【0269】
また、メタバースにおいて、アバターの動作の学習情報を学習し、学習情報に基づいてアバターの動作制御を行ってもよい。つまり、アバターの動作の学習情報をもとに学習が行われた学習済みのモデルを用いて、アバターの動作制御を行ってもよい。
【0270】
[14]フローチャート
次に、図12を用いて、本実施形態のAIによる映像生成処理の流れについて説明する。
【0271】
まず、学習情報を準備する(ステップS1)。例えば、既に生成された映像に対応する学習情報を用意し、学習記憶部278に記憶する。例えば、生成したい画像の種類や特徴を、生成済みの映像(例えば、映像MV1、MV2、MV3)の画像に関する情報から収集し、学習記憶部278に記憶する。
【0272】
次に、モデルを構築する(ステップS2)。学習記憶部278に記憶された学習情報に基づいて、モデル(学習モデル)を生成する。モデルとは、学習情報を解析し、映像生成(画像生成)に必要な情報を抽出するためのツールである。このモデルは、一般的にはニューラルネットワークを用いて生成される。
【0273】
次に、学習を実行する(ステップS3)。すなわち、生成されたモデルに基づいて、学習の実行を行う。学習の実行とは、モデルに学習情報を入力して、学習情報に基づくパターンをモデルに反映させることである。この学習を繰り返し、モデルの精度を高めていく。
【0274】
そして、学習情報に基づいて、映像を生成する(ステップS4)。つまり、学習モデルを使用して新しい映像を生成する。学習が進むにつれて、より正確な映像を生成することができる。以上で処理を終了する。
【0275】
[15]情報処理装置
本実施形態では、機械学習による映像を提供する場合において、主にエンターテインメントシステムが、学習機能及び推論機能を有する。また、エンターテインメントシステムの構成要素である情報処理装置(例えば、端末装置20、サーバ装置10)が、学習機能及び推論機能(予測機能)を有していてもよい。
【0276】
[16]学習期間について
本実施形態では、プレーヤがエンターテイメントコンテンツをプレイしながら表示する映像に関する情報を学習した学習モデルを生成すると共に、当該学習モデルを使用して映像を生成してもよい。つまり、学習期間とエンターテイメントコンテンツのプレイ期間とが一部又は全部において重複していてもよい。
【0277】
また、予め学習期間を設け、プレーヤがエンターテイメントコンテンツをプレイしながら表示する映像に関する学習データを収集し、その情報を用いて学習済みモデルを生成してもよい。そして、当該学習済みモデルを用いて、学習期間とは異なるゲームプレイ期間において、映像を生成してもよい。つまり、学習期間とエンターテイメントコンテンツのプレイ期間とが、重複しないようにする。
【0278】
[17]機械学習について
本実施形態のエンターテインメントシステムは、映像に関する学習情報をニューラルネットワークや機械学習アルゴリズムに入力することで、新しい映像を生成するものである。
【0279】
映像を生成するために機械学習を行う場合、教師あり学習と教師なし学習のいずれを採用してもよい。
【0280】
映像生成のために機械学習を行う場合、教師あり学習か教師なし学習かは、その目的や手元にあるデータによって異なる。
【0281】
教師あり学習は、データに正解ラベルが付いている場合に使われる。一方、教師なし学習は、データに正解ラベルがない場合に使われる。例えば、似たような画像が複数ある場合に、それらをクラスタリングして類似するもの同士をグループ化することができる。映像生成の場合、例えばGANという手法を採用する。データセットから学習して、新しい画像を生成することができる。このように、正解ラベルがない場合には教師なし学習を使うことができる。
【0282】
[17.1]教師あり学習
本実施形態では、例えば、ディープラーニングの一種であるCNN(Convolutional Neural Network)を採用してもよい。
【0283】
CNNは、入力データの局所的な特徴を捉えるために、畳み込み層(Convolutional Layer)とプーリング層(Pooling Layer)が交互に重ねられた構造を持つ。このような層を多層に積み重ねることにより、より高度な特徴抽出が可能となる。
【0284】
教師あり学習では、モデルに入力されるデータに対して正しい出力を提供する正解データ(教師データ)が必要となる。仮想空間の映像生成では、教師データとして、映像生成部230によって生成される映像データなどが使用されるが、インターネットを介して教師データを取得し、学習記憶部278に記憶してもよい。
【0285】
例えば、CNNを使用して学習し、学習情報に基づく映像生成の処理の流れは次の通りである。
【0286】
まず、学習情報を準備する。例えば、本実施形態において、映像生成部230によって生成される映像データを収集し、学習記憶部278に記憶する。
【0287】
次に、モデル(学習モデル)を構築する。すなわち、CNNを使用して、仮想空間から仮想カメラから見た映像を生成するモデルを構築する。モデルは、画像の特徴を抽出するために畳み込み層を使用し、特徴の抽出後、全結合層で映像の生成を行う。
【0288】
そして、学習を実行する。すなわち、学習情報を使用して、モデルをトレーニングします。トレーニング中、モデルは入力画像と教師データの間の差異を最小化するように自動的に学習する。
【0289】
そして、トレーニングが完了したら、モデルを使用して、新しい映像を生成することが可能となる。本実施形態では、エンターテインメントコンテンツの仮想空間において、所定の情報(例えば、イベント発生時のキャラクタの情報等)をモデルに入力し、新しい映像を出力する。
【0290】
すなわち、CNNのようなディープラーニングモデルは、入力として画像やテキストなどのデータを受け取り、それを元に予測を行うことができる。仮想空間であっても、キャラクタの位置や状態を入力データとしてCNNのモデルに提供することができる。このような方法を用いることで、よりリアルな映像生成が可能となる。
【0291】
[17.2]教師なし学習
本実施形態では、例えば、ディープラーニングの一種である「敵対的生成ネットワーク(GAN)」を採用してもよい。GANは、Generative Adversarial Networksの略である。GANは正解データを与えることなく特徴を学習する「教師なし学習」の一手法である。
【0292】
「敵対的生成ネットワーク(GAN)」は、生成モデルと判別モデルの2つからなり、生成モデルは既存の映像から学習したデータを元に新しい映像を生成し、判別モデルは生成された映像が本物かどうかを判定する。このように、生成モデルは判別モデルの判定を騙すように学習していくことで、よりリアルな映像を生成することができる。
【0293】
例えば、GANを使用して学習し、学習情報に基づく映像生成の処理の流れは次の通りである。
【0294】
まず、学習情報を準備する。例えば、本実施形態において、映像生成部230によって生成される映像データを収集し、学習記憶部278に記憶する。
【0295】
次に、モデルを構築する。すなわち、生成モデルと判別モデルの2つのモデルから構成される。生成モデルは、ノイズベクトルから映像を生成するために、畳み込み転置層を使用する。一方、判別モデルは、生成された映像を本物の映像と区別するために、畳み込み層を使用する。
【0296】
そして、学習を実行する。すなわち、学習情報を使用して、生成モデルと判別モデルをトレーニングする。トレーニング中、生成モデルは入力されたノイズベクトルから映像を生成し、判別モデルはそれが本物の映像かどうかを判断する。生成モデルは、判別モデルによって生成された映像が本物の映像と区別できないように、学習を繰り返す。つまり、学習用のデータセットに含まれる本物の映像と、生成モデルによって生成された偽の映像を使用して、判別モデルをトレーニングする。また、生成モデルは、ランダムなノイズから生成された映像をトレーニングに使用する。
【0297】
そして、トレーニングが完了したら、生成モデルを使用して、新しい映像を生成することが可能となる。ランダムなノイズベクトルを生成モデルに与えることで、生成される映像を制御することができる。なお、本実施形態では、生成モデルに、エンターテインメントコンテンツの仮想空間において、イベントが発生した際に、イベント発生時の情報を入力し、新しい映像を出力することもできる。
【0298】
[17.3]前処理について
モデルを使用して仮想カメラから見た映像を生成する場合、学習情報に前処理を行うようにしてもよい。前処理の目的は、データの特徴を引き出して、より効率的に学習を行うことである。例えば、画像の場合、データの正規化、リサイズ、クロッピング、色空間変換などが行われる。
【0299】
また、学習済みモデル(トレーニングが完了したモデル)に入力するデータにおいても、前処理を行うようにしてもよい。生成する映像の入力データが、モデルのトレーニング
時に使用されたデータと同じ形式である場合は、前処理が必要ない場合がある。しかし、入力データが異なる場合、例えば解像度が異なる場合や、画像の種類が異なる場合など、前処理が必要な場合がある。
【0300】
[18]応用例
本実施形態では、対戦ゲームだけでなく、レースゲーム、シューティングゲーム、音楽ゲーム、RPG(ロールプレイングゲーム)、アクションゲーム、スポーツゲーム、育成シミュレーションゲームなどに応用可能である。
【0301】
また、3次元の仮想空間でユーザのキャラクタ(アバター)を配置して、仮想空間を楽しむサービスにも応用可能である。
【0302】
[19]その他
本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【0303】
本発明は、実施形態で説明した構成と実質的に同一の構成(例えば、機能、方法及び結果が同一の構成、あるいは目的及び効果が同一の構成)を含む。また、本発明は、実施形態で説明した構成の本質的でない部分を置き換えた構成を含む。また、本発明は、実施形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施形態で説明した構成に公知技術を付加した構成を含む。
【0304】
上記のように、本発明の実施形態について詳細に説明したが、本発明の新規事項及び効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。したがって、このような変形例はすべて本発明の範囲に含まれるものとする。
【符号の説明】
【0305】
10 サーバ装置、20、20A、20B、20C 端末装置、
100 処理部、111 エンターテインメント制御部、112 表示制御部、
119 受け付け部、120 通信制御部、121 Web処理部、
122 管理部、123 通知部、
160 入力部、170 記憶部、171 主記憶部、
174 エンターテインメント情報記憶部、176 プレーヤ情報記憶部、
180 情報記憶媒体、196 通信部、
200 処理部、211 通信制御部、212 オブジェクト空間設定部、
213 移動・動作制御部、214 操作入力受付部、
215 エンターテインメント制御部、217 行動制御部、218 学習部、
219 設定部、222 提供部、223 仮想カメラ制御部、224 選択部、
225 記憶処理部、230 映像生成部、240 音処理部、
260 入力部、262 検出部、270 記憶部、
271 主記憶部、272 画像バッファ、274 エンターテインメント情報記憶部、275 映像記憶部、276 プレーヤ情報記憶部、
278 学習記憶部、279 学習モデル記憶部、
280 情報記憶媒体、290 表示部、292 音出力部、296 通信部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12