【文献】
          AIと深層学習により写真を名画風に変換する「Pix  Styles」,[online],2019年  8月  8日,掲載日:2017年  6月16日,URL,https://i.meet-i.com/?p=197372
        
        【文献】
          リアルタイム画風変換とその未来,[online],2019年  8月  8日,掲載日:2016年12月15日,URL,https://engineering.linecorp.com/ja/blog/real-time-image-style-conversion-and-future/
        
        【文献】
          ゲームファイルから画像や動画・音楽を抽出できる「X−Ripper」,[online],2019年  8月  8日,掲載日:2006年  9月11日,URL,http://www.oshiete-kun.net/archives/2006/09/xripper_1.html
        
        【文献】
          Googleの作曲家AI「Magenta」を使って、バッハ風のメロディを自動作曲してみた,[online],2019年  8月  8日,掲載日:2018年  7月  7日,URL,https://qiita.com/kouichiyoshihara/items/c5575bdef17aafa02233
        
      
    (58)【調査した分野】(Int.Cl.,DB名)
  前記オリジナルのビデオゲームの要素データに含まれる画像データが、前記選択された特徴モデルに対応する学習モデルによって出力された変換後の画像データへ置換される
  請求項1に記載の情報処理方法。
【発明を実施するための形態】
【0016】
  以下に、本開示のゲームプログラムの作成方法について、その実施形態を示す図面に基づいて詳述する。
 
【0017】
  図1は、本実施の形態におけるビデオゲームのゲーム提供システム100の概要を示す説明図である。ゲーム提供システム100は、第1端末装置1、第2端末装置2、アップロードサーバ3、作成装置4、及びプラットフォームサーバ5を含む。
 
【0018】
  第1端末装置1は、ユーザが所有するゲームプラットフォーム、即ち据え置き型ゲーム機器本体である。第1端末装置1は、制御部、表示部、操作部及び通信部を備えてビデオゲームが可能であればハードウェアは問わず、他に所謂スマートフォン、又はタブレット端末であってもよい。
 
【0019】
  第2端末装置2は、ゲームのクリエイターが所有するPC(Personal Computer )である。ゲームの素材画像、シナリオ要素又は音楽等の要素データを作成するための処理能力を持つPCである。デスクトップ型PC又はノートブック型PC、若しくはシンクライアントであってもよい。第2端末装置2は、登録されたクリエイターが使用する装置である。
 
【0020】
  アップロードサーバ3は、ビデオゲームを提供するゲーム事業者、又は、種々のキャラクタを管理するコンテンツ事業者から提供される要素データを受け付けるサーバ装置である。アップロードサーバ3は、ゲームの要素データを記憶するデータベース(以下、DBと呼ぶ。)を有し、各事業者から受け付けた要素データを参照可能である。
 
【0021】
  作成装置4は、ゲーム提供システム100の要部であって、第2端末装置2から提供される要素データ、アップロードサーバ3にて記憶される要素データを元に、新たなビデオゲームのゲームプログラム10Pを作成する。
 
【0022】
  プラットフォームサーバ5は、ゲームプラットフォームを提供するプラットフォーム事業者が管理するサーバ装置である。プラットフォームサーバ5は、ゲーム事業者が提供するゲームプログラム10Pのダウンロードサーバとして機能する。第1端末装置1はプラットフォームサーバ5に通信接続し、ユーザは第1端末装置1に所望のゲームプログラム10Pをダウンロードすることが可能である。
 
【0023】
  第1端末装置1、第2端末装置2、アップロードサーバ3、作成装置4、及びプラットフォームサーバ5は、ネットワークNを介して相互に通信が可能であり、要素データを含む情報を相互に送受信する。ネットワークNは、所謂インターネットである公衆通信網N1と、所定の移動通信規格による無線通信を実現するキャリアネットワークN2と、ビデオゲーム等のコンテンツの通信用のコンテンツ通信網N3と、専用線N4とを含む。キャリアネットワークN2には、基地局BSが含まれ、公衆通信網N1にはアクセスポイントAPが接続されている。第1端末装置1は、コンテンツ通信網N3を介して、プラットフォームサーバ5と通信接続することが可能である。第2端末装置2は、公衆通信網N1又はキャリアネットワークN2を介して、アップロードサーバ3と通信接続することが可能である。作成装置4は、専用線N4を介してプラットフォームサーバ5と通信接続が可能である。
 
【0024】
  ゲーム提供システム100は、作成装置4にて、クリエイター、ゲーム事業者又はキャラクタを管理するコンテンツ事業者から提供される要素データを利用した新たなビデオゲームを作成して提供するサービスを実現する。サービスではまず第1に、ゲーム事業者から、改変が前提として提供に同意が得られているゲームプログラム10P及びその要素データがアップロードサーバ3にアップロードされる。このとき、ゲームプログラム10P及び要素データには、格闘、RPG、アクション、シューティング、アドベンチャー、パズル等のシステム、ファンタジー、ホラー等のジャンル等の属性を示す情報(例えばタグ)が対応付けられるとよい。またコンテンツ事業者から、キャラクタの画像が、そのキャラクタの名称、ファンシー、アニメ、漫画等のキャラクタのジャンル、ブランド等を含む属性情報と対応付けられてアップロードサーバ3へアップロードされるとよい。アップロードサーバ3は、アップロードされたゲームコンテンツの要素データを要素DB(Data Base)300に、各々の属性情報と対応付けて蓄積する。作成装置4は、要素DB300からの情報の読み出しが可能であり、要素DB300に記憶してある情報を元に、AI(Artificial Intelligence)技術を用いて新たなビデオゲームのゲームプログラム10Pを作成する。作成されたゲームプログラム10Pは、所定の検査システムにて不具合の有無のチェックを受け、不具合無と判定された場合、作成装置4からプラットフォームサーバ5へ送信され、第1端末装置1からダウンロードが可能となり、一般ユーザがプレイすることが可能になる。
 
【0025】
  クリエイターは第2端末装置2を用いてアップロードサーバ3に対し、要素データをアップロードすることが可能である。クリエイターは、第2端末装置2を用いて自作のゲームプログラム10Pの要素データ(画像、設定情報、シナリオ、音楽等)をアップロードしたり、作成装置4におけるビデオゲームのゲームプログラム作成の操作を行なったり、作成されたゲームプログラム10Pを修正したりする。なおクリエイターによる操作が無くとも、作成装置4によって自動的にゲームプログラム10Pが作成されてもよい。
 
【0026】
  ゲーム提供システム100に含まれる各装置の構成を説明する。なお第1端末装置1、アップロードサーバ3及びプラットフォームサーバ5は公知のものでよく、内部構成の説明を省略する。
 
【0027】
  図2は、ゲーム提供システム100に含まれる第2端末装置2の構成を示すブロック図である。第2端末装置2は、処理部20、記憶部21、表示部22、操作部23、及び通信部24を備える。
 
【0028】
  処理部20は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等のプロセッサ、揮発性メモリ、クロック等を用いて構成部を制御する。処理部20はプロセッサ、メモリ、記憶部21、通信部24を集積した1つのハードウェア(SoC:System On a Chip)として構成されてもよい。処理部20は、記憶部21に記憶されている端末プログラム2Pに基づき、アップロードサーバ3へ通信接続し、ゲームプログラム10Pのアップロード及びダウンロードを実行する。
 
【0029】
  記憶部21は、ハードディスク又はSSDを用い、処理部20が参照するデータを記憶する。
 
【0030】
  表示部22は、液晶パネル又は有機ELディスプレイ等のディスプレイ装置を含む。操作部23は、ユーザの操作を受け付けるインタフェースであり、キーボード、マウス等の入出力インタフェースを含む。操作部23は、ディスプレイ内蔵のタッチパネルデバイスを含んでもよい。操作部23は、マイクロフォンを用い、入力音声から操作内容を認識する形式で操作を受け付けてもよい。
 
【0031】
  通信部24は、ネットワークNへの通信接続を実現する通信モジュールである。通信部24は、ネットワークカード、無線通信デバイス又はキャリアネットワークN2における次世代通信用のモジュールであってもよい。
 
【0032】
  図3は、ゲーム提供システム100の要部である作成装置4の構成を示すブロック図である。以下、説明を容易にするために作成装置4は、画像処理及びニューラルネットワークを用いた演算処理に適した1台のコンピュータであると説明する。しかしながら、複数のコンピュータ及び記憶媒体に分散して処理を行なってもよいし、1台の大型コンピュータに仮想的に生成される複数のサーバコンピュータ(インスタンス)の内の1つであってもよい。作成装置4は、制御部40、記憶部41、入出力部42、第1通信部43及び第2通信部44を備える。
 
【0033】
  制御部40はCPU又はGPUを用い、内蔵する揮発性メモリ、クロック等を用い、記憶部41に記憶されている処理プログラム40Pに基づき各構成部を制御して新たなゲームプログラム10Pを作成する。
 
【0034】
  記憶部41は、ハードディスク又はSSDを用いる。記憶部41は、処理プログラム40Pを記憶する。記憶部41は、処理プログラム40Pの他、ゲーム作成モデル41M(モデルパラメータ)、制御部40が参照する設定情報を記憶する。記憶部41は更に、ゲーム作成モデル41Mにより作成されたゲームプログラム10P、又は第2端末装置2から送信されるゲームプログラム10Pを記憶する。
 
【0035】
  入出力部42は、要素DB300が構築された外部記憶装置との接続インタフェースである。制御部40は、データベース処理モジュールにより、入出力部42を介して外部記憶装置の要素DB300からの要素データの読み出しが可能である。
 
【0036】
  第1通信部43は、ネットワークNへの通信接続を実現する通信モジュールであり、第2端末装置2との間での情報の送受信を実現する。第1通信部43は、ネットワークカード、無線通信デバイス又はキャリアネットワークN2における次世代通信用のモジュールであってもよい。
 
【0037】
  第2通信部44は、専用線N4における通信を実現する。制御部40は、第1通信部43により、専用線N4を介して記憶部41に記憶した作成済みのゲームプログラム10Pをプラットフォームサーバ5へ送信することが可能である。
 
【0038】
  このように構成されるゲーム提供システム100によって新たなゲームコンテンツを作成する方法について、以下複数の実施の形態を例に詳細を説明する。
 
【0039】
  (実施の形態1)
  実施の形態1において作成装置4は、第2端末装置2を使用したクリエイターの操作を受け付け、操作に基づいてゲームプログラム10Pを作成する。実施の形態1において作成装置4は、処理プログラム40Pに基づいてWebベースで操作を受け付ける。作成装置4は、記憶部41に作成装置4自身又は他の機関によって登録されたクリエイターのクリエイター識別情報に対応付けて作成装置4への通信接続に必要なアカウント情報、及び、クリエイターによって作成されたゲームプログラム10Pの識別情報等を記憶する。
 
【0040】
  第2端末装置2は、端末プログラム2Pに基づき操作画面を表示部22に表示し、バックグラウンドで作成装置4との間で情報を送受信し、操作内容を作成装置4へ送信する。
 
【0041】
  実施の形態1において新たなゲームプログラム10Pの作成に、深層学習アルゴリズムを適用したゲーム作成モデル41Mを用いる。ゲーム作成モデル41Mは具体的には、元のゲームプログラム10Pを構成する要素データ毎に、異なる作風、画風、シナリオ、ジャンルの要素データを加味した変換を行なう。ゲーム作成モデル41Mは、畳み込みニューラルネットワーク(Convolutional Neural Network)を用いて特徴量を導出し(Encode)、導出した特徴量を元に再度復号(Decode)して出力するオートエンコーダを用いる。
図4は、実施の形態1で用いるゲーム作成モデル41Mの一例を示す概要図である。オートエンコーダを用いた変換器411と、変換器411から出力された結果物と加味させたい要素データの特徴量との間の誤差を評価するための損失ネットワーク412とを用いる。変換器411に、要素DB300に記憶されている要素データから任意の要素データ(学習用データ)を抽出して入力する。変換器411から出力された変換後の要素データを損失ネットワーク412に入力して得られる特徴量と、加味させたい要素データを損失ネットワーク412に入力して得られる特徴量とを損失とし、損失が少なくなるように変換器411のNNにおける各パラメータ(重み等)を学習させる。これにより、損失が逆伝播されて学習済みの変換器411は、入力される要素データに対して加味させたい要素データの風味、画風、作風が適用された要素データへ変換するゲーム作成モデル41M(変換器)となる。なお変換器411に入力される要素データと出力される要素データとでは、入力がグラフィックデータであれば出力はグラフィックデータ等、同一属性であるとよい。
 
【0042】
  要素データは例えば、ゲーム内に現れる静物、動物の三次元モデルのデータ、三次元モデルに対するテクスチャのデータ、画像データ等のグラフィックデータである。要素データは他に、キャラクタの設定情報、アイテムの情報及びその画像データ、三次元モデルが配されるマップデータであってもよい。要素データは、シナリオ(せりふ)データであってもよいし、シナリオに基づく音声データであってもよい。要素データは、BGM(Back Ground Music)等の音楽データであってもよい。要素データは、アイテム、装備等の強さのバランス等の情報であってもよい。
 
【0043】
  図5は、実施の形態1の作成装置4によるゲームプログラム作成処理手順の一例を示すフローチャートである。作成装置4の制御部40は、第2端末装置2からの通信接続を受け付けると(ステップS101)、第2端末装置2を使用するクリエイターのクリエイター識別情報を特定する(ステップS102)。
 
【0044】
  作成装置4の制御部40は、加味させたい作風、画風、シナリオ、ジャンルの要素データ(特徴モデル)の選択を受け付ける(ステップS103)。要素データは、要素DB300に記憶してある要素データでもよいし、第2端末装置2を使用してクリエイターが作成した要素データであってもよい。要素データは複数であってもよい。例えば加味される要素データとして、ゲームプログラム10Pにはないキャラクタに関する要素データであり、加味したいキャラクタの特徴を、ゲームの登場キャラに当てはめるように変換できるようにしてもよい。また例えばクリエイターが作成したイラスト画像を第2端末装置2で作成し、元のゲームプログラム10Pのテクスチャデータを変換する。
 
【0045】
  制御部40は、要素DB300に記憶してある種々の要素データを任意に抽出して学習用データとし、この学習用データを変換器411へ与え(ステップS104)、加味させるべく選択された要素データを損失ネットワーク412へ与える(ステップS105)。制御部40は、損失ネットワーク412から得られる損失、即ち、変換後の要素データと加味させたい要素データ間の特徴量の差異が小さくなるように変換器411における重み等を学習させる(ステップS106)。これにより、変換器411は、入力される要素データを、ステップS101で選択された選択された要素(特徴モデル)が加味された要素データへ変換させるゲーム作成モデル41Mとなる。
 
【0046】
  制御部40は、特定したクリエイター識別情報で識別されるクリエイターに対して許可されている元のゲームプログラム10Pを、要素DB300から抽出する(ステップS107)。元のゲームプログラム10P毎に予め、ゲーム事業者、又はゲーム作成者からクリエイター夫々に対して使用の許可がされてある。その他、クリエイターにランク付けを行なっておき、ランク毎にゲーム事業者又はゲーム作成者から許可されるようにしてもよい。許可の設定は必須ではなく全てのクリエイターが、要素DB300に記憶してある元のゲームプログラム10Pを使用できるようにしてもよい。
 
【0047】
  制御部40は、抽出したゲームプログラム10Pの中からいずれかの選択を受け付ける(ステップS108)。制御部40は、選択されたゲームプログラム10Pの要素データを、要素データ毎に要素DB300から読み出す(ステップS109)。
 
【0048】
  制御部40は、読み出した要素データを夫々、学習済みの変換器411即ちゲーム作成モデル41Mへ与え(ステップS110)、変換された各要素データを用いたゲームプログラム10Pを再構成し(ステップS111)、クリエイターからの確認又は編集を受ける(ステップS112)。クリエイターは出力されたゲームプログラム10Pを第2端末装置2にて受信してレビューし、必要に応じて編集する。
 
【0049】
  制御部40は、確認又は編集を受け付けたゲームプログラム10Pを、ステップS103で選択された要素データの属性情報と対応付けて記憶部41に記憶する(ステップS113)。制御部40は、記憶部41に記憶されたゲームプログラム10Pをプラットフォームサーバ5へ第2通信部44により送信し(ステップS114)、処理を終了する。
 
【0050】
  このようにして実施の形態1における作成装置4は、元のゲームプログラム10Pを構成する要素データ毎に、加味すべき要素データとの誤差(損失)が小さくなるように学習した新たな要素データへ変換する変換器を用い、新たなゲームプログラム10Pを作成する。
 
【0051】
  これにより、第1端末装置1を使用するユーザは、クリエイターの操作及びレビューに基づいて変換された新たなゲームプログラム10Pをダウンロードすることが可能になる。従来の要素データの追記又は要素データの手動変換によらず、変換が前提として提供されている要素データに対して深層学習を用いた変換を適用することによって、これまでにない組み合わせ等に基づく新たなゲームプログラム10Pを容易に作成することができる。実施の形態1では、ゲームのシステムはそのままで、要素データに対して他の作風又は画風を加味した新たなゲームプログラム10Pの作成が可能になる。また、クリエイターの確認、編集を可能とすることによりゲームプログラム10Pの完成度を維持する。
 
【0052】
  新たなゲームプログラム10Pのダウンロードに対する課金はプラットフォームサーバ5にて設定されるとよい。課金に応じてクリエイター及び元のゲームプログラム10Pの製作者(ゲーム事業者)へ報酬が支払われるとよい。このとき、報酬を決定する際に、元のゲームプログラム10Pの使用回数、加味される要素データの使用回数等が作成装置4によって計数されてあるとよい。使用された回数が多い程に報酬が高く支払われるとよい。なお使用回数に限らず、使用頻度、又は重要度に基づく貢献度に応じて報酬が支払われるとよい。
 
【0053】
  上述のように決定される報酬は、クリエイター及び元の製作者(著作権者)へ持ち分に応じて分配される。持ち分は、予め記憶部41に記憶されている設定に基づいて決定される。例えばクリエイター及び製作者に5:3の持ち分の比率が設定されている場合、作成された新たなゲームプログラム10Pの売り上げから、作成装置4の管理者への手数料を引いた後の報酬が5:3で分配される。この配分は、作成装置4の管理者権限を有するアカウントに基づいて、記憶部41に記憶されている持ち分の設定の変更を外部から受け付けてもよい。新たなゲームプログラム10Pのクリエイター及び元の製作者に対する貢献度の持ち分を自動的に算出するように学習されたモデルによって、ゲームプログラム10毎、また時期に応じて作成装置4内部で自動的に、流動的に変更されるようにしてもよい。例えば同じ元のゲームプログラム10Pが、他の多くの新たなゲームプログラム10Pの作成の元となっており、しかもそれらのプログラムの売り上げの合計が他のオリジナルのゲームプログラム10Pよりも多い場合、クリエイターよりも元の製作者の貢献度が高い方が、全体として納得度が高い。したがって製作者、クリエイターが納得するような持ち分の設定を売り上げ状況等に応じて変更できるようにしておくことが望ましい。
 
【0054】
  なお、作成装置4にて作成されたゲームプログラム10Pは、プラットフォームサーバ5へ送信されるのみならず、元のゲームプログラム10Pを提供したゲーム事業者から、第1端末装置1を使用するユーザへ提供されるようにしてもよい。この場合ゲームプログラム10Pは、記憶媒体にパッケージ化されてユーザ宛てに送られる。
 
【0055】
  (実施の形態2)
  実施の形態2では、予め特定の特徴モデル毎にゲーム作成モデル41Mが作成され、これを用いる。
図6は、実施の形態2におけるゲーム作成モデル41Mの一例を示す概要図である。実施の形態2におけるゲーム作成モデル41Mは、変換器411と、損失ネットワーク412とを用いて生成される。特定の特徴モデル毎の要素データの特徴量との損失が少なくなるように変換器411のNNにおける各パラメータを学習させる。特定の特徴モデル毎の要素データの特徴量は、オートエンコーダネットワーク415を、その要素データを入力した場合に出力される要素データが入力データを再現するように学習させ、その中間層から得られる特徴量を用いるとよい。
 
【0056】
  図7は、実施の形態2におけるゲーム作成モデル41Mの作成手順の一例を示すフローチャートである。
図7のフローチャートでは、クリエイターの操作なしで特定のゲーム事業者若しくはコンテンツ事業者又はクリエイター毎の特徴モデルに応じてゲーム作成モデル41Mが生成される。
 
【0057】
  作成装置4の制御部40は、要素DB300に記憶してある要素データを属性(グラフィック、三次元モデル、テクスチャ等)別に、特徴モデルで分類する(ステップS201)。分類は、要素DB300に要素データが記憶される際に付与されたタグによって、ビデオゲームの有名なシリーズ毎、特定のキャラクタ毎に分類されるとよい。
 
【0058】
  制御部40は、特徴モデル毎に分類された要素データの特徴量を属性別に、オートエンコーダを用いて導出する(ステップS202)。
図6のオートエンコーダネットワーク415に対応する。
 
【0059】
  制御部40は、特徴モデルを1つ選択する(ステップS203)。
 
【0060】
  制御部40は、要素DB300に記憶してある種々の要素データを任意に抽出して学習用データとし、この学習用データを変換器411へ与える(ステップS204)。学習用データを与えて変換器411から出力される特徴量と、ステップS202で導出された特徴量との特徴量の差異が小さくなるように変換器411における重み等を学習させる(ステップS205)。これにより、変換器411は、入力される要素データを、ステップS203で選択された特徴モデルの特徴が加味された要素データへ変換させるゲーム作成モデル41Mとなる。
 
【0061】
  制御部40は、生成されたゲーム作成モデル41Mを選択してある特徴モデルを識別する情報と対応付けて記憶部41に記憶する(ステップS206)。なおステップS204−S206の処理は、要素データの属性別に行なわれるとよい。
 
【0062】
  制御部40は、分類された特徴モデル全てについて処理を行なったか否かを判断し(ステップS207)、全てについては処理を行なっていないと判断された場合(S207:NO)、処理をステップS203へ戻す。この場合、次の特徴モデルが選択され、ステップS204−S206の処理が実行される。
 
【0063】
  ステップS207にて全てについて処理を行なったと判断された場合(S207:YES)、制御部40は処理を終了する。これにより特徴モデル毎のゲーム作成モデル41Mが作成され、記憶部41に記憶される。特徴モデル毎のゲーム作成モデル41Mは、要素DB300に記憶されてもよい。
 
【0064】
  図8は、実施の形態2の作成装置4によるゲームプログラム作成処理手順の一例を示すフローチャートである。作成装置4の制御部40は、第2端末装置2からの通信接続を受け付けると(ステップS211)、第2端末装置2を使用するクリエイターのクリエイター識別情報を特定する(ステップS212)。
 
【0065】
  制御部40は、特定したクリエイター識別情報で識別されるクリエイターに対して許可されている元のゲームプログラム10Pを、要素DB300から抽出する(ステップS213)。元のゲームプログラム10P毎に予め、ゲーム事業者、又はゲーム作成者からクリエイター夫々に対して使用の許可がされてある。その他、クリエイターにランク付けを行なっておき、ランク毎にゲーム事業者又はゲーム作成者から許可されるようにしてもよい。許可の設定は必須ではなく全てのクリエイターが、要素DB300に記憶してある元のゲームプログラム10Pを使用できるようにしてもよい。
 
【0066】
  制御部40は、抽出したゲームプログラム10Pの中からいずれかの選択を受け付ける(ステップS214)。制御部40は、選択されたゲームプログラム10Pの要素データを、要素データ毎に要素DB300から読み出す(ステップS215)。
 
【0067】
  制御部40は、読み出した要素データについて属性別に、加味させる特徴モデルの選択を受け付ける(ステップS216)。制御部40は、読み出した要素データの属性別に、選択された特徴モデルのゲーム作成モデル41Mを記憶部41又は要素DB300から読み出す(ステップS217)。制御部40は、読み出した要素データを夫々に対して選択されたゲーム作成モデル41Mへ与え(ステップS218)、ゲーム作成モデル41Mから出力された変換後の新たな要素データを用いたゲームプログラム10Pを再構成する(ステップS219)。
 
【0068】
  制御部40は、再構成されたゲームプログラム10Pをクリエイターが使用する第2端末装置2へ出力し(ステップS220)、クリエイターからの確認又は編集を受ける(ステップS221)。クリエイターは出力されたゲームプログラム10Pを第2端末装置2にて受信してレビューし、必要に応じて編集する。
 
【0069】
  制御部40は、確認又は編集を受け付けた新たなゲームプログラム10Pを、新たな識別情報に対応付けて記憶部41に記憶する(ステップS222)。ステップS222において制御部40は、元のゲームプログラム10Pを示す識別情報と、各要素データの変換に用いられたゲーム作成モデル41Mの特徴モデルを識別する情報とを対応付けて記憶するとよい。制御部40は、記憶部41に記憶されたゲームプログラム10Pをプラットフォームサーバ5へ第2通信部44により送信し(ステップS223)、処理を終了する。
 
【0070】
  図9−
図14は、第2端末装置2の表示部22に表示される操作画面の内容例を示す図である。
図9−
図14は、
図8のフローチャートに示した作成装置4の処理手順により送信される情報に基づき表示される画面の例を示す。
 
【0071】
  図9は、元のゲームプログラム10Pの元ゲーム選択画面221の例を示す図である。
図9では、第2端末装置2を使用するクリエイターが使用することができる元のゲームプログラム10Pの一覧が示されている。処理部20は、元ゲーム選択画面221にて元のゲームプログラム10Pの選択を受け付け、選択されたゲームプログラム10Pを示す情報を作成装置4へ送信する。
 
【0072】
  作成装置4は、送信された情報に基づきゲームプログラム10Pを特定し、特定したゲームプログラム10Pの要素データを要素DB400から読み出す(S215)。
 
【0073】
  図10−
図13は、特徴モデルの選択を受け付ける画面の例を示す図である。処理部20は、記憶部21に記憶してある端末プログラム2Pに基づき、作成装置4から送信される読み出された要素データの一覧から、いずれかの選択を受け付ける要素選択画面222を表示部22に表示する。
図11は、要素選択画面222で要素データが選択された場合に表示される特徴選択画面223を示す。
図11に示す例では、1つの要素データとしてグラフィックデータが選択された場合の例を示している。特徴選択画面223は、元のゲームプログラム10Pにおけるグラフィックデータのプレビュー224と、それに対して選択が可能な特徴モデルの選択肢225と、選択肢225のプレビュー226とが含まれている。選択肢225には、第2端末装置2を使用するクリエイター自身が作成するグラフィックデータの使用が選択肢に含まれている。
 
【0074】
  図12に示す例では、1つの要素データとしてシナリオデータが選択された場合の例を示している。
図13に示す例では、1つの要素データとして音楽データが選択された場合の例を示している。いずれの場合においても、元の要素データの概要を示すプレビューと、変換後の要素データのプレビューとが表示されるとよい。
 
【0075】
  図10−
図13の画面例において処理部20は、要素データ毎に特徴モデルの選択を受け付け、選択された要素データを示す情報を作成装置4へ送信する。作成装置4では、選択された特徴モデルを受け付ける(S216)。作成装置4は、選択された特徴モデル毎に学習済みのゲーム作成モデル41Mが予め学習してあるので、これを用いて変換を行なう(S218)。なお、この時点で、選択された特徴モデルの特徴を加味するゲーム作成モデル41Mを作り出してもよい。
 
【0076】
  図10−
図13では、要素データ毎に特徴モデルの選択を受け付けたが、まとめて変換することを受け付けてもよい。
図14は、特徴モデルの選択を受け付ける画面の他の一例を示す図である。
図14では、元の要素データ夫々の概要を示すプレビューと、これらに対してまとめて変換が可能な特徴モデルの一覧と、夫々の特徴モデルの要素データのプレビューとが表示されている。
 
【0077】
  このようにして、クリエイターの第2端末装置2に向けて、ゲーム作成モデル41Mの使用インタフェースが提供される。
 
【0078】
  (実施の形態3)
  実施の形態3では、作成装置4は要素DB300に記憶されている要素データを分類しておき、分類された要素データを教師データとしてゲームプログラム10Pを作成するゲーム作成モデル41Mを、分類毎に作り出す。ゲーム作成モデル41Mは、ランダムに入力された情報を元にゲームプログラム10P又は要素データを出力する生成器(Generator)として作り出される。
 
【0079】
  図15は、実施の形態3におけるゲーム作成モデル41Mの概要を示す図である。ゲーム作成モデル41Mは、要素DB300と、分類によって異なるゲーム制作モデルA及びゲーム制作モデルBが作成されていることが示されている。例えばゲーム制作モデルAは、ファンタジーに分類されているゲームプログラム10P及び要素データのみを学習したモデルであり、ファンタジーに分類されるゲームプログラム10Pを作成する。ゲーム制作モデルBは、特定の名称のキャラクタの要素データのみを学習したモデルと、RPGに分類されているゲームプログラム10Pのみを学習したモデルとの組み合わせであり、特定のキャラクタが登場するRPGのゲームプログラム10Pを作成する。他に、過去の名作と呼ばれるゲームプログラム10Pを再現するゲーム制作モデル等があってもよい。作成装置4は、ゲーム評価をインターネット上でクロールして収集し、収集した評価が高いゲームプログラム10Pのみを抽出して学習し、レジェンド制作モデルとして作り出してもよい。
 
【0080】
  分類はまず、要素DB300に記憶されてあるゲームプログラム10Pに対応付けられている属性情報に基づいて行なわれる。属性情報はRPG、アクション等のシステムの分類毎、ファンタジー、ホラー等のジャンル毎等である。分類は更には、タグ等の属性情報に限られない。後述の分類用の畳み込みニューラルネットワークによって分類してもよい。
 
【0081】
  図16は、実施の形態3における作成装置4におけるモデル作成手順の一例を示すフローチャートである。作成装置4の制御部40は、分類の選択を受け付ける(ステップS301)。ステップS301において制御部40は基本的に、第2端末装置2を使用してクリエイターから選択を受け付ける。制御部40は、ゲーム事業者の担当者による指示を受け付けてもよいし、分類タグの人気順位に基づいて上位3つの分類を夫々1つずつ、自動で選択してもよい。
 
【0082】
  制御部40は、選択された分類のゲームプログラム10P又は要素データを要素DB300から抽出する(ステップS302)。制御部40は、抽出したゲームプログラム10P又は要素データ群を分類用の畳み込みニューラルネットワークへ与え、出力された分類の成功率が上がるように学習を進める(ステップS303)。これにより、選択された分類に特化した分類モデルが作成される。
 
【0083】
  次に制御部40は、ランダム、又はいずれか選択された要素データを入力した場合にゲームプログラム10Pを出力するデコーダネットワークへ、ランダム又は要素データの入力を与え、出力されるゲームプログラム10PがステップS303により作成される分類モデルで正確に分類されるように学習を進める(ステップS304)。ステップS303及びステップS304の処理は同時並行的に進めてもよい。つまりGAN(Generative Adversarial Network)の手法に基づき、分類器で選択された分類に分類されるゲームプログラム10Pを作成するように、デコーダネットワークがゲーム作成モデル41Mとなる。
 
【0084】
  図17は、実施の形態3におけるゲーム作成モデル41Mの構成を示す模式図である。ゲーム作成モデル41Mは、ランダムな情報又は選択される要素データが入力された場合にゲームプログラム10Pを作成する生成器413と、生成器413から出力されたゲームプログラム10Pを分類する分類器414とにより作り出される。後述するように、作り出された生成器413がゲームプログラム10Pを作成するために用いられる。なお、ゲーム作成モデル41Mは、1つのゲームプログラム10Pを構成する要素データ毎に作成され、作成された要素データを組み合わせて1つのゲームプログラム10Pとしてもよい。
 
【0085】
  上述したようにゲーム作成モデル41Mは、分類毎に作成される。
図9に示したゲーム制作モデルBのように、キャラクタ用のモデルとシステム用のモデルとに分けて作成されてもよい。
 
【0086】
  図18は、実施の形態3におけるゲームプログラム作成処理手順の一例を示すフローチャートである。作成装置4の制御部40は、ゲーム作成モデル41Mの選択を受け付ける(ステップS401)。モデルの選択は、例えばクリエイターが使用する第2端末装置2から受け付けてもよいし、ゲーム事業者の担当者からの指示に基づくものであってもよいし、制御部40自身がランダム又は人気順位に応じて選択してもよい。
 
【0087】
  制御部40は、選択されたゲーム作成モデル41Mへ入力する情報を選択する(ステップS402)。入力する情報は、ランダムな情報であってもよいし、要素DB300からいずれか第2端末装置2を使用して選択された情報又は要素データであってもよい。
 
【0088】
  制御部40は、選択されたゲーム作成モデル41Mへ、受け付けた情報を与え(ステップS403)、出力されるゲームプログラム10P(又は要素データ)を記憶部41に記憶する(ステップS404)。記憶部41に記憶したゲームプログラム10Pについて、クリエイターからの確認又は編集を受ける(ステップS405)。クリエイターには、確認又は編集の依頼が通知されて、これに応じて第2端末装置2にて確認又は編集がされるとよい。なおステップS405の処理は、必須ではない。
 
【0089】
  制御部40は、確認又は編集を受け付けたゲームプログラム10Pを、ステップS401で選択されたゲーム作成モデル41Mを識別する情報と対応付けて記憶部41に記憶する(ステップS406)。制御部40は、記憶部41に記憶されたゲームプログラム10Pをプラットフォームサーバ5へ第2通信部44により送信し(ステップS407)、処理を終了する。
 
【0090】
  このようにして実施の形態3における作成装置4は、ランダムな入力から新たなゲームプログラム10Pを作成する生成器を用いる。
 
【0091】
  実施の形態3においても、新たなゲームプログラム10Pのダウンロードに対する課金はプラットフォームサーバ5にて設定されるとよい。課金に応じてモデル毎に評価が与えられ、評価に応じてモデル作成の元になったゲームプログラム10Pのゲーム事業者又はクリエイターへ報酬が支払われるとよい。このとき、報酬を決定する際に、モデルの選択回数が作成装置4によって計数されてあるとよい。使用された回数が多い程に報酬が高く支払われるとよい。
 
【0092】
  なお実施の形態3においても、作成装置4にて作成されたゲームプログラム10Pは、プラットフォームサーバ5へ送信されるのみならず、元のゲームプログラム10Pを提供したゲーム事業者から、第1端末装置1を使用するユーザへ提供されるようにしてもよい。この場合ゲームプログラム10Pは、記憶媒体にパッケージ化されてユーザ宛てに送られる。
 
【0093】
  実施の形態3では要素データを分類して夫々生成器413を学習させるようにゲーム作成モデル41Mを作り出した。実施の形態1における変換器411も、分類された要素データを学習用データとして用いて学習させるようにしてもよい。
 
【0094】
  実施の形態1から3では、変換器411又は生成器413は、画像データの変換又は生成に適したニューラルネットワークを使用する例を挙げて説明した。対象の要素データは上述したように、シナリオデータであるテキストデータ又は音声データであってもよいし、BGMである音楽データであってもよい。テキストデータ又は音声データの場合、RNN(Recurrent Neural Network)を用いたSeq2Seq (Sequence to Sequence)モデルを適用するとよい。
図19は、シナリオデータに対するゲーム作成モデル41Mの内容例を示す図である。
図19に示す例では、入力される要素データに対し、加味させたい特徴モデルを有するシナリオデータを出力させる翻訳ネットワークが作成される。具体的には、LTSMをオートエンコーダで使用する構成である。ビデオゲーム毎、又はシリーズ毎にシナリオデータを用いて学習するとよい。
 
【0095】
  対象の要素データを音楽データとする場合、変換器411又は生成器413は、LSTM(Long Short Term Memory)を用いるとよい。画像データ同様に、オートエンコーダ又はGANの手法を用いてもよい。
図20は、音楽データに対するゲーム作成モデル41Mの内容例を示す図である。
図20では、深層学習のモデルとしてRNN及びオートエンコーダの組み合わせを用いている。エンコーダを経て得られた要素データの特徴量をRNNへ入力して時系列的に学習し、RNNの出力をデコーダへ与え、入力した要素データと合致するように学習される。学習後は、RNN及びデコーダを用いて与えられた特徴量から音楽データを出力する生成器413となる。与えられる特徴量を、変換前の元の要素データの特徴量とすることで変換器411としても用いることができる。入出力は例えば、MIDI信号(ピッチ、強さ、長さ等)等である。例えば、有名なシリーズのビデオゲーム群の音楽データ(要素データ)を対象として学習され、入力された他の音楽データの特徴量から、有名シリーズの特徴が加味された音楽データを生成する学習済みモデルを生成し、生成されたモデルを用いて変換することも可能である。他に例えば、特定のゲーム音楽作家の音楽データ(要素データ)を対象として学習され、入力された他の音楽データの特徴量から、その作家の特徴が加味された音楽データを生成する学習済みモデルを生成し、生成されたモデルを用いて変換することも可能である。
 
【0096】
  (実施の形態4)
  実施の形態4では、作成装置4は作成したゲームプログラム1Pに対し、プレイヤー(ユーザ)、GAME評論家等から得られる評価、又は改変案を元に、作成されたゲームプログラム1Pを改変する。作成装置4は、必要に応じてゲームプログラム1Pの改変を自動的に繰り返す。
 
【0097】
  実施の形態4におけるゲーム提供システム100の構成は、後述する改変処理を除いて実施の形態1に示した構成と同様であるから、共通する構成には同一の符号を付して詳細な説明を省略する。
 
【0098】
  実施の形態1では、ゲーム作成モデル41Mから出力された要素データで再構成されたゲームプログラム1Pについて、クリエイターがクリエイター自身のセンスに基づいて内容を確認し、適宜編集を行なった(ステップS112)。これに対して実施の形態4では、確認及び編集後にプラットフォームサーバ5からダウンロード可能に公開されたゲームプログラム1Pに対する評価、又は改変案に基づいて作成装置4が、ゲーム改変モデル5Mを用いて改変する。
 
【0099】
  図21は、実施の形態4におけるゲーム改変モデル5Mの概要を示す図である。ゲーム改変モデル5Mは、元のゲームプログラム10Pを構成する要素データ毎に、評価又は改変案を加味した変換を行なう。
図21に示すゲーム改変モデル5Mは、ゲームプログラム10Pの要素データ及び評価を入力する入力層51と、改変後の要素データを出力する出力層52とを備える。ゲーム改変モデル5Mは、改変案を加味した変換が行なわれるようにパラメータが学習されてある中間層53を備える。
図21に例示しているゲーム改変モデル5Mは、改変案の分類毎に作成されてあり、改変案の分類に応じて選択されて使用される。改変案の分類は、教師なし学習によって学習されたモデルに基づいて分類されてもよいし、統計的手法によって分類されてもよい。
 
【0100】
  実施の形態4においても要素データの対象は、ゲーム内に現れる静物、動物の三次元モデルのデータ、三次元モデルに対するテクスチャのデータ、画像データ等のグラフィックデータである。要素データは他に、キャラクタの設定情報、アイテムの情報及びその画像データ、三次元モデルが配されるマップデータであってもよい。要素データは、シナリオ(せりふ)データであってもよいし、シナリオに基づく音声データであってもよい。要素データは、BGM等の音楽データであってもよい。要素データは、アイテム、装備等の強さのバランス等の情報であってもよい。
 
【0101】
  中間層53は以下のように学習される。ゲーム改変モデル5Mは、予め一般ユーザ、クリエイター、メーカー、GAME評論家などによる評価及び改変案が既知のゲームプログラム10Pの要素データを用いて学習される。改変案の分類毎に学習するため、予め、作成装置4を管理する特定のオペレータによって学習用のデータが取捨選択されてもよい。ゲーム改変モデル5Mの学習では、例えば「暗い」と評価され、「可愛いキャラクタにしてほしい」と改変案(要望、又は具体的な案)が出されているゲームプログラム10Pの要素データと、「明るい」「キャラクタが可愛い」と評価されているゲームの要素データとが教師データとして用いられる。このような同じ分類の評価及び改変案が提案されているゲームプログラムの要素データを収集し、要素データを評価の内容で分類し、「暗い」と評価されていたゲームプログラム10Pの要素データが、「キャラクタが可愛い」と評価されるゲームプログラム10の要素データの特徴量を持つ要素データへ変換されるように学習される。多数の教師データを用いて分類毎に学習することで精度よく変換することが可能である。
 
【0102】
  図22は、実施の形態4におけるゲーム改変モデル5Mの他の一例の概要を示す図である。他の一例のゲーム改変モデル5Mは、入力された要素データに対して畳み込みニューラルネットワークを用いて特徴量を導出し、導出した特徴量を元に再度復号して出力するオートエンコーダを用いる。他の一例のゲーム改変モデル5Mは、オートエンコーダを用いた変換器511と、変換器511から出力された結果物の評価を出力する分類器512とを用いて変換器511を作成する。
 
【0103】
  図22に示す一例の場合も、一般ユーザの評価及び改変案が既知のゲームプログラム10Pの要素データを用いて学習される。まず分類器512が、評価が既知であるゲームプログラム10Pの要素データを入力した場合に、既知の評価と同一の評価を出力するように、評価の内容毎、例えばキャラクタの要素データであれば「美しい」「かわいい」等に学習されている。次に分類器512で、評価が既知、例えばある低評価(例えば「グロテスク」)のゲームプログラム10Pの要素データを入力した場合に、出力される要素データを分類し、得たい評価(「怖いが美しい」)を得られる特徴量を持つ要素データへ変換するように、オートエンコーダである変換器511を学習する。敵対的生成ネットワークによって分類と変換とを交互に行なってもよい。このように学習されたゲーム改変モデル5Mには、評価及び改変案と対応する評価を得られるオートエンコーダを選択して要素データを入力されることによって、ゲーム改変モデル5Mから改変案を反映させた要素データが出力される。
 
【0104】
  これによりゲーム改変モデル5Mは、「人間のセンス」による評価を反映した改変を支援するモデルとなる。
 
【0105】
  なお、
図21及び
図22の概要に示したゲーム改変モデル5Mはいずれも、改変案の分類毎、又は得たい評価毎に分別されない構成としてもよい。ゲーム改変モデル5Mは、改変案又は評価を分類するネットワークと、分類毎の変換ネットワークとを内包した構成としてもよい。この場合、ゲーム改変モデル5Mは、評価又は改変案及び対象の要素データを入力し、変換後の要素データを出力する。
 
【0106】
  図21又は
図22の概要で示したゲーム改変モデル5Mを用いた改変処理手順について説明する。
図23は、実施の形態4における改変処理手順の一例を示すフローチャートである。作成装置4は、ゲームプログラム1Pをプラットフォームサーバへ送信した後に、所定の期間(例えば、1週間、1ヶ月等)経過する都度に、以下の処理を実行する。
 
【0107】
  制御部40は、ゲームプログラム1Pを1つ選択し(ステップS501)、選択したゲームプログラム1Pについての評価、又は改変案を取得する(ステップS502)。
 
【0108】
  ステップS502における評価、又は改変案の取得は第1例では、インターネット上にゲームプログラム1Pのタイトルを含んで投稿され公開されているテキストデータを取得することである。評価、又は改変案の取得は第1例では、第1端末装置1又は第2端末装置2からのテキスト入力を受け付けることであってもよい。評価、又は改変案の取得はテキスト入力の受け付けに限られず、評価の選択肢の内のいずれかの選択の受け付けであってもよいし、改変案の選択肢の内のいずれかの選択の受け付けあってもよい。
 
【0109】
  制御部40は、取得した評価、又は改変案の分類に応じたゲーム改変モデル5Mを選択する(ステップS503)。ステップS503は、ゲーム改変モデル5Mが改変案をも入力する場合には省略される。
 
【0110】
  制御部40は、対象のゲームプログラム10Pの要素データを、要素データ毎に要素DB300から読み出す(ステップS504)。制御部40は、読み出した要素データと、取得した評価、又は改変案とをステップS503で選択したゲーム改変モデル5Mへ与える(ステップS505)。
 
【0111】
  ステップS504にて制御部40は、評価又は改変案の対象である要素データのみを読み出してもよい。
 
【0112】
  制御部40は、ゲーム改変モデル5Mによって変換された各要素データを用いたゲームプログラム10Pを再構成し(ステップS506)、再構成されたゲームプログラム10Pを、記憶部41に記憶する(ステップS507)。制御部40は、記憶部41に記憶されたゲームプログラム10Pをプラットフォームサーバ5へ第2通信部44により送信し(ステップS508)、処理を終了する。
 
【0113】
  これにより、ゲーム作成モデル41Mからの出力に対して「人間のセンス」を加味して、より魅力的なゲームへ仕上げるための変換が自動的に行なわれる。制御部40は、ステップS506で再構成されたゲームプログラム10Pに対して再度、
図23のフローチャートに示された処理を繰り返し実行し、作成されるゲームプログラム10Pを更に洗練させてもよい。
 
【0114】
  ステップS503にて取得した評価が低評価であるか否かを判断し、低評価であると判断された場合のみにステップS503以降の処理が実行されるようにしてもよい。
 
【0115】
  制御部40は、選択されたゲームプログラム10Pについて、取得した評価を総合報酬とする強化学習によって、ゲーム作成モデル41Mを、より高い評価が得られるゲームプログラムを作成できるように更新してもよい。
 
【0116】
  今回開示された実施の形態はすべての点で例示であって、制限的なものでは無いと考えられるべきである。本開示の範囲は、上記した意味では無く、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
 
 
【解決手段】ゲームプログラムの作成方法は、ビデオゲームのゲームプログラムの要素データを記憶してあるデータベースに基づき、入力される入力データに基づいて新たな要素データを出力するべく学習された学習モデルを用い、該学習モデルへ入力データを与えて出力される要素データを含むゲームプログラムを作成する。