(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024142947
(43)【公開日】2024-10-11
(54)【発明の名称】ゲームシステム、プログラム及び情報処理装置
(51)【国際特許分類】
A63F 13/52 20140101AFI20241003BHJP
A63F 13/55 20140101ALI20241003BHJP
A63F 13/49 20140101ALI20241003BHJP
【FI】
A63F13/52
A63F13/55
A63F13/49
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2023055369
(22)【出願日】2023-03-30
(71)【出願人】
【識別番号】000134855
【氏名又は名称】株式会社バンダイナムコエンターテインメント
(74)【代理人】
【識別番号】100090387
【弁理士】
【氏名又は名称】布施 行夫
(74)【代理人】
【識別番号】100090398
【弁理士】
【氏名又は名称】大渕 美千栄
(72)【発明者】
【氏名】山田 秀樹
(57)【要約】
【課題】仮想空間でゲーム要素(例えばキャラクタ)が所定の行動を行うゲームシステム等において、画像や映像に新鮮さを与え、プレーヤにとって満足度の高い画像や映像を提供すること。
【解決手段】プレーヤの入力指示に基づいてゲーム要素が所定の行動を行うゲームのゲームシステム。ゲーム要素が所定の行動を行う画像又は映像を、プレーヤに提供し、プレーヤに提供した画像又は映像に関する情報を記憶部に記憶する。過去に提供した画像又は映像と所定の差異条件を満たす新たな画像又は映像を、提供する。
【選択図】
図13
【特許請求の範囲】
【請求項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又は2において、
前記提供部は、
所定の例外条件を満たした場合に、過去に提供した画像又は映像を提供し、所定の例外条件を満たさない場合に、新たな画像又は映像を提供することを特徴とするゲームシステム。
【請求項12】
請求項2において、
前記生成部は、
画像又は映像に関する学習情報に基づいて、画像又は映像を生成することを特徴とするゲームシステム。
【請求項13】
請求項1又は2において、
複数のプレーヤキャラクタのうち少なくとも1つを移動させ、プレーヤキャラクタと敵キャラクタとが所定の位置関係になった場合に、当該プレーヤキャラクタのパラメータと当該敵キャラクタのパラメータとに基づいて、イベントを発動させるゲーム制御部を、更に含み、
前記提供部は、
前記イベントが発動された場合に、第1のイベント画像又はイベント映像を提供し、
所定の条件を満たした場合に、前記第1のイベント画像又はイベント映像とは異なり、かつ、過去に提供した第2のイベント画像又はイベント映像と所定の差異条件を満たす新たな第2のイベント画像又はイベント映像を提供することを特徴とするゲームシステム。
【請求項14】
プレーヤの入力指示に基づいてゲーム要素が所定の行動を行うゲームのプログラムであって、
ゲーム要素が所定の行動を行う画像又は映像を、プレーヤに提供する提供部と、
プレーヤに提供した画像又は映像に関する情報を記憶部に記憶する記憶処理部として、コンピュータを機能させ、
前記提供部は、
過去に提供した画像又は映像と所定の差異条件を満たす新たな画像又は映像を、提供することを特徴とするプログラム。
【請求項15】
プレーヤの入力指示に基づいてゲーム要素が所定の行動を行うゲームの情報処理装置であって、
ゲーム要素が所定の行動を行う画像又は映像を、プレーヤに提供する提供部と、
プレーヤに提供した画像又は映像に関する情報を記憶部に記憶する記憶処理部と、を含み、
前記提供部は、
過去に提供した画像又は映像と所定の差異条件を満たす新たな画像又は映像を、提供することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲームシステム、プログラム及び情報処理装置に関する。
【背景技術】
【0002】
従来から、三次元仮想空間(例えば、ゲーム空間)において、仮想カメラを配置し、仮想カメラから見える画像を生成するシステムが知られている。例えば、特許文献1では、ゲーム状況に応じて、仮想カメラの制御を行うシステムが開示されている(特許文献1を参照)。
【0003】
また、従来技術において、仮想空間でゲーム要素(例えばキャラクタ)が所定の行動を行う場合に、ゲーム要素が登場する画像や映像を表示するゲームシステムが存在する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、従来技術は、仮想空間でゲーム要素(例えばキャラクタ)が所定の行動を行うことが何度も生じる場合がある。そして、ゲーム要素が所定の行動を行う度にプレーヤに提供する画像や映像が同じである場合、プレーヤが飽きてしまうおそれがあった。
【0006】
本発明は、上記課題に鑑みたものであり、仮想空間でゲーム要素(例えばキャラクタ)が所定の行動を行うゲームシステム等において、画像や映像に新鮮さを与え、プレーヤにとって満足度の高い画像や映像を提供することを目的とする。
【課題を解決するための手段】
【0007】
(1)本発明は、
プレーヤの入力指示に基づいてゲーム要素が所定の行動を行うゲームのゲームシステムであって、
ゲーム要素が所定の行動を行う画像又は映像を、プレーヤに提供する提供部と、
プレーヤに提供した画像又は映像に関する情報を記憶部に記憶する記憶処理部と、を含み、
前記提供部は、
過去に提供した画像又は映像と所定の差異条件を満たす新たな画像又は映像を、提供することを特徴とするゲームシステムに関する。
【0008】
また、本発明は、上記各部を含む情報処理装置(学習装置、端末装置、ゲーム装置、サーバ装置)に関する。本発明は、上記各部としてコンピュータを機能させるプログラムに関する。また、本発明は、コンピュータが読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶する情報記憶媒体に関する。
【0009】
本発明は、過去に提供した画像又は映像と所定の差異条件を満たす新たな画像又は映像を、提供する。ゆえに、ゲーム要素が登場する画像や映像に、新鮮さを与え、プレーヤにとって満足度の高い画像や映像を提供することができる。
【0010】
(2)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体
において、
過去に提供した画像又は映像と所定の差異条件を満たす新たな画像又は映像を、生成する生成部を更に含み、
前記提供部は、
前記生成部によって生成された画像又は映像を提供するようにしてもよい。
【0011】
本発明は、過去に提供した画像又は映像と所定の差異条件を満たす新たな画像又は映像を、生成する。ゆえに、リアルタイムに新鮮な画像又は映像をプレーヤは見ることができ、プレーヤに更に満足感を与えることができる。
【0012】
(3)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
前記差異条件は、
前記ゲーム要素に関する条件であってもよい。
【0013】
本発明は、差異条件をゲーム要素に関する条件とすることができるので、ゲーム要素の観点から新鮮な画像又は映像をプレーヤに提供することができる。
【0014】
(4)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
前記差異条件は、
仮想空間に配置された仮想カメラから見える画像又は映像を生成する場合において、当該仮想カメラに関する条件であってもよい。
【0015】
本発明は、差異条件を仮想カメラに関する条件とすることができるので、仮想カメラの観点から新鮮な画像又は映像をプレーヤに提供することができる。
【0016】
(5)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
前記差異条件は、
ゲーム状況に関する条件であってもよい。
【0017】
本発明は、差異条件をゲーム状況に関する条件とすることができるので、ゲーム状況の観点から新鮮な画像又は映像をプレーヤに提供することができる。
【0018】
(6)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
前記差異条件は、
画像又は映像の提供期間に関する条件であってもよい。
【0019】
本発明は、差異条件を画像又は映像の提供期間に関する条件とすることができるので、画像又は映像の提供期間の観点から新鮮な画像又は映像をプレーヤに提供することができる。
【0020】
(7)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
複数の前記差異条件が設定されている場合に、優先順位に応じて各差異条件について重み付けを設定する設定部を、更に含むようにしてもよい。
【0021】
本発明は、各差異条件に重み付け(重み、重要度)を設定するので、差異条件の優先順
位を明確にすることができる。これにより、時間やリソースをより効果的に管理し、より良い結果を生み出す画像又は映像を提供することができる。
【0022】
(8)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
前記差異条件を変更する変更部を、更に含むようにしてもよい。
【0023】
本発明は、差異条件を変更することにより、画像又は映像の提供において柔軟性を高めることができる。
【0024】
(9)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
前記記憶処理部は、
所定のタイミングで、前記プレーヤに提供した前記画像又は前記映像に関する情報を、リセットするようにしてもよい。
【0025】
本発明は、リセットすることによって、リセット前に提供した画像又は映像を、リセット後に再提供することができる。
【0026】
(10)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
画像又は映像に対応付けて、過去に提供した画像又は映像を発生させる発生確率を設定する設定部を、更に含み、
前記提供部は、
前記発生確率に基づいて、過去に提供した画像又は映像を提供し、
前記設定部は、
過去に提供した画像又は映像の提供状況に応じて、前記発生確率を変更するようにしてもよい。
【0027】
本発明は、提供状況に応じて、発生確率を変更するので、プレーヤに対して飽きの無い画像又は映像を提供することができる。
【0028】
(11)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
前記提供部は、
所定の例外条件を満たした場合に、過去に提供した画像又は映像を提供し、所定の例外条件を満たさない場合に、新たな画像又は映像を提供するようにしてもよい。
【0029】
本発明は、所定の例外条件を満たした場合に、過去に提供した画像又は映像を提供するので、画像又は映像を何度も観ることが可能な環境を例外的にプレーヤに与えることができる。つまり、臨機応変に、過去に提供した画像又は映像を再度提供することができ、結果的に、プレーヤに満足感のある画像又は映像を提供することができる。
【0030】
(12)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
前記生成部は、
画像又は映像に関する学習情報に基づいて、画像又は映像を生成するようにしてもよい。
【0031】
本発明は、画像又は映像に関する学習情報に基づいて、画像又は映像を生成するので、
プレーヤにとって満足度の高い映像を提供することができる。
【0032】
(13)また、本発明に係るゲームシステム、情報処理装置、プログラム、情報記憶媒体において、
複数のプレーヤキャラクタのうち少なくとも1つを移動させ、プレーヤキャラクタと敵キャラクタとが所定の位置関係になった場合に、当該プレーヤキャラクタのパラメータと当該敵キャラクタのパラメータとに基づいて、イベントを発動させるゲーム制御部を、更に含み、
前記提供部は、
前記イベントが発動された場合に、第1のイベント画像又はイベント映像を提供し、
所定の条件を満たした場合に、前記第1のイベント画像又はイベント映像とは異なり、かつ、過去に提供した第2のイベント画像又はイベント映像と所定の差異条件を満たす新たな第2のイベント画像又はイベント映像を提供してもよい。
【0033】
本発明は、所定の条件を満たした場合に提供する第2のイベント画像又はイベント映像について、プレーヤにとって満足度の高いものを提供することができる。
【図面の簡単な説明】
【0034】
【
図1】本実施形態のゲームシステムの構成の一例を示す図。
【
図2】本実施形態のサーバ装置の機能ブロックを示す図。
【
図3】本実施形態の端末装置の機能ブロックを示す図。
【
図4】本実施形態において、画像又は映像の生成を説明するための図。
【
図5】本実施形態において、画像又は映像の提供に関する説明図。
【
図6】本実施形態の「プレーヤに提供した画像又は映像に関する情報」の説明図。
【
図7】本実施形態の「プレーヤに提供した画像又は映像に関する情報」の説明図。
【
図9】本実施形態のカメラワークの種類と値を説明するための図。
【
図10】本実施形態の提供期間を説明するための図。
【
図11】本実施形態の重み付けを説明するための図。
【
図12】本実施形態の発生確率、有効フラグを説明するための図。
【
図13】本実施形態の画像・映像提供処理のフローチャート。
【発明を実施するための形態】
【0035】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0036】
[1]ゲームシステムの概要
まず、
図1を用いて本実施形態のゲームシステムの概要及び概要構成について説明する。なお、
図1は、本実施形態のゲームシステムの構成を示すシステム構成の一例を示す図である。
【0037】
サーバ装置10は、インターネット(ネットワークの一例)を介して通信接続された端末装置(ゲーム装置)20を用いて、所与のサービスを提供することが可能な情報処理装置である。
【0038】
端末装置20は、家庭用テレビゲーム機、パーソナルコンピュータ(PCとも言う。)スマートフォン、携帯電話、PHS、コンピュータ、PDA、携帯型ゲーム機等、画像生成装置、業務用ゲーム装置、アーケードゲーム装置、筐体などの情報処理装置であり、インターネット(WAN)、LANなどのネットワークを介してサーバ装置10に接続可能
な装置である。端末装置20には、入力部260が接続されるとともに、表示部290が接続される。
【0039】
本実施形態の端末装置20は、学習機能(例えば、機械学習による学習機能)を有する。端末装置20は、学習装置と言い換えてもよい。また、端末装置20は、機械学習による推論機能(予測機能)を有する。端末装置20は、推論装置(予測装置)と言い換えてもよい。
【0040】
[1.1]クライアントサーバモデルで構成されるゲームシステム
本実施形態のゲームシステムは、
図1に示すように、サーバ装置10と、端末装置20(例えば、端末装置20A、20B、20C)とが、インターネット(ネットワークの一例)に接続可能に構成される。
【0041】
プレーヤ(ユーザ)は、端末装置20からサーバ装置10にアクセスすることにより、インターネットを介してサーバ装置10から送信される情報に基づき、ゲームをプレイすることができる。
【0042】
特に、本実施形態では、第1のキャラクタと第2のキャラクタとが対戦するゲームを実行させるサーバ装置10から、プレーヤの端末装置20に、ゲームに関する情報を提供する。端末装置20によって受け付けられたプレーヤの操作入力に関する情報をサーバ装置10に送信する。サーバ装置10から端末装置20にゲームに関する情報を送信する。
【0043】
本実施形態は、一つのサーバ装置10によって各ゲームを端末装置20に提供してもよいし、複数のサーバ装置10を連動させてサーバシステムを構築し、各ゲームを端末装置20に提供してもよい。
【0044】
なお、サーバ装置10だけで本発明に関する各種の処理を行うようにしてもよいし、端末装置20だけで本発明に関する各種の処理を行うようにしてもよい。
【0045】
[1.2]端末装置
本実施形態のゲームシステムは、サーバ装置10の機能を備えた単一の端末装置、すなわち、サーバ装置などの他の機器に依存せず単独で動作する装置(スタンドアローン)によって実現してもよい。
【0046】
また、本実施形態では、サーバ装置10と接続せずに、端末装置20だけで本発明を実現するものであってもよい。例えば、P2P(ピア・ツー・ピア方式)による通信によって複数の端末装置20で実現するゲームシステムであってもよい。
【0047】
そして、このような端末装置を有線又は無線によって複数連結させ、一の端末装置がホスト(サーバ装置10)として機能して、複数の端末装置によって実現してもよい。
【0048】
なお、端末装置は、端末装置だけでなく、タブレット型情報端末装置やパーソナルコンピュータ、又は、アミューズメントパークに設置される端末装置(筐体)でもよい。
【0049】
[1.3]クラウド型のゲームシステム
また、本実施形態のゲームシステムはクラウド型のゲームシステムでもよい。例えば、クラウド型のゲームシステムでは、サーバ装置10(クラウド装置)だけで基本的な処理(ゲーム処理、描画処理などを含む)を行い、端末装置20側ではサーバ装置10(クラウド装置)の処理結果の表示制御のみを行う。また、端末装置20は、サーバ装置10に対してコントローラの操作入力(操作情報、入力情報)などの情報を送信する。なお、か
かる場合、端末装置20は、操作入力以外の情報を送信してもよい。
【0050】
さらに、本実施形態では、入力を除き、上記の端末装置20の処理部200の各機能及びゲームプログラムの実行をサーバ装置10で実行し、当該端末装置20は、入力とストリーミングによる画像表示を実行することによって、上記のゲームを実現してもよい。
【0051】
また、ゲームシステムは、インターネット上の所与の記憶領域に、サーバ装置10に記憶される情報、端末装置20に記憶される情報を記憶するようにしてもよい。
【0052】
[1.4]複数のコントローラを備えた端末装置
また、本実施形態では、1台の端末装置20が複数のコントローラ(入力部260)を備えたものでもよい。なお、複数のプレーヤが1台の端末装置20の各プレーヤのコントローラを用いてゲームをプレイする場合、複数のプレーヤが現実的に近くにいることが想定される。
【0053】
[1.5]ソーシャルゲームの例
また、本実施形態では、コミュニケーション型のサービスを提供するSNSサーバとして機能してもよい。ここで、SNSサーバとは、複数のプレーヤ間でコミュニケーションを提供することが可能なサービスを提供する情報処理装置であってもよい。
【0054】
また、本実施形態では、例えば、SNSサーバとして機能する場合には、提供するSNSの動作環境(API(アプリケーションプログラミングインタフェース)、プラットフォーム等)を利用して実行されるソーシャルゲーム(Social Game)と呼ばれるゲームを提供できる。
【0055】
なお、ソーシャルゲームとは、既存のオンラインゲームとは違い、専用のクライアントソフトウェアを必要とせず、WebブラウザとSNSのアカウントのみで利用可能なゲームが含まれる。また、本実施形態では、ネットワークを介して他のプレーヤの端末装置20と接続し、オンラインで同時に同じゲーム進行を共有することができるオンラインゲームを提供することが可能な構成を有している。
【0056】
[1.6]ブラウザゲームの例
特に、本実施形態では、端末装置20のWebブラウザ上で提供されるゲーム、例えばHTML、FLASH(登録商標)、CGI、PHP、shockwave、Java(登録商標)アプレット、JavaScript(登録商標)など様々な言語で作られたブラウザゲーム(Webブラウザで設置サイトを開くだけで起動するゲーム)を提供してもよい。
【0057】
また、端末装置20は、Webページ(HTML形式のデータ)を閲覧可能なWebブラウザを備えている。すなわち、端末装置20は、サーバ装置10との通信を行うための通信制御機能、及びサーバ装置10から受信したデータ(Webデータ、HTML形式で作成されたデータなど)を用いて表示制御を行うとともに、プレーヤ操作のデータをサーバ装置10に送信するWebブラウザ機能などを備え、画面をプレーヤに提供する各種の処理を実行し、プレーヤによってゲームを実行させるようになっている。ただし、端末装置20は、サーバ装置10から提供されたゲーム制御情報を取得して所定のゲーム処理を実行し、ゲーム処理に基づくゲームを実行してもよい。
【0058】
具体的には、端末装置20は、所定ゲームを行う旨の要求をサーバ装置10に対して行うと、サーバ装置10のゲームサイトに接続され、ゲームが開始される。特に、端末装置20は、必要に応じてAPIを用いることにより、SNSサーバとして機能するサーバ装
置10に所定の処理を行わせ、又は、SNSサーバとして機能するサーバ装置10が管理するプレーヤの情報等を取得させてゲームを実行する構成を有してもよい。
【0059】
[1.7]その他
本実施形態では、1つの(装置、プロセッサ)で構成されていてもよいし、複数の(装置、プロセッサ)で構成されていてもよい。サーバ装置10の記憶領域(後述する記憶部170)に記憶される情報(例えば、プレーヤの情報、ゲーム情報等)を、ネットワーク(イントラネット又はインターネット)を介して接続されたデータベース(広義には記憶装置、メモリ)に記憶するようにしてもよい。なお、端末装置20とサーバ装置10との通信回線は、有線でもよいし無線でもよい。
【0060】
[2]サーバ装置
次に、
図2を用いて本実施形態のサーバ装置10について説明する。なお、
図2は、本実施形態のサーバ装置10の機能ブロックを示す図である。また、本実施形態の本実施形態では
図2の構成要素(各部)の一部を省略した構成としてもよい。
【0061】
本実施形態では、管理者やその他の入力に用いるための入力部160、所定の情報が記憶された情報記憶媒体180、端末装置20やその他と通信を行う通信部196、主に提供するゲームに関する処理を実行する処理部100、及び、主にゲームに用いる各種のデータを記憶する記憶部170を含む。
【0062】
入力部160は、システム管理者等がゲームに関する設定やその他の必要な設定、データの入力に用いるものである。例えば、本実施形態の入力部160は、マウスやキーボード等によって構成される。
【0063】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などによって構成される。
【0064】
通信部196は、外部(例えば、端末、他のサーバや他のネットワークシステム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどによって構成される。
【0065】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能は、RAM(VRAM)などによって構成される。なお、記憶部170に記憶される情報は、データベースで管理してもよい。
【0066】
また、本実施形態の記憶部170は、主記憶部171の他に、ゲームに関する情報を示すゲーム情報が記憶されるゲーム情報記憶部174、及び、プレーヤ情報記憶部(ユーザ情報記憶部)176を有している。
【0067】
特に、ゲーム情報記憶部174には、ゲームが実施される仮想空間(ゲームフィールド)の情報、仮想カメラの情報、ゲームで用いられる設定値等が記憶される。
【0068】
また、プレーヤ情報記憶部176には、プレーヤ毎(ユーザ毎)に、プレーヤID(ユーザID)に対応付けてプレーヤ情報(ユーザの情報)が記憶される。プレーヤIDは、プレーヤを識別するための識別情報である。
【0069】
処理部100は、記憶部170内の主記憶部171をワーク領域として各種処理を行う
。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0070】
処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
【0071】
例えば、処理部100(プロセッサ)は、情報記憶媒体180に記憶されているプログラムに基づいて、サーバ装置10全体の制御を行うとともに、各部間におけるデータ等の受け渡しの制御などの各種の処理を行う。さらに、端末装置20からの要求に応じた各種サービスを提供する処理を行う。
【0072】
なお、本実施形態では、サーバ装置10が処理部100の一部又は全部の処理を行ってもよいし、端末装置20が処理部100の一部の処理を行ってもよい。
【0073】
処理部100は、ゲーム制御部111、表示制御部112、受け付け部119、通信制御部120、Web処理部121、管理部122、通知部123を含む。
【0074】
ゲーム制御部111は、本実施形態のゲーム(例えば、対戦ゲーム)を提供するための各種制御を行う。例えば、処理部100は、端末装置20と連動し、当該端末装置20を介して入力されたプレーヤの入力に基づいて、各プレーヤにおいて本実施形態で提供するゲームのゲーム処理を実行する。
【0075】
また、処理部100は、タイマ機能を有し、ゲームの進行状況を管理するため、各端末装置20と同期を取るために用いるようにしてもよい。特に、現在時刻や予め設定された時刻を各部に出力するようにしてもよい。
【0076】
ゲーム制御部111は、プレーヤの操作入力(操作情報)に基づいて、ゲーム処理を実行する。例えば、ゲーム制御部111は、プレーヤの端末装置20から当該プレーヤの操作入力(操作情報)を受信して、ゲームに関する処理を行う。例えば、ゲーム制御部111は、ゲーム処理を行うようにしてもよい。また、オンライン対戦時には、各プレーヤとのマッチング処理等を行う。
【0077】
表示制御部112は、ゲーム状況に応じてサーバ装置10が生成した画面(画像)を、端末装置20の表示部290に表示するように制御する。つまり、サーバ装置10が生成した画面(画像)の表示先を、端末装置20の表示部290とする。
【0078】
表示制御部112は、プレーヤ毎に、プレーヤの端末装置20に表示する画面(ゲーム画像、演出画像)を表示するための制御を行う。
【0079】
受け付け部119は、ゲームに関する情報を受け付けてもよい。例えば、受け付け部119は、受け付け部119は、端末装置20から操作入力の内容を受信して受け付けてもよい。
【0080】
また、受け付け部119は、通信制御部120によるデータ送受信によって、プレーヤの入力やゲームに関する情報などを受け付けるようにしてもよい。
【0081】
通信制御部120は、端末装置20との接続(セッションやコネクション)を確立し、ネットワークを介してデータを通信(送受信)する処理を行う。
【0082】
例えば、通信制御部120は、プレーヤの端末装置20に、ゲームに関する情報を送信する。また、通信制御部120は、プレーヤの端末装置20から、当該端末装置20によって受け付けられたプレーヤの操作情報を受信する。また、通信制御部120は、端末装置20にゲームに関する情報を送信する。
【0083】
Web処理部121は、Webサーバとして機能する。例えば、Web処理部121は、HTTP(Hypertext Transfer Protocol)等の通信プロトコルを通じて、端末装置20にインストールされているWebブラウザの要求に応じてデータを送信する処理、及び、端末装置20のWebブラウザによって送信されるデータを受信する処理を行う。
【0084】
管理部122は、ゲーム情報や、プレーヤ毎に、プレーヤの識別情報に対応付けられたプレーヤの情報を管理する。
【0085】
また、通知部123は、プレーヤに所与の情報を通知する。なお、「通知」するとは、プレーヤ(プレーヤの端末装置20)に対して情報を通知することである。なお、「通知」を、提供、提示、表示、送信という文言に言い換えて解釈してもよい。
【0086】
通知部123は、画面を端末装置20において通知するように送信制御をしてもよい。つまり、通知部123は、画面(画像)の表示制御情報を生成し、生成した表示制御情報を、プレーヤの端末装置20(例えば、端末装置20の表示部290)に表示するように制御する。
【0087】
なお、サーバ装置10は、以下に説明する端末装置20の全部又は一部の機能を有していてもよい。
【0088】
[3]端末装置
次に、
図3を用いて本実施形態の端末装置20について説明する。なお、
図3は、本実施形態における端末装置20の構成を示す機能ブロック図の一例である。また、本実施形態の端末装置20は
図3の構成要素(各部)の一部を省略した構成としてもよい。
【0089】
情報記憶媒体280(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。
【0090】
入力部260は、操作入力(操作信号)を入力可能なボタンやレバーを備える。端末装置20は、プレーヤに表示部290に表示されたゲーム画面を視聴しながら、ゲームに関する処理を行う。
【0091】
なお、入力部260は、タッチパネル又はタッチパネル型ディスプレイなどにより実現できてもよい。すなわち、入力部260は、画像が表示される画面上における2次元の指示位置座標(x,y)を検出可能な検出部262を備えている。例えば、入力部260は、接触検出領域(タッチパネル)における、2次元の接触位置座標(x,y)を検出可能な検出部262を備えている。なお、表示画面(以下、特別な場合を除き「タッチパネル」という。)への接触操作は、指先を用いて行うようにしてもよいし、タッチペンなどの入力機器を用いて行うようにしてもよい。
【0092】
また、入力部260は、キーボード、ステアリング、マイク、加速度センサなどを備え
ていてもよい。
【0093】
記憶部270は、記憶部270は、200や通信部296などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。
【0094】
記憶部270の記憶領域の一例の図である。そして、本実施形態の記憶部270は、主記憶部271と、画像バッファ272と、ゲーム情報記憶部274、画像・映像記憶部275、プレーヤ情報記憶部276と、学習記憶部278、学習モデル記憶部279を含む。なお、これらの一部を省略する構成としてもよいし、サーバ装置10の記憶部170或いはネットワークを介して接続された所与の記憶装置(クラウド上の記憶領域)がその一部を構成してもよい。
【0095】
主記憶部271は、ワーク領域として使用される。画像バッファ272には、生成部(画像・映像生成部)230によって生成された画像データ(表示画像)が記憶される。なお、サーバ装置10が生成した画像データを受信し、当該画像データを画像バッファ272に記憶してもよい。
【0096】
ゲーム情報記憶部274には、エンターテイメント情報が記憶される。例えば、ゲーム情報記憶部274には、ゲーム情報が記憶される。なお、端末装置20は、サーバ装置10から、ゲーム情報を受信して、ゲーム情報記憶部274に、当該ゲーム情報を記憶してもよい。
【0097】
ゲーム情報は、コマンド情報、キャラクタ情報を含む。ゲーム情報記憶部274に記憶されるゲーム情報は、キャラクタの行動情報及び当該行動情報に関連する関連情報を含んでもよい。また、ゲーム情報記憶部274に記憶されるゲーム情報は、ゲームフィールド(ゲーム空間)の情報、仮想カメラの情報、キャラクタ情報、その他ゲームで用いられる設定値等を含んでもよい。
【0098】
キャラクタ情報は、キャラクタに関する情報である。例えば、キャラクタのパラメータ(体力値、攻撃力、防御力等のパラメータ)、キャラクタが有するアイテム(武器)、レベル(段位、ランク)等である。レベルは、技量レベルの高さ、キャラクタの強さを示す。本実施形態では、レベルは、ゲーム成績によって順次更新される。
【0099】
プレーヤ情報記憶部276は、プレーヤの情報が記憶される。なお、端末装置20は、サーバ装置10から、プレーヤIDに対応するプレーヤ情報を受信して、プレーヤ情報記憶部276に記憶するようにしてもよい。
【0100】
例えば、プレーヤ情報記憶部276には、プレーヤのレベル、プレイ履歴、プレイ傾向、プレーヤに関連する他のプレーヤの情報、等が記憶される。
【0101】
なお、プレーヤ情報は、プレーヤの操作入力(操作情報)を含んでもよい。また、プレーヤ情報は、プレーヤに対応付けられたプレーヤの情報だけでなく、プレーヤのゲーム媒体(例えば、プレーヤが所有するキャラクタ、カード、アイテムなどのゲーム媒体)の情報等を含む概念であってもよい。
【0102】
学習記憶部278には、学習情報が記憶される。また、学習記憶部278には、評価情報が記憶される。具体的に、学習記憶部278には、映像(動画象、画像のデータ)が記憶される。この映像は、本実施形態の生成部(画像・映像生成部)230によって生成される映像も含む。また、AI(AIはArtificial Intelligenceの略)が生成した映像も含んでもよい。また、端末装置20は、他の情報処理装置から学
習情報を受信して学習記憶部278に記憶するようにしてもよい。
【0103】
学習モデル記憶部279には、学習モデル(モデル)が記憶される。学習モデルは、入力データと出力データとの相関関係(関係性)や傾向を数式(関数)で表したものである。学習モデル記憶部279には、学習部218において機械学習された学習モデルが記憶される。
【0104】
情報記憶媒体280について説明すると、情報記憶媒体280は、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)を記憶することができる。なお、処理部200は、後述するように、情報記憶媒体280に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。
【0105】
表示部290は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。
【0106】
特に、本実施形態では表示部290は、タッチパネルディスプレイを用いることによりプレーヤがゲーム操作を行う入力部260としても機能する。ここでタッチパネルとして、例えば抵抗膜方式(4線式、5線式)、静電容量方式、電磁誘導方式、超音波表面弾性波方式、赤外線走査方式などのタッチパネルを用いることができる。
【0107】
音出力部292は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【0108】
通信部296は、外部(例えばサーバ装置10や他の端末装置20)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0109】
なお、端末装置20は、サーバ装置10が有する情報記憶媒体180や記憶部170に記憶されている本実施形態の各部としてコンピュータを機能させるためのプログラムやデータを、ネットワークを介して受信し、受信したプログラムやデータを情報記憶媒体280や記憶部270に記憶してもよい。このようにプログラムやデータを受信して端末装置20を機能させる場合も本発明の範囲内に含めることができる。
【0110】
処理部200(プロセッサ)は、入力部260からの入力データやプログラムなどに基づいて、サーバ装置10と連動して、ゲーム制御(例えば、ゲーム処理)、画像生成処理、或いは音生成処理などの処理を行う。
【0111】
また、処理部200は、入力部260によって入力されたプレーヤの操作入力に基づき、ゲーム処理(例えば、対戦ゲーム等の処理)、等を行う。また、処理部200は、サーバ装置10と連動して実行してもよいし、その一部又は全部がサーバ装置10に形成されていてもよい。
【0112】
また、処理部200は、記憶部270をワーク領域として各種処理を行う。処理部200の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0113】
処理部200は、通信制御部211、オブジェクト空間設定部212、移動・動作制御部213、操作入力受付部214、ゲーム制御部215、行動制御部217、学習部21
8、設定部219、変更部220、提供部222、仮想カメラ制御部223、選択部224、記憶処理部225、生成部(画像・映像生成部)230、音処理部240を含む。なお、これらの一部を省略する構成としてもよい。
【0114】
通信制御部211は、サーバ装置10とデータを送受信する処理を行う。また、通信制御部211は、サーバ装置10から受信したデータを記憶部270に格納する処理、受信したデータを解析する処理、その他のデータの送受信に関する制御処理等を行う。
【0115】
通信制御部211は、サーバ装置10から受信した情報に基づいてゲーム制御する場合に、サーバ装置10から送信された情報を受信し、サーバ装置に、端末装置20の情報を送信する。
【0116】
通信制御部211は、他のプレーヤの端末装置20と、ゲーム制御する場合に、他のプレーヤの端末装置20から送信された情報を受信し、他のプレーヤの端末装置20に、自端末装置20の情報を送信する。
【0117】
通信制御部211は、プレーヤからの通信開始の操作入力を受け付けた場合に、他の端末装置20又はサーバ装置10との通信を行うようにしてもよい。
【0118】
また、通信制御部211は、他の端末装置20又はサーバ装置10と通信接続が確立されてから当該通信接続が切断されるまで、データを所定周期で互いに送受信する処理を行う。
【0119】
通信制御部211は、サーバ装置10にプレーヤの識別情報や操作入力を送信して、データ(プレーヤのWebページ、画面等)をサーバ装置10から受信する処理を行う。
【0120】
通信制御部211は、所定周期でサーバ装置10とデータ送受信を行ってもよいし、入力部260からの操作入力を受け付けた場合に、サーバ装置10とデータ送受信を行ってもよい。特に、本実施形態の通信制御部211は、所与の画面情報(例えば、画面の情報等)を、サーバ装置10から受信する処理を行うようにしてもよい。
【0121】
さらに、通信制御部211は、複数の端末装置20によって構成されるネットワークシステムの場合は、複数の端末装置20間でデータの送受信を行いながらオンラインゲームを実行するピア・ツー・ピア(いわゆるP2P)方式によって通信制御を実行してもよいし、サーバ装置10を介して各端末装置20がデータ(情報)の送受信を行いながらオンラインゲームを実行するクライアント・サーバ方式によって通信制御を実行してもよい。
【0122】
なお、本実施形態のゲームシステムでは、有線通信のみならず無線通信でデータを送受信してもよい。
【0123】
オブジェクト空間設定部212は、オブジェクトをオブジェクト空間(仮想的三次元空間)に配置する処理を行う。キャラクタの他に、建物、球場、車、樹木、柱、壁、マップ(地形)などの表示物を、オブジェクト空間に配置する処理を行う。ここでオブジェクト空間とは、仮想的なゲーム空間であり、例えば、ワールド座標系、仮想カメラ座標系のように、三次元座標(X,Y,Z)においてオブジェクトが配置される空間である。
【0124】
例えば、オブジェクト空間設定部212は、ワールド座標系にオブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)を配置する。また、例えば、ワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回り
での回転角度)でオブジェクトを配置する。
【0125】
オブジェクト空間設定部212は、スクリーン(二次元画像、画面、スクリーン座標系)上に、特殊コマンドの入力指示オブジェクト、マーカーなどの指示オブジェクトを配置する処理を行うようにしてもよい。また、オブジェクト空間設定部212は、オブジェクト空間(三次元空間、ワールド座標系、仮想カメラ座標系、モデル座標系)に、指示オブジェクトを配置するようにしてもよい。
【0126】
移動・動作制御部213は、オブジェクト空間にあるオブジェクトの移動・動作演算を行う。すなわち入力部260から受け付けた操作入力や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させたりする処理を行う。
【0127】
移動・動作制御部213は、オブジェクト空間において、主要なオブジェクトであるキャラクタオブジェクト(キャラクタ)の移動動作を制御する。
【0128】
具体的には、移動・動作制御部213は、入力部260への操作入力に基づくキーデータに基づいて、自機を操作するプレーヤの操作対象のプレーヤキャラクタの動作を制御する処理、当該キャラクタが繰り出す攻撃技のヒット判定処理及び、相手キャラクタから攻撃を受けた際のダメージ処理などを行う。
【0129】
移動・動作制御部213は、対戦相手が実プレーヤである場合、対戦相手の端末装置20において入力されたキーデータを取得し、取得したキーデータに基づいて、相手キャラクタが繰り出す攻撃技の移動・動作、当該攻撃技のヒット判定処理、及び、プレーヤキャラクタから攻撃を受けた際のダメージの移動・動作処理などを行う。
【0130】
移動・動作制御部213は、対戦相手がコンピュータ(CPU)である場合、所定のプログラム、アルゴリズムに基づいて、コンピュータキャラクタ(NPC(ノンプレーヤキャラクタ)ともいう)が繰り出す攻撃技の移動・動作、当該攻撃技のヒット判定処理、及び、プレーヤキャラクタから攻撃を受けた際のダメージの移動・動作処理などを行う。つまり、対戦相手がコンピュータである場合、プレーヤによって操作されずに、コンピュータキャラクタの移動・動作の制御を行う。
【0131】
移動・動作制御部213は、コンピュータキャラクタが、AIによって制御されるAIキャラクタである場合、学習モデルを用いて推論される行動による移動・動作を行う。
【0132】
また、移動・動作制御部213は、係る処理を1フレーム(例えば、1/60秒)毎に行う。なお、フレームは、オブジェクトの移動・動作処理や画像生成処理を行う時間の単位である。
【0133】
操作入力受付部214は、プレーヤによって入力部260に入力された操作入力に基づいて、操作指示コマンドを受け付ける。
【0134】
ゲーム制御部215は、開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタ、敵キャラクタなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲームの結果を演算する処理、或いは終了条件が満たされた場合にゲームを終了する処理などが含まれる。
【0135】
プレーヤがコンピュータと対戦ゲームを行う場合、ゲーム制御部215は、操作入力受
付部214によって受け付けられたプレーヤの操作入力の情報と、コンピュータで制御される情報(例えば、行動制御部217によって決定された行動の情報を含む)に基づいて、ゲームの進行を行う。
【0136】
実プレーヤ同士で対戦ゲームを行う場合ゲーム制御部215は、端末装置20Aの操作入力受付部214によって受け付けられた第1のプレーヤの操作入力の情報と、第2のプレーヤの端末装置20Bから送信された情報であって、端末装置20Bにおける第2のプレーヤの操作入力の情報と、に応じて、ゲームの進行を行う。
【0137】
ゲーム制御部215は、キャラクタ同士が、相互に攻撃や防御を行い、両者の体力値を減少させる。そして、両者の体力値に基づいて勝敗を判定する。
【0138】
ゲーム制御部215は、複数のプレーヤキャラクタのうち少なくとも1つを移動させ、プレーヤキャラクタと敵キャラクタとが所定の位置関係になった場合に、当該プレーヤキャラクタのパラメータと当該敵キャラクタのパラメータとに基づいて、イベントを発動させる。
【0139】
行動制御部217は、キャラクタの行動(例えば、攻撃、防御、演技などの行動)を制御する処理を行う。例えば、行動制御部217は、プレーヤの操作入力に基づいて、当該プレーヤの操作対象のキャラクタ(以下、「第1のキャラクタ」ともいう。)の行動を制御する。
【0140】
また、行動制御部217は、学習部218において学習(例えば、機械学習)された学習データ(例えば、学習モデル)を用いて、コンピュータによって制御されるコンピュータキャラクタ(以下、「第2のキャラクタ」ともいう。)の行動を制御するようにしてもよい。
【0141】
学習部218は、画像又は映像に関して学習(例えば、機械学習)する。例えば、端末装置20は、所定の入力データを入力すると、カメラワーク(仮想カメラの制御情報)が出力されるモデル(学習モデル)を機械学習によって生成する。
【0142】
入力データとしては、ゲーム進行の現時点での情報でもよい。例えば、現時点でのイベント情報(イベントの種類)、ゲーム開始時点から現時点までの時間、イベント期間、仮想空間に存在するキャラクタ(アバター)の情報、音情報、画像情報、などである。なお、入力データにカメラワークの情報を含んでもよい。カメラワークのパターンを学習データに加えることで、より正確なカメラワークの予測ができるようになる。
【0143】
設定部219は、複数の差異条件が設定されている場合に、優先順位に応じて各差異条件について重み付けを設定する。
【0144】
また、設定部219は、画像又は映像に対応付けて、過去に提供した画像又は映像を発生させる発生確率を設定するようにしてもよい。設定部219は、過去に提供した画像又は映像の提供状況に応じて、発生確率を変更するようにしてもよい。
【0145】
設定部219は、プレーヤの情報に基づいて、学習頻度を設定する。また、設定部219は、学習情報を構成する複数の項目それぞれの重みを設定する。これらの項目にそれぞれ異なる重要度がある場合、それぞれの項目に対して重みを設定することで、より正確な映像生成が可能になる。なお、重みを設定する方法としては、機械学習アルゴリズムのハイパーパラメーターの調整や、特定の項目に対する正確度を測定する検証指標の設定などがある。
【0146】
設定部219は、プレーヤの操作入力に基づき、学習情報の複数の項目それぞれの優先順位を設定するようにしてもよい。
【0147】
変更部220は、差異条件を変更する。例えば、変更部220は、プレーヤの操作入力に基づいて差異条件を変更してもよい。
【0148】
提供部222は、画像又は映像をプレーヤに提供する処理を行う。例えば、端末装置20の表示部290に映像を表示する処理を行う。
【0149】
つまり、「提供」とは、プレーヤ(プレーヤの端末装置20)に対して、画像又は映像を提供することである。なお、「提供」を、通知、提示、表示、送信という文言に言い換えて解釈してもよい。
【0150】
提供部222は、サーバ装置10から受信した映像を表示してもよい。なお、提供部222は、Webブラウザを用いて表示情報や画面を表示してもよい。
【0151】
例えば、提供部222は、ゲーム要素が所定の行動を行う画像又は映像を、プレーヤに提供する。
【0152】
また、提供部222は、過去に提供した画像又は映像と所定の差異条件を満たす新たな画像又は映像を、提供する。
【0153】
提供部222は、発生確率に基づいて、過去に提供した画像又は映像を提供してもよい。
【0154】
提供部222は、所定の例外条件を満たした場合に、過去に提供した画像又は映像を提供し、所定の例外条件を満たさない場合に、新たな画像又は映像を提供するようにしてもよい。
【0155】
提供部222は、イベントが発動された場合に、第1のイベント画像又はイベント映像を提供する。また、提供部222は、所定の条件を満たした場合に、第1のイベント画像又はイベント映像とは異なり、かつ、過去に提供した第2のイベント画像又はイベント映像と所定の差異条件を満たす新たな第2のイベント画像又はイベント映像を提供するようにしてもよい。
【0156】
仮想カメラ制御部223は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。
【0157】
仮想カメラ制御部223は、仮想空間に、少なくとも1つの仮想カメラを配置する。つまり、1つの仮想カメラ或いは2以上の仮想カメラを仮想空間に配置する。
【0158】
具体的には、仮想カメラ制御部223は、三次元の画像を生成する場合には、ワールド座標系における仮想カメラの位置(X、Y、Z)、回転角度(例えば、X、Y、Z軸の各軸の正方向からみて時計回りに回る場合における回転角度)を制御する処理を行う。
【0159】
すなわち、仮想カメラ制御部223は、仮想カメラの視点位置、視線方向、画角、移動方向、移動速度の少なくとも1つを制御する処理を行う。
【0160】
選択部224は、プレーヤの入力情報に基づいて、生成された複数の映像の中から、提
供する映像を選択する。
【0161】
記憶処理部225は、プレーヤに提供した画像又は映像に関する情報を記憶部(例えば、画像・映像記憶部275)に記憶する処理を行う。
【0162】
記憶処理部225は、生成部(画像・映像生成部)230によって生成した画像又は映像を記憶部(例えば、画像・映像記憶部275)に記憶する処理を行う。
【0163】
記憶処理部225は、所定のタイミングで、プレーヤに提供した画像又は映像に関する情報を、リセットするようにしてもよい。
【0164】
生成部(画像・映像生成部)230は、処理部200で行われる種々の処理の結果に基づいて描画処理を行い、これにより画像を生成し、表示部290に出力する。
【0165】
すなわち、生成部(画像・映像生成部)230は、仮想空間において、仮想カメラから見える映像(画像、動画像)を生成する。
【0166】
生成部(画像・映像生成部)230は、過去に提供した画像又は映像と所定の差異条件を満たす新たな画像又は映像を、生成する。
【0167】
生成部(画像・映像生成部)230において、映像生成は次のように行う。例えば、生成部(画像・映像生成部)230は、オブジェクト(モデル)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むオブジェクトデータ(モデルデータ)が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理(頂点シェーダによるシェーディング)が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。
【0168】
頂点処理では、頂点処理プログラム(頂点シェーダプログラム、第1のシェーダプログラム)に従って、頂点の移動処理や、座標変換、例えばワールド座標変換、視野変換(カメラ座標変換)、クリッピング処理、透視変換(投影変換)、ビューポート変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。
【0169】
そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。そして、ラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(ピクセルシェーダによるシェーディング、フラグメント処理)が行われる。
【0170】
ピクセル処理では、ピクセル処理プログラム(ピクセルシェーダプログラム、第2のシェーダプログラム)に従って、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を画像バッファ272(ピクセル単位で画像情報を記憶できるバッファ。VRAM、レンダリングターゲット、フレームバッファ)に出力(描画)する。
【0171】
すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。
【0172】
なお、頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現される。
【0173】
プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【0174】
そして生成部(画像・映像生成部)230は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【0175】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)のオブジェクトデータ(オブジェクトの頂点の位置座標、テクスチャ座標、色データ(輝度データ)、法線ベクトル、或いはα値等)は、記憶部270に保存される。
【0176】
テクスチャマッピングは、記憶部270に記憶されるテクスチャ(テクセル値)をオブジェクトにマッピングするための処理である。
【0177】
具体的には、オブジェクトの頂点に設定(付与)されるテクスチャ座標等を用いて記憶部270からテクスチャ(色(RGB)、α値などの表面プロパティ)を読み出す。そして、二次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【0178】
隠面消去処理としては、描画ピクセルのZ値(奥行き情報)が格納されるZバッファ(奥行きバッファ)を用いたZバッファ法(奥行き比較法、Zテスト)による隠面消去処理を行うことができる。
【0179】
すなわち、オブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファに格納されるZ値を参照する。そして参照されたZバッファのZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファのZ値を新たなZ値に更新する。
【0180】
αブレンディング(α合成)は、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)のことである。
【0181】
例えば、αブレンディングでは、これから画像バッファ272に描画する描画色(上書きする色)C1と、既に画像バッファ272(レンダリングターゲット)に描画されている描画色(下地の色)C2とを、α値に基づいて線形合成処理を行う。つまり、最終的な描画色をCとすると、C=C1*α+C2*(1-α)によって求めることができる。
【0182】
なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
【0183】
また、生成部(画像・映像生成部)230は、他の端末(第2の端末)とネットワークを介してデータを送受信するマルチプレーヤオンラインゲームを行う場合は、端末(第1
の端末)の操作対称のオブジェクトの移動に追従する仮想カメラ(端末(第1の端末)で制御される仮想カメラ)から見える画像を生成する処理を行う。つまり、各端末が独立した描画処理を行う。
【0184】
特に、本実施形態では、生成部(画像・映像生成部)230は、画像又は映像に関する学習情報に基づいて、画像又は映像を生成するようにしてもよい。
【0185】
つまり、生成部(画像・映像生成部)230は、トレーニング完了したモデル(学習済みモデル)にデータを入力し、新しい画像又は映像を生成(出力)する。
【0186】
入力するデータは、学習情報を元に学習された学習済みモデルに対して、新しい入力データを与えることで、モデルが予測を行うためのデータである。つまり、学習情報はモデルをトレーニングするためのデータセットであり、トレーニングを完了したモデルに入力するデータは、モデルが学習した結果を用いて予測を行うためのデータとなる。
【0187】
音処理部240は、処理部200で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部292に出力する。なお、音処理部240は、サーバ装置10の音処理部140と全部又は一部の処理と同様の処理を行ってもよい。
【0188】
なお、本実施形態の端末装置20は、1人のプレーヤのみがプレイできるシングルプレーヤモード、或いは、複数のプレーヤがプレイできるマルチプレーヤモードでゲームプレイできるように制御してもよい。例えば、マルチプレーヤモードで制御する場合には、ネットワークを介して他の端末装置20とデータを送受信してゲーム処理を行うようにしてもよいし、1つの端末装置20が、複数の入力部からの操作入力に基づいて処理を行うようにしてもよい。
【0189】
本実施形態の端末装置20が、P2Pなどによって複数の端末装置20でゲームを行う場合は、一の端末装置20がホストとしての役割を担い、処理を実行してもよい。かかる場合、ホストとしての端末装置20は、サーバ装置10の各処理部(各処理部の一部又は全部)の処理を行うようにしてもよい。
【0190】
また、本実施形態の端末装置20は、サーバ装置10と同等の処理を行い、当該端末装置20の表示部に画面を表示するようにしてもよい。
【0191】
[4]概要
本実施形態のゲームシステムは、プレーヤの入力指示に基づいてゲーム要素(例えば、キャラクタなどのゲームオブジェクト)が所定の行動(例えば、攻撃や防御などの行動)を行うものである。そして、本実施形態のゲームシステムは、ゲーム要素が所定の行動を行う様子を演出する。かかる場合に、過去に行った演出とは異なる演出を行うように制御する。そして、演出の際には、仮想空間で行われるゲームで生成された画像又は映像をプレーヤに提供する。
【0192】
特に、本実施形態のゲームシステムでは、新たな演出を行う場合がある。つまり、新たな画像又は映像を提供する場合がある。かかる場合に、過去に提供した画像又は映像と所定の差異条件を満たす画像又は映像を提供する。このようにすれば、仮想空間でゲーム要素(例えばキャラクタ)が所定の行動を行う場合に、ゲーム要素が登場する画像や映像に、新鮮さを与え、プレーヤにとって満足度の高い画像や映像を提供できるからである。
【0193】
映像を提供する際の具体例を説明する。例えば、ゲームシステムは、仮想空間に、少な
くとも1つの仮想カメラを配置する。そして、
図4に示すように、ゲームシステムは、プレーヤ(ユーザ)に、仮想カメラにおいて生成された1カット目の映像MV1を提供する。続いて、仮想カメラにおいて生成された2カット目の映像MV2を提供する。続いて、仮想カメラにおいて生成された3カット目の映像MV3を提供する。
【0194】
例えば、1カット目の映像MV1では、T0~T1の期間においてキャラクタOB1と仮想カメラの位置(視点)との距離が2メートル以内に設定して、キャラクタOB1を近距離で正面から撮影する。例えば、T0~T1の期間において、仮想カメラの視点を位置CP1に設定し、仮想カメラの視線方向を方向CV1に設定し、仮想カメラから見える画像を生成する。
【0195】
例えば、2カット目の映像MV2では、T1~T2の期間において、仮想カメラの位置(視点)との距離が2メートル以内に設定して、キャラクタOB1を近距離で正面の下方向から撮影する。例えば、T1~T2の期間において、仮想カメラの視点を位置CP2に設定し、仮想カメラの視線方向を方向CV2に設定し、仮想カメラから見える画像を生成する。
【0196】
3カット目では、T2~T3の期間において、1、2カット目よりもキャラクタOB1から離れた位置に仮想カメラを設定し、キャラクタOB1とキャラクタEA1(敵キャラクタ)を被写体となるように撮影する。例えば、キャラクタOB1と仮想カメラの位置(視点)との距離が10メートル以上になるように設定する。例えば、T2~T3の期間において、仮想カメラの視点を位置CP3に設定し、仮想カメラの視線方向を方向CV3に設定し、仮想カメラから見える画像を生成する。
【0197】
そして、本実施形態では、1~3カットの各映像MV1、MV2、MV3とは異なる4カット目の映像MV4を生成する。映像が異なるとは、(1)仮想カメラが同じ被写体(キャラクタOB1)を撮影する場合において、キャラクタOB1の行動内容が異なること、(2)仮想カメラの被写体が異なること、(3)仮想カメラの位置、向き、画角等が異なること、(4)映像を提供する期間を変更(短縮バージョン)して映像を提供すること、等である。このように、4カット目では、1~3カット目の各映像MV1、MV2、MV3とは異なる映像MV4を提供するので、ユーザにとって満足度の高い映像MV4を提供することができる。
【0198】
画像を提供する際も、映像と同様である。すなわち、ゲームシステムは、新規で提供する画像(例えば、4カット目の画像)では、過去の画像(例えば、1~3カット目の各画像)とは異なる画像を提供する。
【0199】
[5]ゲーム要素の行動の演出
本実施形態では、プレーヤの入力指示に基づいてゲーム要素(例えば、キャラクタ)が所定の行動(例えば、攻撃や防御などの行動)を行うイベントが発生した場合、仮想空間で当該キャラクタの演出を行うシミュレーションRPG(RPGはロールプレイングゲームの略)のゲームシステムの例について説明する。
【0200】
本実施形態のゲームシステムは、
図5に示すように、シミュレーションパート(第1のパート)の期間Tx1と、演出パート(第2のパート)との期間Tx2を設ける。
【0201】
また、シミュレーションパートは、第1のパートまたはゲームパートと言い換えてもよい。また、演出パートは、第2のパートと言い換えてもよい。
【0202】
例えば、シミュレーションパートの仮想空間において、プレーヤの操作対象のプレーヤ
キャラクタOB1(ゲーム要素の一例)が敵キャラクタEA1キャラクタ(ゲーム要素の一例)に対して攻撃を行うイベントが発生すると、シミュレーションパートから演出パートに移行する。
【0203】
そして、シミュレーションパートの仮想空間において、プレーヤキャラクタOB1と、敵キャラクタEA1が配置されている場合、演出パートの仮想空間においてプレーヤキャラクタOB1と、敵キャラクタEA1を配置する。そして、
図4に示すように、演出パートの仮想空間において、仮想カメラから見える画像又は映像を生成する。
【0204】
そして、本実施形態では、
図5に示すように、演出パートにおける画像を生成する際に、演出パート期間Tx2において、複数のシーン(複数のカット)の画像で構成されている場合に、例えば、第4カット目の画像(T3~T4期間の画像)を生成する場合に、第1~第3カット目の画像(T0~T1期間の画像、T1~T2期間の画像、T2~T3期間の画像)とは異なる画像を生成する。
【0205】
また、映像についても画像と同様である。つまり、本実施形態では、
図5に示すように、演出パートにおける映像を生成する際に、演出パート期間Tx2において、複数のシーン(複数のカット)の映像で構成されている場合に、例えば、第4カット目の映像(T3~T4期間の映像)を生成する場合に、第1~第3カット目の映像(T0~T1期間の映像、T1~T2期間の映像、T2~T3期間の映像)とは異なる映像を生成する。
【0206】
[6]画像又は映像の生成の説明
本実施形態では、生成部(画像・映像生成部)230によって映像を生成する。つまり、「映像」は、複数の画像を時系列に連続して表示する。また、映像生成は、映像を構成する複数の画像それぞれの画像生成を意味する。したがって、画像生成は、映像生成を意味するものと解釈してもよい。なお、「映像」は、「動画」と同じ意味と解釈してもよい。
【0207】
本実施形態では、仮想空間(3次元仮想空間、又は、ゲーム空間とも言う)に、仮想カメラを配置し、仮想カメラから見える画像を生成する。例えば、フレームレート(例えば、60fps(fpsはFrame Per Secondの略)に基づいて、画像を生成する。
【0208】
本実施形態では、所定の期間である1カット分の長さの映像を生成可能である。1カット分の長さは、映像の時間的な長さを示す。本実施形態での1カット分の長さは、例えば、5~10秒であるが、10秒以上でもよいし、5秒未満でもよい。
【0209】
[7]画像又は映像に関する情報を記憶する処理の説明
[7.1]画像又は映像を記憶する処理
本実施形態では、プレーヤに提供した画像又は映像に関する情報を記憶部(例えば、画像・映像記憶部275)に記憶する。「記憶」するとは、「記録」、「登録」と同じ意味である。
【0210】
「プレーヤに提供した画像又は映像に関する情報」とは、例えば、プレーヤに提供した画像又は映像そのものとする。ゲームシステムは、プレーヤに提供した画像又は映像を画像・映像記憶部275に記憶する。
【0211】
また、ゲームシステムは、
図6に示すように、画像・映像記憶部275に記憶したプレーヤに提供した画像又は映像のIDに対応付けて、ゲーム要素に関する情報を記憶する。ゲーム要素に関する情報とは、例えば、被写体の情報、被写体の行動の情報、被写体の位
置情報、被写体の向き情報、被写体の移動動作情報、等である。
【0212】
映像に関しては、フレームレートに応じて、映像を構成する各画像について、ゲーム要素に関する情報をしてもよいし、所与の周期(例えば、1秒単位)で、ゲーム要素に関する情報を記憶してもよいし、映像に対して1つのゲーム要素に関する情報を記憶してもよい。
【0213】
また、ゲームシステムは、
図6に示すように、プレーヤに提供した画像又は映像を識別するためのIDに対応付けて、仮想カメラに関する情報を記憶する。つまり、仮想カメラに関する情報とは、例えば、仮想カメラの位置(視点)、仮想カメラの向き(視線方向)、仮想カメラの画角(視野角)、仮想カメラの種類、仮想カメラのカメラワーク(動かし方)、等である。映像に関しては、フレームレートに応じて、映像を構成する各画像について、仮想カメラに関する情報を記憶する。
【0214】
また、ゲームシステムは、
図6に示すように、プレーヤに提供した画像又は映像を識別するためのIDに対応付けて、ゲーム状況を記憶する。例えば、ゲーム状況は、例えば、対戦する各キャラクタの情報(体力値、攻撃力、防御力、キャラクタの属性、キャラクタのレベル)、戦闘状況、等である。
【0215】
戦闘状況とは、プレーヤの操作対象のプレーヤキャラクタが敵キャラクタを攻撃しているシーン、敵キャラクタがプレーヤキャラクタを攻撃しているシーンなどの情報である。また、戦闘状況は、プレーヤキャラクタが危機的状況(体力値が10以下であるか否か)である情報、対戦相手キャラクタが危機的状況(体力値が10以下であるか否か)である情報、を含む。
【0216】
戦闘状況は、プレーヤキャラクタと対戦相手キャラクタ(敵キャラクタ)とのうち、いずれが優勢であり何れが劣勢であるかという情報を含んでもよい。
【0217】
また、戦闘状況は、戦闘エリア(海辺エリア、山岳エリア、都市エリアなど)の戦闘のエリア(範囲)の情報を含むものであってもよい。
【0218】
映像に関しては、フレームレートに応じて、映像を構成する各画像について、ゲーム状況を記憶してもよいし、所与の周期(例えば、1秒単位)で、ゲーム状況を記憶してもよいし、映像に対して1つのゲーム状況を記憶してもよい。
【0219】
また、ゲームシステムは、
図6に示すように、プレーヤに提供した画像又は映像を識別するためのIDに対応付けて、画像又は映像の提供期間を記憶する。提供期間とは、プレーヤの表示画面(表示部)に提供された画像が表示される期間や、プレーヤの表示画面に提供された映像が表示される期間を示す。
【0220】
なお、ゲームシステムは、プレーヤに提供した画像又は映像を識別するためのIDに対応付けて、他の情報を記憶してもよい。
【0221】
[7.2]画像又は映像の提供フラグ
また、「プレーヤに提供した画像又は映像に関する情報」とは、プレーヤに提供した画像又は映像をプレーヤに提供したことを示すフラグ情報でもよい。例えば、提供有無を示す提供フラグFを用意する。提供フラグF=1は、提供したことを意味し、提供フラグF=0は、提供していないことを意味する。
【0222】
図7は、画像又は映像を識別するためのIDに対応付ける提供フラグFの一例を示す。
例えば、ゲームシステムは、予め提供用の画像又は映像を画像・映像記憶部275に記憶する。そして、初期状態において、画像又は映像を識別するためのIDに対応付けて提供フラグFを0に設定する。その後、ゲームシステムは、ゲームを進行させ、画像・映像記憶部275に記憶されている画像又は映像をプレーヤに提供した場合に、画像又は映像を識別するためのIDに対応付けて、提供フラグFを1に更新する。
【0223】
本実施形態のゲームシステムは、記憶部(例えば、画像・映像記憶部275)に記憶された画像又は映像を参照し、差異が生じるような新しい画像又は映像を提供することができる。
【0224】
[7.3]学習情報
また、「プレーヤに提供した画像又は映像に関する情報」とは、学習情報でもよい。
【0225】
図8は、学習情報の一例を示す。学習情報は、複数の項目(複数の要素)が存在する。各項目に変数名及びその値を対応付ける。
【0226】
学習情報は、イベント(演出内容)の項目を含む。当該項目の変数は、Event-Typeである。本実施形態では、イベントの種類に応じて予め数値を決定する。そして、変数に数値を設定する。例えば、通常の敵との剣による攻撃のイベントの場合は、「1」が設定される。また、通常の敵とのビーム砲による攻撃のイベントの場合は、「2」が設定される。また、ボス敵との攻撃のイベントの場合は、「3」が設定される。
【0227】
また、学習情報は、ゲーム開始時点からイベントの所与の時点(例えば、イベントの開始時点)までの経過時間を示す時間(期間)の項目を含む。当該項目の変数名は、Timeであり、例えば、通常の敵との剣による攻撃のイベント(Event-Tyep=1)の開始時点が、ゲーム開始時点から300秒経過している場合、Timeに「300」を設定する。
【0228】
また、学習情報は、イベントの期間の項目を含む。当該項目の変数名は、Event-Periodである。例えば、通常の敵との剣による攻撃のイベント(Event-Tyep=1)の期間が60秒である場合、Event-Periodに「60」を設定する。
【0229】
また、学習情報は、イベントにおいて、被写体となるキャラクタの項目を含む。当該項目の変数名は、Objectである。キャラクタOB1の場合「1」が設定され、キャラクタOB2の場合「2」が設定され、キャラクタEA1の場合、「3」が設定される。例えば、被写体となるキャラクタがキャラクタOB1の場合、変数のObjectに「1」が設定される。複数の被写体が存在する場合には、複数の値が設定される。
【0230】
また、学習情報は、イベントにおいての音楽情報を含んでもよい。当該項目の変数名は、Event-Musicである。本実施形態では、BGMの楽曲の種類を数値化し、イベントにおいて出力したBGMの値を変数に設定する。例えば、BGMが楽曲「〇〇のテーマ」である場合は数値「1」を設定し、BGMが楽曲「〇〇の行進曲」である場合は、数値「2」を設定する。
【0231】
また、学習情報は、仮想カメラのカメラワークの種類を含む。当該項目の変数名は、Camera-Typeである。本実施形態では、カメラワークの種類を数値化し、イベントにおいて使用したカメラワークの値を変数に設定する。
【0232】
【0233】
カメラワークの種類Aは、キャラクタを近距離(例えば、仮想カメラとキャラクタとの距離が2メートル以内)で正面から撮影する。例えば、カメラワークの種類Aの値は「1」である。
【0234】
カメラワークの種類Bは、キャラクタを近距離(例えば、仮想カメラとキャラクタとの距離2メートル以内)で正面下方向から撮影する。例えば、カメラワークの種類Bの値は「2」である。
【0235】
カメラワークの種類Cは、キャラクタを遠距離(例えば、仮想カメラとキャラクタとの距離が10メートル以上)で撮影する。例えば、カメラワークの種類Cの値は「3」である。
【0236】
図8に戻り、学習情報は、画像情報を含む。当該項目の変数名は、Imageである。本実施形態では、画素単位で、画素値、明度などの情報を数値化し設定する。
【0237】
本実施形態の学習情報(例えば、画像情報などの学習情報)は、配列、行列などの所与の形式で数値を設定する場合もある。また、本実施形態では、映像の単位毎に、映像を識別するための映像IDと、映像に対応する学習情報を識別するための学習情報IDを割り振る。
【0238】
なお、ゲームシステムは、学習情報に基づいてデータセットを生成してもよい。データセットは、学習に使用される具体的な画像やデータの集合体である。
【0239】
[8]新たな画像又は映像の提供の説明
ゲームシステムは、画像又は映像の提供タイミングが到来した場合、過去に提供した画像又は映像と所定の差異条件を満たす画像又は映像を提供する。
【0240】
[8.1]演出例1
ゲームシステムは、画像又は映像の提供タイミングが到来した場合、元々用意している画像又は映像(予め、画像・映像記憶部275に記憶されている画像又は映像)を提供してもよい。かかる場合、過去に提供していない画像又は映像を提供する。
【0241】
[8.2]演出例2
ゲームシステムは、画像又は映像の提供タイミングが到来した場合、ゲームオブジェクト(例えば、プレーヤキャラクタOB1)の行動を行う画像又は映像を提供してもよい。かかる場合、仮想空間に配置される仮想カメラの位置、向き、画角の少なくとも1つを変更し、過去に提供していない画像又は映像を提供する。また、ゲームシステムは、ゲームオブジェクトの動作を変更し、過去に提供していない画像又は映像を提供する。
【0242】
[9]差異条件の説明
ゲームシステムは、新たな画像を提供する場合に、新たな画像と過去に提供した画像とにおいて所定の差異条件を満たすように、新たな画像を提供する。
【0243】
また、映像の場合も同様である。ゲームシステムは、新たな映像を提供する場合に、新たな映像と過去に提供した映像とにおいて所定の差異条件を満たすように、新たな映像を提供する。
【0244】
つまり、ゲームシステムは、プレーヤに提供した画像又は映像に関する情報を記憶部(例えば、画像・映像記憶部275)に記憶された情報、すなわち、過去に提供した画像又
は映像を参照し、過去に提供した画像又は映像と所定の差異条件を満たす画像又は映像を提供する。
【0245】
このようにすれば、例えば、キャラクタOB1が敵キャラクタEA1を攻撃する行動が何度も発生した場合でも、過去の画像とは異なる画像をプレーヤに提供することができる、又は、過去の映像とは異なる映像をプレーヤに提供することができる。
【0246】
したがって、本実施形態によれば、プレーヤに新鮮なゲーム体験を与えることができる。例えば、プレーヤの操作対象のキャラクタOB1が敵キャラクタEA1を攻撃する演出パートが、何度も発生したとしても、前回は、キャラクタOB1を被写体とする映像をプレーヤに提供し、今回は、キャラクタOB1と敵キャラクタEA1とを両方を被写体とする映像をプレーヤに提供する等、異なる映像を提供することができる。
【0247】
なお、ゲームシステムは、過去の画像が複数存在する場合、過去の複数の画像全てと異なるように、新たな画像を提供する。また、ゲームシステムは、過去の映像が複数存在する場合、過去の複数の映像全てと異なるように、新たな映像を提供する。
【0248】
過去の映像と、これから提供する新たな映像とにおいて映像が異なるとは、映像を構成する全ての画像が異なることを意味してもよいし、映像を構成する一部の画像が異なり、残りの画像が同一のものがあることを意味してよい。
【0249】
(1)ゲーム要素に関する条件
ゲームシステムは、「ゲーム要素に関する条件」を差異条件の一例とする。例えば、新たな画像を提供する場合に、新たな画像と過去に提供した画像とにおいてゲーム要素に関する条件を満たすように、新たな画像を提供する。
【0250】
また、映像についても画像と同様である。ゲームシステムは、新たな映像を提供する場合に、新たな映像と過去に提供した映像とにおいてゲーム要素に関する条件を満たすように、新たな映像を提供する。
【0251】
「ゲーム要素に関する条件」を差異条件とする場合、画像又は映像は、予め記憶部に記憶されたものでもよいし、ゲームシステムがリアルタイムに生成(レンダリング)してもよい。
【0252】
「ゲーム要素に関する条件」とは、例えば、被写体が異なるという条件、行動が異なるという条件のうちの少なくとも1つである。
【0253】
被写体が異なるとういう条件について説明する。例えば、過去の画像G1で表示されているゲームオブジェクトがキャラクタOB1である場合、新たな画像G2で表示されるゲームオブジェクトをキャラクタOB2にする。つまり、過去の画像と新たな画像とにおいて、被写体を変更する。
【0254】
また、映像の場合も画像と同様である。すなわち、過去の映像MV1で表示されているゲームオブジェクトがキャラクタOB1である場合、新たな映像MV2で表示されるゲームオブジェクトをキャラクタOB2にする。つまり、過去の映像と新たな映像とにおいて、被写体を変更する。
【0255】
また、被写体が異なるとは、同じ被写体についての情報(位置、向き、移動動作、等)が異なることも含む。
【0256】
例えば、過去の画像G1で表示されているゲームオブジェクトがキャラクタOB1であり、キャラクタOB1が位置P1に配置されている場合、新たな画像G2生成時において、キャラクタOB1を位置P2に配置する。位置P1と位置P2は異なる。なお、画像G1と画像G2とにおいて、キャラクタOB1の向きを異なるようにしてもよいし、キャラクタOB1の移動動作について異なるようにしてもよい。
【0257】
また、映像の場合も画像と同様である。すなわち、過去の映像MV1で表示されているゲームオブジェクトがキャラクタOB1であり、映像の開始時にキャラクタOB1が位置P1に配置されている場合、新たな映像MV2生成時において、映像の開始時にキャラクタOB1を少なくとも位置P1とは異なる位置P2に配置するようにする。なお、映像MV1と映像MV2とにおいて、キャラクタOB1の向きを異なるようにしてもよいし、キャラクタOB1の移動動作について異なるようにしてもよい。
【0258】
ゲーム要素の行動が異なるという条件について説明する。例えば、過去の画像G1が、キャラクタOB1が剣による攻撃の行動の画像である場合、新たな画像G2ではキャラクタOB1が当該行動とは異なる行動(例えば、パンチの行動)の画像となるように、キャラクタOB1の画像を提供する。
【0259】
例えば、新たな画像G2の提供タイミングは、画像G1の提供タイミングから所与の期間(例えば、10秒間)経過したタイミングとする。
【0260】
また、映像の場合は、過去の映像MV1が、キャラクタOB1が剣による攻撃の行動の映像である場合、新たな映像MV2では敵キャラクタEA1が(例えば、剣の攻撃を受ける行動)の映像となるようにする。映像の場合は、新たな映像を提供するタイミングで、キャラクタOB1の行動を変更ができない可能性がある。したがって、新たな映像を提供するタイミングで、被写体をキャラクタOB1から敵キャラクタEA1に変更する。つまり、新たな映像を提供するタイミングで、敵キャラクタEA1の行動の映像に切り替えるようにしてもよい。
【0261】
(2)仮想カメラに関する条件
ゲームシステムは、「仮想カメラに関する条件」を差異条件の一例とする。つまり、仮想空間に配置された仮想カメラから見える画像又は映像を生成する場合において、当該仮想カメラに関する条件を差異条件の一例とする。
【0262】
例えば、新たな画像を提供する場合に、新たな画像と過去に提供した画像とにおいて仮想カメラに関する条件を満たすように、新たな画像を提供する。
【0263】
また、映像についても画像と同様である。ゲームシステムは、新たな映像を提供する場合に、新たな映像と過去に提供した映像とにおいて仮想カメラに関する条件を満たすように、新たな映像を提供する。
【0264】
「仮想カメラに関する条件」を差異条件とする場合、画像又は映像は、ゲームシステムが、仮想カメラから見える画像をリアルタイムに生成(レンダリング)する。
【0265】
「仮想カメラに関する条件」とは、例えば、仮想カメラの位置(視点)が異なるという条件、仮想カメラの向き(視線方向)が異なるという条件、仮想カメラの画角(視野角)が異なるという条件、仮想カメラの種類が異なるという条件、仮想カメラのカメラワーク(動かし方)が異なるという条件、のうちの少なくとも1つである。
【0266】
仮想カメラの位置が異なるという条件について説明する。例えば、
図4に示すように、
過去の画像G1の生成時では、視点CP1において仮想カメラから見える画像を生成したとする。新たな画像G2の生成時では、視点CP2において仮想カメラから見える画像を生成する。なお、CP1とCP2は位置が異なる。
【0267】
また、映像の場合も画像生成と同様である。すなわち、
図4に示すように、過去の映像MV1の生成では、視点CP1において仮想カメラから見える映像を生成したとする。新たな画像G2の生成では、視点CP2において仮想カメラから見える映像を生成する。
【0268】
仮想カメラの方向が異なるという条件について説明する。例えば、
図4に示すように、過去の画像G1の生成時では、向きCV1に仮想カメラの視線方向を設定し、当該仮想カメラから見える画像を生成したとする。新たな画像G2の生成時では、向きCV2に仮想カメラの視線方向を設定し、当該仮想カメラから見える画像を生成する。なお、CV1とCV2は向きが異なる。
【0269】
また、映像の場合も画像生成と同様である。すなわち、
図4に示すように、過去の映像MV1の生成時では、向きCV1に仮想カメラの視線方向を設定し、当該仮想カメラから見える映像を生成したとする。新たな映像MV2の生成時では、向きCV2に仮想カメラの視線方向を設定し、当該仮想カメラから見える映像を生成する。
【0270】
仮想カメラの画角(視野角)が異なるという条件について説明する。例えば、過去の画像G1の生成時では、画角θ1に仮想カメラの画角を設定し、当該仮想カメラから見える画像を生成したとする。新たな画像G2の生成時では、画角θ2(例えば、θ2>θ1)に仮想カメラの画角を設定し、当該仮想カメラから見える画像を生成する。
【0271】
また、映像の場合も画像生成と同様である。すなわち、過去の映像MV1の生成時では、画角θ1に仮想カメラの画角を設定し、当該仮想カメラから見える映像を生成したとする。新たな映像MV2の生成時では、画角θ2(例えば、θ2>θ1)に仮想カメラの画角を設定し、当該仮想カメラから見える映像を生成する。
【0272】
仮想カメラの種類が異なるという条件について説明する。例えば、過去の画像G1の生成時では、望遠レンズの仮想カメラから見える画像を生成したとする。新たな画像G2の生成時では、近距離用レンズの仮想カメラから見える画像を生成する。
【0273】
また、映像の場合も画像生成と同様である。すなわち、過去の映像MV1の生成時では、望遠レンズの仮想カメラから見える映像を生成したとする。新たな映像MV2の生成時では、近距離用レンズの仮想カメラから見える映像を生成する。
【0274】
仮想カメラのカメラワーク(動かし方)が異なるという条件について説明する。
【0275】
例えば、過去の映像MV1の生成時では、
図9に示すように、種類Aのカメラワークで仮想カメラから見える映像を生成したとする。新たな映像MV2の生成時では、種類Bのカメラワークで仮想カメラから見える映像を生成する。このようにすれば、カメラワークが異なる映像をプレーヤは鑑賞することができ、プレーヤに新鮮さを与えることができる。
【0276】
(3)ゲーム状況に関する条件
ゲームシステムは、「ゲーム状況に関する条件」を差異条件の一例とする。つまり、仮想空間に配置された仮想カメラから見える画像又は映像を生成する場合において、当該仮想カメラに関する条件を差異条件の一例とする。
【0277】
例えば、新たな画像を提供する場合に、新たな画像と過去に提供した画像とにおいてゲーム状況に関する条件を満たすように、新たな画像を提供する。
【0278】
また、映像についても画像と同様である。ゲームシステムは、新たな映像を提供する場合に、新たな映像と過去に提供した映像とにおいてゲーム状況に関する条件を満たすように、新たな映像を提供する。
【0279】
「ゲーム状況に関する条件」とは、対戦するキャラクタが異なるという条件、攻撃シーンか防御シーンかなど戦闘状況が異なるという条件、のうちの少なくとも1つである。
【0280】
対戦するキャラクタが異なるという条件について説明する。例えば、過去の画像G1の生成時では、通常の敵キャラクタEA1を倒すゲーム状況において、仮想カメラから見える画像を生成したとする。新たな画像G2の生成時では、ボスキャラクタEBを倒すゲーム状況において、仮想カメラから見える画像を生成する。なお、ボスキャラクタEBは、敵キャラクタEA1よりも強い(例えば、攻撃力が強い)キャラクタである。
【0281】
また、映像の場合も画像生成と同様である。すなわち、過去の映像MV1の生成時では、通常の敵キャラクタEA1を倒すゲーム状況において、仮想カメラから見える映像MV1を生成したとする。新たな映像MV2の生成時では、ボスキャラクタEBを倒すゲーム状況において、仮想カメラから見える映像MV2を生成する。
【0282】
戦闘状況が異なるという条件について説明する。例えば、過去の画像G1の生成時では、プレーヤの操作対象のキャラクタOB1が敵キャラクタEA1を攻撃する戦闘状況において、仮想カメラから見える画像を生成したとする。新たな画像G2の生成時では、敵キャラクタEA1がキャラクタOB1を攻撃し、キャラクタOB1が防御する戦闘状況において、仮想カメラから見える画像を生成する。
【0283】
また、映像の場合も画像生成と同様である。すなわち、過去の映像MV1の生成時では、プレーヤの操作対象のキャラクタOB1が敵キャラクタEA1を攻撃する戦闘状況において、仮想カメラから見える映像MV1を生成したとする。新たな映像MV2の生成時では、敵キャラクタEA1がキャラクタOB1を攻撃しキャラクタOB1が防御する戦闘状況において、仮想カメラから見える映像MV2を生成する。
【0284】
(4)画像又は映像の提供期間に関する条件
ゲームシステムは、「画像又は映像の提供期間に関する条件」を差異条件の一例とする。
【0285】
例えば、新たな画像を提供する場合に、新たな画像と過去に提供した画像とにおいて画像の提供期間に関する条件を満たすように、新たな画像を提供する。
【0286】
また、映像についても画像と同様である。ゲームシステムは、新たな映像を提供する場合に、新たな映像と過去に提供した映像とにおいて映像の提供期間に関する条件を満たすように、新たな映像を提供する。
【0287】
「画像又は映像の提供期間に関する条件」とは、画像又は映像の提供期間が異なるという条件である。例えば、新たな画像又は映像の提供期間を、過去の画像又は映像の提供期間よりも短く(短縮)するように制御する。或いは、新たな画像又は映像の提供期間を、過去の画像又は映像の提供期間よりも長くするように制御する。
【0288】
すなわち、
図10に示すように、例えば、過去の画像G1の提供時では、T0~T1の
期間(例えば、10秒間)かけて、画像G1を提供(表示)したとする。新たな画像G2の生成時では、T1~T2の期間(例えば、5秒間)かけて、画像G2を提供(表示)する。
【0289】
また、映像の場合も画像と同様に考えてよい。すなわち、過去の映像MV1の提供時では、T0~T1の期間(例えば、10秒間)かけて、映像MV1を提供(表示)したとする。新たな映像MV2の提供時では、T1~T2の期間(例えば、5秒間)かけて、映像MV2を提供(表示)する。
【0290】
[10]重みづけ
本実施形態のゲームシステムは、複数の差異条件を設定してもよい。そして、複数の差異条件が設定されている場合に、優先順位に応じて各差異条件について重み付け(重みの値)を設定する。
【0291】
重みづけは各項目の重要度を評価(点数化)することである。つまり、本実施形態では、各差異条件について、重要度を数値化することにより、重みづけを決定する。差異条件の重要度の数値が高い程、その差異条件の重要度が高いことを意味する。
【0292】
ゲームシステムは、予め各差異条件の優先順位を設定する。そして、優先順位の順に従って重みづけを設定する。優先順位は、優先度を意味し、値が低いほど優先的に適用することを意味する。
【0293】
初期状態において各差異条件に対応する重みの値を「1」に設定する。そして、例えば、
図11に示すように、「被写体が異なる」という条件を優先順位1位にし、「行動が異なる」という条件を優先順位2位に設定し、「カメラワークが異なる」という条件を優先順位3位に設定したとする。すると、「被写体が異なる」という条件(条件ID=1)の重みの値を「10」に設定する。また、「行動が異なる」という条件(条件ID=2)の重みの値を「9」に設定する。また、「カメラワークが異なる」という条件(条件ID=3)の重みの値を「8」に設定する。なお、その他の条件の重みの値も、優先順位に応じて設定し、例えば、優先順位10位以下の重みの値は「1」を維持する。
【0294】
本実施形態では、プレーヤの操作入力に基づいて、重みづけを設定してもよい。例えば、プレーヤの操作入力に基づいて、重きを置きたい差異条件の選択を受け付けた場合、選択された差異条件の重みを「10」に設定し、選択されていない差異条件の重みを「1」のまま維持する。
【0295】
なお、重みの値が同じ条件は、1つでもよいし複数あってもよい。また、ゲームシステムは、重みの値は、機械学習の演算に用いてもよい。例えば、学習前に重みづけを行ってもよいし、学習中に重みづけを行ってもよい。
【0296】
[11]差異条件の変更
本実施形態のゲームシステムは、差異条件を変更してもよい。つまり、ゲームシステムは、差異条件を変更可能としてもよい。例えば、差異条件を、「被写体が異なる」という条件のみで設定し、所与のタイミングで、差異条件を、「被写体が異なる」という条件から「行動が異なる」という条件に変更してもよい。
【0297】
また、差異条件を変更するとは、差異条件の数を変更することも意味してもよい。例えば、差異条件を、「被写体が異なる」という条件、及び、「カメラワークが異なる」という2つの条件で設定し、所与のタイミングで、差異条件を、「被写体が異なる」という条件、及び、「カメラワークが異なる」という2つの条件、から「行動が異なる」という条
件に変更してもよい。
【0298】
例えば、ゲームシステムは、プレーヤの操作入力に基づいて、差異条件を変更してもよい。また、ゲームシステムは、ゲーム進行に応じて、コンピュータが自動的に差異条件を変更してもよい。例えば、ボスキャラクタの対戦時では、差異条件を「カメラワークが異なる」という条件を少なくとも含み、当該「カメラワークが異なる」という条件の優先順位を最も高くなるように制御してもよい。
【0299】
所与のタイミングとは、プレーヤの操作入力に基づいて決められるタイミングでもよいし、ゲーム進行に応じて決められるタイミング(所定のキャラクタとの対戦開始時又は終了時、イベント開始時又は終了時などのタイミング、等)である。
【0300】
[12]リセット
本実施形態のゲームシステムは、所定のタイミングで(プレーヤに提供した画像又は映像に関する情報を、リセットするようにしてもよい。
【0301】
図5に示すように、例えば、タイミングT4において、キャラクタOB1が敵キャラクタEA1を攻撃する行動が終了した場合、T0~T4の期間Tx2で提供した画像又は映像に関する情報を、リセットする。
【0302】
リセットとは、初期状態にすることを意味する。また、リセットとは、画像・映像記憶部275に記憶した画像又は映像を削除することを意味してもよい。また、リセットとは、提供フラグFを0に更新することを意味してもよい。つまり、リセットとは、過去に提供した画像又は映像を、過去に提供した画像又は映像として扱わないようにすることを意味するものであればよい。
【0303】
このようにすれば、例えば、リセット後(例えば、タイミングT4後)、再度、キャラクタOB1が敵キャラクタEA1を攻撃する行動が発生した場合、既に提供した映像(例えば、リセットのタイミングT4前に提供した映像MV1)をプレーヤに提供することができる。
【0304】
本実施形態では、ゲーム要素の所定の行動が終了した場合に、リセットを行ってもよいが、ゲーム要素の所定の行動が終了時に、必ずしもリセットを強要するものではない。
【0305】
例えば、ゲームシステムは、エンディングのタイミングで、リセットを行うようにしてもよい。
【0306】
また、ゲームシステムは、ゲーム進行でのステージ(クエスト、ミッション)をクリアするタイミングでリセットしてもよい。
【0307】
また、ゲームシステムは毎日0時にリセットする、或いは、毎月1日の午前2時にリセットするようにしてもよい。
【0308】
また、機械学習において学習情報は重要である。したがって、学習記憶部278に記憶される学習情報を削除しないようにしてもよい。
【0309】
[13]発生確率に応じた制御
本実施形態のゲームシステムは、画像又は映像に対応付けて、過去に提供した画像又は映像を発生させる発生確率を設定してもよい。そして、発生確率に基づいて、過去に提供した画像又は映像を提供してもよい。例えば、過去の画像又は映像を提供許可する状況下
において、発生確率に基づいて、過去に提供した画像又は映像を提供してもよい。
【0310】
図12は、画像又は映像を識別するためのIDに対応付ける発生確率(提供確率)の一例を示す。例えば、ゲームシステムは、画像毎に、IDを割り振り、当該画像を提供する発生確率を設定する。この画像は、例えば、予め用意された画像でもよいし、生成部(画像・映像生成部)230によって生成された画像でもよい。
【0311】
映像についても画像と同様である。例えば、ゲームシステムは、映像毎に、IDを割り振り、当該映像を提供する発生確率を設定する。この映像は、例えば、予め用意された映像でもよいし、生成部(画像・映像生成部)230によって生成された映像でもよい。なお、IDは映像及び画像を識別するための識別情報である。
【0312】
ゲームシステムは、発生確率に基づいて、過去に提供した画像や映像をプレーヤに提供する。例えば、
図12の例において、ゲームシステムは、過去に提供したID=31の映像MV31(ファイル名:MV31.mpg)を、5%の確率で、プレーヤに提供する。
【0313】
また、ゲームシステムは、過去に提供した画像又は映像の提供状況に応じて、発生確率を変更してもよい。
【0314】
ゲームシステムは、プレーヤに提供した回数に応じて発生確率を変更してもよい。例えば、提供回数が増加するほど、発生確率が低くなるように制御する。具体的に説明すると、ID=31の映像MV31についての提供回数が10回である場合、発生確率を1%に設定し、ID=31の映像MV31についての提供回数が5回である場合、発生確率5%に設定し、ID=31の映像MV31についての提供回数が1回である場合、発生確率10%に設定する。
【0315】
また、ゲームシステムは、前回の映像又は画像の提供時からの時間経過に応じて、当該映像又は画像の発生確率を変更してもよい。
【0316】
例えば、ID=31の映像MV31について、タイミングT30に提供開始した場合、タイミングT30からの時間経過が長いほど、発生確率が高くなるように制御する。例えば、ID=31の映像MV31について提供開始タイミングT30から現時点の期間が60分である場合、発生確率を20%に設定する。また、ID=31の映像MV31について提供開始タイミングT30から現時点の期間が30分である場合、発生確率を5%に設定する。
【0317】
このようにすれば、直近に見た画像や映像を、プレーヤに提供する可能性を抑えることができる。
【0318】
[14]例外条件
本実施形態のゲームシステムは、所定の例外条件を満たした場合に、過去に提供した画像又は映像を提示する。また、ゲームシステムは、所定の例外条件を満たさない場合に、新たな画像又は映像を提供する。
【0319】
例えば、映像又は画像に含まれるキャラクタが特別なキャラクタである場合や、特別な映像でありプレーヤが繰り返し見たくなるような映像又は画像については、例外的に、繰り返し提供できるようにした方が望ましいからである。
【0320】
例えば、ゲームシステムは、
図12に示すように、画像又は映像を識別するためのIDに対応付けて有効フラグを設定する。例えば、有効フラグ=1は、過去の画像又は映像を
提供許可することを意味する。有効フラグ=0は、過去の画像又は映像を提供許可しないことを意味する。
【0321】
本実施形態では、初期状態で有効フラグを0に設定する。そして、プレーヤの操作入力に基づいて、特定の画像又は映像に対応付けられた有効フラグを1に設定するようにしてもよい。また、コンピュータ制御に基づいて自動的に、予め定められた特定の画像又は映像に対応付けられた有効フラグを1に設定するようにしてもよい。特定の画像又は映像とは、例えば、特別なキャラクタ(例えば、ボスキャラクタ)が登場する(ゲーム空間内に配置される)画像又は映像である。
【0322】
例えば、ゲームシステムは、有効フラグが1に設定されているID=31、32、33、34の映像MV31、MV32、MV33、MV34について、再度、当該画像又は映像を提供できるようにする。なお、ゲームシステムは、プレーヤからの再生指示を受け付けた映像について、当該映像を提供してもよいし、ゲーム進行に応じた所定のタイミングに、当該映像を提供してもよい。
【0323】
なお、本実施形態のリセット時において、全ての映像又は画像の有効フラグを1(又は0)に更新するようにしてもよい。また、リセットに関係なく(リセットの影響を受けることなく)有効フラグを制御してもよい。リセット時において、有効フラグ=1の映像や画像を画像・映像記憶部250から削除しないように制御する。
【0324】
なお、本実施形態では、有効フラグが1に設定された画像又は映像について、発生確率に基づいて当該画像又は映像を提供してもよい。つまり、有効フラグが0に設定された画像又は映像については、発生確率に関係なく、当該画像又は映像を提供しないように制御する。例えば、有効フラグが0であるID=21の画像G21について、発生確率にNULLを設定する。
【0325】
[15]AIによる画像又は映像生成の説明
本実施形態のゲームシステムは、仮想カメラに関する情報を学習する。そして、学習情報に基づいて画像又は映像を生成してもよい。「学習」とは、例えば、機械学習である。また、「学習」とは、情報を蓄積(記憶)することでもよい。
【0326】
例えば、
図4に示すように、1~3カットの各映像MV1、MV2、MV3を生成した仮想カメラに関する情報を学習する。そして、4カット目の期間(T3~T4の期間)において、学習情報に基づいて仮想カメラの制御を行い、当該仮想カメラから見える4カット目の映像MV4を生成してもよい。
【0327】
本実施形態では、AI(例えば、深層学習)によって映像(画像、動画)を生成してもよい。なお、AIとは、Artificial Intelligenceの略である。
【0328】
例えば、本実施形態のゲームシステムは、仮想空間に配置された仮想カメラの位置、キャラクタの位置、等のパラメータを学習する。
【0329】
したがって、キャラクタの位置、仮想カメラの位置などを学習しているので、AIで映像を生成する場合において、この場面は、どの視点がよいか、誰を被写体とすべきか、どのような構図で、どのようなカメラワークがよいのか、等を決めて映像(画像)を生成することができる。
【0330】
例えば、仮想空間において、プレーヤの操作対象のキャラクタOB1が敵であるキャラクタEA1に対して攻撃を行うイベントが発生したとする。すると、シミュレーションパ
ートから演出パートに移行し、プレーヤに映像を提供する。本実施形態では、演出パートにおいて、仮想カメラに関する学習情報に基づいて、仮想カメラから見える映像を生成する。
【0331】
学習する場合、既に生成された映像(画像を含む)に対応する学習情報を用意し、学習記憶部278に記憶する。
【0332】
[16]フローチャート
次に、
図13を用いて、本実施形態の提供処理の流れについて説明する。
【0333】
まず、プレーヤに提供した画像又は映像に関する情報を記憶部に記憶する(ステップS1)。例えば、プレーヤに提供した画像又は映像に関する情報を画像・映像記憶部275に記憶する。また、学習する場合には、生成された映像に対応する学習情報を、学習記憶部278に記憶する。例えば、生成したい画像の種類や特徴を、生成済みの映像(例えば、映像MV1、MV2、MV3)の画像に関する情報から収集し、学習記憶部278に記憶する。
【0334】
そして、画像又は映像を提供するタイミングが到来したか否かを判定する(ステップS2)。例えば、ゲーム要素の所定の行動が発生した(例えば、キャラクタが攻撃を行うイベントが発生した)場合、画像又は映像を提供するタイミングが到来したと判定する。
【0335】
また、ゲーム要素の所定の行動の発生中において(例えば、攻撃イベント中において)、画像又は映像のシーンの切り替えが発生した場合、画像又は映像を提供するタイミングが到来したと判定する。
【0336】
画像又は映像を提供するタイミングが到来した場合(ステップS2のY)、差異条件を満たす画像又は映像を提供する(ステップS3)。つまり、過去に提供した画像又は映像と、新たに提供する画像又は映像とにおいて、差異条件を満たすように、新たに提供する画像又は映像を提供する。新たに提供する画像又は映像は、生成してもよいし、予め用意されたものでもよい。
【0337】
例えば、カメラワークが異なるという差異条件の場合、カメラワークが異なるように新たな映像を生成し、プレーヤに提供する。学習モデルを採用する場合、学習モデルを用いて新たな映像を生成する。以上で処理を終了する。
【0338】
[17]情報処理装置
本実施形態では、主にゲームシステムを構成する端末装置20が、画像又は映像を提供する例について説明したが、ゲームシステムを構成するサーバ装置10が、画像又は映像を提供してもよい。
【0339】
また、本実施形態では、主にゲームシステムを構成する端末装置20が、学習機能及び推論機能(予測機能)を有する例について説明したが、ゲームシステムを構成するサーバ装置10が、学習機能及び推論機能を有するようにしてもよい。
【0340】
[18]機械学習について
本実施形態のゲームシステムは、画像に関する学習情報をニューラルネットワークや機械学習アルゴリズムに入力することで、新しい画像を生成してもよい。また、本実施形態のゲームシステムは、映像に関する学習情報をニューラルネットワークや機械学習アルゴリズムに入力することで、新しい映像を生成してもよい。
【0341】
以下、説明の便宜上、映像の例について説明するが、画像生成と映像生成は、両方ともAIによって可能である。生成される対象として、単一の画像であるか、一連の画像(動画像)であるかに違いがあるにすぎない。
【0342】
映像を生成するために機械学習を行う場合、教師あり学習と教師なし学習のいずれを採用してもよい。
【0343】
映像生成のために機械学習を行う場合、教師あり学習か教師なし学習かは、その目的や手元にあるデータによって異なる。
【0344】
教師あり学習は、データに正解ラベルが付いている場合に使われる。一方、教師なし学習は、データに正解ラベルがない場合に使われる。例えば、似たような画像が複数ある場合に、それらをクラスタリングして類似するもの同士をグループ化することができる。映像生成の場合、例えばGANという手法を採用する。データセットから学習して、新しい画像を生成することができる。このように、正解ラベルがない場合には教師なし学習を使うことができる。
【0345】
[18.1]教師あり学習
本実施形態では、例えば、ディープラーニングの一種であるCNN(Convolutional Neural Network)を採用してもよい。
【0346】
CNNは、入力データの局所的な特徴を捉えるために、畳み込み層(Convolutional Layer)とプーリング層(Pooling Layer)が交互に重ねられた構造を持つ。このような層を多層に積み重ねることにより、より高度な特徴抽出が可能となる。
【0347】
教師あり学習では、モデルに入力されるデータに対して正しい出力を提供する正解データ(教師データ)が必要となる。仮想空間の映像生成では、教師データとして、映像生成部230によって生成される映像データなどが使用されるが、インターネットを介して教師データを取得し、学習記憶部278に記憶してもよい。
【0348】
例えば、CNNを使用して学習し、学習情報に基づく映像生成の処理の流れは次の通りである。
【0349】
まず、学習情報を準備する。例えば、本実施形態において、映像生成部230によって生成される映像データを収集し、学習記憶部278に記憶する。
【0350】
次に、モデル(学習モデル)を構築する。すなわち、CNNを使用して、仮想空間から仮想カメラから見た映像を生成するモデルを構築する。モデルは、画像の特徴を抽出するために畳み込み層を使用し、特徴の抽出後、全結合層で映像の生成を行う。
【0351】
そして、学習を実行する。すなわち、学習情報を使用して、モデルをトレーニングします。トレーニング中、モデルは入力画像と教師データの間の差異を最小化するように自動的に学習する。
【0352】
そして、トレーニングが完了したら、モデルを使用して、新しい映像を生成することが可能となる。本実施形態では、ゲームの仮想空間において、所定の情報(例えば、イベント発生時のキャラクタの情報等)をモデルに入力し、新しい映像を出力する。
【0353】
すなわち、CNNのようなディープラーニングモデルは、入力として画像やテキストな
どのデータを受け取り、それを元に予測を行うことができる。仮想空間であっても、キャラクタの位置や状態を入力データとしてCNNのモデルに提供することができる。このような方法を用いることで、よりリアルな映像生成が可能となる。
【0354】
[18.2]教師なし学習
本実施形態では、例えば、ディープラーニングの一種である「敵対的生成ネットワーク(GAN)」を採用してもよい。GANは、Generative Adversarial Networksの略である。GANは正解データを与えることなく特徴を学習する「教師なし学習」の一手法である。
【0355】
「敵対的生成ネットワーク(GAN)」は、生成モデルと判別モデルの2つからなり、生成モデルは既存の映像から学習したデータを元に新しい映像を生成し、判別モデルは生成された映像が本物かどうかを判定する。このように、生成モデルは判別モデルの判定を騙すように学習していくことで、よりリアルな映像を生成することができる。
【0356】
例えば、GANを使用して学習し、学習情報に基づく映像生成の処理の流れは次の通りである。
【0357】
まず、学習情報を準備する。例えば、本実施形態において、映像生成部230によって生成される映像データを収集し、学習記憶部278に記憶する。
【0358】
次に、モデルを構築する。すなわち、生成モデルと判別モデルの2つのモデルから構成される。生成モデルは、ノイズベクトルから映像を生成するために、畳み込み転置層を使用する。一方、判別モデルは、生成された映像を本物の映像と区別するために、畳み込み層を使用する。
【0359】
そして、学習を実行する。すなわち、学習情報を使用して、生成モデルと判別モデルをトレーニングする。トレーニング中、生成モデルは入力されたノイズベクトルから映像を生成し、判別モデルはそれが本物の映像かどうかを判断する。生成モデルは、判別モデルによって生成された映像が本物の映像と区別できないように、学習を繰り返す。つまり、学習用のデータセットに含まれる本物の映像と、生成モデルによって生成された偽の映像を使用して、判別モデルをトレーニングする。また、生成モデルは、ランダムなノイズから生成された映像をトレーニングに使用する。
【0360】
そして、トレーニングが完了したら、生成モデルを使用して、新しい映像を生成することが可能となる。ランダムなノイズベクトルを生成モデルに与えることで、生成される映像を制御することができる。なお、本実施形態では、生成モデルに、ゲームの仮想空間において、イベントが発生した際に、イベント発生時の情報を入力し、新しい映像を出力することもできる。
【0361】
[18.3]前処理について
モデルを使用して仮想カメラから見た映像を生成する場合、学習情報に前処理を行うようにしてもよい。前処理の目的は、データの特徴を引き出して、より効率的に学習を行うことである。例えば、画像の場合、データの正規化、リサイズ、クロッピング、色空間変換などが行われる。
【0362】
また、学習済みモデル(トレーニングが完了したモデル)に入力するデータにおいても、前処理を行うようにしてもよい。生成する映像の入力データが、モデルのトレーニング時に使用されたデータと同じ形式である場合は、前処理が必要ない場合がある。しかし、入力データが異なる場合、例えば解像度が異なる場合や、画像の種類が異なる場合など、
前処理が必要な場合がある。
【0363】
[19]イベントの画像又は映像の詳細説明
本実施形態のゲームシステムは、複数のプレーヤキャラクタのうち少なくとも1つを移動させ、プレーヤキャラクタと敵キャラクタとが所定の位置関係(例えば、所定距離範囲内)になった場合に、当該プレーヤキャラクタのパラメータと当該敵キャラクタのパラメータとに基づいて、イベントを発動するものである。
【0364】
例えば、プレーヤの操作入力に基づき或いはコンピュータ制御によって、プレーヤキャラクタOB1を移動させる。プレーヤキャラクタOB1が敵キャラクタEA1に近づき、プレーヤキャラクタOB1と敵キャラクタEA1との距離が所定距離以内(例えば、5以内)になると、対戦のイベントを発動させる。
【0365】
なお、イベントは、対戦(バトル)に限らない。例えば、会話を行うイベント、アイテムなどの報酬を取得するイベント、等でもよい。
【0366】
ゲームシステムは、例えば、イベントが発動された場合に、第1のイベント画像GE1又は第1のイベント映像ME1を提供する。
【0367】
例えば、第1のイベント画像GE1とは、通常の画像である。また、第1のイベント映像ME1とは、通常の映像である。通常の画像又は映像とは、後述する特別な画像又は映像とは異なることを意味している。
【0368】
そして、ゲームシステムは、イベント中に、所定の条件を満たした場合に、第1のイベント画像GE1又は第1のイベント映像ME1とは異なる第2のイベント画像GE2又は第2のイベント映像ME2を提供する。所定の条件とは、種々考えられる。本実施形態では、バトルのイベントが発生した場合に必然的に所定の条件を満たしたと判定してもよい。また、例えば、(A)予め定めた特定イベントが発動された場合、(B)所与のパラメータが所定値以上である場合、(C)所定のアイテムを消費した場合、(D)所定パラメータを消費した場合、の少なくとも1つに該当する場合に、所定の条件を満たしたと判定してもよい。
【0369】
第2のイベント画像GE2とは、通常の画像とは異なる特別な画像である。また、第2のイベント映像ME2とは、通常の映像とは異なる特別な映像である。
【0370】
第2のイベント画像GE2又は第2のイベント映像ME2は、第1のイベント画像GE1又は第1のイベント映像ME1とは別に、カットインとして挿入される。カットインとは、映像の中に挿入される短い動画クリップや静止画を意味する。カットインの挿入によって、イベントの演出をより魅力的にすることができる。カットインは、テキストやセリフを強調する画像や映像でもよい。例えば、プレーヤキャラクタOB1が特別な攻撃を行う映像ME2を、通常の映像ME1とは別に、カットインとしてバトル中に挿入する。
【0371】
本実施形態のゲームシステムは、所定の条件を満たした場合に提供する第2のイベント画像GE2又は第2のイベント映像ME2を、過去に提供した第2のイベント画像又はイベント映像と所定の差異条件を満たすものとする。これにより、プレーヤに新鮮さのある第2のイベント画像又は映像を与えることができる。つまり、プレーヤは、今までのイベント演出とは異なるイベント演出を見ることができ、満足感を得ることができる。
【0372】
例えば、ゲームシステムは、過去に、カットイン(所定の条件を満たした場合に提供する第2のイベント画像)として、特別な画像GE2-1を提供した場合に、新たなカット
イン(所定の条件を満たした場合に提供する第2のイベント画像)として、特別な画像GE2-2を提供する。
【0373】
また、ゲームシステムは、過去に、カットイン(所定の条件を満たした場合に提供する第2のイベント映像)として、特別な映像ME2-1を提供した場合に、新たなカットイン(所定の条件を満たした場合に提供する第2のイベント映像)として、特別な映像ME2-2を提供する。
【0374】
また、ゲームシステムは、過去のカットイン(所定の条件を満たした場合に提供する第2のイベント画像又はイベント映像)と、新たに提供するカットインとにおいて、例えば、(A)キャラクタの組み合わせのパターン、(B)各キャラクタの表情の変化、(C)割り当てる演出エフェクト、(D)BGM効果音、の少なくとも1つを異ならせるように制御する。
【0375】
例えば、ゲームシステムは、画像GE2-1と画像GE2-2とにおいて、登場するキャラクタの組み合わせが異なるようにしてもよい。例えば、画像GE2-1は、登場するキャラクタをプレーヤキャラクタOB1と敵キャラクタEA1とする。一方、画像GE2-2は、登場するキャラクタをプレーヤキャラクタOB1のみとする。
【0376】
映像でも同様である。ゲームシステムは、映像ME2-1と映像ME2-2とにおいて、登場するキャラクタの組み合わせが異なるようにしてもよい。例えば、映像ME2-1は、登場するキャラクタをプレーヤキャラクタOB1と敵キャラクタEA1とする。一方、映像ME2-2は、登場するキャラクタをプレーヤキャラクタOB1のみとする。
【0377】
また、ゲームシステムは、画像GE2-1と画像GE2-2とにおいて、登場する各キャラクタの表情を変化させるようにしてもよい。例えば、画像GE2-1は、笑っているキャラクタOB1を登場させた場合、画像GE2-2は、泣いているキャラクタOB1を登場させる。
【0378】
映像においても同様である。ゲームシステムは、映像ME2-1と映像ME2-2とにおいて、登場する各キャラクタの表情を変化させるようにしてもよい。例えば、映像ME2-1は、笑っているキャラクタOB1を登場させた場合、映像ME2-2は、泣いているキャラクタOB1を登場させる。
【0379】
また、ゲームシステムは、画像GE2-1と画像GE2-2とにおいて、エフェクトを変化させるようにしてもよい。例えば、画像GE2-1は、登場するキャラクタOB1に光を照射するエフェクトを施したとする。画像GE2-2は、登場するキャラクタOB1から炎が発せられるエフェクトを施す。
【0380】
映像においても同様である。ゲームシステムは、映像ME2-1と映像ME2-2とにおいて、エフェクトを変化させるようにしてもよい。例えば、映像ME2-1は、登場するキャラクタOB1に光を照射するエフェクトを施したとする。映像ME2-2は、登場するキャラクタOB1から炎が発せられるエフェクトを施す。
【0381】
また、ゲームシステムは、画像GE2-1と画像GE2-2とにおいて、BGM効果音(背景に流す音)を変化させるようにしてもよい。例えば、画像GE2-1は、画像提供中に楽曲名「〇〇の歌」の音データを音出力したとする。画像GE2-2は、画像提供中に楽曲名「△の応援」の音データを音出力するように制御する。
【0382】
映像においても同様である。ゲームシステムは、映像ME2-1と映像ME2-2とに
おいて、BGM効果音(背景に流す音)を変化させるようにしてもよい。例えば、映像ME2-1は、映像提供中に楽曲名「〇〇の歌」の音データを音出力したとする。映像ME2-2は、映像提供中に楽曲名「△の応援」の音データを音出力するように制御する。
【0383】
[20]3次元仮想空間上で3Dモデルを用いた動画生成の詳細説明
ゲームシステムは、3次元仮想空間上で3Dモデルを用いた動画(映像)を生成する場合においても、適用可能である。つまり、ゲームシステムは、3次元仮想空間上で3Dモデルを用いた動画を提供する場合に、過去に提供した動画と所定の差異条件を満たす動画を提供する。このようにすれば、プレーヤに対し動画に新鮮さを与え、プレーヤにとって満足感の高い動画を提供できる。
【0384】
3Dモデルは、3次元仮想空間において配置されるキャラクタでもよいし、物体(車、飛行機)など立体的な形状を表現するためのデータであればよい。3Dモデルのデータは、ポリゴンや曲面を組み合わせて構成されるデータである。
【0385】
ゲームシステムは、過去に生成された動画と、新たに生成する動画とにおいて、(A)カメラワーク、(B)3Dモデルの配置位置、(C)BGM、(D)演出映像、の少なくとも1つを異ならせるように制御する。
【0386】
例えば、ゲームシステムは、過去に生成された動画MV20と、これから生成する動画MV21とにおいて、登場する3Dモデル(例えば、キャラクタOB1)のカメラワークが異なるようにしてもよい。例えば、動画MV20の生成時は、キャラクタOB1を近距離で正面から撮影するカメラワーク(種類Aのカメラワーク)を行ったとする。動画MV21の生成時では、キャラクタOB1を近距離で正面下方向から撮影するカメラワーク(種類Bのカメラワーク)とする。
【0387】
ゲームシステムは、過去に生成された動画MV20と、これから生成する動画MV21とにおいて、登場する3Dモデル(例えば、キャラクタOB1)の配置位置が異なるようにしてもよい。例えば、動画MV20の生成時は、キャラクタOB1を、敵キャラクタEA1の位置から10メートル以内にある位置P1に配置したとする。動画MV21の生成時では、キャラクタOB1を、敵キャラクタEA1から遠い位置P2(例えば、敵キャラクタEA1の位置から20メートル以上離れた位置P2)に配置する。
【0388】
ゲームシステムは、過去に生成された動画MV20と、これから生成する動画MV21とにおいて、BGM効果音(背景に流す音)を変化させるようにしてもよい。例えば、動画MV20は、動画提供中に楽曲名「〇〇の歌」の音データを音出力したとする。動画MV21では、動画提供中に楽曲名「△の応援」の音データを音出力するように制御する。
【0389】
ゲームシステムは、過去に生成された動画MV20と、これから生成する動画MV21とにおいて、演出を変化させるようにしてもよい。例えば、動画MV20は、動画提供中に、爆発音の音出力や爆発の際の光のエフェクト処理を施す演出を行ったとする。動画MV21の生成時は、炎の音出力や、キャラクタOB1の背景に炎を施す演出を行うように制御する。
【0390】
[21]応用例
本実施形態では、対戦ゲームだけでなく、レースゲーム、シューティングゲーム、音楽ゲーム、RPG(ロールプレイングゲーム)、アクションゲーム、スポーツゲーム、育成シミュレーションゲームなどに応用可能である。
【0391】
また、3次元の仮想空間でユーザのキャラクタ(アバター)を配置して、仮想空間を楽
しむサービスにも応用可能である。
【0392】
[22]その他
本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【0393】
本発明は、実施形態で説明した構成と実質的に同一の構成(例えば、機能、方法及び結果が同一の構成、あるいは目的及び効果が同一の構成)を含む。また、本発明は、実施形態で説明した構成の本質的でない部分を置き換えた構成を含む。また、本発明は、実施形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施形態で説明した構成に公知技術を付加した構成を含む。
【0394】
上記のように、本発明の実施形態について詳細に説明したが、本発明の新規事項及び効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。したがって、このような変形例はすべて本発明の範囲に含まれるものとする。
【符号の説明】
【0395】
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 設定部、220 変更部、222 提供部、
223 仮想カメラ制御部、224 選択部、225 記憶処理部、
230 画像・映像生成部、240 音処理部、
260 入力部、262 検出部、270 記憶部、
271 主記憶部、272 画像バッファ、274 ゲーム情報記憶部、
275 画像・映像記憶部、276 プレーヤ情報記憶部、
278 学習記憶部、279 学習モデル記憶部、
280 情報記憶媒体、290 表示部、292 音出力部、296 通信部