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

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

▶ レモン インコーポレイテッドの特許一覧

特表2025-504339複数のプレビューウィンドウを用いた視覚エフェクト設計
<>
  • 特表-複数のプレビューウィンドウを用いた視覚エフェクト設計 図1
  • 特表-複数のプレビューウィンドウを用いた視覚エフェクト設計 図2
  • 特表-複数のプレビューウィンドウを用いた視覚エフェクト設計 図3
  • 特表-複数のプレビューウィンドウを用いた視覚エフェクト設計 図4
  • 特表-複数のプレビューウィンドウを用いた視覚エフェクト設計 図5
  • 特表-複数のプレビューウィンドウを用いた視覚エフェクト設計 図6
  • 特表-複数のプレビューウィンドウを用いた視覚エフェクト設計 図7
  • 特表-複数のプレビューウィンドウを用いた視覚エフェクト設計 図8
  • 特表-複数のプレビューウィンドウを用いた視覚エフェクト設計 図9
  • 特表-複数のプレビューウィンドウを用いた視覚エフェクト設計 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2025-02-12
(54)【発明の名称】複数のプレビューウィンドウを用いた視覚エフェクト設計
(51)【国際特許分類】
   G06T 19/00 20110101AFI20250204BHJP
   G06F 3/04845 20220101ALI20250204BHJP
   G06F 3/01 20060101ALI20250204BHJP
【FI】
G06T19/00 600
G06F3/04845
G06F3/01 510
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024539753
(86)(22)【出願日】2022-12-23
(85)【翻訳文提出日】2024-08-09
(86)【国際出願番号】 SG2022050929
(87)【国際公開番号】W WO2023128864
(87)【国際公開日】2023-07-06
(31)【優先権主張番号】17/566,342
(32)【優先日】2021-12-30
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Blu-ray
2.Linux
3.IOS
4.イーサネット
(71)【出願人】
【識別番号】521388058
【氏名又は名称】レモン インコーポレイテッド
【氏名又は名称原語表記】Lemon Inc.
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100229448
【弁理士】
【氏名又は名称】中槇 利明
(72)【発明者】
【氏名】クライトン,マリヤン
(72)【発明者】
【氏名】ルオ,ニトォ
(72)【発明者】
【氏名】リアン,シンルン
(72)【発明者】
【氏名】セラーノ,ジョサイア ジョン
(72)【発明者】
【氏名】ビジャヤラガバン,ラクシュミナラヤナン
(72)【発明者】
【氏名】ラマリンガム,ディーパック
【テーマコード(参考)】
5B050
5E555
【Fターム(参考)】
5B050AA03
5B050BA06
5B050BA09
5B050BA12
5B050CA07
5B050CA08
5B050DA01
5B050EA04
5B050EA19
5B050EA26
5B050FA02
5B050FA13
5E555AA79
5E555BA02
5E555BA03
5E555BA05
5E555BA19
5E555BA38
5E555BA83
5E555BB02
5E555BB03
5E555BB05
5E555BB38
5E555BC18
5E555BD01
5E555BE17
5E555CA02
5E555CA03
5E555CA12
5E555CA15
5E555CA18
5E555CB02
5E555CB12
5E555CB20
5E555CB33
5E555CB74
5E555CC03
5E555DB03
5E555DB53
5E555DB56
5E555DC09
5E555DC13
5E555DD11
5E555EA07
5E555FA00
(57)【要約】
本開示は、エフェクトを設計するための技術を説明する。第1のシーンの第1のコピーを含む第1のウィンドウが作成され得る。第1のシーンは、第1の視覚エフェクトを含む。第1のシーンの第2のコピーを含む第2のウィンドウが作成され得る。第1のウィンドウ及び第2のウィンドウは、第1のシーン内での第1の視覚エフェクトの異なるバージョンのテスト及び比較をほぼ同時に行うことができるように設定される。第1のウィンドウ内の第1のシーンの第1のコピーが、第1のシーンの第1のコピー内の第1の視覚エフェクトの少なくとも1つの属性に対する第1の変更に基づいて修正され得る。第2のウィンドウ内の第1のシーンの第2のコピーが、第1のシーンの第2のコピー内の第1の視覚エフェクトの少なくとも1つの属性に対する第2の変更に基づいて修正され得る。
【特許請求の範囲】
【請求項1】
コンピューティング装置であって、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサにより実行されると、当該コンピューティング装置に、
第1のユーザ入力が受信されたことに応じて、第1のプロジェクトに関連付けられている第1のシーンであって、第1の視覚エフェクトを含む第1のシーンの第1のコピーを含む第1のウィンドウを作成することと、
第2のユーザ入力が受信されたことに応じて、前記第1のシーンの第2のコピーを含む第2のウィンドウを作成することであって、前記第1のウィンドウ及び前記第2のウィンドウは、前記第1のシーン内の前記第1の視覚エフェクトの異なるバージョンのテスト及び比較をほぼ同時に行うことができるように設定されることと、
前記第1のウィンドウ内の前記第1のシーンの前記第1のコピーを、前記第1のシーンの前記第1のコピー内の前記第1の視覚エフェクトの少なくとも1つの属性に対する第1の変更に基づいて修正することと、
前記第2のウィンドウ内の前記第1のシーンの前記第2のコピーを、前記第1のシーンの前記第2のコピー内の前記第1の視覚エフェクトの少なくとも1つの属性に対する、前記第1の変更と異なる第2の変更に基づいて修正することと、
を含むオペレーションを実行させるコンピュータ可読命令を含む少なくとも1つのメモリと、
を備える、コンピューティング装置。
【請求項2】
前記オペレーションは、
前記第1のシーンの修正された前記第1のコピーを、前記少なくとも1つのメモリ内の、前記第1のウィンドウに関連付けられている第1の設定ファイルに記憶することと、
前記第1のシーンの修正された前記第2のコピーを、前記少なくとも1つのメモリ内の、前記第2のウィンドウに関連付けられている第2の設定ファイルに記憶することと、
をさらに含む、請求項1に記載のコンピューティング装置。
【請求項3】
前記オペレーションは、
前記第1のプロジェクトにアクセスすることを示すユーザ入力が受信されたことに応じて、前記第1のウィンドウを、前記第1の設定ファイルから前記第1のシーンの修正された前記第1のコピーがロードされたことに基づいて表示し、前記第2のウィンドウを、前記第2の設定ファイルから前記第1のシーンの修正された前記第2のコピーがロードされたことに基づいて表示すること、
をさらに含む、請求項2に記載のコンピューティング装置。
【請求項4】
前記オペレーションは、
前記第1のシーンの修正された前記第1のコピー内の前記第1の視覚エフェクトの前記少なくとも1つの属性に対する別の変更に基づいて、前記第1のシーンの修正された前記第1のコピーを調整することと、
前記第1のシーンの修正された前記第2のコピー内の前記第1の視覚エフェクトの前記少なくとも1つの属性に対する別の変更に基づいて、前記第1のシーンの修正された前記第2のコピーを調整することと、
をさらに含む、請求項3に記載のコンピューティング装置。
【請求項5】
前記第1のウィンドウ及び前記第2のウィンドウを作成する前に、前記オペレーションは、
前記第1のシーンを示すデータをサーバコンピューティング装置から受信すること、
をさらに含む、請求項1に記載のコンピューティング装置。
【請求項6】
前記オペレーションは、
前記第1のシーンに対する更新を示す情報を前記サーバコンピューティング装置から受信することと、
受信された前記情報に基づいて、前記第1のウィンドウ内の前記第1のシーンの前記第1のコピーを更新し、前記第2のウィンドウ内の前記第1のシーンの前記第2のコピーを更新することと、
をさらに含む、請求項5に記載のコンピューティング装置。
【請求項7】
前記オペレーションは、
第2のプロジェクトに関連付けられている第2のシーンであって、第2の視覚エフェクトを含む第2のシーンを示すデータをサーバコンピューティング装置から受信することと、
第3のユーザ入力が受信されたことに応じて、前記第2のシーンの第1のコピーを含む第3のウィンドウを作成することと、
第4のユーザ入力が受信されたことに応じて、前記第2のシーンの第2のコピーを含む第4のウィンドウを作成することと、
をさらに含み、
異なる変更が前記第2のシーンの前記第1のコピーと前記第2のシーンの前記第2のコピーとに行われ、それぞれ第3の設定ファイルと第4の設定ファイルとに記憶され、前記第3の設定ファイル及び前記第4の設定ファイルは当該コンピューティング装置の前記少なくとも1つのメモリに記憶されている、
請求項1に記載のコンピューティング装置。
【請求項8】
前記第1の視覚エフェクトは、1つ又は複数の画像上に拡張現実(AR)エフェクトをレンダリングすることを含む、
請求項1に記載のコンピューティング装置。
【請求項9】
第1のユーザ入力が受信されたことに応じて、第1のプロジェクトに関連付けられている第1のシーンであって、第1の視覚エフェクトを含む第1のシーンの第1のコピーを含む第1のウィンドウを作成することと、
第2のユーザ入力が受信されたことに応じて、前記第1のシーンの第2のコピーを含む第2のウィンドウを作成することであって、前記第1のウィンドウ及び前記第2のウィンドウは、前記第1のシーン内の前記第1の視覚エフェクトの異なるバージョンのテスト及び比較をほぼ同時に行うことができるように設定されることと、
前記第1のウィンドウ内の前記第1のシーンの前記第1のコピーを、前記第1のシーンの前記第1のコピー内の前記第1の視覚エフェクトの少なくとも1つの属性に対する第1の変更に基づいて修正することと、
前記第2のウィンドウ内の前記第1のシーンの前記第2のコピーを、前記第1のシーンの前記第2のコピー内の前記第1の視覚エフェクトの少なくとも1つの属性に対する、前記第1の変更と異なる第2の変更に基づいて修正することと、
を含む、方法。
【請求項10】
前記第1のシーンの修正された前記第1のコピーを、前記少なくとも1つのメモリ内の、前記第1のウィンドウに関連付けられている第1の設定ファイルに記憶することと、
前記第1のシーンの修正された前記第2のコピーを、前記少なくとも1つのメモリ内の、前記第2のウィンドウに関連付けられている第2の設定ファイルに記憶することと、
をさらに含む、請求項9に記載の方法。
【請求項11】
前記第1のプロジェクトにアクセスすることを示すユーザ入力が受信されたことに応じて、前記第1のウィンドウを、前記第1の設定ファイルから前記第1のシーンの修正された前記第1のコピーがロードされたことに基づいて表示し、前記第2のウィンドウを、前記第2の設定ファイルから前記第1のシーンの修正された前記第2のコピーがロードされたことに基づいて表示すること、
をさらに含む、請求項10に記載の方法。
【請求項12】
前記第1のシーンの修正された前記第1のコピー内の前記第1の視覚エフェクトの前記少なくとも1つの属性に対する別の変更に基づいて、前記第1のシーンの修正された前記第1のコピーを調整することと、
前記第1のシーンの修正された前記第2のコピー内の前記第1の視覚エフェクトの前記少なくとも1つの属性に対する別の変更に基づいて、前記第1のシーンの修正された前記第2のコピーを調整することと、
をさらに含む、請求項11に記載の方法。
【請求項13】
前記第1のウィンドウ及び前記第2のウィンドウを作成する前に、
前記第1のシーンを示すデータをサーバコンピューティング装置から受信すること、
をさらに含む、請求項9に記載の方法。
【請求項14】
前記第1のシーンに対する更新を示す情報を前記サーバコンピューティング装置から受信することと、
受信された前記情報に基づいて、前記第1のウィンドウ内の前記第1のシーンの前記第1のコピーを更新し、前記第2のウィンドウ内の前記第1のシーンの前記第2のコピーを更新することと、
をさらに含む、請求項13に記載の方法。
【請求項15】
コンピュータ可読命令が記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータ可読命令は、プロセッサにより実行されると、前記プロセッサに、
第1のユーザ入力が受信されたことに応じて、第1のプロジェクトに関連付けられている第1のシーンであって、第1の視覚エフェクトを含む第1のシーンの第1のコピーを含む第1のウィンドウを作成することと、
第2のユーザ入力が受信されたことに応じて、前記第1のシーンの第2のコピーを含む第2のウィンドウを作成することであって、前記第1のウィンドウ及び前記第2のウィンドウは、前記第1のシーン内の前記第1の視覚エフェクトの異なるバージョンのテスト及び比較をほぼ同時に行うことができるように設定されることと、
前記第1のウィンドウ内の前記第1のシーンの前記第1のコピーを、前記第1のシーンの前記第1のコピー内の前記第1の視覚エフェクトの少なくとも1つの属性に対する第1の変更に基づいて修正することと、
前記第2のウィンドウ内の前記第1のシーンの前記第2のコピーを、前記第1のシーンの前記第2のコピー内の前記第1の視覚エフェクトの少なくとも1つの属性に対する、前記第1の変更と異なる第2の変更に基づいて修正することと、
を含むオペレーションを実現させる、非一時的なコンピュータ可読記憶媒体。
【請求項16】
前記オペレーションは、
前記第1のシーンの修正された前記第1のコピーを、前記少なくとも1つのメモリ内の、前記第1のウィンドウに関連付けられている第1の設定ファイルに記憶することと、
前記第1のシーンの修正された前記第2のコピーを、前記少なくとも1つのメモリ内の、前記第2のウィンドウに関連付けられている第2の設定ファイルに記憶することと、
をさらに含む、請求項15に記載の非一時的なコンピュータ可読記憶媒体。
【請求項17】
前記オペレーションは、
前記第1のプロジェクトにアクセスすることを示すユーザ入力が受信されたことに応じて、前記第1のウィンドウを、前記第1の設定ファイルから前記第1のシーンの修正された前記第1のコピーがロードされたことに基づいて表示し、前記第2のウィンドウを、前記第2の設定ファイルから前記第1のシーンの修正された前記第2のコピーがロードされたことに基づいて表示すること、
をさらに含む、請求項16に記載の非一時的なコンピュータ可読記憶媒体。
【請求項18】
前記オペレーションは、
前記第1のシーンの修正された前記第1のコピー内の前記第1の視覚エフェクトの前記少なくとも1つの属性に対する別の変更に基づいて、前記第1のシーンの修正された前記第1のコピーを調整することと、
前記第1のシーンの修正された前記第2のコピー内の前記第1の視覚エフェクトの前記少なくとも1つの属性に対する別の変更に基づいて、前記第1のシーンの修正された前記第2のコピーを調整することと、
をさらに含む、請求項17に記載の非一時的なコンピュータ可読記憶媒体。
【請求項19】
前記オペレーションは、前記第1のウィンドウ及び前記第2のウィンドウを作成する前に、
前記第1のシーンを示すデータをサーバコンピューティング装置から受信すること、
をさらに含む、請求項15に記載の非一時的なコンピュータ可読記憶媒体。
【請求項20】
前記オペレーションは、
前記第1のシーンに対する更新を示す情報を前記サーバコンピューティング装置から受信することと、
受信された前記情報に基づいて、前記第1のウィンドウ内の前記第1のシーンの前記第1のコピーを更新し、前記第2のウィンドウ内の前記第1のシーンの前記第2のコピーを更新することと、
をさらに含む、請求項19に記載の非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、2021年12月30日に出願された米国特許出願第17/566,342号(発明名称:複数のプレビューウィンドウを用いた視覚エフェクト設計)の優先権を主張し、該出願の開示内容は、引用により全体として本願に組み込まれる。
【背景技術】
【0002】
インターネットに基づくツールを使って行われるコミュニケーションが増えている。インターネットに基づくツールは、任意のソフトウェア又はプラットフォームであり得る。このようなインターネットに基づくツールは、インターネットに基づくツールのユーザのために、視覚エフェクトのような新しいプログラム又はフィーチャを設計することができる。しかしながら、このような新しいフィーチャの設計プロセスは複雑又は非効率なものとなり得る。フィーチャ設計のための改良された技術が求められている。
【図面の簡単な説明】
【0003】
以下の詳細な説明は、添付図面と合わせて読むとよりよく理解できる。説明のために、本開示の様々な態様の例示的な実施形態が添付図面に示されているが、本発明は、開示されている特定の方法及び手段に限定されない。
【0004】
図1】本開示に従って使用可能な、新しいフィーチャを設計するための例示的なシステムを示す図である。
【0005】
図2】本開示にかかるクライアント装置により実行可能な、新しいフィーチャを設計するための例示的なプロセスを示す図である。
【0006】
図3】本開示にかかるクライアント装置により実行可能な、新しいフィーチャを設計するための別の例示的なプロセスを示す図である。
【0007】
図4】本開示にかかるクライアント装置により実行可能な、新しいフィーチャを設計するための別の例示的なプロセスを示す図である。
【0008】
図5】本開示にかかるクライアント装置により実行可能な、新しいフィーチャを設計するための別の例示的なプロセスを示す図である。
【0009】
図6】本開示にかかる複数のプレビューウィンドウを示す図である。
【0010】
図7】本開示にかかる設計アプリケーションの例示的なユーザインターフェースを示す図である。
【0011】
図8】本開示にかかる例示的なフローチャートである。
【0012】
図9】本開示にかかる別の例示的なフローチャートである。
【0013】
図10】本明細書に開示されたいずれかの方法を実行するために使用可能な例示的なコンピューティング装置を示す図である。
【発明を実施するための形態】
【0014】
ユーザがコンテンツを作成しこのようなコンテンツを他のユーザに配信して消費に供することを可能にするインターネットに基づくツールを利用して、通信を行うことができる。このようなインターネットに基づくツールは、コンテンツを作成するときに使用するさまざまなエフェクトをユーザに提供してもよい。これらのエフェクトは、例えば、拡張現実(AR:augmented reality)エフェクトを含んでもよい。ARエフェクトは、ユーザのカメラに表示された実像に重ね合わせられる、コンピュータが生成するエフェクトである。例えば、ユーザは、ARエフェクトを使用してコンテンツを作成したい場合、装置のカメラを開いて、物理的な世界をリアルタイムでスクリーン上に映し出してもよい。ARエフェクトは、2次元(2D)又は3次元(3D)の仮想オブジェクトをカメラフィード上に重ね焼き又は重ね合わせし、それらのオブジェクトが実際に存在しているかのような錯覚を起こさせる。
【0015】
しかしながら、このようなARエフェクトを設計することは複雑で時間がかかる可能性がある。UI/UXデザイナー(以下「デザイナー」と称される)などのフロントエンドエンジニアが複雑なエフェクトに手掛ける場合、異なる顔表情やテキストのような複数の入力を繰り返してテストすることに多くの時間が費やされる。単一のプレビューパネルを使用して複雑なエフェクトを作成するのは、特にデザイナーが微調整されたパラメータを有するエフェクトの複数のバージョンを比較したい場合に面倒になる可能性がある。例えば、ゲームエフェクトには、勝ち、負け、引き分けの状態があってもよい。これらの状態のそれぞれをテストするには、スクリプト変更又は視覚的変更を行うたびに、デザイナーが少なくとも3回ゲームをプレイする必要がある。さらに複雑なことに、デザイナーは通常、ユーザインターフェース(UI)要素など、比較したい視覚的資産のバリエーションを複数持っている。これはデザイナーにとって、これらの視覚的な違いについてA/Bテストを実行するためのツールがデザイナーに備えられていない可能性があるため、時間がかかる可能性がある。
【0016】
本明細書では、ARエフェクトのような複雑なエフェクトの設計及びテストを改善するための技術が説明される。本明細書に記載されたテクニックを使用して、デザイナーは、単一のエフェクト設計プロジェクトに関連付けられた複数のプレビューウィンドウをスポーン(spawn)/生成させることができる。各プレビューウィンドウは、デザイナーが他のプレビューウィンドウに表示されているバージョンのエフェクトを見ると同時に、異なるバージョンのエフェクトを見ることを可能にしてもよい。例えば、デザイナーは、ゲームエンジン内の3Dシーン上に複数のプレビューウィンドウをスポーンさせてもよい。各プレビューウィンドウは、エフェクトの現在の状態と、デザイナーがシーンに追加した任意の追加のオブジェクトとを表示する。各プレビューウィンドウに表示されるコンテンツは、他のプレビューウィンドウに表示される内容とは別に調整されてもよい。例えば、各プレビューウィンドウは独自の変更を保持することができる。本明細書に記載された技術は、エッジケースと入力とを並行してより高速にテストすることを可能にし、異なる視覚的資産の選択を並べて比較するより簡単な方法をデザイナーに提供する。
【0017】
図1は、配信用のコンテンツを作成するために使用可能な新たなフィーチャ、例えばエフェクトを設計するための例示的なシステム100を示す。システム100は、クラウドネットワーク102と、第1の複数のクライアント装置104a~nと、第2の複数のクライアント装置110a~nと、を含んでもよい。クラウドネットワーク102、第1の複数のクライアント装置104a~n及び/又は第2の複数のクライアント装置110a~nは、1つ又は複数のネットワーク132を介して互いに通信してもよい。
【0018】
クラウドネットワーク102は、単一の建物のようなデータセンターに配置されてもよいし、又は異なる地理的位置(例えば、いくつかの建物)に分散されてもよい。クラウドネットワーク102は、該一つ又は複数のネットワーク132を介してサービスを提供してもよい。ネットワーク132は、ルータ、スイッチ、マルチプレクサ、ハブ、モデム、ブリッジ、リピータ、ファイアウォール、プロキシ装置、及び/又は同様の装置など、様々なネットワーク装置を含む。ネットワーク132は、同軸ケーブルリンク、ツイストペアケーブルリンク、光ファイバリンク、それらの組み合わせなどの物理的リンクを含んでもよい。ネットワーク132は、セルラーリンク、衛星リンク、Wi-Fiリンクなどの無線リンクを含んでもよい。
【0019】
クラウドネットワーク102は、様々なサービスをホストする複数のコンピューティングノード120を含んでもよい。一実施形態において、ノード120はビデオサービス116をホストする。ビデオサービス116は、インターネットプロトコルビデオストリーミングサービスのようなコンテンツストリーミングサービスを含んでもよい。ビデオサービス116は様々な送信技術を介してコンテンツ124を配信するように設定されてもよい。ビデオサービス116は、ビデオ、音声、テキストデータ、それらの組み合わせなどのコンテンツ124を提供するように設定されている。コンテンツ124は、コンテンツストリーム(例えば、ビデオストリーム、オーディオストリーム、情報ストリーム)、コンテンツファイル(例えば、ビデオファイル、オーディオファイル、テキストファイル)、及び/又は他のデータを含んでもよい。コンテンツ124は、データベース122に格納されることができる。例えば、ビデオサービス116は、ビデオ共有サービス、ビデオホスティングプラットフォーム、コンテンツ配信プラットフォーム、コラボレーションゲームプラットフォームなどを含んでもよい。
【0020】
一実施形態において、ビデオサービス116により配信又は提供されるコンテンツ124は、ショートビデオを含む。ショートビデオは、1分、5分、又は他の所定の分など、所定の時間制限以下の持続時間を有することができる。限定ではなく、一例として、ショートビデオは、互いに結合された少なくとも一つ、且つ四つ以下の15秒セグメントを含んでもよい。短いビデオ持続時間は、ユーザが短い時間枠内で大量のビデオを見ることを可能にする、エンターテインメントを迅速且つ連続的に視聴者に提供することができる。このような迅速で連続のエンターテインメントは、ソーシャルメディアプラットフォームで流行する可能性がある。
【0021】
ショートビデオは、テレビ番組又は映画からの音楽又は音声のような、事前記録のオーディオオーバーレイを含んでもよい。ショートビデオが事前記録のオーディオオーバーレイを含む場合、ショートビデオは、事前記録のオーディオとともに、1人又は複数の人がリップシンクやダンスをするか、又はそれらの体を他の方法で動かすことを特徴としてもよい。例えば、ショートビデオは、ヒット曲に合わせて個人で完成させる「ダンスチャレンジ」を特徴としてもよいし、又は、ショートビデオは、2人がリップシンクや2人踊りに参加することを特徴としてもよい。別の例として、ショートビデオは、個人が、事前記録のオーディオオーバーレイに対応するように、例えば、事前記録のオーディオオーバーレイにより特徴付けされる事前記録の歌曲のビート又はリズムに対応するように、自分の体を動かすことを要求するチャレンジを達成することを特徴としてもよい。他のショートビデオは、事前記録のオーディオオーバーライドを含まなくてもよい。例えば、これらのショートビデオは、個人がスポーツをしたり、いたずらをしたり、美容やファッションのアドバイス、料理のコツ、家の内装のコツなどのアドバイスをすることを特徴としてもよい。
【0022】
一実施形態において、コンテンツ124は、ネットワーク132を介して異なるクライアント装置104a~nに出力されてもよい。コンテンツ124は、クライアント装置104a~nにストリーミングされてもよい。コンテンツストリームは、ビデオサービス116から受信されたショートビデオのストリームであってもよい。第1の複数のクライアント装置104a~nは、ビデオサービス116からコンテンツ124にアクセスするように設定されてもよい。一実施形態において、クライアント装置104a~nは、コンテンツアプリケーション106を含んでもよい。コンテンツアプリケーション106は、コンテンツ124をクライアント装置104a~nに関連付けられたユーザに出力(例えば、表示、レンダリング、提示)する。コンテンツは、ビデオ、音声、コメント、テキストデータなどを含んでもよい。
【0023】
第1の複数のクライアント装置104a~nは、任意のタイプのコンピューティング装置、例えばモバイル装置、タブレット装置、ラップトップコンピュータ、デスクトップコンピュータ、スマートテレビ又は他のスマート装置(例えば、スマートウォッチ、スマートスピーカ、スマート眼鏡、スマートヘルメット)、ゲーム装置、セットトップボックス、デジタルストリーミング装置、ロボット等を含んでもよい。第1の複数のクライアント装置104a~nは、1つ又は複数のユーザに関連付けられてもよい。単一のユーザは、第1の複数のクライアント装置104a~nのうちの一つ又は複数を使用してクラウドネットワーク102にアクセスしてもよい。第1の複数のクライアント装置104a~nは、様々な場所に移動し、異なるネットワークを使用してクラウドネットワーク102にアクセスしてもよい。
【0024】
ビデオサービス116は、ユーザから入力を受け取るように設定されてもよい。ユーザは、ビデオサービス116のユーザとして登録されてもよいし、クライアント装置104a~n上で動作するコンテンツアプリケーション106のユーザであってもよい。ユーザ入力は、ユーザにより作成されたショートビデオ、ショートビデオに関連付けられるユーザコメント、又はショートビデオに関連付けられた「いいね」を含んでもよい。ユーザ入力は、接続要求と、テキストデータ、デジタル画像データ又はユーザコンテンツなどのユーザ入力データとを含んでもよい。接続要求は、クライアント装置104a~nからの、ビデオサービス116に接続する要求を含んでもよい。ユーザ入力データは、ビデオ及び/又はユーザコメントなど、ショートビデオサービス116に接続されているユーザがビデオサービス116の他の接続されているユーザと共有することを望む情報を含んでもよい。
【0025】
ビデオサービス116は、異なるタイプのクライアント装置104a~nを使用するユーザから異なるタイプの入力を受信できるかもしれない。例えば、携帯電話又はタブレットなどの第1のユーザ装置上でコンテンツアプリケーション106を使用するユーザは、コンテンツアプリケーション106を使用してショートビデオを作成し、アップロードできるかもしれない。異なる携帯電話又はタブレット上でコンテンツアプリケーション106を使用するユーザは、ショートビデオ又は他のユーザにより書かれたコメントを見たり、コメントしたり、「いいね」したりすることができる可能性がある。別の例において、スマートテレビ、ラップトップ、デスクトップ、又はゲーム装置上でコンテンツアプリケーション106を使用するユーザは、コンテンツアプリケーション106を使用してショートビデオを作成及びアップロードしたり、ショートビデオにコメントしたりすることができないかもしれない。代わりに、スマートテレビ、ラップトップ、デスクトップ、又はゲーム装置上でコンテンツアプリケーション106を使用するユーザは、コンテンツアプリケーション106を使用して、ショートビデオを見たり、他のユーザが残したコメントを見たり、ショートビデオを「いいね」したりすることしかできないかもしれない。
【0026】
一実施形態において、ユーザは、クライアント装置104a~n上のコンテンツアプリケーション106を使用して、ショートビデオを作成してクラウドネットワーク102にアップロードしてもよい。クライアント装置104a~nは、コンテンツアプリケーション106のインターフェース108a~nにアクセスしてもよい。インターフェース108a~nは、入力要素を含んでもよい。例えば、入力要素は、ユーザがショートビデオを作成することを可能にするように設定されてもよい。ショートビデオを作成するために、ユーザは、クライアント装置104a~nのカメラのような画像取得装置又はマイクにアクセスする許可をコンテンツアプリケーション106に与えてもよい。コンテンツアプリケーション106を使用して、ユーザは、ショートビデオの持続時間を選択するか、又はショートビデオの速度、例えば「スローモーション」又は「スピードアップ」を設定してもよい。
【0027】
ユーザは、コンテンツアプリケーション106を用いてショートビデオを編集することができる。ユーザは、一つ又は複数のテキスト、フィルター、サウンド、又はARエフェクトなどのエフェクトをショートビデオに追加してもよい。事前記録のオーディオオーバーレイをショートビデオに追加するために、ユーザは、コンテンツアプリケーション106のサウンドライブラリから歌曲又はサウンドクリップを選択してもよい。サウンドライブラリには、異なる歌曲、サウンドエフェクト、又は映画、アルバム、テレビ番組からのオーディオクリップを含んでもよい。事前記録のオーディオオーバーレイをショートビデオに追加することに加えて、又は追加する代わりに、ユーザは、コンテンツアプリケーション106を使用して、ショートビデオにナレーションを追加することができる。ナレーションは、ユーザがクライアント装置104a~nのマイクを使用して記録したサウンドであってもよい。ユーザは、ショートビデオにテキストオーバーレイを追加することができる。また、コンテンツアプリケーション106を使用して、テキストオーバーレイがショートビデオにいつ現れることを望むかを指定してもよい。ユーザは、ショートビデオに、キャプション、位置タグ、及び一つ又は複数のハッシュタグを割り当てて、ショートビデオの主題を示すことができる。コンテンツアプリケーション106は、ショートビデオについての「カバー画像」として使用するために、ショートビデオのフレームを選択するようにユーザに促してもよい。
【0028】
ユーザがショートビデオを作成した後、ユーザは、コンテンツアプリケーション106を使用して、ショートビデオをクラウドネットワーク102にアップロードし、且つ/又はショートビデオをユーザ装置104a~nにローカルに保存してもよい。ユーザがショートビデオをクラウドネットワーク102にアップロードするとき、ユーザは、ショートビデオをコンテンツアプリケーション106の他の全てのユーザが閲覧可能にするか、コンテンツアプリケーション106のユーザのサブセットだけが閲覧可能にするかを選択してもよい。ビデオサービス116は、アップロードされたショートビデオ及びショートビデオに関連付けられた任意のメタデータをコンテンツ124として一つ又は複数のデータベース122に記憶してもよい。
【0029】
一実施形態において、ユーザは、クライアント装置104a~n上のコンテンツアプリケーション106を使用して、ショートビデオ上で入力を提供してもよい。クライアント装置104a~nは、ユーザがショートビデオに関連付けられる入力を提供することを可能にするコンテンツアプリケーション106のインターフェース108a~nにアクセスしてもよい。インターフェース108a~nは、入力要素を含んでもよい。例えば、入力要素は、特定のショートビデオに関連付けられたコメント又は「いいね」などのユーザからの入力を受け取るように設定されてもよい。入力がコメントである場合、コンテンツアプリケーション106は、ユーザが自分の入力に関連付けられる絵文字を設定することを許可することができる。コンテンツアプリケーション106は、ユーザがいつコメントを書き込んだかなど、入力についての時間情報を決定することができる。コンテンツアプリケーション106は、入力及び関連付けられたメタデータをクラウドネットワーク102に送信することができる。例えば、コンテンツアプリケーション106は、コメント、コメントを書いたユーザの識別子及びコメントについての時間情報をクラウドネットワーク102に送信してもよい。ビデオサービス116は、入力及び関連付けられたメタデータをデータベース122に記憶してもよい。
【0030】
ビデオサービス116は、アップロードされたショートビデオとユーザ入力とを他のユーザに出力するように設定されてもよい。ユーザは、ビデオサービス116のユーザとして登録され、他のユーザが作成したショートビデオを見てもよい。ユーザは、クライアント装置104a~n上で動作するコンテンツアプリケーション106のユーザであってもよい。コンテンツアプリケーション106は、ショートビデオとユーザコメントとを、クライアント装置104a~nに関連付けられたユーザに出力(表示、レンダリング、提示)してもよい。クライアント装置104a~nは、コンテンツアプリケーション106のインターフェース108a~nにアクセスしてもよい。インターフェース108a~nは、出力要素を含んでもよい。出力要素は、ユーザがショートビデオを選択して見られるように、異なるショートビデオに関する情報を表示するように設定されてもよい。例えば、出力要素は、ショートビデオに関連付けられた複数のカバー画像、字幕、又はハッシュタグを表示するように設定されてもよい。出力要素はまた、各ショートビデオに関連付けられたカテゴリに従ってショートビデオを配置するように設定されてもよい。
【0031】
一実施形態において、ショートビデオに関連付けられたユーザコメントは、同じショートビデオを見ている他のユーザに出力されてもよい。例えば、ショートビデオにアクセスしている全てのユーザは、ショートビデオに関連付けられたコメントを見てもよい。ビデオサービス116は、ショートビデオと関連付けられたコメントとを同時に出力してもよい。コメントは、ビデオサービス116によりリアルタイム又はほぼリアルタイムに出力されてもよい。コンテンツアプリケーション106は、クライアント装置104a~n上に様々な方法でショートビデオとコメントとを表示してもよい。例えば、コメントは、コンテンツ上のオーバーレイに表示されてもよいし、又はコンテンツの隣のオーバーレイに表示されてもよい。別の例として、ショートビデオに関連付けられた他のユーザのコメントを見たいユーザは、コメントを見るためにボタンを選択する必要があるかもしれない。コメントは表示される時にアニメーション化されて表示されてもよい。例えば、コメントはショートビデオを横切って又はオーバーレイを横切ってスクロール表示されてもよい。
【0032】
複数のコンピューティングノード120は、ショートビデオサービス116に関連付けられるタスクを処理してもよい。複数のコンピューティングノード120は、一つ又は複数のコンピューティング装置、一つ又は複数のプロセッサ、一つ又は複数の仮想コンピューティングインスタンス、それらの組み合わせなどとして実装されてもよい。複数のコンピューティングノード120は、一つ又は複数のコンピューティング装置により実装されてもよい。一つ又は複数のコンピューティング装置は、仮想化コンピューティングインスタンスを含んでもよい。仮想化コンピューティングインスタンスは、仮想マシン、例えばコンピュータシステム、オペレーティングシステム、サーバなどのエミュレーションを含んでもよい。仮想マシンは、仮想イメージ及び/又はエミュレーションのための特定のソフトウェア(例えば、オペレーティングシステム、専用アプリケーション、サーバ)を定義する他のデータに基づいて、コンピューティング装置によりロードされてもよい。異なるタイプのプロセッシングサービスについての需要が変化すると、異なる仮想マシンを一つ又は複数のコンピューティング装置上にロード及び/又は終了されてもよい。同じコンピューティング装置上の異なる仮想マシンの使用を管理するために、ハイパーバイザを実装してもよい。
【0033】
一実施形態において、ビデオサービス116は、複数の視覚エフェクト126をビデオサービス116のユーザに提供することにより、ユーザがこれらのエフェクトのうちの1つ又は複数を使用してショートビデオのようなビデオを作成できるようにしてもよい。エフェクト126は、例えば、1つ又は複数のARエフェクトを含んでもよい。ARエフェクトは、ユーザのカメラに表示された実像に重ね合わせられる、コンピュータが生成するエフェクトである。しかしながら、上記の理由により、このようなエフェクト126を設計することは複雑で時間がかかる可能性がある。
【0034】
一実施形態において、ノード120は設計サービス118をホストする。設計サービス118は、第2の複数のクライアント装置110a~nのうちのクライアント装置に関連付けられたデザイナーによるエフェクト126の設計を容易にするように設定されてもよい。第2の複数のクライアント装置110a~nは、第1の複数のクライアント装置104a~nと異なってもよい。例えば、第2の複数のクライアント装置110a~nは、第1の複数のクライアント装置104a~nに関連付けられたユーザが、コンテンツアプリケーション106を介して、設計されたエフェクト126を使用してビデオを作成することができるように、エフェクト126を設計したい1人又は複数のデザイナーにそれぞれ関連付けられてもよい。第2の複数のクライアント装置110a~nは、設計アプリケーション112を含んでもよい。設計アプリケーション112はデザイナーにより使用してエフェクト126を設計してもよい。例えば、デザイナーは、設計アプリケーション112のインターフェース114a~nにアクセスしてエフェクト126を設計することができる。
【0035】
第2の複数のクライアント装置110a~nは、任意のタイプのコンピューティング装置、例えばモバイル装置、タブレット装置、ラップトップコンピュータ、デスクトップコンピュータ、スマートテレビ又は他のスマート装置(例えば、スマートウォッチ、スマートスピーカ、スマート眼鏡、スマートヘルメット)、ゲーム装置、セットトップボックス、デジタルストリーミング装置、ロボット等を含んでもよい。単一のデザイナーは、第2の複数のクライアント装置110a~nのうちの一つ又は複数を使用してクラウドネットワーク102にアクセスしてもよい。第2の複数のクライアント装置110a~nは、様々な場所に移動し、異なるネットワークを使用してクラウドネットワーク102にアクセスしてもよい。
【0036】
設計サービス118は、データベース128内でプロジェクトデータ130を維持するように設定されてもよい。記憶されたプロジェクトデータ130は、例えば、クライアント装置110a~nに関連付けられたデザイナーから受信されてもよい。プロジェクトデータ130は、さまざまな設計プロジェクトに関連付けられたデータを含んでもよい。各設計プロジェクトは、特定のエフェクト126の設計に関連付けられてもよい。例えば、プロジェクトデータ130は、第1のプロジェクトに関連付けられるデータを含んでもよい。第1のプロジェクトは、第1のエフェクト126の設計に関連付けられてもよい。また、第1のプロジェクトは、第1のエフェクト126を含む1つ又は複数のシーンに関連付けられてもよい。第1のプロジェクトに関連付けられるプロジェクトデータ130は、第1のエフェクト126の設計の現在の状態を示してもよい。例えば、第1のプロジェクトに関連付けられるプロジェクトデータ130は、クラウドネットワーク102に保存及び/又はアップロードされた全ての作業を示してもよい。しかしながら、プロジェクトデータ130は、デザイナーが設計プロセス中に試みたりテストしたりしたが実装しないことを決定した第1のエフェクト126への変更又は修正を示さなくてもよい。
【0037】
一実施形態において、設計サービス118は、プロジェクトデータ130をクライアント装置110a~nに送信するように設定される。例えば、設計サービス118は、クライアント装置110a~nに、そのクライアント装置からの要求の受信に応じて、第1のプロジェクトに関連付けられるプロジェクトデータ130を送信してもよい。この要求は、第1のプロジェクトの選択の指示を含んでもよい。例えば、デザイナーが第1のエフェクトを設計したい場合、第1のプロジェクトを選択してもよい。デザイナーは、このプロジェクトに最初から手掛けたいかもしれないし、デザイナー(又は別のデザイナー)が第1のプロジェクトで手掛けた以前の作業を続行したいかもしれない。このような要求の受信に応じて、設計サービス118は、第1のプロジェクトの現在の状態を示すプロジェクトデータ130をクライアント装置110a~nに送信してもよい。
【0038】
いくつかの実施形態において、クライアント装置110a~nは、設計サービス118からプロジェクトデータ130を受信するように設定される。例えば、クライアント装置110a~nは、第1のプロジェクトに関連付けられるプロジェクトデータ130に対する要求を設計サービス118に送信したことに応じて、第1のプロジェクトに関連付けられるプロジェクトデータ130を受信してもよい。デザイナーが設計アプリケーション112のインターフェース114a~nを介して設計アプリケーション112内で第1のプロジェクトを選択した場合、クライアント装置110a~nは、第1のプロジェクトに関連付けられるプロジェクトデータ130に対する要求を設計サービス118に送信してもよい。デザイナーが第1のエフェクトの設計についての作業を開始又は続行したい場合、デザイナーは設計アプリケーション内で第1のプロジェクトを選択してもよい。
【0039】
いくつかの実施形態において、クライアント装置110a~nが設計サービス118からプロジェクトデータ130を受信した場合、第1のエフェクトを含む少なくとも1つのシーンのメインプレビューウィンドウはインターフェース114a~n上に表示されてもよい。上述したように、特定のプロジェクトに関連付けられたプロジェクトデータ130は、そのプロジェクトに関連付けられたエフェクトの現在の設計状態を示してもよい。したがって、メインプレビューウィンドウは、画像又はビデオフィードにエフェクトが適用されたときにそのエフェクトが現在どのように見えるかの表示又はプレビューを、エフェクトの現在の設計状態に基づいて、ユーザ104a~nに提供する。例えば、メインプレビューウィンドウは、ARエフェクトを2Dテクスチャにレンダリングしてもよい。デザイナーは、メインプレビューウィンドウを見て、オリジナルのシーンがどのように見えるか(例えば、エフェクトの設計に更なる変更又は修正が行われない場合、エフェクトがどのように見えるか)を知ることができる。
【0040】
いくつかの実施形態において、デザイナーは、設計アプリケーション112を利用して、エフェクトを含むシーンに対する様々な変更をテストしてもよい。例えば、第1のエフェクトを含むシーンのメインプレビューウィンドウがインターフェース114a~n上に表示された後、デザイナーは、エフェクトの設計に対する様々な修正又は変更の影響を見たいかもしれない。このために、デザイナーは、設計アプリケーション112を利用して、プロジェクトに関連付けられる複数のセカンダリプレビューウィンドウをスポーンさせてもよい。各セカンダリプレビューウィンドウは、メインプレビューウィンドウに似てもよい。例えば、各セカンダリプレビューウィンドウは、ARエフェクトを2Dテクスチャにレンダリングしてもよい。プロジェクトに関連付けられるセカンダリプレビューウィンドウをスポーンさせるために、デザイナーは、設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を選択してもよい。デザイナーがボタンを選択するたびに、追加のセカンダリプレビューウィンドウをインターフェース114a~n上にスポーンさせて表示してもよい。デザイナーは、好きなだけ多くのセカンダリプレビューウィンドウをスポーンさせてもよい。
【0041】
各セカンダリプレビューウィンドウは、エフェクトの現在の状態(例えばメインプレビューウィンドウにより示された状態)と、デザイナーがテストするためにシーンに追加した任意の追加のオブジェクトとを表示する。各セカンダリプレビューウィンドウに表示されるコンテンツは、他のセカンダリプレビューウィンドウに表示される内容とは別に調整されてもよい。これらの複数のセカンダリプレビューウィンドウの1つの目的は、オリジナルのシーンのプロパティに対する編集がどのように見えるかをテストすることである(必ずしもプロジェクトデータ130に最終調整を行うわけではない)ので、このような調整は、ローカルにのみ適用され(例えば、クライアント装置110a~nにのみ適用され)、設計サービス118側には現れなくてもよい。
【0042】
いくつかの実施形態において、複数のセカンダリプレビューウィンドウに関連付けられるデータは、個々の設定ファイル115a~nに保存されてもよい。例えば、デザイナーが第1のエフェクト設計プロジェクトに関連付けられる3つのセカンダリプレビューウィンドウをスポーンさせる場合、3つの設定ファイル(各セカンダリプレビューウィンドウに1つの設定ファイルが対応する)は、クライアント装置110a~n上にローカルに保存されるが、サーバ側には保存されなくてもよい(例えば、プロジェクトデータ130として保存されなくてもよい)。設定ファイル115a~nは、対応するセカンダリプレビューウィンドウに表示されるコンテンツに行われた調整を示すように修正されてもよい。例えば、デザイナーが特定の設定ファイルに対応する特定のセカンダリプレビューウィンドウ内のエフェクトの少なくとも1つの属性に変更を行う場合、その特定の設定ファイルは、この属性変更を反映するように修正されてもよい。追加の設計変更が行われた場合、修正された設定ファイルはさらに修正されてもよい。いくつかの実施形態において、プロジェクトデータ120は、プロジェクトフォルダのルートディレクトリ内の「メイン」設定ファイルを含んでもよい。メイン設定ファイルを使用して、プロジェクトに含まれるセカンダリプレビューウィンドウの数を追跡し続けてもよい。これにより、プロジェクトがプレビュープロセスを自動的に生成させることを可能にするかもしれない。
【0043】
いくつかの実施形態において、デザイナーは、自分が最後に中止した場所から設計プロジェクトを再び始めたいかもしれない。例えば、デザイナーは既に、特定の設定ファイルに対応する特定のセカンダリプレビューウィンドウ内のエフェクトの少なくとも1つの属性に変更を行ったかもしれない。その特定の設定ファイルが既にこの属性変更を反映するように修正されているかもしれない。デザイナーは、休憩を取るか、設計アプリケーション112から抜けるかを決定してもよい。デザイナー(又は異なるデザイナー)は、ローカルに保存された、修正された設定ファイルを後でロードして、設計プロジェクトを続行してもよい。デザイナー(又は別のデザイナー)が、ローカルに保存された、修正された設定ファイルを後でロードした場合、セカンダリプレビューウィンドウは修正された設定ファイルに基づいて表示されてもよい。デザイナーは、セカンダリプレビューウィンドウ内で追加の設定変更を行ってもよい。この場合、修正された設定ファイルはさらに修正されてローカルに保存されてもよい。
【0044】
一実施形態において、デザイナーは、エフェクト126の設計に実際の変更(ローカルに保存される変更だけではない)を行いたいかもしれない。例えば、前のウィンドウを見た後に、デザイナーは、特定の設計の変更や修正の見た目で気に入っていると決定するかもしれない。デザイナーは、この特定の設計変更又は修正がエフェクト126の最終設計において実装されるべきであると決定してもよい。したがって、デザイナーは、例えば設計アプリケーション112のインターフェース114a~nを介して、このような設計変更又は修正がサーバ側で行われるべきであることを示してもよい。デザイナーがそうする場合、指示は設計サービス118に送信されてもよい。この指示は、この設計変更又は修正に基づいて、対応するエフェクトのプロジェクトに関連付けられるプロジェクトデータ130を更新するよう設計サービス118に示してもよい。
【0045】
一実施形態において、設計サービス118は、プロジェクトデータ130に対する更新(例えば、変更又は修正)を示すデータをクライアント装置110a~nから受信するように設定される。例えば、設計サービス118は、修正又は変更された設計を有するエフェクトに対応するプロジェクトに関連付けられたプロジェクトデータ130を更新するように設計サービス118に示す指示を受信してもよい。設計サービス118は、そのような指示を受信したことに応じて、プロジェクトデータ130を更新してもよい。
【0046】
設計サービス118が、エフェクトに関連付けられるプロジェクトデータ130に変更を行う場合、設計サービス118は、メッセージ(例えば、ソケットメッセージ)をクライアント装置110a~nに送信して、該エフェクトを含むシーンを表示するメインプレビューウィンドウを更新するようにクライアント装置110a~nに示してもよい。そのため、エフェクトに変更又は修正を行ったデザイナーは、メインプレビューウィンドウが現在最近の変更又は修正を反映するように、メインプレビューウィンドウの変更を見てもよい。追加として、後でこの特定のエフェクトに手掛ける他のデザイナーは、(これらの設計変更が実装される前に表示されていたプレビューウィンドウではなく)この更新されたメインプレビューウィンドウを見ることになる。このエフェクトを含むシーンを表示するメインプレビューウィンドウが更新される場合、現在開かれている(又は後で開かれる)任意のスポーンされたセカンダリプレビューウィンドウが、最近の設計の変更又は修正を反映するように追加として更新されてもよい。
【0047】
一実施形態において、デザイナーが設計サービス118を使用してエフェクトを作成した後、このエフェクトは視覚エフェクト126としてデータベース122に記憶されてよい。記憶されたエフェクト126は、第1の複数のクライアント装置104a~nに関連付けられたユーザにより、コンテンツアプリケーション106を介してビデオを作成するために使用されてもよい。上述したように、複数のエフェクト126は、1つ又は複数のARエフェクトを含んでもよい。ユーザがビデオを作成するためにARエフェクトを選択した場合、該ARエフェクトは、ビデオのフレームの少なくとも1つのサブセット上で少なくとも1つの2D又は3D仮想オブジェクトに重ね合わせ又は重ね焼きされてもよい。例えば、ユーザは、ARエフェクトを使用してビデオを作成したい場合、クライアント装置104a~nのカメラを開いて、物理的な世界をリアルタイムでスクリーン上に映し出してもよい。ARエフェクトは、2D又は3Dの仮想オブジェクトをカメラフィード上に重ね焼き又は重ね合わせし、それらのオブジェクトが実際に存在しているかのような錯覚を起こさせる。ビデオがこのエフェクトを用いて作成された後、そのビデオはクラウドネットワーク102にアップロードされてもよい。且つ/又は、ユーザはそのビデオをクライアント装置104a~nにローカルに保存してもよい。ビデオサービス116は、コンテンツアプリケーション106を介して、ビデオサービス116のユーザとして登録されている他のユーザに、このエフェクトを用いて作成された、アップロードされたビデオを出力するように設定されてもよい。他のユーザがこのエフェクトを使用して作成されたビデオを消費してもよい。
【0048】
図2は、第2の複数のクライアント装置のうちのクライアント装置(例えば、クライアント装置110a~n)により実行される例示的なプロセス200を示す。クライアント装置110a~nは、プロセス200を実行して、ARエフェクトのようなエフェクトを設計してもよい。図2では一連のオペレーションとして説明されているが、当業者であれば、様々な実施形態において、説明されたオペレーションを追加、除去、並べ替え、又は修正してもよいことを理解できるはずである。
【0049】
上述したように、デザイナーは、クライアント装置110a~n上の設計アプリケーション112を利用して、第1のエフェクト設計プロジェクトに関連付けられるセカンダリの複数のプレビューウィンドウをスポーンさせてもよい。これらの複数のセカンダリプレビューウィンドウの目的の1つは、オリジナルのシーンのプロパティに対する編集がどのようになるかをテストすることである。202において、第1のユーザ入力が受信されたことに応じて、第1のシーンの第1のコピーを含む第1のウィンドウを作成してもよい。第1のユーザ入力は、デザイナー(例えば、ユーザ)が設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を選択したときに受信されてもよい。デザイナーがボタンを選択するたびに、追加のセカンダリプレビューウィンドウをインターフェース114a~n上にスポーンさせて表示してもよい。デザイナーは、好きなだけ多くのセカンダリプレビューウィンドウをスポーンさせてもよい。第1のシーンは第1のプロジェクトに関連付けられている。また、第1のシーンは、第1の視覚エフェクトを含む。第1の視覚エフェクトは、1つ又は複数の画像上に拡張現実(AR)エフェクトをレンダリングすることを含んでもよい。
【0050】
204において、第2のユーザ入力が受信されたことに応じて、第1のシーンの第2のコピーを含む第2のセカンダリプレビューウィンドウを作成してもよい。例えば、第2のユーザ入力は、デザイナー(例えば、ユーザ)が設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を2回目に選択したときに受信されてもよい。第1のセカンダリウィンドウ及び第2のセカンダリウィンドウは、第1のシーン内での第1の視覚エフェクトの異なるバージョンのA/Bテスト及び比較をほぼ同時に行うことができるように設定されている。
【0051】
上述したように、各セカンダリプレビューウィンドウは、第1のエフェクトの現在の状態と、デザイナーがシーンに追加した任意の追加のオブジェクトとを表示する。各セカンダリプレビューウィンドウに表示されるコンテンツは、他のセカンダリプレビューウィンドウに表示される内容とは別に調整されてもよい。206において、第1のセカンダリウィンドウ内の第1のシーンの第1のコピーを、第1のシーンの第1のコピー内の第1の視覚エフェクトの少なくとも1つの属性に対する第1の変更に基づいて修正してもよい。これらの複数のセカンダリプレビューウィンドウの1つの目的は、オリジナルのシーンのプロパティに対する編集がどのように見えるかを見ることである(必ずしもプロジェクトデータ130に最終調整を行うわけではない)ので、このような修正は、ローカルにのみ適用され(例えば、クライアント装置110a~nにのみ適用され)、設計サービス118側には現れない。例えば、このような修正は、プロジェクトに関連付けられているメインプレビューウィンドウには影響しないかもしれない。
【0052】
208において、第2のセカンダリプレビューウィンドウ内の第1のシーンの第2のコピーを、第1のシーンの第2のコピー内の第1の視覚エフェクトの少なくとも1つの属性に対する第2の変更に基づいて修正してもよい。第1の変更は第2の変更と異なる。これらの複数のセカンダリプレビューウィンドウの1つの目的は、オリジナルのシーンのプロパティに対する編集がどのように見えるかを見ることである(必ずしもプロジェクトデータ130に最終調整を行うわけではない)ので、このような修正は、ローカルにのみ適用され(例えば、クライアント装置110a~nにのみ適用され)、設計サービス118側には現れない。例えば、このような修正は、プロジェクトに関連付けられているメインプレビューウィンドウには影響しないかもしれない。
【0053】
図3は、第2の複数のクライアント装置のうちのクライアント装置(例えば、クライアント装置110a~n)により実行される例示的なプロセス300を示す。クライアント装置110a~nは、プロセス300を実行して、ARエフェクトのようなエフェクトを設計してもよい。図3では一連のオペレーションとして説明されているが、当業者であれば、様々な実施形態において、説明されたオペレーションを追加、除去、並べ替え、又は修正してもよいことを理解できるはずである。
【0054】
図1に関して上述されたように、第1のセカンダリウィンドウ内の第1のシーンの第1のコピーは、第1のシーンの第1のコピー内の第1の視覚エフェクトの少なくとも1つの属性に対する第1の変更に基づいて修正されてもよい。また、第2のセカンダリウィンドウ内の第1のシーンの第2のコピーは、第1のシーンの第2のコピー内の第1の視覚エフェクトの少なくとも1つの属性に対する第2の変更に基づいて修正されてもよい。第1の変更は第2の変更と異なる。このような修正されたコピーは、設定ファイルにローカルに記憶されてもよい。302において、第1のシーンの修正された第1のコピーを、少なくとも1つのメモリ内の第1の設定ファイルに記憶してもよい。第1の設定ファイルは、第1のセカンダリウィンドウに関連付けられる。第1の設定ファイルは、クライアント装置110a~nの少なくとも1つのメモリにローカルに保存されてもよい。
【0055】
304において、第1のシーンの修正された第2のコピーを、該少なくとも1つのメモリ内の第2の設定ファイルに記憶してもよい。第2の設定ファイルは、第2のセカンダリウィンドウに関連付けられる。これら複数のセカンダリプレビューウィンドウの目的は、オリジナルのシーンのプロパティに対する編集がどのように見えるかをテストすることである(必ずしもプロジェクトデータ130に最終調整を行うわけではない)ので、第1及び第2の設定ファイルは、ローカルにのみ(例えば、クライアント装置110a~n上にのみ)記憶され、設計サービス118側のデータベース128上に記憶されなくてもよい。
【0056】
ユーザ又は異なるユーザは、例えば後で、設計プロジェクトに戻ることを決定するかもしれない。例えば、デザイナー(又は異なるデザイナー)は、ローカルに保存された、修正された設定ファイルを後でロードして、設計プロジェクトを続行してもよい。デザイナー(又は別のデザイナー)が設計アプリケーション112を介して、ローカルに保存された、修正された設定ファイルを後でロードした場合、セカンダリプレビューウィンドウは修正された設定ファイルに基づいて表示されてもよい。306において、第1のプロジェクトにアクセスすることを示すユーザ入力が受信されたことに応じて、第1のウィンドウを、第1の設定ファイルから第1のシーンの修正された第1のコピーがロードされたことに基づいて表示してもよい。第2のウィンドウも、第2の設定ファイルから第1のシーンの修正された第2のコピーがロードされたことに基づいて表示されてもよい。
【0057】
デザイナーは、セカンダリプレビューウィンドウ内で追加の設定変更を行ってもよい。この場合、修正された設定ファイルはさらに修正されてローカルに保存されてもよい。308において、第1のシーンの修正された第1のコピー内の第1の視覚エフェクトの該少なくとも1つの属性又は異なる属性に対する別の変更に基づいて、第1のシーンの修正された第1のコピーを調整してもよい。310において、第1のシーンの修正された第2のコピー内の第1の視覚エフェクトの該少なくとも1つの属性又は異なる属性に対する別の変更に基づいて、第1のシーンの修正された第2のコピーを調整してもよい。さらに修正された設定ファイルは、ローカルに記憶されたままであってもよいし、後で更なる変更のためにアクセスされてもよい。
【0058】
図4は、第2の複数のクライアント装置のうちのクライアント装置(例えば、クライアント装置104a~n)により実行される例示的なプロセス400を示す。クライアント装置110a~nは、プロセス400を実行して、ARエフェクトのようなエフェクトを設計してもよい。図4では一連のオペレーションとして説明されているが、当業者であれば、様々な実施形態において、説明されたオペレーションを追加、除去、並べ替え、又は修正してもよいことを理解できるはずである。
【0059】
上述したように、クライアント装置110a~nは、設計サービス118からプロジェクトデータ130を受信するように設定される。例えば、クライアント装置110a~nは、第1のプロジェクトに関連付けられるプロジェクトデータ130に対する要求を設計サービス118に送信したことに応じて、第1のプロジェクトに関連付けられるプロジェクトデータ130を受信してもよい。デザイナーが設計アプリケーション112のインターフェース114a~nを介して設計アプリケーション112内で第1のプロジェクトを選択した場合、クライアント装置110a~nは、第1のプロジェクトに関連付けられるプロジェクトデータ130に対する要求を設計サービス118に送信してもよい。デザイナーが第1のエフェクトの設計についての作業を開始又は続行したい場合、デザイナーは設計アプリケーション内で第1のプロジェクトを選択してもよい。402において、第1のシーンを示すデータをサーバコンピューティング装置から受信してもよい。
【0060】
第1のエフェクトを含む少なくとも1つのシーンのメインプレビューウィンドウが表示されてもよい。上述したように、サーバから受信された第1のシーンを示すデータは、そのプロジェクトに関連付けられたエフェクトの現在の設計状態を示してもよい。メインプレビューウィンドウは、エフェクトが現在どのように見えるかの表示又はプレビューを、エフェクトの現在の設計状態に基づいて、ユーザ104a~nに提供する。エフェクトの設計に更なる変更又は修正が行われない場合、デザイナーは、メインプレビューウィンドウを見れば、エフェクトがどのように見えるかを分かることができる。
【0061】
いくつかの実施形態において、デザイナーは、設計アプリケーション112を利用して、エフェクトを含むシーンに対する様々な変更をテストしてもよい。例えば、第1のエフェクトを含むシーンのメインプレビューウィンドウがインターフェース114a~n上に表示された後、デザイナーは、エフェクトの設計に対する様々な修正又は変更の影響を見たいかもしれない。このために、デザイナーは、設計アプリケーション112を利用して、プロジェクトに関連付けられる複数のセカンダリプレビューウィンドウをスポーンさせてもよい。これらの複数のセカンダリプレビューウィンドウの目的の1つは、オリジナルのシーンのプロパティに対する編集がどのようになるかをテストすることである。
【0062】
404において、第1のユーザ入力が受信されたことに応じて、第1のシーンの第1のコピーを含む第1のウィンドウを作成してもよい。第1のユーザ入力は、デザイナー(例えば、ユーザ)が設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を選択したときに受信されてもよい。デザイナーがボタンを選択するたびに、追加のセカンダリプレビューウィンドウをインターフェース114a~n上にスポーンさせて表示してもよい。デザイナーは、好きなだけ多くのセカンダリプレビューウィンドウをスポーンさせてもよい。第1のシーンは第1のプロジェクトに関連付けられ、第1のシーンは第1の視覚エフェクトを含む。第1の視覚エフェクトは、1つ又は複数の画像上に拡張現実(AR)エフェクトをレンダリングすることを含んでもよい。
【0063】
406において、第2のユーザ入力が受信されたことに応じて、第1のシーンの第2のコピーを含む第2のセカンダリプレビューウィンドウを作成してもよい。例えば、第2のユーザ入力は、デザイナー(例えば、ユーザ)が設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を2回目に選択したときに受信されてもよい。第1のセカンダリウィンドウ及び第2のセカンダリウィンドウは、第1のシーン内での第1の視覚エフェクトの異なるバージョンのA/Bテスト及び比較をほぼ同時で行うことができるように設定されている。
【0064】
一実施形態において、設計サービス118は、プロジェクトデータ130に対する更新(例えば、変更又は修正)を示すデータをクライアント装置110a~nから受信するように設定される。例えば、設計サービス118は、修正又は変更された設計を有するエフェクトに対応するプロジェクトに関連付けられたプロジェクトデータ130を更新するように設計サービス118に示す指示を受信してもよい。設計サービス118は、そのような指示を受信したことに応じて、プロジェクトデータ130を更新してもよい。
【0065】
設計サービス118が、エフェクトに関連付けられるプロジェクトデータ130に変更を行う場合、設計サービス118は、メッセージ(例えば、ソケットメッセージ)をクライアント装置110a~nに送信して、該エフェクトを含むシーンを表示するメインプレビューウィンドウを更新するようにクライアント装置110a~nに示してもよい。408において、第1のシーンに対する更新を示す情報をサーバコンピューティング装置から受信してもよい。そのため、エフェクトに変更又は修正を行ったデザイナーは、メインプレビューウィンドウが現在最近の変更又は修正を反映するように、メインプレビューウィンドウの変更を見てもよい。追加として、後でこの特定のエフェクトに手掛ける他のデザイナーは、(これらの設計変更が実装される前に表示されていたプレビューウィンドウではなく)この更新されたメインプレビューウィンドウを見ることになる。このエフェクトを含むシーンを表示するメインプレビューウィンドウが更新される場合、現在開かれている(又は後で開かれる)任意のスポーンされたセカンダリプレビューウィンドウが、最近の設計の変更又は修正を反映するように追加として更新されてもよい。410において、第1のウィンドウ内の第1のシーンの第1のコピーと第2のウィンドウ内の第1のシーンの第2のコピーを、受信された情報に基づいて更新してもよい。
【0066】
図5は、第2の複数のクライアント装置のうちのクライアント装置(例えば、クライアント装置110a~n)により実行される例示的なプロセス500を示す。クライアント装置110a~nは、プロセス500を実行して、ARエフェクトのようなエフェクトを設計してもよい。図5では一連のオペレーションとして説明されているが、当業者であれば、様々な実施形態において、説明されたオペレーションを追加、除去、並べ替え、又は修正してもよいことを理解できるはずである。
【0067】
上述したように、デザイナーは、クライアント装置110a~n上の設計アプリケーション112を利用して、第1のエフェクト設計プロジェクトに関連付けられるセカンダリの複数のプレビューウィンドウをスポーンさせてもよい。これらの複数のセカンダリプレビューウィンドウの目的の1つは、オリジナルのシーンのプロパティに対する編集がどのようになるかをテストすることである。502において、第1のユーザ入力が受信されたことに応じて、第1のシーンの第1のコピーを含む第1のウィンドウを作成してもよい。第1のユーザ入力は、デザイナー(例えば、ユーザ)が設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を選択したときに受信されてもよい。デザイナーがボタンを選択するたびに、追加のセカンダリプレビューウィンドウをインターフェース114a~n上にスポーンさせて表示してもよい。デザイナーは、好きなだけ多くのセカンダリプレビューウィンドウをスポーンさせてもよい。第1のシーンは第1のプロジェクトに関連付けられ、第1のシーンは第1の視覚エフェクトを含む。第1の視覚エフェクトは、1つ又は複数の画像上に拡張現実(AR)エフェクトをレンダリングすることを含んでもよい。
【0068】
504において、第2のユーザ入力が受信されたことに応じて、第1のシーンの第2のコピーを含む第2のセカンダリプレビューウィンドウを作成してもよい。例えば、第2のユーザ入力は、デザイナー(例えば、ユーザ)が設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を2回目に選択したときに受信されてもよい。第1のセカンダリウィンドウ及び第2のセカンダリウィンドウは、第1のシーン内での第1の視覚エフェクトの異なるバージョンのA/Bテスト及び比較をほぼ同時で行うことができるように設定されている。
【0069】
上述したように、各セカンダリプレビューウィンドウは、第1のエフェクトの現在の状態と、デザイナーがシーンに追加した任意の追加のオブジェクトとを表示する。各セカンダリプレビューウィンドウに表示されるコンテンツは、他のセカンダリプレビューウィンドウに表示される内容とは別に調整されてもよい。506において、第1のセカンダリウィンドウ内の第1のシーンの第1のコピーを、第1のシーンの第1のコピー内の第1の視覚エフェクトの少なくとも1つの属性に対する第1の変更に基づいて修正してもよい。これらの複数のセカンダリプレビューウィンドウの1つの目的は、オリジナルのシーンのプロパティに対する編集がどのように見えるかを見ることである(必ずしもプロジェクトデータ130に最終調整を行うわけではない)ので、このような修正は、ローカルにのみ適用され(例えば、クライアント装置110a~nにのみ適用され)、設計サービス118側には現れない。例えば、このような修正は、プロジェクトに関連付けられているメインプレビューウィンドウには影響しない。
【0070】
508において、第2のセカンダリプレビューウィンドウ内の第1のシーンの第2のコピーを、第1のシーンの第2のコピー内の第1の視覚エフェクトの少なくとも1つの属性に対する第2の変更に基づいて修正してもよい。第1の変更は第2の変更と異なる。これらの複数のセカンダリプレビューウィンドウの1つの目的は、オリジナルのシーンのプロパティに対する編集がどのように見えるかを見ることである(必ずしもプロジェクトデータ130に最終調整を行うわけではない)ので、このような修正は、ローカルにのみ適用され(例えば、クライアント装置110a~nにのみ適用され)、設計サービス118側には現れない。例えば、このような修正は、プロジェクトに関連付けられているメインプレビューウィンドウには影響しない。
【0071】
デザイナーは異なるプロジェクトに手掛けることを決定するかもしれない。例えば、デザイナーは、第1の視覚エフェクトではなく、第2の異なる視覚エフェクトに手掛けることを決定してもよい。クライアント装置110a~nは、第2のプロジェクトに関連付けられるプロジェクトデータ130に対する要求を設計サービス118に送信したことに応じて、第2のプロジェクトに関連付けられるプロジェクトデータ130を受信してもよい。510において、第2のシーンを示すデータをサーバコンピューティング装置から受信してもよい。第2のシーンは第2のプロジェクトに関連付けられている。また、第2のシーンは、第2の視覚エフェクトを含む。デザイナーが設計アプリケーション112のインターフェース114a~nを介して設計アプリケーション112内で第2のプロジェクトを選択した場合、クライアント装置110a~nは、第2のプロジェクトに関連付けられるプロジェクトデータ130に対する要求を設計サービス118に送信してもよい。デザイナーが第2のエフェクトの設計についての作業を開始又は続行したい場合、デザイナーは設計アプリケーション内で第2のプロジェクトを選択してもよい。
【0072】
いくつかの実施形態において、クライアント装置110a~nが設計サービス118からプロジェクトデータ130を受信した場合、第2のエフェクトを含む第2のシーンのメインプレビューウィンドウの表示はインターフェース114a~n上に表示されてもよい。上述したように、特定のプロジェクトに関連付けられたプロジェクトデータ130は、そのプロジェクトに関連付けられたエフェクトの現在の設計状態を示してもよい。したがって、メインプレビューウィンドウは、第2のエフェクトが現在どのように見えるかの表示又はプレビューを、第2のエフェクトの現在の設計状態に基づいて、ユーザ104a~nに提供する。第2のエフェクトの設計に更なる変更又は修正が行われない場合、デザイナーは、メインプレビューウィンドウを見れば、第2のエフェクトがどのように見えるかを分かることができる。
【0073】
いくつかの実施形態において、デザイナーは、設計アプリケーション112を利用して、第2のエフェクトを含む第2のシーンに対する様々な変更をテストしてもよい。例えば、第2のエフェクトを含む第2のシーンのメインプレビューウィンドウがインターフェース114a~n上に表示された後、デザイナーは、第2のエフェクトの設計に対する様々な修正又は変更の影響を見たいかもしれない。このために、デザイナーは、設計アプリケーション112を利用して、第2のプロジェクトに関連付けられる複数のセカンダリプレビューウィンドウをスポーンさせてもよい。第2のプロジェクトに関連付けられるセカンダリプレビューウィンドウをスポーンさせるために、デザイナーは、設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を選択してもよい。デザイナーがボタンを選択するたびに、追加のセカンダリプレビューウィンドウをインターフェース114a~n上にスポーンさせて表示してもよい。デザイナーは、好きなだけ多くのセカンダリプレビューウィンドウをスポーンさせてもよい。
【0074】
512において、第3のユーザ入力が受信されたことに応じて、第2のシーンの第1のコピーを含む第3のセカンダリプレビューウィンドウを作成してもよい。例えば、第3のユーザ入力は、デザイナー(例えば、ユーザ)が設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を3回目に選択したときに受信されてもよい。514において、第4のユーザ入力が受信されたことに応じて、第2のシーンの第2のコピーを含む第4のウィンドウを作成してもよい。例えば、第3のユーザ入力は、デザイナー(例えば、ユーザ)が設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を4回目に選択したときに受信されてもよい。第3のセカンダリウィンドウ及び第4のセカンダリウィンドウは、第2のシーン内での第2の視覚エフェクトの異なるバージョンのA/Bテスト及び比較をほぼ同時で行うことができるように設定されている。
【0075】
図6は、本開示にかかる設計アプリケーション(例えば、設計アプリケーション112)の例示的なユーザインターフェースのメインプレビューウィンドウ602及び複数のセカンダリプレビューウィンドウ604a~bを示す。上述したように、デザイナーは設計プロジェクトに手掛けることを決定するかもしれない。例えば、デザイナーが視覚エフェクトの設計に手掛けることを決定してもよい。プロジェクトに関連付けられるプロジェクトデータに対する要求が設計サービス(例えば、設計サービス118)に送信されたことに応じて、クライアント装置110a~nは、所望のプロジェクトに関連付けられるプロジェクトデータ(例えば、プロジェクトデータ130)を受信してもよい。デザイナーが設計アプリケーションのインターフェースを介して設計アプリケーション内で該プロジェクトを選択した場合、クライアント装置110a~nは、該プロジェクトに関連付けられるプロジェクトデータに対する要求を設計サービスに送信してもよい。デザイナーがプロジェクトに関連付けられたエフェクトの設計についての作業を開始又は続行したい場合、デザイナーはそのプロジェクトを選択してもよい。
【0076】
クライアント装置110a~nが設計サービスからプロジェクトデータを受信した場合、エフェクトを含むシーンのメインプレビューウィンドウ602はインターフェース上に表示されてもよい。上述したように、プロジェクトに関連付けられたプロジェクトデータは、そのプロジェクトに関連付けられたエフェクトの現在の設計状態を示してもよい。したがって、メインプレビューウィンドウ602は、エフェクトが現在どのように見えるかの表示又はプレビューを、エフェクトの現在の設計状態に基づいて、ユーザ104a~nに提供する。エフェクトの設計に更なる変更又は修正が行われない場合、デザイナーは、メインプレビューウィンドウ602を見れば、エフェクトがどのように見えるかを分かることができる。
【0077】
いくつかの実施形態において、デザイナーは、エフェクトを含むシーンに対する様々な変更をテストしてもよい。例えば、エフェクトを含むシーンのメインプレビューウィンドウ602が表示された後、デザイナーは、エフェクトの設計に対する様々なす修正又は変更の影響を見たいかもしれない。このために、デザイナーは、プロジェクトに関連付けられる複数のセカンダリプレビューウィンドウ604a~bをスポーンさせてもよい。プロジェクトに関連付けられる各セカンダリプレビューウィンドウ604a~bをスポーンさせるために、デザイナーは、設計アプリケーションのインターフェース114a~n上のボタン(例えば、(+)ボタン)を選択してもよい。デザイナーがボタンを選択するたびに、追加のセカンダリプレビューウィンドウをスポーンさせて表示してもよい。デザイナーは、好きなだけ多くのセカンダリプレビューウィンドウをスポーンさせてもよい。セカンダリウィンドウ604a~bは、シーン内の視覚エフェクトの異なるバージョンのA/Bテスト及び比較をほぼ同時に行うことができるように設定されている。
【0078】
図7は、本開示にかかる設計アプリケーション(例えば、設計アプリケーション112)の例示的なユーザインターフェース700のメインプレビューウィンドウ702及び複数のセカンダリプレビューウィンドウ704a~cを示す。上述したように、デザイナーは設計プロジェクトに手掛けることを決定するかもしれない。例えば、デザイナーが視覚エフェクトの設計に手掛けることを決定してもよい。プロジェクトに関連付けられるプロジェクトデータに対する要求が設計サービス(例えば、設計サービス118)に送信されたことに応じて、クライアント装置110a~nは、所望のプロジェクトに関連付けられるプロジェクトデータ(例えば、プロジェクトデータ130)を受信してもよい。デザイナーが設計アプリケーションのインターフェースを介して設計アプリケーション内で該プロジェクトを選択した場合、クライアント装置110a~nは、該プロジェクトに関連付けられるプロジェクトデータに対する要求を設計サービスに送信してもよい。デザイナーがプロジェクトに関連付けられたエフェクトの設計についての作業を開始又は続行したい場合、デザイナーはそのプロジェクトを選択してもよい。
【0079】
クライアント装置110a~nが設計サービスからプロジェクトデータを受信した場合、エフェクトを含むシーンのメインプレビューウィンドウ702はインターフェース上に表示されてもよい。上述したように、プロジェクトに関連付けられたプロジェクトデータは、そのプロジェクトに関連付けられたエフェクトの現在の設計状態を示してもよい。したがって、メインプレビューウィンドウ702は、エフェクトが現在どのように見えるかの表示又はプレビューを、エフェクトの現在の設計状態に基づいて、ユーザ104a~nに提供する。エフェクトの設計に更なる変更又は修正が行われない場合、デザイナーは、メインプレビューウィンドウ702を見れば、エフェクトがどのように見えるかを分かることができる。
【0080】
いくつかの実施形態において、デザイナーは、エフェクトを含むシーンに対する様々な変更をテストしてもよい。例えば、エフェクトを含むシーンのメインプレビューウィンドウ702が表示された後、デザイナーは、エフェクトの設計に対する様々なす修正又は変更の影響を見たいかもしれない。このために、デザイナーは、プロジェクトに関連付けられる複数のセカンダリプレビューウィンドウ704a~cをスポーンさせてもよい。プロジェクトに関連付けられる各セカンダリプレビューウィンドウ704a~cをスポーンさせるために、デザイナーは、設計アプリケーションのインターフェース114a~n上のボタン706(例えば、(+)ボタン)を選択してもよい。デザイナーがボタン706を選択するたびに、追加のセカンダリプレビューウィンドウをスポーンさせて表示してもよい。デザイナーは、好きなだけ多くのセカンダリプレビューウィンドウをスポーンさせてもよい。セカンダリウィンドウ704a~cは、シーン内の視覚エフェクトの異なるバージョンのA/Bテスト及び比較をほぼ同時に行うことができるように設定されている。
【0081】
図8は、複数のセカンダリプレビューウィンドウのスポーン(spawning)に対応するフローチャート800を示す。デザイナーは、次の手順を用いて、マルチセカンダリウィンドウプレビュー/ABテストパネルフィーチャを利用することができる。エディタサーバプロセス802は、クライアントコンピューティング装置(例えば、クライアント装置110)からの、プロジェクトに関連付けられたデータに対する要求に応答してもよい。804において、クライアントコンピューティング装置に関連付けられた設計が、設計アプリケーション(例えば、設計アプリケーション112)のインターフェース上の(+)ボタンを押した場合、クライアントコンピューティング装置から要求を送信してもよい。この要求に応じて、サーバプロセス802は、806において、プロジェクトに関連付けられたメイン設定ファイルをロードし、808において、マルチセカンダリウィンドウプレビューサービスを開始してもよい。例えば、エディタサーバプロセス802は、804及び806における操作が実行されたと決定してもよい。そうである場合、プレビューサービス808は、クライアント装置上で開始されてもよい。プレビューサービス808は、それぞれが新しいプロセス上で実行される複数のセカンダリプレビューウィンドウ又はパネル812a~cをスポーンさせてもよい。複数のセカンダリプレビューウィンドウ又はパネル812a~cの各々は、ローカルに保存されたA/Bテスト設定ファイル814a~cに関連付けられている。デュアルインスタンスサーバ810は、複数のセカンダリプレビューウィンドウ又はパネル812a~cの同時表示を容易にしてもよい。デュアルインスタンスサーバ810上の各インスタンスが、それ自体のインスタンスディレクトリ、(設定ファイルを記憶するための)データベース及びログディレクトリを有する。
【0082】
図9は、複数のセカンダリプレビューウィンドウのスポーンに対応するフローチャート900を示す。インスペクタコンポーネントは、クライアント装置110a~n上で開始されてもよい。「+」(プラス)ボタンをクリックすることにより、デザイナーは、新しいプロセス上で実行される新しいセカンダリプレビューウィンドウをスポーンさせることができる。各プロセスには、メインシーンのコピーと、編集ウィンドウからインスペクタパネルを介して送信された特定のプロパティ変更とが含まれる。プロジェクトフォルダのルートディレクトリに存在するメイン設定ファイル(例えば、app.configファイル)は、プロジェクトに含まれるプレビューの数を追跡し続けるために使用される。これにより、プロジェクトがプレビュープロセスを自動的にスポーン/生成させることを可能にする。新しいセカンダリウィンドウが作成された場合、プレビューウィンドウの正確な数を反映するようにメイン設定ファイルを更新してもよい。
【0083】
ARエフェクトを2Dテクスチャにレンダリングするメインプレビューウィンドウが表示されてもよい。デザイナーは、例えばボタン(例えば、「Plus」(+)ボタン)をクリックすることにより、これらの新しいセカンダリプレビューウィンドウのうちの複数をスポーンさせてもよい。ユーザは、それらのメインプロジェクトを再び開くこともでき、それらの全てのプレビューは、変更されたプロパティで自動的に現れる。全てのプレビューウィンドウを同時に開いてもよい。これは、デュアルインスタンス接続ラッパーにより容易になる。ユーザは、プレビューウィンドウの最大数を設定可能であってもよい。
【0084】
複数のプレビューウィンドウのUIはタイプスクリプト(Typescript)で設計されてもよいし、C++コードとのバインディングを使用して新しいAmazerインスタンスを作成し、プレビューパネル上にシーンをレンダリングしてもよい。メインエディタ(サーバプロセス)がシーンに変更を行った場合、プレビュープラグイン(クライアントプロセス)にソケットメッセージが送信され、プレビュープラグインのシーンが更新される。プレビュープラグインの目的は、オリジナルのシーンのプロパティに対する編集がどのように見えるかを見ることであるため、プレビュープラグイン(クライアントプロセス)内では、シーンに対する特定の変更を行うことができるが、これらの変更はメインエディタ(サーバプロセス)上には現れない。クライアントを追跡し続けるために、エフェクトソフトウェア開発ツールキット(SDK:software development kit)に対して修正が行われてもよい。例えば、クライアントマップを使用し、コールバックを呼び出して、クライアントが接続する時間をメインエディタに知らせる。
【0085】
図10は、図1に示されたサービス、ネットワーク、モジュール、及び/又は装置のような、様々な態様で使用されてもよいコンピューティング装置を示す。図1のアーキテクチャ例に関して、クラウドネットワーク(及びそのコンポーネントのうちの何れか)、クライアント装置及び/又はネットワークはそれぞれ、図10のコンピューティング装置1000の一つ又は複数のインスタンスにより実装されてもよい。図10に示されるコンピュータアーキテクチャは、従来のサーバコンピュータ、ワークステーション、デスクトップコンピュータ、ラップトップコンピュータ、タブレット、ネットワーク装置、PDA、電子リーダ、デジタル携帯電話、又は他のコンピューティングノードを示し、本明細書に記載された方法を実装するなど、本明細書に記載されたコンピュータの任意の態様を実行するために使用されてもよい。
【0086】
コンピューティング装置1000は、システムバス又は他の電気通信経路を介して複数のコンポーネント又は装置に接続されることのできるプリント回路基板である基板又は「マザーボード」を含んでもよい。一つ又は複数の中央処理装置(CPU)1004は、チップセット1006と結合して動作してもよい。CPU 1004は、コンピューティング装置1000のオペレーションに必要な算術演算及び論理演算を実行する標準的なプログラマブルプロセッサであってもよい。
【0087】
CPU 1004は、一つの離散的な物理状態から次の状態に移行して必要なオペレーションを、これらの状態を区別して変化させるスイッチング素子を操作することにより、実行してもよい。スイッチング素子は、二つのバイナリ状態のうちの一つを維持する電子回路、例えばフリップフロップと、一つ又は複数の他のスイッチング素子の状態の論理的な組み合わせに基づいて出力状態を提供する電子回路、例えば論理ゲートとを典型的に含み得る。これらの基本スイッチング素子を組み合わせて、レジスタ、加減算器、算術論理ユニット、浮動小数点ユニット等を含むより複雑な論理回路を作成してもよい。
【0088】
CPU 1004は、GPUのような他の処理ユニットで拡張されてもよいし、又はそれらにより置き換えられてもよい。GPUは、グラフィック及び他の視覚化関連処理のような高度な並列計算に特化されているが必ずしも限定されていない処理ユニットを含んでもよい。
【0089】
チップセット1006は、CPU 1004と、基板上の残りのコンポーネント及び装置との間のインターフェースを提供してもよい。チップセット1006は、コンピューティング装置1000内の主メモリとして使用されるランダムアクセスメモリ(RAM)1008へのインターフェースを提供してもよい。チップセット1006はまた、コンピューティング装置1000を起動し、様々なコンポーネントと装置との間で情報を送信するのを容易にすることができる基本ルーチンを記憶するために、コンピュータ可読記憶媒体、例えば読取り専用メモリ(ROM)1020又は不揮発性RAM(NVRAM)(図示せず)へのインターフェースを提供してもよい。本明細書で説明される態様によれば、ROM 1020又はNVRAMは、コンピューティング装置1000のオペレーションに必要な他のソフトウェアコンポーネントを記憶してもよい。
【0090】
コンピューティング装置1000は、ローカルエリアネットワーク(LAN)を介した遠隔コンピューティングノード及びコンピュータシステムへの論理接続を使用して、ネットワーク環境で動作してもよい。チップセット1006は、ギガビットイーサネットアダプタなどのネットワークインターフェースコントローラ(NIC)1022を介してネットワーク接続を提供するための機能を含んでもよい。NIC 1022は、ネットワーク1016を介してコンピューティング装置1000を他のコンピューティングノードに接続することが可能であってもよい。複数のNIC 1022はコンピューティング装置1000内に存在して、コンピューティング装置を他のタイプのネットワーク及び遠隔コンピュータシステムに接続してもよいことを理解すべきである。
【0091】
コンピューティング装置1000は、コンピュータのために不揮発性記憶装置を提供する大容量記憶装置1028に接続されてもよい。大容量記憶装置1028は、本明細書でより詳細に説明されたシステムプログラム、アプリケーションプログラム、他のプログラムモジュール、及びデータを記憶してもよい。大容量記憶装置1028は、チップセット1006に接続された記憶コントローラ1024を介してコンピューティング装置1000に接続されてもよい。大容量記憶装置1028は、一つ又は複数の物理記憶ユニットで構成されてもよい。大容量記憶装置1028は、管理コンポーネント1010を含んでもよい。記憶コントローラ1024は、シリアルアタッチドSCSI(SAS)インターフェース、シリアルアドバンスドテクノロジーアタッチメント(SATA)インターフェース、ファイバチャネル(FC)インターフェース、又はコンピュータと物理記憶ユニットとの間で物理的に接続してデータを送信するための他のタイプのインターフェースを介して物理記憶ユニットとインターフェースしてもよい。
【0092】
コンピューティング装置1000は、物理記憶ユニットの物理的状態を変換して記憶されている情報を反映することにより、データを大容量記憶装置1028上に記憶してもよい。物理的状態の特定の変換は、様々な要因及び本明細書の異なる実施態様に依存してもよい。このような要因の例には、物理記憶装置を実現するための技術、及び大容量記憶装置1028が一次記憶装置又は二次記憶装置などとして特徴を有するか否かが含まれるが、これらに限定されるものではない。
【0093】
例えば、コンピューティング装置1000は、磁気ディスクドライブユニット内の特定位置の磁気特性、光学記憶ユニット内の特定位置の反射特性又は屈折特性、又は固体記憶ユニット内の特定のキャパシタ、トランジスタ又は他のディスクリートコンポーネントの電気特性を変更するために、記憶コントローラ1024を介して命令を出すことにより情報を大容量記憶装置1028に記憶してもよい。本明細書の範囲及び精神から逸脱することなく、物理媒体の他の変換が可能であり、前述の例は、単にその説明を容易にするためだけに提供される。コンピューティング装置1000はさらに、物理記憶ユニット内の一つ又は複数の特定位置の物理的状態又は特徴を検出することにより、大容量記憶装置1028から情報を読み取ってもよい。
【0094】
上述の大容量記憶装置1028に加えて、コンピューティング装置1000は、プログラムモジュール、データ構造、又は他のデータなどの情報を記憶及び検索するために、他のコンピュータ可読記憶媒体にアクセスしてもよい。当業者であれば、コンピュータ可読記憶媒体は、非一時的データの記憶を提供し、コンピューティング装置1000によりアクセス可能な任意の利用可能な媒体とすることができることを理解できるはずである。
【0095】
限定ではなく、一例として、コンピュータ可読記憶媒体は、揮発性及び不揮発性、一時的コンピュータ可読記憶媒体及び非一時的コンピュータ可読記憶媒体、並びに任意の方法又は技術で実現される取り外し可能な媒体及び取り外し不可能な媒体を含んでもよい。コンピュータ可読記憶媒体は、RAM、ROM、消去可能なプログラマブルROM(EPROM)、電気的に消去可能なプログラマブルROM(EEPROM)、フラッシュメモリ又は他のソリッドステートメモリ技術、コンパクトディスクROM(CD ROM)、デジタル多用途ディスク(DVD)、高解像度DVD(「HD DVD」)、BLU-RAY又は他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、他の磁気記憶装置、又は所望の情報を非一時的な方法で記憶するために使用できる任意の他の媒体を含むが、これらに限定されない。
【0096】
図10に示す大容量記憶装置1028のような大容量記憶装置は、コンピューティング装置1000のオペレーションを制御するためのオペレーティングシステムを記憶してもよい。オペレーティングシステムには、1バージョンのLINUXオペレーティングシステムが含まれてもよい。オペレーティングシステムには、マイクロソフト社の1バージョンのWINDOWS(登録商標) SERVERオペレーティングシステムが含まれてもよい。別の態様によれば、オペレーティングシステムには、1バージョンのUNIX(登録商標)オペレーティングシステムが含まれてもよい。また、IOSやANDROID(登録商標)のような、各種携帯電話オペレーティングシステムを利用してもよい。他のオペレーティングシステムも利用してもよいことを理解すべきである。大容量記憶装置1028は、コンピューティング装置1000により使用される他のシステム又はアプリケーション及びデータを記憶してもよい。
【0097】
大容量記憶装置1028又は他のコンピュータ可読記憶媒体はまた、コンピューティング装置1000にロードされると、コンピューティング装置を汎用コンピューティングシステムから本明細書で説明される態様を実装できる専用コンピュータに変換するコンピュータ実行可能命令で符号化されてもよい。上述したように、これらのコンピュータ実行可能命令は、CPU 1004がどのように状態間を遷移するかを規定することにより、コンピューティング装置1000を変換する。コンピューティング装置1000は、コンピューティング装置1000により実行されたときに本明細書に記載された方法を実行することができるコンピュータ実行可能命令を記憶するコンピュータ可読記憶媒体にアクセスしてもよい。
【0098】
図10に示されるコンピューティング装置1000のようなコンピューティング装置は、キーボード、マウス、タッチパッド、タッチスクリーン、電子スタイラスペン、又は他のタイプの入力装置のような複数の入力装置からの入力を受信し、処理するための入出力コントローラ1032をさらに含んでもよい。同様に、入出力コントローラ1032は、コンピュータモニタ、フラットパネルディスプレイ、デジタルプロジェクタ、プリンタ、プロッタ、又は他のタイプの出力装置などのディスプレイに出力を提供してもよい。コンピューティング装置1000は、図10に示された全ての構成要素を含まなくてもよく、図10に明示的に示されていない他の構成要素を含んでもよく、又は図10に示されたアーキテクチャとは全く異なるアーキテクチャを利用してもよいことを、理解すべきである。
【0099】
本明細書で説明するように、コンピューティング装置は、図10のコンピューティング装置1000のような物理コンピューティング装置であってもよい。コンピューティングノードはまた、仮想マシンホストプロセス及び一つ又は複数の仮想マシンインスタンスを含んでもよい。コンピュータ実行可能命令は、仮想マシンのコンテキスト内に記憶され実行される命令を解釈及び/又は実行することにより、コンピューティング装置の物理ハードウェアにより間接的に実行されてもよい。
【0100】
方法及びシステムは、特定の方法、特定のコンポーネント、又は特定の実施態様に限定されないことを理解すべきである。本明細書で使用される用語は、特定の実施形態を説明する目的のためだけに使用され、限定することを意図しないことも理解すべきである。
【0101】
明細書及び添付の特許請求の範囲において使用される場合、単数形「一」、「一つ」及び「該」は、文脈が明示的に別段の指示をしない限り、複数の参照対象を含む。範囲は、本明細書では、「約」一つの特定の値から、及び/又は「約」別の特定の値までと表されてもよい。このような範囲が表される場合、別の実施形態は、該一つの特定の値から及び/又は該別の特定の値までの範囲を含む。同様に、先行詞「約」を使用することにより値を近似値として表す場合、該特定の値が他の実施形態を形成することを理解すべきである。さらに、各範囲の端点は、他の端点に対しても、他の端点から独立しても有意であることを理解すべきである。
【0102】
「任意の」又は「任意に」は、後に説明されるイベント又は状況が発生する可能性も発生しない可能性もあり、明細書には、前記イベント又は状況が発生する場合と発生しない場合が含まれることを意味する。
【0103】
本明細書の説明及び特許請求の範囲全体において、単語「含む」及びその単語の変形、例えば「含んでいる」、「包含する」は、「含むが、これに限定されない」ことを意味する。例えば、他の構成要素、整数、又はステップを除外することを意図しない。「例示的」は、「~の例」を表し、好ましい又は望ましい実施形態の指示を伝えることを意図しない。「のような」は制限する意味ではなく、解釈の目的で使われる。
【0104】
記載された方法及びシステムを実行するために使用できる構成要素が記載されている。これらの構成要素の組合せ、サブセット、相互作用、グループ等を説明する際に、これらの構成要素の様々な個別及び集合的な組合せ及び順列のそれぞれに対する具体的な参照は明示的に説明されない場合があり、そのそれぞれが全ての方法及びシステムについて、本明細書で具体的に想定され、説明されることを理解すべきである。これは、記載された方法におけるオペレーションを含むがこれに限定されない、本願の全ての態様に適用される。したがって、実行可能な様々な追加のオペレーションが存在する場合、これらの追加のオペレーションのそれぞれは、説明された方法の任意の特定の実施形態又は実施形態の組み合わせで実行可能であることを理解すべきである。
【0105】
本方法及びシステムは、以下の好ましい実施形態及びそれに含まれる例の詳細な説明、並びに添付の図面及びそれらの説明を参照することにより、より容易に理解することができる。
【0106】
当業者が理解するように、方法及びシステムは、完全なハードウェア実施形態、完全なソフトウェア実施形態、又はソフトウェア及びハードウェアの態様を組み合わせた実施形態の形態を取ってもよい。さらに、本方法及びシステムは、記憶媒体に具現化されたコンピュータ可読プログラム命令(例えば、コンピュータソフトウェア)を有するコンピュータ可読記憶媒体上のコンピュータプログラム製品の形態を取ってもよい。より具体的には、本方法及びシステムは、ウェブ実装のコンピュータソフトウェアの形態をとってもよい。ハードディスク、CD-ROM、光学記憶装置又は磁気記憶装置を含む任意の適切なコンピュータ可読記憶媒体を利用してもよい。
【0107】
方法、システム、装置、及びコンピュータプログラム製品のブロック図及びフローチャートを参照して、方法及びシステムの実施形態を以下に説明する。ブロック図及びフローチャートの各ブロック、並びにブロック図及びフローチャートのブロックの組み合わせは、それぞれコンピュータプログラム命令により実現されてもよいことを理解すべきである。これらのコンピュータプログラム命令は、コンピュータ又は他のプログラマブルデータ処理装置上で実行される命令がフローチャートの一つ又は複数のブロック内で指定された機能を実現するための手段を生成するように、汎用コンピュータ、専用コンピュータ、又は他のプログラマブルデータ処理装置にロードされてマシンを生成してもよい。
【0108】
これらのコンピュータプログラム命令は、コンピュータ可読メモリに記憶された命令がフローチャートの一つ又は複数のブロック内で規定された機能を実現するためのコンピュータ可読命令を含む製品を生成するように、コンピュータ又は他のプログラマブルデータ処理装置を特定の方法で動作させるように指示することができるコンピュータ可読メモリに記憶されてもよい。コンピュータプログラム命令は、コンピュータ又は他のプログラマブルデータ処理装置上で実行される命令がフローチャートの一つ又は複数のブロック内で規定された機能を実現するためのステップを提供するように、コンピュータ又は他のプログラマブルデータ処理装置にロードされて、コンピュータ又は他のプログラマブルデータ処理装置上で一連のオペレーションステップを実行させて、コンピュータ実現プロセスを生成してもよい。
【0109】
上述した様々な特性及びプロセスは、互いに独立して使用されてもよいし、又は様々な方法で組み合わせてもよい。全ての可能な組み合わせ及びサブコンビネーションは、本開示の範囲内に入ることを意図している。さらに、いくつかの実施において、一部の方法又はプロセスブロックを省略してもよい。本明細書で説明される方法及びプロセスは、任意の特定の順序に限定されるものではなく、それに関連するブロック又は状態は、適切な他の順序で実行されてもよい。例えば、説明されたブロック又は状態は、特別に説明された順番以外の順番で実行されてもよいし、あるいは、複数のブロック又は状態は、単一のブロック又は状態内で結合されてもよい。例示的なブロック又は状態は、連続的に、並列に、又は何らかの他の方法で実行されてもよい。ブロック又は状態は、説明された例示的な実施形態に追加されてもよいし、開示された例示的な実施形態から削除されてもよい。本明細書に記載された例示的なシステム及びコンポーネントは、説明されたものとは異なるように設定されてもよい。例えば、説明された例示的な実施形態と比較して、要素を追加したり、削除したり、又は再配置したりしてもよい。
【0110】
また、様々なアイテムは、使用中にメモリ内又は記憶装置上に記憶されるように示されている。これらのアイテム又はその一部は、メモリ管理及びデータ完全性の目的のために、メモリと他の記憶装置との間で移転されてもよいことも理解されるはずである。代替として、他の実施形態において、ソフトウェアモジュール及び/又はシステムの一部又は全部を別の装置上でメモリ内で実行し、コンピュータ間通信を介して図示のコンピューティングシステムと通信してもよい。さらに、いくつかの実施形態において、システム及び/又はモジュールの一部又は全部は、他の方法で、例えば少なくとも部分的にファームウェア及び/又はハードウェアで実装又は提供されてもよい。ハードウェアは、一つ又は複数の特定用途向け集積回路(ASIC)、標準集積回路、コントローラ(例えば、適切な指令を実行することにより、また、マイクロコントローラ及び/又は埋め込みコントローラを含む)、フィールドプログラマブルゲートアレイ(FPGA)、複合プログラマブル論理装置(CPLD)などを含むが、これらに限定されない。モジュール、システム、及びデータ構造の一部又は全部は、適切な装置により又は適切な接続を介して読み取るために、ハードディスク、メモリ、ネットワーク、又はポータブルメディア製品などのコンピュータ可読媒体上に(例えば、ソフトウェア指令又は構造化データとして)記憶されてもよい。システム、モジュール、及びデータ構造は、無線に基づく媒体及び有線/ケーブルに基づく媒体を含む、様々なコンピュータ可読送信媒体上で、生成されたデータ信号として(例えば、搬送波又は他のアナログ又はデジタル伝搬信号の一部として)送信されてもよいし、コンピュータ可読送信媒体に含まれ、(例えば、単一又は多重化アナログ信号の一部として、又は複数の離散デジタルパケット又はフレームとして)様々な形態を取ってもよい。他の実施形態において、そのようなコンピュータプログラム製品は、他の形態を取ることもできる。したがって、本発明は、他のコンピュータシステム構成で実施することができる。
【0111】
好ましい実施形態及び特定の例に関連して方法及びシステムを説明してきたが、本明細書の実施形態は全ての態様において限定的ではなく例示的なものであることを意図しているので、範囲を特定の実施形態に限定することは意図されない。
【0112】
特に明記されない限り、本明細書に記載されている方法は、そのオペレーションが特定の順序で実行することを要求するものではない。したがって、方法請求項がそのオペレーションが従うべき順序を実際に記載していない場合、又はオペレーションが特定の順序に限定されることが請求項又は明細書に具体的に記載されていない場合、いかなる態様においても順序を推論することを意図するものではない。これは、ステップの配置やオペレーションフローに関する論理的な問題、文法的な構成や句読点から得られる単純な意味、明細書に記載されている実施形態の数又はタイプを含む、解釈のための任意の可能な非表現的な根拠に適用される。
【0113】
当業者にとって明らかなように、本開示の範囲又は精神から逸脱することなく、様々な修正及び変更が可能である。本明細書及び本明細書に記載された実践を考慮すると、他の実施形態は当業者にとって自明であろう。本明細書及び例示的な図面は、例示的であるとのみみなされることが意図されており、その真の範囲及び精神は、以下の特許請求の範囲により示される。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
【手続補正書】
【提出日】2024-08-09
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
コンピューティング装置であって、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサにより実行されると、当該コンピューティング装置に、
第1のユーザ入力が受信されたことに応じて、第1のプロジェクトに関連付けられている第1のシーンであって、第1の視覚エフェクトを含む第1のシーンの第1のコピーを含む第1のウィンドウを作成することと、
第2のユーザ入力が受信されたことに応じて、前記第1のシーンの第2のコピーを含む第2のウィンドウを作成することであって、前記第1のウィンドウ及び前記第2のウィンドウは、前記第1のシーン内の前記第1の視覚エフェクトの異なるバージョンのテスト及び比較をほぼ同時に行うことができるように設定されることと、
前記第1のウィンドウ内の前記第1のシーンの前記第1のコピーを、前記第1のシーンの前記第1のコピー内の前記第1の視覚エフェクトの少なくとも1つの属性に対する第1の変更に基づいて修正することと、
前記第2のウィンドウ内の前記第1のシーンの前記第2のコピーを、前記第1のシーンの前記第2のコピー内の前記第1の視覚エフェクトの少なくとも1つの属性に対する、前記第1の変更と異なる第2の変更に基づいて修正することと、
を含むオペレーションを実行させるコンピュータ可読命令を含む少なくとも1つのメモリと、
を備える、コンピューティング装置。
【請求項2】
前記オペレーションは、
前記第1のシーンの修正された前記第1のコピーを、前記少なくとも1つのメモリ内の、前記第1のウィンドウに関連付けられている第1の設定ファイルに記憶することと、
前記第1のシーンの修正された前記第2のコピーを、前記少なくとも1つのメモリ内の、前記第2のウィンドウに関連付けられている第2の設定ファイルに記憶することと、
をさらに含む、請求項1に記載のコンピューティング装置。
【請求項3】
前記オペレーションは、
前記第1のプロジェクトにアクセスすることを示すユーザ入力が受信されたことに応じて、前記第1のウィンドウを、前記第1の設定ファイルから前記第1のシーンの修正された前記第1のコピーがロードされたことに基づいて表示し、前記第2のウィンドウを、前記第2の設定ファイルから前記第1のシーンの修正された前記第2のコピーがロードされたことに基づいて表示すること、
をさらに含む、請求項2に記載のコンピューティング装置。
【請求項4】
前記オペレーションは、
前記第1のシーンの修正された前記第1のコピー内の前記第1の視覚エフェクトの前記少なくとも1つの属性に対する別の変更に基づいて、前記第1のシーンの修正された前記第1のコピーを調整することと、
前記第1のシーンの修正された前記第2のコピー内の前記第1の視覚エフェクトの前記少なくとも1つの属性に対する別の変更に基づいて、前記第1のシーンの修正された前記第2のコピーを調整することと、
をさらに含む、請求項3に記載のコンピューティング装置。
【請求項5】
前記第1のウィンドウ及び前記第2のウィンドウを作成する前に、前記オペレーションは、
前記第1のシーンを示すデータをサーバコンピューティング装置から受信すること、
をさらに含む、請求項1に記載のコンピューティング装置。
【請求項6】
前記オペレーションは、
前記第1のシーンに対する更新を示す情報を前記サーバコンピューティング装置から受信することと、
受信された前記情報に基づいて、前記第1のウィンドウ内の前記第1のシーンの前記第1のコピーを更新し、前記第2のウィンドウ内の前記第1のシーンの前記第2のコピーを更新することと、
をさらに含む、請求項5に記載のコンピューティング装置。
【請求項7】
前記オペレーションは、
第2のプロジェクトに関連付けられている第2のシーンであって、第2の視覚エフェクトを含む第2のシーンを示すデータをサーバコンピューティング装置から受信することと、
第3のユーザ入力が受信されたことに応じて、前記第2のシーンの第1のコピーを含む第3のウィンドウを作成することと、
第4のユーザ入力が受信されたことに応じて、前記第2のシーンの第2のコピーを含む第4のウィンドウを作成することと、
をさらに含み、
異なる変更が前記第2のシーンの前記第1のコピーと前記第2のシーンの前記第2のコピーとに行われ、それぞれ第3の設定ファイルと第4の設定ファイルとに記憶され、前記第3の設定ファイル及び前記第4の設定ファイルは当該コンピューティング装置の前記少なくとも1つのメモリに記憶されている、
請求項1に記載のコンピューティング装置。
【請求項8】
前記第1の視覚エフェクトは、1つ又は複数の画像上に拡張現実(AR)エフェクトをレンダリングすることを含む、
請求項1に記載のコンピューティング装置。
【請求項9】
第1のユーザ入力が受信されたことに応じて、第1のプロジェクトに関連付けられている第1のシーンであって、第1の視覚エフェクトを含む第1のシーンの第1のコピーを含む第1のウィンドウを作成することと、
第2のユーザ入力が受信されたことに応じて、前記第1のシーンの第2のコピーを含む第2のウィンドウを作成することであって、前記第1のウィンドウ及び前記第2のウィンドウは、前記第1のシーン内の前記第1の視覚エフェクトの異なるバージョンのテスト及び比較をほぼ同時に行うことができるように設定されることと、
前記第1のウィンドウ内の前記第1のシーンの前記第1のコピーを、前記第1のシーンの前記第1のコピー内の前記第1の視覚エフェクトの少なくとも1つの属性に対する第1の変更に基づいて修正することと、
前記第2のウィンドウ内の前記第1のシーンの前記第2のコピーを、前記第1のシーンの前記第2のコピー内の前記第1の視覚エフェクトの少なくとも1つの属性に対する、前記第1の変更と異なる第2の変更に基づいて修正することと、
を含む、方法。
【請求項10】
前記第1のシーンの修正された前記第1のコピーを、前記少なくとも1つのメモリ内の、前記第1のウィンドウに関連付けられている第1の設定ファイルに記憶することと、
前記第1のシーンの修正された前記第2のコピーを、前記少なくとも1つのメモリ内の、前記第2のウィンドウに関連付けられている第2の設定ファイルに記憶することと、
をさらに含む、請求項9に記載の方法。
【請求項11】
前記第1のプロジェクトにアクセスすることを示すユーザ入力が受信されたことに応じて、前記第1のウィンドウを、前記第1の設定ファイルから前記第1のシーンの修正された前記第1のコピーがロードされたことに基づいて表示し、前記第2のウィンドウを、前記第2の設定ファイルから前記第1のシーンの修正された前記第2のコピーがロードされたことに基づいて表示すること、
をさらに含む、請求項10に記載の方法。
【請求項12】
前記第1のシーンの修正された前記第1のコピー内の前記第1の視覚エフェクトの前記少なくとも1つの属性に対する別の変更に基づいて、前記第1のシーンの修正された前記第1のコピーを調整することと、
前記第1のシーンの修正された前記第2のコピー内の前記第1の視覚エフェクトの前記少なくとも1つの属性に対する別の変更に基づいて、前記第1のシーンの修正された前記第2のコピーを調整することと、
をさらに含む、請求項11に記載の方法。
【請求項13】
前記第1のウィンドウ及び前記第2のウィンドウを作成する前に、
前記第1のシーンを示すデータをサーバコンピューティング装置から受信すること、
をさらに含む、請求項9に記載の方法。
【請求項14】
前記第1のシーンに対する更新を示す情報を前記サーバコンピューティング装置から受信することと、
受信された前記情報に基づいて、前記第1のウィンドウ内の前記第1のシーンの前記第1のコピーを更新し、前記第2のウィンドウ内の前記第1のシーンの前記第2のコピーを更新することと、
をさらに含む、請求項13に記載の方法。
【請求項15】
コンピュータ可読命令が記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータ可読命令は、プロセッサにより実行されると、前記プロセッサに、請求項9~14のいずれかに記載の方法を実現させる、
非一時的なコンピュータ可読記憶媒体。
【請求項16】
プロセッサにより実行される場合、前記プロセッサに、請求項9~14のいずれかに記載の方法を実現させる、
コンピュータプログラム。
【国際調査報告】