(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-06-16
(45)【発行日】2025-06-24
(54)【発明の名称】没入型コンテンツから2Dフィルムを作成するためのシステムおよび方法
(51)【国際特許分類】
G06T 13/20 20110101AFI20250617BHJP
G06F 3/01 20060101ALI20250617BHJP
【FI】
G06T13/20
G06F3/01 510
(21)【出願番号】P 2022524615
(86)(22)【出願日】2020-10-23
(86)【国際出願番号】 US2020057166
(87)【国際公開番号】W WO2021081406
(87)【国際公開日】2021-04-29
【審査請求日】2023-10-23
(32)【優先日】2019-10-24
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-10-22
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-10-22
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】522166323
【氏名又は名称】バオバブ スタジオズ インコーポレイテッド
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ソロヴィク、ミカイル スタニスラヴォビッチ
(72)【発明者】
【氏名】ワン、ウェイ
(72)【発明者】
【氏名】ダークセン、ナサニエル クリストファー
(72)【発明者】
【氏名】カトラー、ロウレンス デイビッド
(72)【発明者】
【氏名】レリオス、アポストロス
【審査官】橘 高志
(56)【参考文献】
【文献】米国特許出願公開第2019/0066387(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 13/20
G06F 3/01
(57)【特許請求の範囲】
【請求項1】
コンピューティングシステムが、コンピュータベース体験と関連付けられたデータを取得する段階であって、前記コンピュータベース体験がインタラクティブリアルタイム技術に基づく、段階と、
前記コンピューティングシステムが、アニメーション作成アプリケーションにおいて、前記コンピュータベース体験内で
第1のタイムラインに関連付けられた少なくとも1つの
第1の仮想カメラを構成する段階と、
前記コンピューティングシステムが、前記アニメーション作成アプリケーションにおいて、前記少なくとも1つの
第1の仮想カメラによって撮像された
、少なくとも第1のオブジェクトを含むコンテンツの編集カットから、
前記第1のタイムラインについて、2次元コンテンツに対応する
第1の複数のショットを生成する段階と、
前記コンピューティングシステムが、少なくとも1つの第2の仮想カメラによって撮像された少なくとも第2のオブジェクトを含む第2の複数のショットに基づいて生成された2次元コンテンツの、前記第1のタイムラインとは異なる第2のタイムラインをインポートする段階と、
前記コンピューティングシステムが、前記
第1の複数のショット
及び前記第2の複数のショットに基づいて、リアルタイムエンジンにおいて、前記コンピュータベース体験の2次元バージョンと関連付けられたデータを生成する段階であって、前記2次元バージョンが、生成された前記データに基づいてレンダリングされ得る、段階と
を備える、
コンピュータにより実行される方法。
【請求項2】
前記コンピューティングシステムが、前記リアルタイムエンジンにおいて前記2次元バージョンをレンダリングする段階
をさらに備える、請求項1に記載の
コンピュータにより実行される方法。
【請求項3】
前記2次元コンテンツに対応する前記
第1の複数のショットを生成する段階が、
前記コンピューティングシステムが、前記コンピュータベース体験の前記編集カットと関連付けられたデータを非線形映像編集ソフトウェアから取得する段階
をさらに有する、請求項1または2に記載の
コンピュータにより実行される方法。
【請求項4】
前記2次元コンテンツに対応する前記
第1の複数のショットを生成する段階が、
前記コンピューティングシステムが、前記アニメーション作成アプリケーションにおいて生成された前記
第1の複数のショットと関連付けられたデータを前記リアルタイムエンジンの中にインポートする段階
をさらに有する、請求項1から3のいずれか一項に記載の
コンピュータにより実行される方法。
【請求項5】
前記コンピューティングシステムが、前記コンピュータベース体験と関連付けられた第2のアニメーション層から分離された前記2次元バージョンと関連付けられた第1のアニメーション層を作成する段階であって、前記
第1の複数のショットにおけるショットに行われる調整が前記第1のアニメーション層に適用される、段階
をさらに備える、請求項4に記載の
コンピュータにより実行される方法。
【請求項6】
前記コンピューティングシステムが、前記コンピュータベース体験と関連付けられた第2のアニメーション層から分離された前記2次元バージョンに対応する
前記第1のタイムラインと関連付けられた第1のアニメーション層を作成する段階であって、前記2次元バージョンに対応する前記
第1のタイムラインに行われる調整が前記第1のアニメーション層に適用される、段階
をさらに備える、請求項4に記載の
コンピュータにより実行される方法。
【請求項7】
前記2次元コンテンツに対応する前記
第1の複数のショットを生成する段階が、
前記コンピューティングシステムが、前記アニメーション作成アプリケーションにおいて、1または複数のアニメーションフィックスを前記2次元バージョンのための少なくとも1つのショットに適用する段階
をさらに有する、請求項1から6のいずれか一項に記載の
コンピュータにより実行される方法。
【請求項8】
前記アニメーション作成アプリケーションにおいて、前記1または複数のアニメーションフィックスを前記2次元バージョンのための少なくとも1つのショットに適用する段階が、
前記コンピューティングシステムが、前記1または複数のアニメーションフィックスの適用の前に前記少なくとも1つのショットのコピーを作成する段階であって、前記1または複数のアニメーションフィックスが前記コピーに適用される、段階と
をさらに有する、請求項7に記載の
コンピュータにより実行される方法。
【請求項9】
前記コンピューティングシステムが、前記リアルタイムエンジンにおいて、ライティングおよび1または複数のメディア効果を前記コンピュータベース体験と関連付けられたフレームに適用する段階と、
前記コンピューティングシステムが、前記リアルタイムエンジンにおいて、ライティングおよび1または複数のメディア効果を前記2次元バージョンと関連付けられたフレームに適用する段階であって、前記2次元バージョンと関連付けられた前記フレームに対する前記ライティングおよび前記1または複数のメディア効果が、前記コンピュータベース体験に適用された前記ライティングおよび前記1または複数のメディア効果の上に追加される、段階と、
をさらに備える、請求項1から8のいずれか一項に記載の
コンピュータにより実行される方法。
【請求項10】
前記コンピュータベース体験が没入型リアルタイム技術に基づいているか、または
前記2次元バージョンと関連付けられた前記データがインタラクティブ2Dコンテンツである、
請求項1から9のいずれか一項に記載の
コンピュータにより実行される方法。
【請求項11】
システムであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサによって実行されると、前記システムに、
コンピュータベース体験と関連付けられたデータを取得する段階であって、前記コンピュータベース体験がインタラクティブリアルタイム技術に基づく、段階、
アニメーション作成アプリケーションにおいて、前記コンピュータベース体験内で
第1のタイムラインに関連付けられた少なくとも1つの
第1の仮想カメラを構成する段階、
前記アニメーション作成アプリケーションにおいて、前記少なくとも1つの
第1の仮想カメラによって撮像された
少なくとも第1のオブジェクトを含むコンテンツの編集カットから、
前記第1のタイムラインについて、2次元コンテンツに対応する
第1の複数のショットを生成する段階
、
少なくとも1つの第2の仮想カメラによって撮像された少なくとも第2のオブジェクトを含む第2の複数のショットに基づいて生成された2次元コンテンツの、前記第1のタイムラインとは異なる第2のタイムラインをインポートする段階、および
前記
第1の複数のショット
及び前記第2の複数のショットに基づいて、リアルタイムエンジンにおいて、前記コンピュータベース体験の2次元バージョンと関連付けられたデータを生成する段階であって、前記2次元バージョンが、生成された前記データに基づいてレンダリングされ得る、段階
を有する方法を実行させる命令を格納するメモリと
を備えるシステム。
【請求項12】
前記命令が前記システムに、
前記リアルタイムエンジンにおいて前記2次元バージョンをレンダリングする段階
をさらに実行させる、請求項11に記載のシステム。
【請求項13】
前記2次元コンテンツに対応する前記
第1の複数のショットを生成する段階が、
前記コンピュータベース体験の前記編集カットと関連付けられたデータを非線形映像編集ソフトウェアから取得する段階
をさらに有する、請求項11または12に記載のシステム。
【請求項14】
前記2次元コンテンツに対応する前記
第1の複数のショットを生成する段階が、
前記アニメーション作成アプリケーションにおいて生成された前記
第1の複数のショットと関連付けられたデータを前記リアルタイムエンジンの中にインポートする段階
をさらに有する、請求項11から13のいずれか一項に記載のシステム。
【請求項15】
前記命令が、前記システムに、
前記コンピュータベース体験と関連付けられた第2のアニメーション層から分離された前記2次元バージョンと関連付けられた第1のアニメーション層を作成する段階であって、前記
第1の複数のショットにおけるショットに行われる調整が前記第1のアニメーション層に適用される、段階
をさらに実行させる、請求項11から14のいずれか一項に記載のシステム。
【請求項16】
コンピューティングシステムに、
コンピュータベース体験と関連付けられたデータを取得する手順であって、前記コンピュータベース体験がインタラクティブリアルタイム技術に基づく、手順と、
アニメーション作成アプリケーションにおいて、前記コンピュータベース体験内で
第1のタイムラインに関連付けられた少なくとも1つの
第1の仮想カメラを構成する手順と、
前記アニメーション作成アプリケーションにおいて、前記少なくとも1つの
第1の仮想カメラによって撮像された
少なくとも第1のオブジェクトを含むコンテンツの編集カットから、
前記第1のタイムラインについて、2次元コンテンツに対応する
第1の複数のショットを生成する手順と、
少なくとも1つの第2の仮想カメラによって撮像された少なくとも第2のオブジェクトを含む第2の複数のショットに基づいて生成された2次元コンテンツの、前記第1のタイムラインとは異なる第2のタイムラインをインポートする手順と、
前記
第1の複数のショット
及び前記第2の複数のショットに基づいて、リアルタイムエンジンにおいて、前記コンピュータベース体験の2次元バージョンと関連付けられたデータを生成する手順であって、前記2次元バージョンが、生成された前記データに基づいてレンダリングされ得る、手順と
を実行させるためのコンピュータプログラム。
【請求項17】
前記コンピューティングシステムに、
前記リアルタイムエンジンにおいて前記2次元バージョンをレンダリングする手順
をさらに実行させる、請求項16に記載のコンピュータプログラム。
【請求項18】
前記2次元コンテンツに対応する前記
第1の複数のショットを生成する手順が、
前記コンピュータベース体験の前記編集カットと関連付けられたデータを非線形映像編集ソフトウェアから取得する手順
をさらに有する、請求項16または17に記載のコンピュータプログラム。
【請求項19】
前記2次元コンテンツに対応する前記
第1の複数のショットを生成する手順が、
前記アニメーション作成アプリケーションにおいて生成された前記
第1の複数のショットと関連付けられたデータを前記リアルタイムエンジンの中にインポートする手順
をさらに有する、請求項16から18のいずれか一項に記載のコンピュータプログラム。
【請求項20】
前記コンピューティングシステムに、
前記コンピュータベース体験と関連付けられた第2のアニメーション層から分離された前記2次元バージョンと関連付けられた第1のアニメーション層を作成する手順であって、前記
第1の複数のショットにおけるショットに行われる調整が前記第1のアニメーション層に適用される、手順
をさらに実行させる、請求項16から19のいずれか一項に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、デジタルアニメーションの分野に関する。より具体的には、本技術は、AR/VRコンテンツから2Dコンテンツを生成するための技術に関する。
【背景技術】
【0002】
仮想現実(VR)および拡張現実(AR)は、コンテンツクリエイターが他の媒体では可能ではないやり方で視聴者を没入させることを可能とするエンターテインメントおよびストーリーテリングのための新たな媒体である。VRおよびARは、オーディエンスがインタラクションして感情移入し得るキャラクタを用いて、魅力のあるストーリーを伝えるための、強力な没入型プラットフォームである。ユーザ(例えば、視聴者)は、彼らの周りの世界に直観的に接続される。ユーザは、没入され得、エージェンシーを有し得、任意の位置も見得る。ユーザはまた、演じる役割を有し得、演技するように触発され得る。キャラクタは、ユーザが彼らの世界に存在することを認知し得、ユーザ行動にリアルタイムに反応し得る。対照的に、2Dコンテンツ(例えば、映画、フィルム、テレビ番組)は、キャラクタを用いて感情移入を誘導し得る受動的かつ映画のような媒体であるが、もちろん、インタラクションはない。
【発明の概要】
【0003】
本技術の様々な実施形態は、コンピュータベース体験と関連付けられたデータを取得するように構成された、システム、方法、および非一時的コンピュータ可読媒体を含み得る。コンピュータベース体験は、インタラクティブリアルタイム技術に基づき得る。少なくとも1つの仮想カメラが、リアルタイムエンジンにおいてコンピュータベース体験内で構成され得る。コンピュータベース体験の編集カットと関連付けられたデータは、少なくとも1つの仮想カメラによって撮像されたコンテンツに基づいて、取得され得る。2次元コンテンツに対応する複数のショットは、リアルタイムエンジンにおいて、コンピュータベース体験の編集カットから生成され得る。コンピュータベース体験の2次元バージョンと関連付けられたデータは、複数のショットに基づいて、リアルタイムエンジンにおいて生成され得る。2次元バージョンは、生成されたデータに基づいてレンダリングされ得る。
【0004】
一実施形態では、コンピュータベース体験は、没入型リアルタイム技術に基づいている。
【0005】
一実施形態では、2次元バージョンと関連付けられたデータはインタラクティブ2Dコンテンツである。
【0006】
一実施形態では、編集カットと関連付けられたデータを取得することは、編集カットにおいて反映された編集のセットを説明するデータを、非線形映像編集ソフトウェアから、およびリアルタイムエンジンの中にインポートすることをさらに含む。
【0007】
一実施形態では、2次元コンテンツに対応する複数のショットを生成することが、リアルタイムエンジンを用いて、追加のセット装飾およびレイアウトデータを、複数のショットに含まれる少なくとも1つショットと関連付けられた1または複数のフレームに適用することと、ライティングおよび1または複数のメディア効果を1または複数のフレームに適用することであって、ライティングおよび1または複数のメディア効果が、リアルタイムエンジンにおいてコンピュータベース体験に適用されたライティングおよび1または複数のメディア効果の上に追加されることとをさらに含む。
【0008】
一実施形態では、コンピュータベース体験の2次元バージョンと関連付けられたデータを、リアルタイムエンジンから生成することが、アニメーション作成アプリケーションにおいて2次元バージョンのための少なくとも1つの新たなショットを生成すること、または1または複数のアニメーションフィックスを、アニメーション作成アプリケーションにおいて2次元バージョンのための少なくとも1つのショットに適用することをさらに含む。
【0009】
一実施形態では、システム、方法、および非一時的コンピュータ可読媒体は、1または複数のアニメーションフィックスの適用の前に少なくとも1つのショットのコピーを作成するように構成されており、1または複数のアニメーションフィックスがコピーに適用される。
【0010】
一実施形態では、2次元バージョンと関連付けられたデータを生成することが、リアルタイムエンジンを用いて2次元バージョンをレンダリングすることをさらに含む。
【0011】
一実施形態では、レンダリングは、リアルタイムエンジンを通じてインエディタで実行される。
【0012】
一実施形態では、システム、方法、および非一時的コンピュータ可読媒体は、2次元バージョンと関連付けられたタイムラインを決定し、タイムラインにおいてレンダリングされるようにマーク付けされた領域を決定し、リアルタイムエンジンを用いて領域に対応する2次元バージョンの一部をレンダリングするように構成されている。
【0013】
本技術の様々な実施形態は、コンピュータベース体験と関連付けられたデータを取得するように構成された、システム、方法、および非一時的コンピュータ可読媒体を含み得る。コンピュータベース体験は、インタラクティブリアルタイム技術に基づき得る。少なくとも1つの仮想カメラが、アニメーション作成アプリケーションにおいて、コンピュータベース体験内で構成され得る。2次元コンテンツに対応する複数のショットは、アニメーション作成アプリケーションにおいて、少なくとも1つの仮想カメラによって撮像されたコンテンツの編集カットから生成され得る。コンピュータベース体験の2次元バージョンと関連付けられたデータは、複数のショットに基づいて、リアルタイムエンジンにおいて生成され得る。2次元バージョンは、生成されたデータに基づいてレンダリングされ得る。
【0014】
一実施形態では、システム、方法、および非一時的コンピュータ可読媒体は、リアルタイムエンジンにおいて2次元バージョンをレンダリングするように構成されている。
【0015】
一実施形態では、2次元コンテンツに対応する複数のショットを生成することが、コンピュータベース体験の編集カットと関連付けられたデータを非線形映像編集ソフトウェアから取得することをさらに含む。
【0016】
一実施形態では、2次元コンテンツに対応する複数のショットを生成することが、アニメーション作成アプリケーションにおいて生成された複数のショットと関連付けられたデータをリアルタイムエンジンの中にインポートすることをさらに含む。
【0017】
一実施形態では、システム、方法、および非一時的コンピュータ可読媒体は、コンピュータベース体験と関連付けられた第2のアニメーション層から分離された2次元バージョンと関連付けられた第1のアニメーション層を作成するように構成されており、複数のショットにおけるショットに行われる調整が第1のアニメーション層に適用される。
【0018】
一実施形態では、システム、方法、および非一時的コンピュータ可読媒体は、コンピュータベース体験に対応するタイムラインと関連付けられた第2のアニメーション層から分離された2次元バージョンと関連付けられた第1のアニメーション層を作成するように構成されており、2次元バージョンに対応するタイムラインに行われる調整が第1のアニメーション層に適用される。
【0019】
一実施形態では、2次元コンテンツに対応する複数のショットを生成することが、アニメーション作成アプリケーションにおいて、1または複数のアニメーションフィックスを2次元バージョンのための少なくとも1つのショットに適用することをさらに含む。
【0020】
一実施形態では、アニメーション作成アプリケーションにおいて、1または複数のアニメーションフィックスを2次元バージョンのための少なくとも1つのショットに適用することが、1または複数のアニメーションフィックスの適用の前に少なくとも1つのショットのコピーを作成することをさらに有し、1または複数のアニメーションフィックスがコピーに適用される。
【0021】
一実施形態では、システム、方法、および非一時的コンピュータ可読媒体は、リアルタイムエンジンにおいてライティングおよび1または複数のメディア効果をコンピュータベース体験と関連付けられたフレームに適用し、リアルタイムエンジンにおいて、ライティングおよび1または複数のメディア効果を2次元バージョンと関連付けられたフレームに適用するように構成されており、2次元バージョンと関連付けられたフレームに対するライティングおよび1または複数のメディア効果が、コンピュータベース体験に適用されたライティングおよび1または複数のメディア効果の上に追加される。
【0022】
一実施形態では、システム、方法、および非一時的コンピュータ可読媒体は、追加のセット装飾およびレイアウトデータを、リアルタイムエンジンにおいて、複数のショットに含まれた少なくとも1つのショットと関連付けられた1または複数のフレームに適用するように構成されている。
【図面の簡単な説明】
【0023】
【
図1A】AR/VRコンテンツおよび2Dコンテンツを生成するための従来のワークフローを示す。
【
図1B】AR/VRコンテンツおよび2Dコンテンツを生成するための従来のワークフローを示す。
【0024】
【
図2】本技術の一実施形態に係る2Dコンテンツを生成するための例示的なシステムを示す。
【0025】
【
図3A】本技術の一実施形態に係る例示的な方法を示す。
【
図3B】本技術の一実施形態に係る例示的な方法を示す。
【0026】
【
図4】本技術の一実施形態に係る2Dコンテンツを生成するための別の例示的なシステムを示す。
【0027】
【
図5A】本技術の一実施形態に係る例示的な方法を示す。
【
図5B】本技術の一実施形態に係る例示的な方法を示す。
【0028】
【
図6】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図7】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図8】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図9】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図10】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図11】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図12】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図13】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図14】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図15】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図16】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【
図17】本技術の一実施形態に係る様々なインタフェースおよび関連する出力を示す。
【0029】
【
図18】本技術の一実施形態に係るAR/VRコンテンツから導出された2Dコンテンツに対する様々な改善を示す。
【
図19】本技術の一実施形態に係るAR/VRコンテンツから導出された2Dコンテンツに対する様々な改善を示す。
【
図20】本技術の一実施形態に係るAR/VRコンテンツから導出された2Dコンテンツに対する様々な改善を示す。
【
図21】本技術の一実施形態に係るAR/VRコンテンツから導出された2Dコンテンツに対する様々な改善を示す。
【
図22】本技術の一実施形態に係るAR/VRコンテンツから導出された2Dコンテンツに対する様々な改善を示す。
【
図23】本技術の一実施形態に係るAR/VRコンテンツから導出された2Dコンテンツに対する様々な改善を示す。
【
図24】本技術の一実施形態に係るAR/VRコンテンツから導出された2Dコンテンツに対する様々な改善を示す。
【0030】
【
図25】本技術の一実施形態に係る、様々なシナリオで利用され得るコンピュータシステムまたはコンピューティングデバイスの一例を示す。
【0031】
これらの図は、例示の目的のためだけに、開示された技術の様々な実施形態を図示しており、これらの図では、同様の参照番号を用いて同様の要素を識別している。当業者は、図に示す構造および方法の代替的な実施形態が、本明細書で説明する開示された技術の原理から逸脱することなく、利用され得ることを以下の説明から容易に認識するであろう。
【発明を実施するための形態】
【0032】
[没入型コンテンツからの、2Dフィルムの作成]
仮想現実(VR)および拡張現実(AR)は、コンテンツクリエイターが他の媒体では可能ではないやり方で視聴者を没入させることを可能とするエンターテインメントおよびストーリーテリングのための新たな媒体である。VRおよびARは、オーディエンスがインタラクションして感情移入し得るキャラクタを用いて魅力のあるストーリーを伝えるための、強力なリアルタイム没入型プラットフォームである。ユーザ(例えば、視聴者)は、彼らの周りの世界に直観的に接続される。ユーザは、没入され得、エージェンシーを有し得、任意の位置も見得る。ユーザはまた、演じる役割を有し得、演技するように触発され得る。キャラクタは、ユーザが彼らの世界に存在することを認知し得、ユーザ行動にリアルタイムに反応し得る。対照的に、2Dコンテンツ(例えば、映画、フィルム、テレビ番組)は、キャラクタを用いて感情移入を誘導し得る受動的かつ映画のような媒体であるが、一般的にインタラクションがない。より最近では、インタラクティブ2Dコンテンツ(例えば、インタラクティブテレビ番組)によって、その後物語の各分岐に対して代替2Dストーリー展開および代替2Dコンテンツに分岐するストーリーにおける特定の瞬間に選択をユーザが行うことが可能になる。
【0033】
ストーリーテリングプロジェクトは、映画またはテレビのような非インタラクティブ媒体のための2Dコンテンツを制作するために、伝統的なコンピュータアニメ映画パイプライン(または、プロセス)に頼ってもよい。さらに、ストーリーテリングプロジェクトは、VR技術またはAR技術に基づくコンピュータアニメリアルタイム体験のようなインタラクティブ媒体のためのAR/VRコンテンツを制作するために、インタラクティブリアルタイムパイプライン(または、プロセス)に頼ってもよい。ストーリーテリングプロジェクトは、モバイル、コンソール、またはPC技術に基づくコンピュータアニメリアルタイム体験のようなインタラクティブゲームコンテンツを制作するために、インタラクティブリアルタイムパイプライン(または、プロセス)に頼ってもよい。場合によっては、ストーリーテリングプロジェクトは、インタラクティブ媒体と非インタラクティブ媒体との両方のためにコンテンツが制作されることを必要とし得る。例えば、ストーリーテリングプロジェクトは、VR技術またはAR技術に基づく没入型体験を好む視聴者のためにストーリーのインタラクティブバージョンを、伝統的な2D映画体験を好む視聴者のためにストーリーの非インタラクティブバージョンを必要とし得る。従来のアプローチ下では、
図1Aおよび
図1Bに関連して説明するように、AR/VRバージョンは、インタラクティブリアルタイムプロセスに基づいて作成され、2Dバージョンは、伝統的なコンピュータアニメ映画プロセスに基づいて別々に作成される。
【0034】
図1Aは、ストーリーのためのAR/VRコンテンツを作成するための例示的な従来のインタラクティブリアルタイムパイプライン100を示す。示すように、インタラクティブリアルタイムパイプライン100は、様々な2次元(2D)ツール102を使用して、コンセプト開発と共に開始する。最初は、ブロック104で、ストーリーおよびスクリプトは、インタラクティブストーリーまたはゲームのようなインタラクティブコンテンツのために作成され得る。ストーリーおよびスクリプトは、ユーザ(または、視聴者)の役割、インタラクティブメカニック、および非直線性を検討してもよい。例えば、ユーザ選択に基づく代替ダイアログラインがあってもよい。ブロック106で、ストーリーが精巧になるにつれて、コンセプトアートワークが作成され得る。環境コンセプトアートおよびキャラクタデザインは、ストーリーの世界およびキャラクタを探究するために作成され得る。ブロック108で、ユーザがキャラクタ、ストーリー、および環境とインタラクションするやり方が設計されてよい。例えば、これは、コアメカニック、インタラクティブ要素、および非線形なストーリーの流れを設計することを伴い得る。ブロック110で、スクリプトは、視覚的にシーンを実現させる2Dストーリーボード図に変換され得る。2Dストーリーボードはまず、監督に端的にプレゼンテーションされ、繰り返され、その後映像ストーリーリールに編集される。2Dストーリーボードは、コストが高い制作作業を行わずにフィルムすべてを観る迅速で安価なやり方を提供する。ブロック114で、リアルタイムエンジン112は、2Dツール102によって制作された2Dストーリーボードに基づいて、3Dストーリーボードを生成する。ストーリーボードは、3次元環境に配置され見られ得るように、3Dで作成され得る。3Dストーリーボードは、リアルタイムエンジン112、他の3D描写/ストーリーボードツール、またはVR描写/ストーリーボードツールにおいて、3D空間の中で動き回されるかまたは直接3Dで描かれる2Dスプライトとして作成され得る。次に、ブロック116で、プレビズは、アニメーション制作に進行する前に、シーンを視覚化するリアルタイムエンジン112において行われ得る。ブロック118で、エディトリアルは、ダイアログ、音楽、オーディオを追加し、タイミングのためのショットシーケンスを編集する。場合によっては、映画編集は、コンテンツがユーザ入力に基づいて変化するので、生成されなくてもよい。ブロック120で、セット装飾、最終的な環境モデル、および最終的なキャラクタは、シーンに組み込まれ得る。ブロック124で、アニメーション作成ツール122は、すべてのキャラクタアセットおよび環境アセットを作成するために使用される。ブロック126で、シーンおよびショットは、アニメ化され得る。インタラクティブゲームおよびAR/VRコンテンツでは、一般的に1つのショットが1つのキャラクタ行動を表す(アニメーションサイクルまたはサイクルアニメーションと呼ばれる)。ブロック128で、リアルタイムエンジン112は、非線形アニメーションフレームワーク、AIシステム、および他の手続き的方法を通じて、アニメーションを組み合わせ、および/または手続き的に生成し得る。ブロック130で、リアルタイムエンジン112は、FXおよびシミュレーション要素を作成し得る。ブロック132で、リアルタイムエンジン112は、ライティング効果をアニメーションにリアルタイムで適用し得る。これは多くの場合、シーン中の静的要素(すなわち、環境の動いていない部分)のために計算された既成のグローバル照明と組み合わせられた、シーンの動的で非静的な要素(すなわち、キャラクタ)についてリアルタイムで計算された少しの動的ライトを通じて達成される。ブロック134で、リアルタイムエンジン112はインタラクティブアプリケーションを出力する。インタラクティブアプリケーションは、VR技術またはAR技術に基づくコンピュータアニメリアルタイム体験、またはインタラクティブゲームであってもよい。
【0035】
図1Bは、非インタラクティブ2Dコンテンツ(例えば、2Dコンピュータアニメ映画)を作成するための例示的な従来のコンピュータアニメ映画パイプライン150を示す。示すように、コンピュータアニメ映画パイプライン150は、様々な2次元(2D)ツール152を使用して、コンセプト開発と共に開始する。ブロック154で、ストーリーは、2Dコンピュータアニメ映画のために作成され得る。ストーリーは、脚本またはスクリプトを作成するために使用され得る。ブロック156で、ストーリーが精巧になるにつれて、コンセプトアートワークは映画の見た目を定義するために作成されることができる。環境コンセプトアートおよびキャラクタデザインは、ストーリーの世界およびキャラクタを探究するために作成され得る。ブロック158で、スクリプトは、視覚的にシーンを実現させる2Dストーリーボード図に変換され得る。2Dストーリーボードはまず、監督に端的にプレゼンテーションされ、繰り返され、その後映像ストーリーリールに編集される。2Dストーリーボードは、コストが高い制作作業を行うことなくフィルムすべてを観る迅速で安価なやり方を提供する。ブロック160で、プレビズアーティストは、ストーリーボードリールをシーケンスの3Dプレビジュアライゼーションに変換する。プレビズアーティストは、環境モデルおよびキャラクタモデルのモックを作成する。その後、アーティストは、シネマトグラフィを確立して、ショットを一緒にカットするために編集映像を提供するため、仮想カメラをシーンに置くことができる。ブロック162で、エディタは、カメラショットを単一のシーケンス映画に組み合わせる非線形映像編集ソフトウェアにおいて編集カットを作成し得る。この編集カットは監督によってレビューされ得、これは多くの場合、プレビズアーティストによる既存のカメラへの調整を必要とし、および/または追加のカメラが作成されることを必要とする。ブロック164で、キャラクタおよび環境は、テクスチャを有する最終的な3Dモデルに変換され得る。アニメータによって、これらのキャラクタが真実味があるように動かされ、感情を表させ得るように、キャラクタアセットはデジタル人形として装備される。ブロック166で、最終的なショットが作成され、カメラシネマトグラフィが精巧になり、セット装飾がショット毎に調節される。ブロック168で、アニメーションは、一連のショットまたはシーンに分割され得る。所与のショットに対して、アニメータが、継時的にキャラクタを手動でアニメ化もしくはキーフレームから補間して作るか、またはアニメーションがライブパフォーマンスの演者からモーションキャプチャされてもよいかのいずれかである。ブロック170で、FX要素(例えば、水、火、霧等)は、ショットに追加され得る。さらに、衣類、毛髪、および他の動的コンポーネントがシミュレートされる。これらの要素は、リアルタイムに適用されることは少ない。ブロック172で、ライティングアーティストは、映画の最終的な画像を作成するために、視覚的ライトをショットに適用してもよい。マスターライティングは多くの場合、全体的なシーンおよび/またはより少ない数のキーショットのための外観を確立するためにまず行われる。ショットライティングはその後、ショット毎にキャラクタおよび環境上のライティングを微調整するために適用され得る。ブロック174で、シーンデータは、オフラインで非リアルタイムのレンダラを用いて、レンダリングされ得る。レンダリングは、アーティストのデスクで生じ発生し得るか、またはオンプレミスもしくはクラウドの中のレンダリングファームマシン上で発生し得る。レンダリングは多くの場合、合成パッケージに対するフレーム毎に複数のレンダ層パス(例えば、深度パス、無光沢パス等)を生成する。ブロック176で、最終的な組み合わせられたレンダリングフレームは、非インタラクティブ2Dコンテンツを制作するために、合成ソフトウェアを使用して生成され得る。
【0036】
したがって、従来のアプローチ下では、エンティティは、ストーリーのAR/VRバージョンを作成するために、
図1Aに示すプロセスのようなインタラクティブリアルタイムプロセスを使用する必要がある。さらに、従来のアプローチ下では、エンティティは、ストーリーの2Dバージョンを作成するために、
図1Bに示すプロセスのような別個のコンピュータアニメ映画プロセスを使用する必要がある。異なるプロセスが同じストーリーのインタラクティブバージョンおよび非インタラクティブバージョンを生成するニーズによって、重複した作業、コストの増大、および制作の複雑さの増大が引き起こされ得る。
【0037】
コンピュータ技術に根差した改善されたアプローチは、従来のアプローチに関連付けられた前述の欠点および他の欠点を克服し、このことは、特にコンピュータ技術の分野で発生している。本技術は、単一のプロセス(もしくは、パイプライン)に基づいて、ストーリーのインタラクティブバージョンおよび非インタラクティブバージョンを作成する能力を提供する。本技術によって、ストーリーの既存のインタラクティブAR/VRバージョンからストーリーのための非インタラクティブ2Dコンテンツが生成されることが可能になる。例えば、本技術によって、VR技術もしくはAR技術に基づいて、既存のコンピュータアニメリアルタイム体験から、2Dコンピュータアニメ映画が生成されることが可能になる。結果として、本技術は、映画制作者が、従来のプロセスにおいて利用可能な特徴を犠牲にすることなく、2Dコンピュータアニメ映画を緻密に作ることを可能にし得る包括的なツールセットを提供する。本技術はまた、2DベースプロジェクトとAR/VRベースプロジェクトとの両方の同時開発を可能にし、そこで、AR/VRベースプロジェクトに対する変更は2Dベースプロジェクトに反映され得、その逆もまた然りである。本技術はまた、シネマトグラフィを開発するためのコンテンツ作成媒体として、AR/VRを利用し得、2Dプロジェクトを求めて検索する。本技術はまた、異なるパイプラインアーキテクチャを処理し得る。本技術に関連するより多くの詳細を以下に提供する。
【0038】
図2は、本技術の一実施形態に係る例示的なシステム200を示す。例示的なシステム200は、アニメーション作成モジュール202、リアルタイムエンジンモジュール(または、リアルタイムエンジン)212、および2D編集モジュール232を含み得る。例示的なシステム200は、AR/VRコンテンツから非インタラクティブ2Dコンテンツを生成するために実装され得る。例示的なシステム200は、モバイル、コンソール、およびPC技術のために開発されたインタラクティブゲームコンテンツから非インタラクティブ2Dコンテンツを生成するために実装され得る。例えば、例示的なシステム200は、VR技術またはAR技術に基づくインタラクティブコンピュータアニメリアルタイム体験から、非インタラクティブ2Dでコンピュータアニメ化されたフィルムまたはテレビ番組を生成し得る。別の例では、例示的なシステム200は、VR技術またはAR技術に基づくキャラクタベースのコンピュータアニメリアルタイム体験から、一人称2Dコンピュータアニメフィルムまたはテレビ番組を生成し得る。キャラクタベースのコンピュータアニメリアルタイム体験は、視聴者がキャラクタとしてストーリーに参加し得る没入型体験を伴ってもよい。別の例では、例示的なシステム200は、VR技術またはAR技術に基づくキャラクタベースのコンピュータアニメリアルタイム体験から、インタラクティブ2Dコンピュータアニメフィルムまたはテレビ番組を生成し得る。例示的なシステム200は、ストーリーの異なる分岐を表す2Dコンテンツパスのセットを生成する。多くの変形形態が可能である。本明細書でより詳細に説明する
図4の例示的なシステム400とは対照的に、例示的なシステム200によって、アニメーション作成モジュール202の代わりにリアルタイムエンジンモジュール212に関連してカメラ配置およびショット作成が発生することが可能になる。例示的なシステム200は、最終的なリアルタイムコンテンツが、アニメーション作成モジュール202に基づいて作成されたアニメーションクリップのセットから手続き的に生成される、インタラクティブAR/VRコンテンツのためによく適し得る。アニメーション作成モジュール202、リアルタイムエンジンモジュール212、および2D編集モジュール232は、1または複数のコンピューティングデバイス上で動作する1または複数のソフトウェアアプリケーションにおいて実装され得る。この図および本明細書のすべての図に示されるコンポーネント(例えば、モジュール、要素等)は例示的なものに過ぎず、他の実装形態では、追加のコンポーネント、より少ないコンポーネント、一体化されたコンポーネント、または異なるコンポーネントを含んでよい。関連する詳細を不明瞭にしないため、いくつかのコンポーネントは、図示されなくてよい。様々な実施形態では、アニメーション作成モジュール202、リアルタイムエンジンモジュール212、および2D編集モジュール232に関連して説明する機能の1または複数は、好適な順序および組み合わせで実装され得る。
【0039】
いくつかの実施形態では、本明細書で説明する様々なモジュールおよび/またはアプリケーションは、ソフトウェア、ハードウェア、またはその任意の組み合わせとして、部分的にまたは全体として実装され得る。概して、本明細書で説明するように、モジュールおよび/またはアプリケーションは、ソフトウェア、ハードウェア、またはその任意の組み合わせと関連付けられ得る。いくつかの実装形態では、1または複数の機能、タスク、および/または、モジュールおよび/またはアプリケーションの動作は、ソフトウェアルーチン、ソフトウェアプロセス、ハードウェア、および/またはそれらの任意の組み合わせによって遂行または実行され得る。場合によっては、本明細書で説明する様々なモジュールおよび/またはアプリケーションは、ユーザコンピューティングデバイスもしくはクライアントコンピューティングデバイス上またはサーバ上のような1または複数のコンピューティングデバイスまたはシステム上で動作するソフトウェアとして、部分的にまたは全体として実装され得る。例えば、本明細書で説明する1または複数のモジュールおよび/またはアプリケーション、またはそれらの少なくとも一部は、ユーザコンピューティングデバイスまたはクライアントコンピューティングシステム上で動作する、アプリケーション(例えば、アプリ)、プログラム、またはアプレット等として、またはそれらの中で実装され得る。別の例では、1または複数のモジュールおよび/またはアプリケーション、または少なくともそれらの一部は、ネットワークサーバまたはクラウドサーバのような1または複数のサーバを含む1または複数のコンピューティングデバイスまたはシステムを使用して、実装され得る。多くの変形形態または他の可能性があり得ることを理解されたい。一例示的な実施形態では、アニメーション作成モジュール202は、AutodeskMayaのようなアニメーション作成ソフトウェアにおいてまたはそれを用いて実装され得、リアルタイムエンジンモジュール212は、Unityゲームエンジンのようなリアルタイムエンジンにおいてまたはそれを用いて実装され得る。
【0040】
アニメーション作成モジュール202は、VRアニメーションモジュール204およびショットフィックスモジュール206を含み得る。
【0041】
VRアニメーションモジュール204は、ストーリーのインタラクティブバージョンをアニメ化するように構成され得る。例えば、ストーリーのインタラクティブバージョンは、VR技術またはAR技術に基づくコンピュータアニメリアルタイム体験であり得る。ストーリーのインタラクティブバージョンは、ショットのシーケンスで構成され得る。ショットは、三次元空間におけるコンピュータアニメリアルタイム体験の中に位置する仮想カメラによって撮像される幾つかのフレームを表し得る。いくつかの実施形態では、ショットは、アニメーションサイクルまたはサイクルアニメーションのような単一のキャラクタ行動を表し得る。さらに、ショットのシーケンスは、幾つかの関連するショットに対応し得る。例えば、シーケンスは、コンピュータアニメリアルタイム体験内の特定の位置で撮像されたショットを含み得る。VRアニメーションモジュール204は、ストーリーのインタラクティブバージョンと関連付けられたデータ(例えば、ショット、ショットのシーケンス等)を、データストア208に格納し得る。1つの実施形態では、データストア208は、リモートサーバ上に常駐する。別の実施形態では、ウェブベースアプリケーションは、データストア208におけるデータを同期するために、アニメーション作成モジュール202、リアルタイムエンジンモジュール212、および2D編集モジュール232における様々なモジュールとインタフェースで接続する。
【0042】
ショットフィックスモジュール206は、ストーリーのインタラクティブバージョンから生成されたストーリーの非インタラクティブ2Dバージョンと関連付けられたショットに様々なフィックスを適用するように構成され得る。例えば、ショットフィックスモジュール206は、リアルタイムエンジンモジュール212によってストーリーの非インタラクティブ2Dバージョンのために生成されたショットにフィックスを適用し得る。概して、ストーリーの非インタラクティブ2Dバージョンと関連付けられたショットは、ストーリーのインタラクティブバージョンと関連付けられたショットから導出され得る。結果として、ストーリーのインタラクティブバージョンと関連付けられたショットに対する更新は、ストーリーの非インタラクティブ2Dバージョンと関連付けられた対応するショットに反映されてもよい。いくつかの例では、ストーリーの非インタラクティブ2Dバージョンと関連付けられたショットにのみ適用される特定の調節が必要とされてもよい。例えば、ショットにおいて表されるキャラクタアイラインは、ストーリーのインタラクティブバージョンにおいて正確であってもよいが、ストーリーの非インタラクティブ2Dバージョンと関連付けられたショットにおいて間違えた方向を見ているように見えてもよい。そのような例では、ショットフィックスモジュール206は、ストーリーの非インタラクティブ2Dバージョンに対する特定の調節を必要とするショットを分岐するように構成され得る。ショットが分岐されるとき、ショットの別個のコピーがインタラクティブバージョンおよび非インタラクティブ2Dバージョンのために維持される。結果として、ショットに対しての調整が、ストーリーのインタラクティブバージョンに影響することなく、ストーリーの非インタラクティブ2Dバージョンに対して行われ得る。前述の例では、ストーリーのインタラクティブバージョンと関連付けられた対応するショットにおけるキャラクタアイラインに影響することなく、ストーリーの非インタラクティブ2Dバージョンと関連付けられたショットキャラクタアイラインに対して、調整が行われ得る。いくつかの例では、ストーリーの非インタラクティブバージョンは、新たなショットが作成されることを必要としてもよい。1つの例では、ストーリーのインタラクティブバージョンにおける1つのショットは、(例えば、クローズアップと、ミディアムショットと、ショットを確立させるためとの)異なるカメラ角度に対応する、非インタラクティブ2Dバージョンにおけるいくつかのより小さく潜在的に重なり合うショットに分割される。これらの新たなショットは、特に非インタラクティブ2Dバージョンのために作成されるコンピュータアニメーションに対応してもよい。例えば、キャラクタと関連付けられた見栄えは、ストーリーの非インタラクティブ2Dバージョンから関連付けられたショットにおいて許容できるものでなくてもよい。別の例では、ストーリーのインタラクティブバージョンと関連付けられたショットは、視聴者による何らかのインタラクションを伴い得る。そのようなインタラクションがストーリーのインタラクティブバージョンにおいて許容され得るが、インタラクションは、ストーリーの非インタラクティブ2Dバージョンにおける複製のためには好適ではない。そのような例では、ショットフィックスモジュール206は、ストーリーのインタラクティブバージョンと関連付けられた既存のショットを訂正または置換するストーリーの非インタラクティブ2Dバージョンのための新たなショットの作成を許可し得る。ショットフィックスモジュール206は、ストーリーの非インタラクティブ2Dバージョンに関連してフィックスまたは追加されたショットと関連付けられたデータを、データストア208に格納し得る。
【0043】
リアルタイムエンジンモジュール212は、VRアニメーションモジュール214、VRライティングおよびFXモジュール216、2Dプレビズモジュール218、2Dショット作成モジュール220、2Dレイアウトモジュール222、および2DライティングおよびFXモジュール224を含み得る。
【0044】
VRアニメーションモジュール214は、非線形アニメーションフレームワーク、人工知能(AI)システム、および他の概して既知の手続き的方法を使用して、アニメーションを組み合わせ、および/または手続き的に生成するように構成され得る。
【0045】
VRライティングおよびFXモジュール216は、ストーリーのインタラクティブバージョンにおいて使用されるライティングおよびメディア効果(FX)要素を適用するように構成され得る。ライティングおよびFX要素は、概して既知の技術を使用して作成され得る。
【0046】
2Dプレビズモジュール218は、ストーリーのインタラクティブバージョンにおける仮想カメラのセットを、VRアニメーションモジュール204によってアニメ化されたように配置するように構成され得る。例えば、アーティストは、2Dプレビズモジュール218が、2Dフィルムスクリプト210に基づいて、ストーリーのインタラクティブバージョンにおける仮想カメラのセットを配置するように指示してもよい。例えば、2Dフィルムスクリプト210は、ストーリーのインタラクティブバージョンと関連付けられたスクリプトに基づいて、書かれ得る。仮想カメラのセットは、様々な異なるカメラ角度からアニメーション場面を撮像するために、ストーリーのインタラクティブバージョン内に置かれ得る。いくつかの実施形態では、仮想カメラのセットおよび関連付けられたパラメータは、AR/VR技術を使用して作成され得る。例えば、アーティストは、VRにおいて彼らの手を用いて6DOFハンドコントローラを動かすことによって、仮想カメラを置いて操作し得る。アーティストはその後、VRにおけるこの仮想カメラを用いて、元のVR/AR体験からの映像を記録し得る。手持ちカメラの効果を作成するためにこれは使用され得る。1つの実施形態では、複数のアーティストは、異なる仮想カメラを置いて記録するためにVR/AR技術を使用するので、カメラデータの別個のセットを作成し得る。2Dプレビズモジュール218はまた、各仮想カメラに対して2D「プレイブラスト」フィード(または、映画)をエクスポートするように構成され得る。いくつかの実施形態では、例示的な
図6に示すように、2Dプレビズモジュール218は、レチクル情報およびスレート情報を、エクスポートされた2D「プレイブラスト」フィードの各フレームに挿入し得る。レチクル情報およびスレート情報は、フレームオーバーレイとして提供され得る。いくつかの実施形態では、レチクル情報およびスレート情報は、レチクルデータ(例えば、カメラ境界)、シーケンスデータ、ファイル名、カメラレンズ、カメラ/ショット名、タイムスタンプ、テイク数または繰り返し数、およびアニメーションフレーム番号を含み得る。
【0047】
2Dショット作成モジュール220は、新たなショットを作成し、既存のショットを更新するように構成され得る。概して、2Dショット作成モジュール220は、編集カットからショットを作成し得る。編集カットは、以下で説明するように、2D編集モジュール232によって制作され得る。1つの実施形態では、どの仮想カメラもすべて単一のショットを表す。別の実施形態では、単一の仮想カメラから複数のショットが構築されてもよい。2Dショット作成モジュール220は、各ショットおよびその関連するメタデータ情報をデータストア208に格納し得る。仮想(または、アニメーション)カメラと関連付けられたショットメタデータ情報の一例を
図7で示す。例えば、ショットメタデータ情報は、ショット名、時間長、アニメーションファイル、フレーム範囲、ショットに含まれるキャラクタ、およびパブリッシュバージョンを含み得る。多くの変形形態が可能である。1つの実施形態では、2Dショット作成モジュール220は、ショットデータを格納する共有ファイルを更新し得る。1つの実施形態では、2Dショット作成モジュール220は、データストア208を更新し得る。別の実施形態では、2Dショット作成モジュール220は、ウェブアプリケーションAPI(アプリケーションプログラムインタフェース)を通じてデータストア208を更新する。
【0048】
2Dレイアウトモジュール222は、2Dショット作成モジュール220によって作成されたショットを向上させるように構成され得る。例えば、2Dレイアウトモジュール222は、概して既知のアプローチを使用して、追加のセット装飾およびレイアウトをショット毎に適用し得る。
【0049】
2DライティングおよびFXモジュール224は、ショットに特徴を適用するために、様々なオプションを提供するように構成され得る。例えば、2DライティングおよびFXモジュール224は、ライトと、シャドウと、コンタクトシャドウと、FX要素と、被写体ぶれおよび被写界深度のような後処理効果とを適用し得る。例えば、ライティングアーティストおよびFXアーティストによって命令に基づいて、追加の特徴が適用され得る。そのような特徴を適用することは、各ショットの外観を拡張し得る。
【0050】
2D合成部242は、概して既知のアプローチに基づいて、最終的なレンダリングフレームを生成し得る。例えば、2D合成部242は、リアルタイムエンジンモジュール212によってレンダリングされる際、最終的なフレームおよび層パスに基づいて、最終的なレンダリングフレームを生成し得る。2D合成部242はまた、最終的なレンダリングフレームに基づいて、2Dコンピュータアニメ映画244のような、ストーリーの非インタラクティブ2Dバージョンを生成し得る。
【0051】
2D編集モジュール232は、様々なカメラショットを単一のシーケンス映画に組み合わせる編集カットを説明する情報を提供し得る。編集カットは、非線形映像編集ソフトウェアを使用して制作され得る。編集カット、および関連する編集タイミングおよびトラック情報を説明する情報は、リアルタイムエンジンモジュール212の中にインポートされ得る。リアルタイムエンジンモジュール212は、編集カットを補正するために必要に応じて、既存の仮想カメラへのさらなる調節、および新たな仮想カメラの追加を許可する。いくつかの実施形態では、2D編集モジュール232は、編集カットに関連して非線形映像編集ソフトウェアによって作成された編集選択を読み取り得る。2D編集モジュール232は、リアルタイムエンジンモジュール212における編集選択を再現(または、提供)し得る。一実施形態では、2D編集モジュール232は、非線形編集ソフトウェアプロジェクト以下のデータを読み取り得る:ソース映像およびオーディオクリップの位置、映像および音声トラックからのクリップのタイムコード、および映像およびオーディオクリップに適用され得るクロスフェードおよびオーディオレベルカーブのような効果。一実施形態では、2D編集モジュール232は、非線形映像編集ソフトウェアにおいて編集される映像クリップおよびオーディオクリップに対応するリアルタイムエンジンモジュール212におけるアセットを識別するために、そのようなデータを使用し得る。一実施形態では、2D編集モジュール232は、リアルタイムエンジンモジュール212における識別されたアセットを用いてアニメーショントラックおよび音声トラックを作成するために、そのようなデータを使用し得る。一実施形態では、2D編集モジュール232は、リアルタイムエンジンモジュール212におけるアセットに編集決定を適用するために、そのようなデータを使用し得る。一実施形態では、2D編集モジュール232は、すべてのショットを表す単一のタイムラインを作成し得、それにより、ユーザは、リアルタイムエンジンモジュール212において、ショットの間を前後に行き来して洗練させ得る。単一のタイムラインは、周囲のショットの文脈を用いてリアルタイム編集を容易にするのに役立ち得る。さらに、2D編集モジュール232は、リアルタイムエンジンモジュール212に既に存在する既存のカメラおよびショット情報を更新することをサポートする。1つの実施形態では、非線形映像編集ソフトウェアからのカメラ/ショットのトラックは、名前を付ける際の慣習によって、リアルタイムエンジンモジュール212におけるトラックと関連付けられる。別の実施形態では、トラックは、非線形映像編集ソフトウェアに渡されその後リアルタイムエンジンモジュール212に往復して戻されるメタデータ情報によって互いに関連させられ得る。別の実施形態では、トラックは、OpenTimelineのようなオープンソースファイルフォーマットを使用することによって、関連付けられ得る。さらに別の実施形態では、トラックは、データ比較ヒューリスティックスを使用して、互いに関連させられ得る。多くの変形形態が可能である。
【0052】
図3Aは、本技術の一実施形態に係る例示的な方法300を示す。いくつかの実施形態では、方法300は、
図2のシステム200によって実行され得る。ブロック302で、シーケンスおよびショットは、VRアニメーションモジュール204を参照して前述したように、AR/VRのアニメーションまたは体験のためにアニメ化され得る。ブロック304で、アニメーションは、VRアニメーションモジュール214を参照して前述したように、非線形アニメーションフレームワークを通じて組み合わせおよび/または手続き的に生成され得る。ブロック306で、ライティングおよびFX要素は、VRライティングおよびFXモジュール216を参照して前述したように、AR/VRのアニメーションまたは体験のために作成され得る。ブロック308で、仮想カメラは、2Dプレビズモジュール218を参照して前述したように、リアルタイムエンジンの中に置かれ得る。ブロック310で、編集カットは、2D編集モジュール232を参照して前述したように、非線形映像編集ソフトウェアにおいて制作され得る。ブロック312で、ひとたび編集カットが承認されると、2Dショット作成モジュール220を参照して前述したように、2Dショットがカメラおよびタイミングメタデータから作成される。ブロック314で、セット装飾およびレイアウトは、2Dレイアウトモジュール222を参照して前述したように、ショットに適用されてもよい。ブロック316で、2DライティングおよびFXモジュール224を参照して前述したように、追加の光、シャドウ、コンタクトシャドウ、FX要素、および後処理効果が適用され得る。ブロック318で、ショットフィックスモジュール206を参照して前述したように、フィックスが2Dショットに適用され得、追加の2Dショットが作成され得る。
【0053】
例示的な方法に対する多くの変形形態が可能である。特に明記しない限り、本明細書で説明される様々な実施形態の範囲内で、同様もしくは代替の順序で、または並行に実行される追加の段階、より少ない段階、または代替の段階があってもよいことを理解されたい。
【0054】
図3Bは、本技術の一実施形態に係る例示的な方法350を示す。例えば、方法350は、
図2のシステム200によって実行され得る。ブロック352で、コンピュータベース体験と関連付けられたデータが取得され得る。コンピュータベース体験は、インタラクティブリアルタイム技術に基づき得る。例えば、インタラクティブリアルタイム技術は、インタラクティブコンテンツを提供するために、拡張現実(AR)および/または仮想現実(VR)を適用し得る。ブロック354で、少なくとも1つの仮想カメラが、リアルタイムエンジンにおいてコンピュータベース体験内で構成され得る。ブロック356で、コンピュータベース体験の編集カットと関連付けられたデータは、少なくとも1つの仮想カメラによって撮像されたコンテンツに基づいて、取得され得る。ブロック358で、2次元コンテンツに対応する複数のショットは、リアルタイムエンジンにおいて、コンピュータベース体験の編集カットから生成され得る。ブロック360で、コンピュータベース体験の2次元バージョンと関連付けられたデータは、複数のショットに基づいて、リアルタイムエンジンにおいて生成され得る。2次元バージョンは、生成されたデータに基づいてレンダリングされ得る。
【0055】
例示的な方法に対する多くの変形形態が可能である。特に明記しない限り、本明細書で説明される様々な実施形態の範囲内で、同様もしくは代替の順序で、または並行に実行される追加の段階、より少ない段階、または代替の段階があってもよいことを理解されたい。
【0056】
図4は、本技術の一実施形態に係る例示的なシステム400を示す。例示的なシステム400は、アニメーション作成モジュール402およびリアルタイムエンジンモジュール(または、リアルタイムエンジン)422を含み得る。例示的なシステム400は、ストーリーのインタラクティブバージョンからストーリーの非インタラクティブ2Dバージョンを生成するように実装され得る。例えば、例示的なシステム400は、VR技術またはAR技術に基づくインタラクティブコンピュータアニメリアルタイム体験から、非インタラクティブ2Dでコンピュータアニメ化されたフィルムまたはテレビ番組を生成し得る。別の例では、例示的なシステム400は、VR技術またはAR技術に基づくキャラクタベースのコンピュータアニメリアルタイム体験から、一人称2Dコンピュータアニメフィルムまたはテレビ番組を生成し得る。キャラクタベースのコンピュータアニメリアルタイム体験は、視聴者がキャラクタとしてストーリーに参加し得る没入型体験を伴ってもよい。多くの変形形態が可能である。
図2の例示的なシステム200とは対照的に、例示的なシステム400によって、リアルタイムエンジンモジュール422の代わりにアニメーション作成モジュール402に関連してカメラ配置およびショット作成が発生することが可能になる。したがって、例示的なシステム400は、アニメーション作成モジュール402における正統派のアニメーションがリアルタイムエンジンモジュール422におけるアニメーションと一致する、性質的に主に線形であるコンテンツによく適し得る。アニメーション作成モジュール402およびリアルタイムエンジンモジュール422は、1または複数のコンピューティングデバイス上で動作する1または複数のソフトウェアアプリケーションにおいて実装され得る。この図および本明細書のすべての図に示されるコンポーネント(例えば、モジュール、要素等)は例示的なものに過ぎず、他の実装形態では、追加のコンポーネント、より少ないコンポーネント、一体化されたコンポーネントまたは異なるコンポーネントを含んでよい。関連する詳細を不明瞭にしないため、いくつかのコンポーネントは、図示されなくてよい。様々な実施形態では、アニメーション作成モジュール402およびリアルタイムエンジンモジュール422に関連して説明する機能の1または複数は、好適な順序および組み合わせで実装され得る。
【0057】
いくつかの実施形態では、本明細書で説明する様々なモジュールおよび/またはアプリケーションは、ソフトウェア、ハードウェア、またはその任意の組み合わせとして、部分的にまたは全体として実装され得る。概して、本明細書で説明するように、モジュールおよび/またはアプリケーションは、ソフトウェア、ハードウェア、またはその任意の組み合わせと関連付けられ得る。いくつかの実装形態では、モジュールおよび/またはアプリケーションの1または複数の機能、タスク、および/または動作は、ソフトウェアルーチン、ソフトウェアプロセス、ハードウェア、および/またはそれらの任意の組み合わせによって遂行または実行され得る。場合によっては、本明細書で説明する様々なモジュールおよび/またはアプリケーションは、ユーザコンピューティングデバイスもしくはクライアントコンピューティングデバイス上またはサーバ上のような1または複数のコンピューティングデバイスまたはシステム上で動作するソフトウェアとして部分的にまたは全体として実装され得る。例えば、本明細書で説明する1または複数のモジュールおよび/またはアプリケーション、またはそれらの少なくとも一部は、ユーザコンピューティングデバイスまたはクライアントコンピューティングシステム上で動作する、アプリケーション(例えば、アプリ)、プログラム、またはアプレット等として、またはそれらの中で実装され得る。別の例では、1または複数のモジュールおよび/またはアプリケーション、または少なくともそれらの一部は、ネットワークサーバまたはクラウドサーバのような1または複数のサーバを含む1または複数のコンピューティングデバイスまたはシステムを使用して、実装され得る。多くの変形形態または他の可能性があり得ることを理解されたい。一例示的な実施形態では、アニメーション作成モジュール402は、Autodesk(登録商標)Mayaのようなアニメーション作成ソフトウェアにおいてまたはそれを用いて実装され得、リアルタイムエンジンモジュール422は、Unity(登録商標)ゲームエンジンのようなリアルタイムエンジンにおいてまたはそれを用いて実装され得る。
【0058】
アニメーション作成モジュール402は、VRアニメーションモジュール404、2Dプレビズモジュール406、2Dショット作成モジュール408、およびショットフィックスモジュール410を含み得る。
【0059】
VRアニメーションモジュール404は、ストーリーのインタラクティブバージョンをアニメ化するように構成され得る。例えば、ストーリーのインタラクティブバージョンは、VR技術またはAR技術に基づくコンピュータアニメリアルタイム体験であり得る。ストーリーのインタラクティブバージョンは、ショットのシーケンスで構成され得る。ショットは、三次元空間におけるコンピュータアニメリアルタイム体験の中に位置する仮想カメラによって撮像される幾つかのフレームを表し得る。いくつかの実施形態では、ショットは、アニメーションサイクルまたはサイクルアニメーションのような単一のキャラクタ行動を表し得る。さらに、ショットのシーケンスは、幾つかの関連するショットに対応し得る。例えば、シーケンスは、コンピュータアニメリアルタイム体験内の特定の位置で撮像されたショットを含み得る。
【0060】
2Dプレビズモジュール406は、ストーリーのインタラクティブバージョンにおける仮想カメラのセットを、VRアニメーションモジュール404によってアニメ化されたように配置するように構成され得る。例えば、アーティストは、2Dプレビズモジュール406が、2Dフィルムスクリプト412に基づいて、ストーリーのインタラクティブバージョンにおける仮想カメラのセットを配置するように指示してもよい。例えば、2Dフィルムスクリプト412は、ストーリーのインタラクティブバージョンと関連付けられたスクリプトに基づいて、書かれ得る。仮想カメラのセットは、様々な異なるカメラ角度からアニメーション場面を撮像するために、ストーリーのインタラクティブバージョン内に置かれ得る。2Dプレビズモジュール406はまた、各仮想カメラに対して2D「プレイブラスト」フィード(または、映画)をエクスポートするように構成され得る。例えば、2Dプレビズモジュール406は、各カメラによって撮像されたデータを記録するためにオプションを提供するカメラ記録インタフェースを提供し得る。いくつかの実施形態では、例示的な
図6に示すように、2Dプレビズモジュール406は、レチクル情報およびスレート情報を、エクスポートされた2D「プレイブラスト」フィードの各フレームに挿入し得る。レチクル情報およびスレート情報は、フレームオーバーレイとして提供され得る。いくつかの実施形態では、レチクル情報およびスレート情報は、レチクルデータ(例えば、カメラ境界)、シーケンスデータ、ファイル名、カメラレンズ、カメラ/ショット名、タイムスタンプ、テイク数または繰り返し数、およびアニメーションフレーム番号を含み得る。2Dプレビズモジュール406は、2D編集プロセス414と相互作用し得る。例えば、2D編集プロセス414は、エクスポートされた「プレイブラスト」フィードからの様々なカメラショットを単一のシーケンス映画に組み合わせる編集カットを提供し得る。編集カットは、非線形映像編集ソフトウェアを使用して制作され得る。編集カットは、レビューされ得、必要である場合、新たな仮想カメラが導入され得、および/または既存仮想カメラに対してさらなる調節が行われ得る。1つの実施形態では、どの仮想カメラもすべて単一のショットを表す。別の実施形態では、単一のカメラから複数のショットが構築されてもよい。
【0061】
2Dショット作成モジュール408は、新たなショットを作成し、既存のショットを更新するように構成され得る。概して、2Dショット作成モジュール408は、2D編集プロセス414によって提供された編集カットからショットを作成し得る。2Dショット作成モジュール408は、各ショットおよびその関連するメタデータ情報をデータストア416に格納し得る。仮想(または、アニメーション)カメラと関連付けられたショットメタデータ情報の一例を例示的な
図7で示す。例えば、ショットメタデータ情報は、開始フレーム、終了フレーム、プロダクション名、シーケンス、バージョン、およびレンディションを含み得る。多くの変形形態が可能である。1つの実施形態では、2Dショット作成モジュール408は、ショットデータを格納する共有ファイルを更新し得る。例えば、2Dショット作成モジュール408は、1または複数識別された仮想カメラと関連付けられたショットデータを、データストア416のような特定の出力位置にエクスポートし得る。1つの実施形態では、データストア416は、リモートサーバ上に常駐する。別の実施形態では、ウェブベースアプリケーションは、データストア416におけるデータを同期するために、アニメーション作成モジュール402、リアルタイムエンジンモジュール422、および2D編集モジュール414における様々なモジュールとインタフェースで接続する。
図8は、ショットデータをエクスポートするための例示的エクスポートインタフェースを示す。別の実施形態では、2Dショット作成モジュール408は、データストア416を通じてアクセス可能なショーデータベースを更新し得る。2Dショット作成モジュール408はまた、例えば、ファイルシステムまたはクラウドベースストレージシステムに仮想カメラ情報をエクスポートし得る。
【0062】
ショットフィックスモジュール410は、ストーリーのインタラクティブバージョンから生成されたストーリーの非インタラクティブバージョンと関連付けられたショットに様々なフィックスを適用するように構成され得る。例えば、ショットフィックスモジュール410は、リアルタイムエンジンモジュール422によってストーリーの非インタラクティブバージョンのために生成されたショットにフィックスを適用し得る。概して、ストーリーの非インタラクティブバージョンと関連付けられたショットは、ストーリーのインタラクティブバージョンと関連付けられたショットから導出され得る。結果として、ストーリーのインタラクティブバージョンと関連付けられたショットに対する更新は、ストーリーの非インタラクティブバージョンと関連付けられた対応するショットに反映されてもよい。いくつかの例では、ストーリーの非インタラクティブバージョンと関連付けられたショットにのみ適用される特定の調節が必要とされてもよい。例えば、ショットにおいて表されるキャラクタアイラインは、ストーリーのインタラクティブバージョンにおいて正確であってもよいが、ストーリーの非インタラクティブバージョンと関連付けられたショットにおいて間違えた方向を見ているように見えてもよい。そのような例では、ショットフィックスモジュール410は、ストーリーの非インタラクティブバージョンに対する特定の調節を必要とするショットを分岐するように構成され得る。ショットが分岐されるとき、ショットの別個のコピーがストーリーのインタラクティブバージョンおよび非インタラクティブバージョンのために維持される。ショットに対しての調整が、ストーリーのインタラクティブバージョンに影響することなく、ストーリーの非インタラクティブバージョンに対して行われ得る。前述の例では、ストーリーのインタラクティブバージョンと関連付けられた対応するショットにおけるキャラクタアイラインに影響することなく、ストーリーの非インタラクティブバージョンと関連付けられたショットキャラクタアイラインに対して、調整が行われ得る。いくつかの例では、ストーリーの非インタラクティブバージョンは、新たなショットが作成されることを必要としてもよい。1つの例では、ストーリーのインタラクティブバージョンにおける1つのショットは、(例えば、クローズアップと、ミディアムショットと、ショットを確立させるためとの)異なるカメラ角度に対応する非インタラクティブ2Dバージョンにおけるいくつかのより小さく潜在的に重なり合うショットに分割される。これらの新たなショットは、特に非インタラクティブバージョンのために作成されるコンピュータアニメーションに対応してもよい。例えば、ストーリーのインタラクティブバージョンのためのキャラクタと関連付けられた見栄えは、ストーリーの非インタラクティブバージョンから関連付けられたショットにおいて許容できるものでなくてもよい。別の例では、ストーリーのインタラクティブバージョンと関連付けられたショットは、視聴者による何らかのインタラクションを伴い得る。そのようなインタラクションがストーリーのインタラクティブバージョンにおいて許容され得るが、インタラクションは、ストーリーの非インタラクティブバージョンにおける複製のためには好適ではない。そのような例では、ショットフィックスモジュール410は、ストーリーのインタラクティブバージョンと関連付けられた既存のショットを訂正または置換するストーリーの非インタラクティブバージョンのための新たなショットの作成を許可し得る。ショットフィックスモジュール410は、ストーリーの非インタラクティブバージョンに関連してフィックスまたは追加されたショットと関連付けられたデータを、データストア416に格納し得る。
【0063】
リアルタイムエンジンモジュール422は、VRライティングおよびFXモジュール424、2Dショットインポートモジュール426、2Dレイアウトモジュール428、および2DライティングおよびFXモジュール430を含み得る。
【0064】
VRライティングおよびFXモジュール424は、ストーリーのインタラクティブバージョンのためのライティングおよびメディア効果(FX)要素を適用するように構成され得る。ライティングおよびFX要素は、概して既知の技術を使用して作成され得る。
【0065】
2Dショットインポートモジュール426は、ショットデータをリアルタイムエンジンモジュール422の中にインポートするように構成され得る。例えば、ひとたびショットおよびカメラがデータストア416(例えば、ショーデータベース)に追加されると、2Dショットインポートモジュール426は、
図9の例に示すように仮想カメラフィードおよび2Dショットデータをリアルタイムエンジンモジュール422の中にインポートするために、オプションを提供するインタフェースを提供し得る。新たなショットタイムラインが、カメラデータがインポートされた各2Dショットのためにセットアップされ得る。例えば、2Dショットデータ(例えば、仮想カメラフィード)を格納するディレクトリは、インタフェースを通じて識別され得る。インタフェースはまた、所与のショットのためのショット情報(例えば、フレーム範囲、パス等)を見るためにオプションを提供し、ショットを再インポートし、ショットを削除し得る。ショットをインポートするとき、2Dショットインポートモジュール426は、各ショットのための追加の2Dデータを作成し得る。追加の2Dデータは、既存のAR/VRコンテンツの上に層を作り得る。これは、既存のAR/VRコンテンツを基礎として使用しながら、ショット毎の調整が付加的に行われることを可能にする。1つの実施形態では、部署毎に調節されAR/VRコンテンツタイムラインの上に適用され得る追加のタイムラインとして、2Dデータが表され得る。
【0066】
2Dレイアウトモジュール428は、ショットを向上させるように構成され得る。例えば、2Dレイアウトモジュール222は、追加のセット装飾およびレイアウトをショット毎に適用し得る。
【0067】
2DライティングおよびFXモジュール430は、ショットに追加の特徴を追加するために、オプションを提供するように構成され得る。例えば、2DライティングおよびFXモジュール430は、ライトと、シャドウと、コンタクトシャドウと、FX要素と、被写体ぶれおよび被写界深度のような後処理効果とを適用し得る。例えば、ライティングアーティストおよびFXアーティストによって指示されるように、追加の特徴が適用され得る。追加の特徴を適用することは、各ショットの外観を拡張し得る。1つの実施形態では、2DライティングおよびFXモジュール430は、VRコンテンツをキャラクタアニメーション、ライティング、およびFX要素を表すマスタタイムラインのセットとして表す。本実施形態では、コンテンツは、主に線形に動作する。別の実施形態では、コンテンツは非線形であり、有限ステートマシン、ブレンドツリー、およびカスタムAIシステムのようなタイムラインに加えて追加のシステムを使用する。
【0068】
2D合成部432は、概して既知のアプローチに基づいて、最終的なレンダリングフレームを生成し得る。例えば、2D合成部432は、リアルタイムエンジンモジュール422によってレンダリングされる際、最終的なフレームおよび層パスに基づいて、最終的なレンダリングフレームを生成し得る。2D合成部432はまた、最終的なレンダリングフレームに基づいて、2Dコンピュータアニメ映画434のような、ストーリーの非インタラクティブバージョンを生成し得る。
【0069】
図5Aは、本技術の一実施形態に係る例示的な方法500を示す。例えば、方法500は、
図4のシステム400によって実行され得る。ブロック502で、シーケンスおよびショットは、VRアニメーションモジュール404を参照して前述したように、アニメーション作成ツールにおけるAR/VRのアニメーションまたは体験のためにアニメ化され得る。ブロック504で、仮想カメラは、2Dプレビズモジュール406を参照して前述したように、アニメーション作成ツールの中に置かれ得る。ブロック506で、編集カットは、2D編集プロセス414を参照して前述したように、非線形映像編集ソフトウェアにおいて制作され得る。ブロック508で、ひとたび編集カットが承認されると、2Dショット作成モジュール408を参照して前述したように、2Dショットがカメラおよびタイミングメタデータから作成される。ブロック510で、ショットフィックスモジュール410を参照して前述したように、フィックスが2Dショットに適用され得、追加の2Dショットが作成され得る。ブロック512で、ライティングおよびFX要素は、VRライティングおよびFXモジュール424を参照して前述したように、AR/VRのアニメーションまたは体験のために作成され得る。ブロック514で、2Dショットデータは、2Dショットインポートモジュール426を参照して前述したように、リアルタイムエンジンの中にインポートされ得る。ブロック516で、セット装飾およびレイアウトは、2Dレイアウトモジュール428を参照して前述したように、ショットに適用されてもよい。ブロック518で、2DライティングおよびFXモジュール430を参照して前述したように、追加の光、シャドウ、コンタクトシャドウ、FX要素、および後処理効果が適用され得る。
【0070】
例示的な方法に対する多くの変形形態が可能である。特に明記しない限り、本明細書で説明される様々な実施形態の範囲内で、同様もしくは代替の順序で、または並行に実行される追加の段階、より少ない段階、または代替の段階があってもよいことを理解されたい。
【0071】
図5Bは、本技術の一実施形態に係る例示的な方法550を示す。例えば、方法550は、
図4のシステム400によって実行され得る。ブロック552で、コンピュータベース体験と関連付けられたデータが取得され得る。コンピュータベース体験は、インタラクティブリアルタイム技術に基づき得る。例えば、インタラクティブリアルタイム技術は、インタラクティブコンテンツを提供するために、拡張現実(AR)および/または仮想現実(VR)技術を適用し得る。ブロック554で、少なくとも1つの仮想カメラが、アニメーション作成アプリケーションにおいて、コンピュータベース体験内で構成され得る。ブロック556で、2次元コンテンツに対応する複数のショットは、アニメーション作成アプリケーションにおいて、少なくとも1つの仮想カメラによって撮像されたコンテンツの編集カットから生成され得る。ブロック558で、コンピュータベース体験の2次元バージョンと関連付けられたデータは、複数のショットに基づいて、リアルタイムエンジンにおいて生成され得る。2次元バージョンは、生成されたデータに基づいてレンダリングされ得る。
【0072】
例示的な方法に対する多くの変形形態が可能である。特に明記しない限り、本明細書で説明される様々な実施形態の範囲内で、同様もしくは代替の順序で、または並行に実行される追加の段階、より少ない段階、または代替の段階があってもよいことを理解されたい。
【0073】
図10は、本技術の一実施形態に係る、リアルタイムエンジン(例えば、リアルタイムエンジンモジュール212、リアルタイムエンジンモジュール422)内のショットを選択するために使用され得る例示的ショットピッカインタフェースを示す。ショットピッカインタフェースは、2Dショット作成モジュール220または2Dショット作成モジュール408によって提供されてもよい。インタフェースは、所与のシーンのために利用可能なすべてのショットのリストを提供し得る。ショット選択がされると、シーンは、対応するショットタイムラインを使用するように構成され得る。結果として、アーティストは、リアルタイムエンジンのタイムラインウィンドウの中で、ショットを洗練させることができる。追加的に、ショットピッカインタフェースは、ショット毎にジオメトリを非表示にするコンポーネントのような有用なワークフローオブジェクト、および付加的2Dライトが存在するゲームオブジェクトにアクセスするためのオプションを提供し得る。2Dショットにおけるライティングに行われた調整は、AR/VRライティングの上に付加的であり得る。さらに、AR/VRライティングに対するいかなる変更も、対応する2Dショットに反映される。いくつかの実施形態では、ライティングマネジャインタフェースは、それによりアーティストがAR/VRシーンと2Dショットとの間のリンクを切断することが可能になるオプションを提供し得る。ひとたびリンクが切断されると、AR/VRライティングに対する変更は、対応する2Dショットに反映されない。
【0074】
図11は、本技術の一実施形態に係る、仮想カメラによって撮像されたショットを記録するためにオプションを提供し得る例示的カメラ記録インタフェースを示す。例えば、カメラ記録インタフェースは、2Dショット作成モジュール220または2Dショット作成モジュール408によって提供されてもよい。カメラ記録インタフェースは、異なる構成を有する様々なコンテンツを単一のバッチで記録するためにカスタマイズされ得る。さらに、レチクル情報およびスレート情報は、前述のように、フレームに適用され得る。1つの実施形態では、以下情報が含まれる:レチクル(カメラ境界)、シーケンス、ファイル名、カメラレンズ、カメラ/ショット名、日付、およびアニメーションフレーム番号。
【0075】
図12は、本技術の一実施形態に係るリアルタイムショットレンダラインタフェースを示す。例えば、リアルタイムショットレンダラインタフェースが、リアルタイムエンジンモジュール212またはリアルタイムエンジンモジュール422によって、提供されてもよい。リアルタイムショットレンダラインタフェースは、リアルタイムエンジンモジュール212およびリアルタイムエンジンモジュール422を使用して最終的なフレームをレンダリングするためにオプションを提供し得る。例えば、リアルタイムショットレンダラインタフェースは、プレビズまたは中間フレームをレンダリングするためにオプションを提供し得る。いくつかの実施形態では、リアルタイムショットレンダラインタフェースは、カメラ記録インタフェースに関連して使用され得る。そのような実施形態では、フレームに含まれるべき仮想カメラおよびスレート情報を識別するために、カメラ記録インタフェースが使用され得る。そして、スレート情報を用いてフレームをレンダリングするためにリアルタイムショットレンダラインタフェースが使用され得る。リアルタイムショットレンダラインタフェースは、レンダリングするために異なる解像度を選択するために、オプションを提供し得る。リアルタイムショットレンダラインタフェースはまた、EXRを作成し、2D合成部のための複数のレンダ層パス(例えば、深度、無光沢、およびビューティ)を制作するために、オプションを提供し得る。様々な実施形態では、フレームは、リアルタイムエンジンモジュール212またはリアルタイムエンジンモジュール422を使用して、レンダリングされ得る。1つの実施形態では、レンダリングソフトウェアは、選択されたショットをアクティブ化し、それらを1つずつレンダリングしてもよい。1つの実施形態では、レンダリングソフトウェアは、1または複数のリモートマシン上で並行してショットをレンダリングしてもよい。レンダリングは、インエディタで行われ得る。すなわち、ビルドからショットをレンダリングする代わりに、レンダリングソフトウェアは、リアルタイムエンジンモジュール212またはリアルタイムエンジンモジュール422を「再生モード」にし、その後、フレーム毎にショットカメラからショットカメラのレンダリングテクスチャをかき集めることに進む。一実施形態では、レンダリングソフトウェアは、リアルタイムエンジンモジュール212またはリアルタイムエンジンモジュール422の中に構築された記録システムに関連して動作し得る。レンダリングは、インエディタで実行され得る。本実施形態では、ユーザは、レンダリングの領域を定義するタイムライン上で、レコーダクリップを特定し得る。これらのクリップはまた、どの任意の出力変数(AOV)がレンダリングされるかを定義する。AOVまたはレンダリングパスは、いかなる任意のシェーディングネットワークコンポーネントでも異なる画像にレンダリングするやり方を提供する。例えば、アーティストは、別個の深度、無光沢、およびビューティパスをレンダリングし得、後に合成プロセスにおいてそれらを再度組み合わせ得る。選ばれたAOVは、順方向レンダリングパイプラインに対する追加のレンダリングパスとして機能する。特に、これらのパスは、カメラのレンダリングテクスチャの代わりに、ユーザ定義のレンダリングテクスチャに合わせてレンダリングする。これらのパスのためのレコーダはその後、これらのユーザ定義のレンダリングテクスチャをディスクに書き込む。合成プロセスを容易にするために、単一のフレームのためのAOVパスが、例えば、SimpleImageIOライブラリを使用して、1つのEXRファイルの中に書き込まれる。
【0076】
図13は、例示的レンダリングフレームを示す。フレームは、リアルタイムエンジンモジュール212またはリアルタイムエンジンモジュール422を使用して、レンダリングされてもよい。フレームは、アニメーション名、シーケンス、ファイル名、タイムスタンプ、アニメーション作成アプリケーションにおけるフレームと関連付けられた識別番号、およびリアルタイムエンジンにおけるフレームと関連付けられた識別番号のようなメタデータ情報を含み得る。
【0077】
図14は、VRマスタタイムラインの上に層を作る付加的2Dショットタイムラインを作成するために使用され得るタイムラインインタフェースを示す。例えば、タイムラインインタフェースは、2Dショットインポートモジュール426によって提供され得る。
【0078】
図15は、それによって、基礎をなすVRライティングを修正する必要なくライティングアーティストがショット専用の付加的改善を行うことが可能になる別のタイムラインインタフェースを示す。いくつかの実施形態では、これらの付加的変更を行うことは、コストが高いグローバルイルミネーション計算を焼き直すことを必要としない。
【0079】
図16は、前述のライティングインタフェースを組み込む組み合わせられたライティングインタフェースを示す。組み合わせられたライティングインタフェースが、リアルタイムエンジンモジュール212またはリアルタイムエンジンモジュール422によって、提供され得る。
【0080】
図17は、本技術に基づいて生成され得る例示的コンタクトシートを示す。コンタクトシートは、1または複数のショットと関連付けられたフレームを含み得る。
【0081】
図18~
図24は、本技術に基づいて行われ得る様々な改善を示す。例えば、本技術は、2Dコンテンツにおいてショットライティングを改善し得る。概して、インタラクティブプロジェクトおよびVRプロジェクトのためのライティングは多くの場合正確であるように見えるが、このライティングは、特定のショット角度のために構成されたときには意図する効果を生み出さない場合がある。例えば、
図18は、AR/VRバージョンからのライティングを有する2Dコンテンツを示す。本例では、烏のキャラクタ1802は、焦点であるように意図している。しかしながら、AR/VRバージョンからのライティングは、烏のキャラクタ1802を焦点として示さない。前述のように、本技術によって、
図19の例において示すように烏のキャラクタ1802を焦点として強調するために、2Dコンテンツにおいてショットライティング上で層をアーティストが作ることが可能になる。本技術によって、
図20の例において示すように、コンタクトシャドウを亀のキャラクタ2002にアーティストが追加することが可能になる。さらに、本技術によって、
図21の例において示すように視聴者の注意を集中させ、ショットを映画的にするために、後処理(例えば、被写界深度)をアーティストが適用することが可能になる。本技術によってまた、追加のFX要素を、AR/VRコンテンツのために好適とならない2Dコンテンツにアーティストが追加することが可能になる。例えば、
図22は、AR/VRコンテンツからの元のショット2202を示す。
図22はまた、元のショット2202から導出された改善された2Dショット2212を示す。改善された2Dショット2212では、雪の足跡に対応するFX要素が環境の中で亀のキャラクタを地面に置くために追加されている。本技術によってまた、2Dコンテンツを改善するために、アニメーションフィックスをアーティストが適用することが可能になる。例えば、
図23は、コンピュータアニメリアルタイム体験において、あるキャラクタを演じている視聴者をキャラクタたちが見ているAR/VRコンテンツからのフレームを示す。
図23では、コンピュータアニメリアルタイム体験においてあるキャラクタを演じている視聴者に関連付けられた仮想カメラを、キャラクタが見ている。コンピュータアニメリアルタイム体験のためには許容できるが、
図23において反映されたキャラクタ行動は、キャラクタが間違えた方向を見ているようになるので、2Dコンテンツには変換されない。これに対処するために、本技術によって、新たなアニメーションが作成され、2Dコンテンツとして使用されることが可能になる。例えば、
図24は、蟻のキャラクタ2404のアニメーションが
図23における前のショットとスムーズにつなぎ合わせられながら、烏のキャラクタ2402が蟻のキャラクタ2404を見ている新たなアニメーションを示す。
図24において反映された新たなアニメーションは、2Dコンテンツとして見るために、
図23におけるAR/VRコンテンツに対応するアニメーションと比べて、より良く適合され得る。多くの変形形態が可能である。
[ハードウェア実装形態]
【0082】
前述のプロセスおよび特徴は、多種の機械およびコンピュータシステムアーキテクチャによって、多種のネットワークおよびコンピューティング環境において、実装され得る。
図25は、本技術の一実施形態に係る、その中で機械に本明細書で説明する実施形態の1または複数を実行させる命令のセットが実行され得る例示的な機械2500を示す。実施形態は、1または複数のシステム、方法、またはコンピュータ可読媒体に関し得る。機械は、他の機械に接続(例えば、ネットワーク化)されてもよい。ネットワーク化された展開では、クライアント-サーバネットワーク環境におけるサーバまたはクライアントマシンの能力の中で、またはピアツーピア(または、分散型)配信ネットワーク環境におけるピアマシンとして、機械は動作してもよい。
【0083】
コンピュータシステム2500は、バス2508を介して互いに通信する、プロセッサ2502(例えば、中央処理装置(CPU)、グラフィック処理装置(GPU)、またはその両方)、メインメモリ2504、および不揮発性メモリ2506(例えば、それぞれ揮発性RAMおよび不揮発性RAM)を含む。プロセッサ2502は、並列処理システムのような任意の好適な形態で実装し得る。場合によっては、例示的な機械2500は、コンピューティングデバイスまたはシステムに対応し得るか、含み得るか、またはその中に含まれ得る。例えば、いくつかの実施形態では、機械2500は、デスクトップコンピュータ、ノートパソコン、パーソナルデジタルアシスタント(PDA)、家電機器、ウェアラブルデバイス、カメラ、タブレット、または携帯電話等であり得る。1つの実施形態では、コンピュータシステム2500はまた、ビデオディスプレイ2510、英数字入力デバイス2512(例えば、キーボード)、カーソル制御デバイス2514(例えば、マウス)、ドライブユニット2516、信号生成デバイス2518(例えば、スピーカー)、およびネットワークインタフェースデバイス2520を含む。
【0084】
1つの実施形態では、ビデオディスプレイ2510は、ユーザ入力のためのタッチセンサスクリーンを含む。1つの実施形態では、キーボードおよびマウスの代わりに、タッチセンサスクリーンが使用される。ディスクドライブユニット2516は、本明細書で説明する方法論または機能の任意の1または複数を具現化する命令2524(例えば、ソフトウェア)の1または複数のセットが格納されている機械可読媒体2522を含む。命令2524はまた、コンピュータシステム2500によるそれらの実行の間に、メインメモリ2504内および/またはプロセッサ2502内に完全にまたは少なくとも部分的に常駐し得る。命令2524はさらに、ネットワークインタフェースデバイス2520を介してネットワーク2540上で送信または受信され得る。いくつかの実施形態では、機械可読媒体2522はまた、データベース2525を含む。
【0085】
揮発性RAMは、メモリの中のデータをリフレッシュまたは維持すべく電力を継続的に必要とするダイナミックRAM(DRAM)として実装されてもよい。不揮発性メモリは一般的に、磁気ハードドライブ、磁気光学ドライブ、光学ドライブ(例えば、DVD RAM)、またはシステムから電力が取り除かれた後でさえもデータを維持する他のタイプのメモリシステムである。不揮発性メモリ2506はまた、ランダムアクセスメモリであってもよい。不揮発性メモリ2506は、コンピュータシステム2500における残りのコンポーネントに直接結合されたローカルデバイスであり得る。モデムまたはイーサネット(登録商標)インタフェースのようなネットワークインタフェースを通じて、本明細書で説明するコンピュータシステムのいずれかに結合されたネットワークストレージデバイスのようなシステムからリモートにある不揮発性メモリがまた使用され得る。
【0086】
機械可読媒体2522が一例示的な実施形態では単一の媒体であるように示しているが、「機械可読媒体」という用語は、命令の1または複数セットを格納する単一の媒体または複数の媒体(例えば、集中型または分散型データベース、および/または関連付けられたキャッシュおよびサーバ)を含むように受け取られるべきである。「機械可読媒体」という用語はまた、機械による実行のために命令のセットを格納、エンコード、または保持することが可能であって、本技術の方法論の任意の1または複数を機械に実行させる任意の媒体を含むように受け取られなくてはならない。「機械可読媒体」という用語は、したがって、これらに限定されないが、ソリッドステートメモリと、光学媒体および磁気媒体と、搬送波信号とを含むように受け取られるべきである。本明細書で使用される「ストレージモジュール」という用語は、機械可読媒体を使用して、実装されてもよい。
【0087】
概して、本発明の実施形態を実装するために実行されるルーチンは、オペレーティングシステムの一部、あるいは特定のアプリケーション、コンポーネント、プログラム、オブジェクト、「プログラム」もしくは「アプリケーション」と呼ばれる命令のモジュールもしくはシーケンスとして実装され得る。例えば、1または複数のプログラムまたはアプリケーションは、本明細書で説明する、機能、技術、およびプロセスのいずれかまたはすべてを実行するために使用され得る。プログラムまたはアプリケーションは一般的に、機械における様々なメモリおよびストレージデバイスにおいて様々な時間に設定された1または複数の命令セットであって、1または複数のプロセッサによって読み取られ実行されると、本明細書で説明する実施形態の様々な態様を伴う要素を実行する動作をコンピューティングシステム2500に実行させる命令セットを備える。
【0088】
実行可能なルーチンおよびデータは、例えば、ROM、揮発性RAM、不揮発性メモリ、および/またはキャッシュメモリを含む様々な場所に格納されてもよい。これらのルーチンおよび/またはデータの一部は、ストレージデバイスの任意のものに格納され得る。さらに、ルーチンおよびデータは、集中型サーバまたはピアツーピアネットワークから取得され得る。ルーチンおよびデータの異なる部分は、異なる時間および異なる通信セッションにおいて、または同じ通信セッションにおいて、異なる集中型サーバおよび/またはピアツーピアネットワークから取得され得る。ルーチンおよびデータは、アプリケーションの実行の前に全体として取得され得る。代替的に、ルーチンおよびデータの一部は、実行のために必要なときに、動的にジャストインタイムで取得され得る。したがって、ルーチンおよびデータが、時間の特定のインスタンスにおいて機械可読媒体上に全体がある必要はない。
【0089】
実施形態は完全にコンピューティングシステムの文脈で説明されてきたが、当業者は、様々な実施形態が様々な形態のプログラム製品として流通されることが可能であること、および本明細書で説明する実施形態が、実際に流通を達成するために使用された特定のタイプの機械またはコンピュータ可読媒体に関わらず等しく適用されることを理解するだろう。機械可読媒体の例は、これらに限定されないが、とりわけ、揮発性メモリデバイスおよび不揮発性メモリデバイス、フロッピーディスクおよび他のリムーバブルディスク、ハードディスクドライブ、光ディスク(例えば、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)等)のような記録可能なタイプの媒体と、デジタルおよびアナログの通信リンクのような伝送型媒体とを含む。
【0090】
代替的に、または組み合わせとして、本明細書で説明する実施形態は、特定用途向け集積回路(ASIC)またはフィールドプログラマブルゲートアレイ(FPGA)を使用してのように、ソフトウェア命令を用いてまたは用いない専用回路を使用して実装され得る。実施形態は、ソフトウェア命令なしまたはソフトウェア命令と組み合わせた配線回路を使用して実装され得る。したがって、技術は、ハードウェア回路およびソフトウェアの任意の特定の組み合わせ、またはデータ処理システムで実行される命令のための任意の特定のソースのいずれにも限定されない。
【0091】
説明を目的として、多くの具体的な詳細が、説明の完全な理解を提供すべく記載されている。しかしながら、当業者にとって、本開示の実施形態はこれらの特定の詳細なしで実施され得ることが明らかであろう。いくつかの例では、モジュール、構造、プロセス、特徴、およびデバイスは、説明を不明瞭にすることを回避すべくブロック図形式で示されているか、または本明細書で説明されている。他の例では、機能ブロック図およびフロー図が、データおよび論理フローを表すために示されている。ブロック図およびフロー図のコンポーネント(例えば、モジュール、エンジン、ブロック、構造、デバイス、特徴等)は、本明細書で明示的に説明され示されているものとは別の方式で、様々に組み合わせられ、分離され、取り除かれ、並べ替えられ、置換されてもよい。
【0092】
「1つの実施形態」、「一実施形態」、「他の実施形態」、「別の実施形態」、または「様々な実施形態では」等への本明細書における言及は、実施形態に関連して説明される特定の特徴、設計、構造、または特性が、本開示の少なくとも1つの実施形態に含まれることを意味する。例えば、本明細書の中の様々な箇所における「一実施形態に係る」、「1つの実施形態では」、「一実施形態では」、「様々な実施形態では」、または「別の実施形態では」という表現が現れることは、必ずしもすべてが同じ実施形態に言及しているわけではなく、他の実施形態の相互に排他的な別個または代替的な実施形態であるわけでもない。その上、「実施形態」等への明白な言及があるか否かに関わらず、いくつかの実施形態では様々に組み合わせられ含まれてもよいが、他の実施形態では様々に省略されてもよい様々な特徴が説明される。同様に、いくつかの実施形態のためにはプリファレンスまたは要件であってもよいが他の実施形態のためにはそうではない様々な特徴が説明される。
【0093】
実施形態が特定の例示的な実施形態を参照して説明されてきたが、様々な変更および変更がこれらの実施形態に行われ得ることが明らかであろう。したがって、本明細書および図面は、限定的な意味ではなく、例示的な意味であるとみなされるものである。前述の明細書は、特定の例示的な実施形態を参照して、説明を提供する。以下の特許請求の範囲に記載されているようなより幅広い主旨および範囲から逸脱することなく、様々な変更がこれに行われ得ることが明らかであろう。したがって、本明細書および図面は、限定的な意味ではなく、例示的な意味であるとみなされるものである。
【0094】
図面のいくつかが幾つかの動作または方法の段階を特定の順番で示すが、順番に左右されない段階は、並べ替えられてもよく、他の段階が組み合わせられるか、または省略されてもよい。いくつかの並べ替えまたは他のグループ化が具体的に言及されているが、他は当業者にとって明らかとなるので、代替形態の網羅的なリストは提示しない。その上、ステージが、ハードウェア、ファームウェア、ソフトウェア、またはそれらの任意の組み合わせで実装され得ることが認識されるべきである。
【0095】
様々な変更が、本発明の要点から逸脱することなく行われてもよいことも理解されるべきである。そのような変更はまた、本説明に暗に含まれている。それらは依然として、本発明の範囲内に含まれる。この開示は、本発明の多くの態様を、独立として、および、全体的なシステムとしての両方、および方法と機器モードとの両方において包含する特許をもたらすことを意図していることが理解されるべきである。
【0096】
さらに、本発明および特許請求の範囲の様々な要素の各々はまた、様々な方式で達成されてもよい。本開示は、各そのような変形形態を包含し、任意の機器の実施形態の実施形態の変形形態、方法もしくはプロセスの実施形態、または単にこれらの任意の要素の変形形態でさえもあるものとして理解されるべきである。
【0097】
さらに、「備える(comprising)」という移行句の使用は、従来の特許請求の範囲の解釈に係る、本明細書での「オープンエンドな」特許請求の範囲を維持するために使用される。したがって、文脈によって特に必要とされない限り、「備える(comprise)」という用語、または「備える(comprises)」もしくは「備えている(comprising)」のような変形形態は明記された要素もしくは段階、または要素もしくは段階のグループを含むことを示唆することを意図しており、いずれの他の要素もしくは段階、または要素もしくは段階のグループも排除することを意図していないことが理解されるべきである。そのような用語は、出願人が、以下の特許請求の範囲に係る、法的に許容され得る最も広範な有効範囲が得られるように、それらの最も拡大的な形態で解釈されるべきである。
【0098】
本明細書で使用される用語は、読みやすさおよび教示の目的のために主に選択されており、本発明の主題を詳述または制限するために選択されてきていない場合がある。したがって、本発明の範囲はこの詳細な説明によってではなく、むしろ本明細書に基づく出願の際に生じる任意の特許請求によって限定されることを意図している。したがって、本発明の実施形態の開示は、これらに限定されないが、以下の特許請求の範囲において記載されている本発明の範囲の例示であることを意図している。