JP2015505996A - メッシュシーケンスファイルフォーマット - Google Patents

メッシュシーケンスファイルフォーマット Download PDF

Info

Publication number
JP2015505996A
JP2015505996A JP2014513653A JP2014513653A JP2015505996A JP 2015505996 A JP2015505996 A JP 2015505996A JP 2014513653 A JP2014513653 A JP 2014513653A JP 2014513653 A JP2014513653 A JP 2014513653A JP 2015505996 A JP2015505996 A JP 2015505996A
Authority
JP
Japan
Prior art keywords
animation
computer
transition
delta
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014513653A
Other languages
English (en)
Other versions
JP5932986B2 (ja
Inventor
マロニー,クリストファー
ヒル,ライアン・チャールズ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2015505996A publication Critical patent/JP2015505996A/ja
Application granted granted Critical
Publication of JP5932986B2 publication Critical patent/JP5932986B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Processing Or Creating Images (AREA)
  • Stored Programmes (AREA)
  • Image Generation (AREA)

Abstract

バイナリー遷移ファイルを生成する技術が本明細書に記載される。複数のアニメーション構造をバイナリー遷移ファイル内に生成することができる。アニメーション構造は3次元メッシュのシーケンスを定義することができる。バイナリー遷移ファイル内にヘッダー部を生成することができる。ヘッダー部は、スライド間の遷移を生成するために3次元メッシュに適用されるスライドを定義することができる。プレゼンテーションプログラムアプリケーションはバイナリー遷移ファイルを用いて修正することができ、それによって、遷移を提供するようにプレゼンテーションプログラムアプリケーションが構成される。

Description

本発明は、メッシュシーケンスファイルフォーマットに関する。
[0001]一般に、電子プレゼンテーションプログラムアプリケーションは、ユーザーが、テキスト、イメージ、サウンド、ビデオ、及び/又は他のタイプのマルチメディアを含むインパクトの大きな動的スライドプレゼンテーションを作成することを可能にする。いくつかのプレゼンテーションプログラムアプリケーションは、いくつかある特徴の中でも特に、プレゼンテーション内のスライドの間での遷移を提供することができる。スライド遷移は、プレゼンテーションを提供する間にユーザーが1つのスライドから次のスライドに移動するときに生じるアニメーションのような効果を指す。ユーザーは、プレゼンテーションに視覚的な能力を追加するためにプレゼンテーション内のスライド遷移を含めてもよい。
[0002]プレゼンテーションプログラムアプリケーションは、プレゼンテーションに含める複数の利用可能な遷移から所定の遷移をユーザーが選択することを可能にする機能を含んでもよい。所定の遷移を作成するための従来のリバースエンジニアリングワークフローでは、デザイナーは、遷移のコンセプトについてブレインストーミングを行い、次いで遷移のコンセプトの視覚的表現(例えば、ビデオ)を作成することができる。視覚的表現を基準として使用して、プログラマーは、遷移のコンセプトにおけるスライドの動きを表す数学的表現のセットを作成することができる。数学的表現のセットを作成する際に、プログラマーは、数学的表現のセットを、プレゼンテーションプログラムアプリケーションに組み込むことができるプログラムコードへ変換することができる。テスターは、プレゼンテーションプログラムアプリケーションをテストし、プログラムのコードに対応する実行される遷移が満足のいくものであるか否かを判定することができる。実行された遷移が満足のいくものではない場合には、プログラマーは数学的表現を再作成してプログラムコードを再変換する必要があることがある。
[0003]時が経つにつれて、従来のリバースエンジニアリングワークフローは時間がかかり、面倒なものであることが証明されてきた。プログラマーは、実行される遷移が満足のいくものであるとテスターが判断するまでに、数学的表現の複数のセットを作成して、各セットをプログラムコードに変換することを複数回繰り返す必要がある場合がある。数学的表現の新しいセットに対応する各プログラムコードは、広範なテストが必要になる場合がある。さらに、複雑な動きを含むいくつかの遷移は、数学的表現によって簡便に表現されない場合がある。
[0004]本明細書中でなされる開示はこの検討などに関して提示される。
[0005]バイナリー遷移ファイルを生成する技術が本明細書に記載される。バイナリー遷移ファイルは、遷移を表す3次元メッシュのシーケンスを定義することができる。3次元メッシュは、情報のなかでも特に、いくつかの3次元形状を規定する頂点の集合や3次元形状の面を規定する指標(indices)の集合を含むことができる。遷移ファイルのサイズは、スライド遷移について行うことができる様々な仮定に基づいて大きく低減することができる。
[0006]いくつかの例示的な技術では、方法は、バイナリー遷移ファイルを生成するように構成される。当該方法によれば、技術は、バイナリー遷移ファイルに複数のアニメーション構造を生成することができる。アニメーション構造は、3次元メッシュのシーケンスを定義してもよい。技術はまた、バイナリー遷移ファイルのヘッダー部を生成することができる。ヘッダー部は、スライド間の遷移を生成するために3次元メッシュに適用されるスライドを定義することができる。技術はさらに、バイナリー遷移ファイルによってプレゼンテーションプログラムアプリケーションを修正することができる。プレゼンテーションプログラムアプリケーションは、バイナリー遷移ファイルを介して修正の際に遷移を提供するように構成されてもよい。
[0007]上述した主題はまた、コンピューター制御装置、コンピュータープロセス、コンピューティングシステム、又はコンピューター読み取り可能な記憶媒体などの製品として実施されてもよいことが理解されるべきである。これら及び他の様々な特徴は、以下の詳細な説明を読み関連する図面を検討することから明らかになるであろう。
[0008]この概要は、詳細な説明で以下にさらに説明される概念の選択を簡略化された形で紹介するために設けられる。この概要は、特許請求される主題の重要な特徴又は不可欠な特徴を特定することを意図しておらず、また、この概要は、特許請求される主題の範囲を限定するために使用されることも意図していない。さらに、特許請求される主題は、本開示の任意の部分に記載される任意の又はすべての欠点を解決する実施例に限定されるものではない。
[0009]いくつかの実施例による、バイナリー遷移ファイルを生成するように構成されるコンピューティングシステムを示すブロック図を示すブロック図である。 [0010]いくつかの実施例による、バイナリー遷移ファイルの例示的なデータフォーマットに含まれる例示的な遷移情報を記述するテーブルを示す図である。 [0011]いくつかの実施例による、バイナリー遷移ファイルを生成する方法を示すフロー図である。 [0012]本明細書に提示される実施例を実施することが可能なコンピューティングシステムの例示的なコンピューターハードウェアアーキテクチャーを示すコンピューターアーキテクチャー図である。
[0013]以下の詳細な説明は、遷移のデザインを、プレゼンテーションプログラムアプリケーションにおける遷移を実施するために利用することができるバイナリー遷移ファイルへと変換する技術に関するものである。本明細書に提示される技術及び概念の利用により、バイナリー遷移ファイルは、デザインを数学的表現のセットへとリバースエンジニアリングする必要なく生成することができる。結果として、新しい遷移を開発するための開発コストが大幅に低減される。さらに、可能でなかったか又は数学的表現として実施するにはあまりにも困難であった特定の遷移が開発可能となる。
[0014]バイナリー遷移ファイルは、遷移を表す3次元メッシュのシーケンスを定義することができる。3次元メッシュは、いくつかの3次元形状を規定する頂点の集合や3次元形状の面を規定する指標の集合を含んでもよい。3次元メッシュがシーケンスに示される場合に遷移(すなわち、アニメーション)を生成することができる。プレゼンテーションは複数のスライドを含むことができる。プレゼンテーションにおける1つ又は複数のスライドは、シーケンスにおける3次元メッシュのそれぞれに対するテクスチャーとして適用することができる。すなわち、スライド内の位置は、3次元メッシュ内の対応する位置にマッピングすることができる。このように、スライドは、遷移の実行中に3次元メッシュのシーケンスに従ってアニメートすることができる。
[0015]一般に、3次元アニメーションを定義するファイルは比較的大きい。ユーザーが、通常、より小さくなることを期待するプレゼンテーションファイルに組み込まれる場合、このようなファイルは実現困難となり得る。たとえば、ユーザーは、ファイルサイズ転送制限を有し得る電子メールにより容易に転送することができ、及び/又は限られた記憶容量を有する携帯型のフラッシュメモリーデータ記憶デバイスに格納することができるように、プレゼンテーションファイルが十分小さいことを求めることがある。この目的のために、遷移ファイルのサイズは、スライド遷移についてなされ得る様々な仮定に基づいて、大幅に低減することができる。バイナリー遷移ファイルは、さらに、適切なデータ圧縮技術を利用して圧縮することができる。
[0016]本明細書に記載の主題は、コンピューターシステム上でのオペレーティングシステム及びアプリケーションプログラムの実行に関連して実行されるプログラムモジュールの一般的な文脈で提示されるが、当業者であれば、他の実施例が他のタイプのプログラムモジュールと組み合わせて実施されてもよいことを認識するであろう。一般に、プログラムモジュールは、特定のタスクを実行し又は特定の抽象データ型を実施するルーチン、プログラム、コンポーネント、データ構造、及び他のタイプの構造を含む。さらに、当業者であれば、本明細書に記載の主題が、ハンドヘルドデバイス、マルチプロセッサーシステム、マイクロプロセッサーベース又はプログラム可能な家庭用電化製品、ミニコンピューター、メインフレームコンピューターなどを含む他のコンピューターシステム構成を用いて実施できることを理解するであろう。
[0017]以下の詳細な説明では、本明細書の一部を形成する添付の図面に対して参照がなされ、実例、特定の実施例、又は例によって示される。いくつかの図面にわたって同様の数字が同様の要素を表す図面を参照して、遷移を実施するためにプレゼンテーションプログラムアプリケーションによって読み取り可能である遷移ファイルへの遷移のデザインの変換をするためのコンピューティングシステム及び方法が示される。図1は、いくつかの実施例による、バイナリー遷移ファイルを生成するように構成されるコンピューティングシステム100を示すブロック図である。コンピューティングシステム100は、アニメーションアプリケーション102、アニメーションパッケージエンジン104、変換アプリケーション106、及びプレゼンテーションプログラムアプリケーション108を含むことができる。
[0018]遷移デザイナーは、所与の遷移を表す3次元アニメーション110を作成するためにアニメーションアプリケーション102を利用することができる。様々な実施例において、アニメーションアプリケーション102は、任意の適切な3次元コンピューターグラフィックスアニメーションプログラムであってもよい。3次元アニメーション110は、1つ又は複数のファイルに具現化することができる。いくつかの実施例では、3次元アニメーション110は、WAVEFROMT TECHNOLOGIESのOBJ形状定義ファイルフォーマットで具現化することができる。例えば、3次元アニメーション110の各フレームは、対応するOBJファイルによって表されてもよい。他の実施例では、3次元アニメーション110は、任意の適切な3次元モデルフォーマットで具現化することができる。
[0019]3次元アニメーション110を作成する際に、遷移デザイナーは、3次元アニメーション110をアニメーションパッケージ112にエクスポートするためにアニメーションパッケージエンジン104を利用することができる。アニメーションパッケージ112は、3次元アニメーション110(例えば、OBJファイル)及び遷移テンプレート114を含むことができる。遷移テンプレート114は、遷移の初期状態と終了状態を定義する情報を含むことができる。一般的には、プレゼンテーションのスライドは、同じ幾何学的空間を占有する。その結果、初期状態と終了状態は、多くの他のアニメーションとは異なり、同一であってもよい。
[0020]遷移テンプレート114はまた、スライドを定義する情報を含むことができる。例えば、スライドは、単一の多角形平面(polygonal plane)として表すことができる。遷移テンプレート114は、さらに、スライドに関連付けられた座標系(例えば、右手座標系)に関する情報を含んでもよい。遷移テンプレート114は、さらに、スライドの位置を含むことができる(例えば、スライドの中心が座標系の原点(0,0,0)に配置されてもよい)。
[0021]遷移テンプレート114は、さらに、スライドに関連付けられるスライドの回転を含むことができる(例えば、スライドは、x軸の周りに90度回転されてもよく、それによって、x軸とy軸によって規定される平面上に平らにスライドを配置し、z軸がスライドの前面から正方向へ外向きに示してもよい)。遷移テンプレート114は、さらに、スライドに関連付けられるスライドスケールを含むことができる(例えば、スライドの寸法は、13.33×10OBJユニットにマッピングする10”×7.5”スライドとして構成されてもよい)。遷移テンプレート114は、さらに、プレゼンテーションプログラムアプリケーションのユーザーが照明設定(lightning configuration)を定義しない場合にデフォルトのスライド照明(slide lighting)(例えば、1.0の強度を有する負のz軸に向かう単一方向の照明ポイント)を含むことができる。
[0022]遷移デザイナーはアニメーションパッケージ112を変換アプリケーション106に入力してもよい。変換アプリケーション106は、変換処理のパラメーターとしてアニメーションパッケージ112により変換処理を実行するように構成されてもよい。変換プロセスは、3次元アニメーション110及び遷移テンプレート114に基づいて、アニメーションパッケージ112をバイナリー遷移ファイル116へと変換することができる。変換プロセスは、3次元アニメーション110から遷移情報を抽出することができる。遷移情報は、プレゼンテーションプログラムアプリケーション108における遷移を実現するための関連する情報を含むことができる。次いで、変換プロセスは、遷移テンプレート114に従って遷移情報を構成し、それによってバイナリー遷移ファイル116を生成することができる。
[0023]バイナリー遷移ファイル116はバイナリーフォーマットでデータを格納することができる。いくつかの実施例では、変換アプリケーション106はまた、適切なデータ圧縮技術によってバイナリー遷移ファイル116を圧縮する圧縮処理を行うように構成することができる。例えば、変換アプリケーション106は、バイナリー遷移ファイル116をZIPファイルコンテナへと圧縮することができる。バイナリー遷移ファイル116のファイルフォーマットの例を図2を参照してより詳細に説明する。ファイルフォーマットは、バイナリー遷移ファイル116に含めることができる遷移情報のさまざまな例を含む。
[0024]バイナリー遷移ファイル116を生成する際に、遷移デザイナーはバイナリー遷移ファイル116を含むようにプレゼンテーションプログラムアプリケーション108を更新することができる。例えば、遷移デザイナーは、プレゼンテーションプログラムアプリケーション108における動的リンクライブラリーリソースファイル118又は他の共有リソースファイルを、新しい遷移を含むように更新することができる。遷移デザイナーはまた、新しい遷移を含むように、プレゼンテーションプログラムアプリケーション108のユーザーインターフェイス120を更新することができる。このように、ユーザーは、プレゼンテーションプログラムアプリケーション108のユーザーインターフェイスから新しい遷移を選択することができる。
[0025]図2は、いくつかの実施例による、バイナリー遷移ファイル116のための例示的なデータフォーマットに含まれる例示的な遷移情報を記述するテーブル200を示す図である。バイナリー遷移ファイルにおけるこの遷移情報は遷移に対応することができる。様々な実施例では、データフォーマットは、テーブル200に含まれる情報の一部又はすべての組み合わせを含むことができる。テーブル200は、識別子の列202及びデータ型の列204を含む。識別子の列202は、バイナリー遷移ファイル116に含まれる例示的な情報の種類の識別子を指定することができる。データ型の列204は、対応する情報の種類の例示的なデータ型を指定することができる。
[0026]バイナリー遷移ファイル116はヘッダー部208を含むことができる。ヘッダー部208は、アニメーションカウント210を含むことができる。アニメーションカウント210は、遷移における、スライドなどのオブジェクトの数(量)を格納する32ビットの符号なしの整数として構成することができる。例えば、アニメーションカウント210は、バイナリー遷移ファイル116に対応する遷移において利用されるスライドの数を格納することができる。典型的な遷移は、2つのスライド(つまり、以前のスライドと次のスライド)を含むことができる。この場合には、アニメーションカウント210は、値2を格納することができる。他の遷移は、2つより多くのスライドを利用することができる。
[0027]ヘッダー部208は、さらに、アニメーションアレイ212を含むことができる。アニメーションアレイ212は、複数のアニメーションデータ構造を有するアレイとして構成することができる。アレイ内のアニメーションデータ構造の数は、アニメーションカウント210に対応してもよい。各アニメーションデータ構造は、遷移において利用されるプレゼンテーションの異なるスライドに関してアニメーションデータを格納することができる。アニメーションデータは、プレゼンテーションプログラムアプリケーション108が各スライドをレンダリングすることを可能にする、適切なイメージデータ(例えば、さまざまなテキスト、形状、色などの位置及び内容)を含むことができる。
[0028]たとえば、アニメーションカウント210が2である場合、アニメーションアレイ212は2つのアニメーションデータ構造を含んでもよい。アニメーションアレイ212内の第1のアニメーションデータ構造は、第1のスライドに対応するアニメーションデータを格納してもよく、アニメーションアレイ212内の第2ののアニメーションデータ構造は、第2のスライドに対応するアニメーションデータを格納してもよい。アニメーションアレイ212は、スライドの順序に対応する連続した順序でアニメーションデータ構造を格納するように構成されてもよい(例えば、アニメーション[0]はシーケンスの第1のスライドに対応してもよく、アニメーション[1]はシーケンスの第2のスライドに対応してもよい)。
[0029]バイナリー遷移ファイル116は、さらに、アニメーション構造214の複数のインスタンスを含んでもよい。アニメーション構造214の各インスタンスは、遷移における3次元メッシュに対応してもよい。例えば、遷移が3つの3次元メッシュを含む場合、バイナリー遷移ファイル116は、アニメーション構造214の3つのインスタンスを含むことができる。アニメーション構造214は、スライド識別子216、フラグ値218、周囲照明値220、フレームカウント222、インデックスカウント224、インデックスアレイ226、頂点カウント228、頂点データアレイ230、x軸値234とy軸値236を含む頂点データ構造232、デルタ構造アレイ238、最小値242、レンジ値244及びデルタデータ構造アレイ246を含むデルタデータ構造240、並びに/又はデルタデータ構造248を含んでもよい。
[0030]スライド識別子216は、対応する3次元メッシュに適用されるスライドの識別子を指定する32ビットの符号なし整数(例えば、DWORD)として構成することができる。前述したように、スライドをレンダリングするためのアニメーションデータは、アニメーションアレイ212に格納することができる。スライドは、プレゼンテーションのスライドの順序に対応する連続した識別子に従って識別されてもよい。例えば、第1のスライドがゼロの識別子を有してもよく、第2のスライドが1の識別子であってもよく、第3のスライドが2の識別子を有してもよい。
[0031]フラグ値218は、対応する3次元メッシュ及び/又は遷移に関するさらなる情報を提供するために利用することができる一連のオン/オフフラグを指定する32ビットの符号なし整数として構成することができる。32ビットの符号なし整数内の各ビットは、ゼロの値又は1の値を有する異なるフラグに対応してもよい。例示的なフラグは、対応する3次元メッシュが片面3次元メッシュ又は両面3次元メッシュとしてレンダリングされるかどうかを指定することができる。この例では、ゼロの値が片面3次元メッシュに対応してもよいし、1の値が両面3次元メッシュに対応してもよい。
[0032]周囲照明値220は、対応する3次元メッシュに適用される周囲照明の量を指定する浮動小数点値として設定されてもよい。例えば、周囲照明値220は、0.0から1.0の範囲とすることができる。フレームカウント222は、対応する3次元メッシュが存在する遷移のアニメーションフレームの数を指定する32ビットの符号なし整数として構成することができる。バイナリー遷移ファイル116内の各3次元メッシュは、異なる数のアニメーションフレームに存在してもよい。すなわち、遷移は、1つ又は複数のアニメーションフレームに対して同じ3次元メッシュを利用することができる。
[0033]インデックスカウント224は、対応する3次元メッシュにおけるインデックスの数を指定する32ビットの符号なし整数として構成することができる。インデックスアレイ226は、多くの要素を有するアレイとして構成することができる。各要素は、対応する3次元メッシュ内のインデックスを連続して格納する16ビットの符号なし整数(例えば、WORD)として構成することができる。インデックスアレイ226内の要素の数は、インデックスカウント224で指定されたインデックスの数に対応してもよい。いくつかの実施例では、インデックスは、3つのグループ(例えば、3つの点が三角形を定義する)内の16ビット値として記憶することができる。例えば、0から4の番号を付された4つの頂点がある場合、次いで、インデックスはそれらの4つの頂点から2つの三角形を作ることができる。第1の三角形は、頂点0,1,2を利用してもよく、第2の三角形は頂点0,2,3を利用してもよい(頂点0及び2は共有される)。インデックスは、三角形が頂点を共有することを可能にすることができる。
[0034]いくつかの実施例では、第1のアニメーションフレームの3次元メッシュ内のインデックスのみが、インデックスアレイ226に格納される。これは、第1のアニメーションフレームの3次元メッシュ内のインデックスが、追加のアニメーションフレームの他の3次元メッシュの遷移にわたって一定のままであってもよいからである。結果として、バイナリー遷移ファイル116のサイズを、追加のアニメーション構造214に対して同じ情報を格納する必要なく、大幅に低減することができる。
[0035]頂点カウント228は対応する3次元メッシュ内の頂点の数を指定する32ビットの符号なし整数として構成することができる。頂点データアレイ230は、複数の頂点データ構造232を有するアレイとして構成することができる。各頂点データ構造232は、対応する3次元メッシュ内の頂点を連続して格納する軸ごとの16ビットの符号なし整数として構成することができる。頂点データ構造232は、x軸値234とy軸値236を含むことができる。頂点データアレイ230内の頂点データ構造232の数は、頂点カウント228で指定された頂点の数に対応することができる。
[0036]いくつかの実施例では、第1のアニメーションフレームの3次元メッシュ内の頂点のみが頂点データ構造232に格納される。バイナリー遷移ファイル116内の様々な3次元メッシュの頂点の数は、遷移の過程で変化しないことがある。頂点の位置の変化(本明細書において「デルタ値」とも呼ぶ)は、以下でより詳細に説明するデルタ構造アレイ238によって定義することができる。1つのアニメーションフレームから次のアニメーションフレームへの頂点の位置の変化は一般的に小さい。頂点の完全な座標値ではなく、位置に対する変化のみを格納することによって、バイナリー遷移ファイル116のサイズを大幅に低減することができる。
[0037]さらに、いくつかの実施例では、第1のアニメーションフレームの3次元メッシュ内の頂点の、z軸座標ではなく、x軸座標及びy軸座標のみが、頂点データ構造232に格納される。これは、遷移の第1のフレームにおいて、対応する3次元メッシュが、通常、平坦である(すなわち、z軸の値がゼロになる)ためである。第1のアニメーションフレームの3次元メッシュ内の頂点の、z軸座標ではなく、x軸座標及びy軸座標のみを格納することによって、バイナリー遷移ファイル116のサイズを大幅に低減することができる。
[0038]デルタ構造アレイ238は、複数のデルタデータ構造240を有するアレイとして構成することができる。デルタ構造アレイ238内のデルタデータ構造240の数は、フレームカウント222に対応してもよい。デルタデータ構造240の各々は、最小値242、レンジ値244、及びデルタデータ構造アレイ246を格納することができる。最小値242は、対応するフレームについての対応する3次元メッシュの頂点にわたって最小デルタ値を格納する軸ごとの32ビットの浮動小数点値(例えば、浮動小数)として構成することができる。レンジ値244は、対応するフレームについての対応する3次元メッシュにおける頂点にわたるデルタ値の範囲を格納する軸ごとの32ビットの浮動小数点値として構成することができる。
[0039]デルタデータ構造アレイ246は複数のデルタデータデータ構造248を有するアレイとして構成されてもよい。デルタデータ構造アレイ246内のデルタデータデータ構造248の数は、対応する3次元メッシュの頂点カウント228に対応してもよい。すなわち、デルタデータデータ構造248の各々は、対応する3次元メッシュの頂点の1つに対応することができる。デルタデータデータ構造248の各々は16ビットの符号付き整数として構成することができる。16ビットの符号付き整数の様々な部分は、現在のフレームの3次元メッシュと以前のフレームの3次元メッシュとの間の対応する頂点の、x軸に対する変化、y軸に対する変化、及びz軸に対する変化を定義するように割り当てられてもよい。例えば、最初の6ビットがx軸に対する変化を定義してもよく、次の5ビットがy軸に対する変化を定義してもよく、最後の5ビットがz軸に対する変化を定義してもよい。
[0040]3つの別個の値を格納するのとは対照的に、単一の16ビットの符号付き整数のx軸、y軸、z軸についてのデルタ値を格納することによって、バイナリー遷移ファイル116のサイズは大幅に低減することができる。アニメーションフレームの観測面(view plane)が遷移にわたって比較的一定のままである(すなわち、z軸に対する変化が比較的小さい)場合、次いで、もともとz軸に割り当てられていたビットを、x軸及び/又はy軸に再割り当てすることができる。最初のものの後の各フレームの頂点の位置を計算するために、次の計算を用いることができる(この例はx軸のみであるが、同じ計算を他の軸に使用することができる):x’=delta.x*range.x+min.x、ここで記号「.x」は各項のx成分を意味する。次のフレームは以前のフレームの計算された位置に対する差分を用いて生成される。
[0041]バイナリー遷移ファイル116の上記の実施例は、遷移にわたる3次元メッシュの各々における各頂点の法線(normal)を格納しない。いくつかの実施例では、プレゼンテーションプログラムアプリケーション108は、法線が事前に計算されてバイナリー遷移ファイル116に格納される必要がない十分な精度で、「オンザフライ(on the fly)」で各頂点の法線を計算することができる。これは、三角形の定義が方向を示し、標準的な法線の計算が使用されるためである。遷移にわたって3次元メッシュの各々における各頂点の法線の格納を排除することによって、バイナリー遷移ファイル116のサイズを大幅に低減することができる。
[0042]図3を参照すると、変換アプリケーション106の動作に関する追加の詳細が提供される。図3は、いくつかの実施例による、バイナリー遷移ファイルを生成する方法を示す流れ図である。本明細書に記載の論理動作は、(1)コンピューターにより実施される行為のシーケンス又はコンピューティングシステム上で動作するプログラムモジュールとして及び/又は(2)コンピューティングシステム内の相互接続されたマシン論理回路又は回路モジュールとして実施されることが理解されるべきである。実施例は、コンピューティングシステムの性能及び他の要件に依存する選択の問題である。従って、本明細書に記載の論理動作は、状態動作(states operations)、構造的デバイス(structural devices)、行為(acts)、又はモジュールと様々に呼ばれる。これらの動作、構造的デバイス、行為、及びモジュールは、ソフトウェア、ファームウェア、特殊目的デジタルロジック、これらの任意の組み合わせで実施されてもよい。図面に示され本明細書で説明されるものよりもより多くの又はより少ない動作が実行されてもよいことができることを理解されたい。これらの動作はまた、本明細書に記載されたものとは異なる順序で実行することができる。
[0043]図3では、ルーチン300は、動作302において開始し、変換アプリケーション106は、バイナリー遷移ファイル116などのバイナリー遷移ファイルにおいて、アニメーション構造214などの複数のアニメーション構造を生成する。バイナリー遷移ファイルは、3次元メッシュのシーケンスを定義することができる。例えば、複数のアニメーション構造は3次元メッシュを定義するアニメーション構造を含んでもよい。いくつかの実施例では、アニメーション構造は、3次元メッシュにおけるインデックスの量を指定するインデックスカウント224などの、インデックスカウントを含むことができる。アニメーション構造はまた、複数の要素を含むインデックスアレイ226などのインデックスアレイを含むことができる。要素の各々はインデックスのうちの1つを記憶することができる。
[0044]いくつかの実施例では、アニメーション構造は、3次元メッシュにおける頂点の量を指定する頂点カウント228などの頂点カウントを含むことができる。アニメーション構造はまた、頂点データ構造232などの複数の頂点のデータ構造を含む、頂点データアレイ230などの頂点データアレイを含むことができる。頂点データ構造の各々は、頂点のうちの1つを記憶することができる。例えば、頂点データ構造の各々は、対応する頂点のx軸値と、対応する頂点のy軸値を格納することができる。頂点データ構造の各々は、対応する頂点のz軸値を格納しなくてもよい。
[0045]いくつかの実施例では、アニメーション構造は、3次元メッシュが存在する遷移のアニメーションフレームの量を指定する、フレームカウント222などのフレームカウントを含むことができる。アニメーション構造はまた、デルタデータ構造240などの複数のデルタデータ構造を含む、デルタ構造アレイ238などのデルタ構造アレイを含むことができる。デルタデータ構造の各々は、アニメーションフレームのうちの1つに対応してもよい。デルタデータ構造の各々は、最小値、レンジ値、及びデルタデータ構造アレイを格納することができる。最小値242などの最小値は、頂点にわたって最小デルタ値量の複数のデルタ値を指定することができる。レンジ値244などの範囲値は、頂点にわたってデルタ値の範囲を指定することができる。
[0046]デルタデータ構造アレイ246などのデルタデータ構造アレイは、デルタデータデータ構造(deltadata data structure)248などの複数のデルタデータデータ構造を含むことができる。デルタデータデータ構造の各々は、頂点のうちの1つに対応することができる。デルタデータデータ構造の各々は、x軸デルタ値、y軸デルタ値、及びz軸デルタ値を格納することができる。いくつかの実施例では、x軸デルタ値、y軸デルタ値、及びz軸デルタ値は、単一の整数に格納することができる。
[0047]いくつかの実施例では、アニメーション構造は、3次元メッシュに適用されるスライドのうちの1つを指定する、スライド識別子216などのスライド識別子を含むことができる。アニメーション構造はまた、3次元メッシュに関する追加情報を提供する、フラグ値218などのフラグ値を含むことができる。フラグ値218の各ビットは異なるフラグを表すことができる。例えば、フラグ値は、3次元メッシュが両面3次元メッシュ又は片面3次元メッシュとしてレンダリングされるかどうかを定義するビットを含むことができる。アニメーション構造は、さらに、3次元メッシュに適用される周囲照明の量を指定する周囲照明値220などの周囲照明値を含むことができる。変換アプリケーション106がバイナリー遷移ファイル内のアニメーション構造を生成すると、ルーチン300は動作304に進んでもよい。
[0048]動作304において、変換アプリケーション106はバイナリー遷移ファイルにおいてヘッダー部を生成してもよい。いくつかの実施例では、ヘッダー部は、遷移におけるスライドの量を指定する、アニメーションカウント210などのアニメーションカウントを含むことができる。ヘッダー部はまた、アニメーションアレイ212などのアニメーションアレイを含むことができる。アニメーションアレイ212は複数のアニメーションデータ構造を含んでもよい。アニメーションデータ構造の各々は、プレゼンテーションプログラムアプリケーション108などのプレゼンテーションプログラムがアニメーションデータに対応するスライドをレンダリングすることを可能にするアニメーションデータを指定することができる。変換アプリケーション106がバイナリー遷移ファイルのヘッダー部を生成する場合、ルーチン300は動作306に進んでもよい。
[0049]動作306において、変換アプリケーション106は、バイナリー遷移ファイルを含むようにプレゼンテーションプログラムアプリケーションを変更することができる。たとえば、変換アプリケーション106は、新しい遷移を含むように、プレゼンテーションプログラムアプリケーション内の、動的リンクライブラリーリソースファイル(dynamic linked library resource file)118などの共有リソースファイルを更新することができる。変換アプリケーション106はまた、新しい遷移を含むように、プレゼンテーションプログラムアプリケーションのユーザーインターフェイス120などのユーザーインターフェイスを更新することができる。変換アプリケーション106がバイナリー遷移ファイルを含むようにプレゼンテーションプログラムアプリケーションを変更すると、ルーチン300は、(例えば、定期的に、継続的に、又は必要に応じてオンデマンドで)繰り返してもよいし、終了してもよい。
[0050]図4を参照すると、コンピューター400を示す例示的なコンピューターアーキテクチャーの図が示される。コンピューター400の例は、コンピューティングシステム100を含むことができる。コンピューター400は、中央処理ユニット402、システムメモリー404、及び中央処理ユニット402にメモリー404を結合するシステムバス406を含むことができる。コンピューター400はさらに、1つ又は複数のプログラムモジュール414及びデータストア416を記憶する大容量記憶デバイス412を含むことができる。プログラムモジュール414の例は、変換アプリケーション106及びプレゼンテーションプログラムアプリケーション108を含むことができる。データストア416は、アニメーションパッケージ112及びバイナリー遷移ファイル116を格納することができる。大容量記憶デバイス412は、バス406に接続された大容量記憶コントローラー(図示せず)を介して処理ユニット402に接続することができる。大容量記憶デバイス412及びその関連するコンピューター記憶媒体は、コンピューター400のための不揮発性ストレージを提供することができる。本明細書に含まれるコンピューター記憶媒体の説明は、ハードディスク又はCD−ROMドライブなどの大容量記憶デバイスを指すが、コンピューター記憶媒体がコンピューター400によってアクセスできる任意のコンピューター記憶媒体とすることができることが当業者によって理解されるべきである。
[0051]限定ではなく、例として、コンピューター記憶媒体は、コンピューター記憶命令、データ構造、プログラムモジュール、又は他のデータなどの情報の一時的でない記憶のための任意の方法又は技術で実施される、揮発性及び不揮発性の、取り外し可能及び取り外し不能な媒体を含むことができる。例えば、コンピューター記憶媒体は、RAM、ROM、EPROM、EEPROM、フラッシュメモリー又は他のソリッドステートメモリー技術、CD−ROM、デジタル多用途ディスク(「DVD」)、HD−DVD、BLU−RAY(登録商標)、又は他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又は他の磁気記憶デバイス、あるいは所望の情報を格納するのに用いることができコンピューター400によってアクセスできる任意の他の媒体を含むが、これらに限定されない。
[0052]様々な実施例によれば、コンピューター400は、ネットワーク418を介したリモートコンピューターへの論理接続を使用するネットワーク化された環境で動作することができる。コンピューター400は、バス406に接続されたネットワークインターフェイスユニット410を介してネットワーク418に接続することができる。ネットワークインターフェイスユニット410はまた、他のタイプのネットワーク及びリモートコンピューターシステムに接続するために利用され得ることが理解されるべきである。コンピューター400はまた、キーボード、マウス、マイクロホン、及びゲームコントローラーを含む、多数の入力デバイス(図示せず)から入力を受信して処理するための入出力コントローラー408を含むことができる。同様に、入出力制御コントローラー408は、ディスプレイ又は他のタイプの出力デバイス(図示せず)に出力を提供することができる。
[0053]バス406は、処理ユニット402が、大容量記憶デバイス412又は他のコンピューター記憶媒体にコード及び/もしくはデータを読み出し、並びに/又は大容量記憶デバイス412又は他のコンピューター記憶媒体からコード及び/もしくはデータを読み取ることを可能にすることができる。コンピューター記憶媒体は、半導体、磁性材料、光学素子などを含むがこれらに限定されない、任意の適切な技術を用いて実施される記憶素子の形の装置を表してもよい。コンピューター記憶媒体は、RAM、ROM、フラッシュ、又は他のタイプの技術として特徴付けられようとなかろうと、メモリーコンポーネントを表すことができる。コンピューター記憶媒体はまた、ハードディスクドライブ又はその他として実施されようとなかろうと、2次記憶装置を表すことができる。ハードディスクドライブの実施例は、ソリッドステートとして特徴付けることができ、又は磁気的に符号化された情報を格納する回転媒体を含むことができる。
[0054]プログラムモジュール414は、処理部402にロードされて実行されるとコンピューター400にバイナリー遷移ファイルを生成させる、ソフトウェア命令を含むことができる。プログラムモジュール414はまた、本明細書の全体にわたって説明したコンポーネント、フロー、及びデータ構造を使用する全体的なシステム又はオペレーティング環境内にコンピューター400が参加することができる、様々なツールや技術を提供することができる。たとえば、プログラムモジュール414は、バイナリー遷移ファイルを生成するためのインターフェイスを実施することができる。
[0043]一般に、プログラムモジュール414は、処理ユニット402にロードされて実行されると、処理ユニット402及び全体的なコンピューター400を、汎用コンピューティングシステムからバイナリー遷移ファイルを生成するようにカスタマイズされた特殊目的のコンピューティングシステムへと変換することができる。処理ユニット402は、個別に又は集合的に任意の数の状態をとることができる、任意の数のトランジスター又は他の個別の回路素子から構築することができる。より具体的には、処理ユニット402は、プログラムモジュール414内に含まれる実行可能な命令に応答して、有限状態マシンとして動作することができる。これらのコンピューター実行可能な命令は、処理ユニット402が状態間でどのように遷移するかを指定し、それによって処理ユニット402を構成するトランジスター又は他の個別のハードウェア素子を変換することによって、処理ユニット402を変換することができる。
[0056]プログラムモジュール414の符号化はまた、コンピューター記憶媒体の物理的構造を変換することができる。物理的構造の特定の変換は、本明細書の異なる実施例において、様々な要因に依存し得る。このような要因の例は、コンピューター記憶媒体が一次的な又は二次的な記憶装置として特徴付けられようとなかろうと、コンピューター記憶媒体を実施するために使用される技術を含むが、これに限定されない。例えば、コンピューター記憶媒体が半導体ベースのメモリーとして実施される場合、プログラムモジュール414は、ソフトウェアがその中で符号化されるときに、半導体メモリーの物理的状態を変換することができる。たとえば、プログラムモジュール414は、半導体メモリーを構成するトランジスター、キャパシター、又は他の個別の回路素子の状態を変換することができる。
[0057]別の例として、コンピューター記憶媒体は、磁気又は光学技術を用いて実施することができる。このような実施例では、プログラムモジュール414は、ソフトウェアがその中に符号化されるときに、磁気媒体又は光媒体の物理的状態を変換することができる。これらの変換は、所与の磁気媒体内の特定の位置の磁気特性を変更することを含んでもよい。これらの変換はまた、所与の光媒体内の特定の位置の物理的特徴又は特性を変更して、これらの位置の光学特性を変更することを含んでもよい。物理媒体の他の変換が本明細書の範囲から逸脱することなく可能であり、上述の例は本明細書の説明を容易にするために提供されるにすぎない。
[0058]上記に基づいて、プレゼンテーションプログラムアプリケーション内の遷移を実施するために利用することができるバイナリー遷移ファイルへと遷移のデザインを変換する技術が本明細書において提示されることが理解されるべきである。本明細書に提示される主題は、コンピューターの構造的特徴、方法論的な動作、及びコンピューター読み取り可能な媒体に特有の言葉で説明してきたが、添付の特許請求の範囲で定義される本発明は、必ずしも、本明細書に記載される特定の特徴、行為、又は媒体に限定されるものではないことを理解すべきである。そのようなものではなく、特定の特徴、行為、媒体は、特許請求の範囲を実施する例示的な形式として開示される。
[0059]上述した主題は、例示としてのみ提供され、限定するものとして解釈されるべきではない。図示されて説明された例示的な実施例及び応用に従うことなく、以下の特許請求の範囲に記載される本発明の真の趣旨及び範囲から逸脱することなく、本明細書に記載の主題に対して様々な修正や変更をなすことができる。

Claims (10)

  1. バイナリー遷移ファイルを生成するコンピューターにより実施される方法であって、
    プロセッサー及びメモリーを有するコンピューターが、3次元メッシュのシーケンスを定義する複数のアニメーション構造をバイナリー遷移ファイル内に生成し、
    前記コンピューターが、スライド間の遷移を生成するために前記3次元メッシュに適用される、前記スライドを定義するヘッダー部を生成し、
    前記コンピューターが、前記バイナリー遷移ファイルを用いてプレゼンテーションプログラムアプリケーションを変更し、前記プレゼンテーションプログラムアプリケーションは前記変更の際に前記遷移を提供するように構成される
    ためのコンピューターにより実施される動作を含む方法。
  2. 前記バイナリー遷移ファイル内に複数のアニメーション構造を生成することは、
    前記コンピューターが、3次元メッシュのシーケンス内の第1の3次元メッシュを定義する第1のアニメーション構造を前記バイナリー遷移ファイル内に生成するためのコンピューターにより実施される動作を含む、請求項1に記載のコンピューターにより実施される方法。
  3. 前記バイナリー遷移ファイル内に第1のアニメーション構造を生成することは、
    前記コンピューターが、前記第1の3次元メッシュ内のインデックスの量を指定するインデックスカウントを前記第1のアニメーション構造内に生成し、
    前記コンピューターが、各々の要素が前記インデックスのうちの1つを格納する複数の要素を含むインデックスアレイを、前記第1のアニメーション構造内に生成する
    ためのコンピューターにより実施される動作を含む、請求項2に記載のコンピューターにより実施される方法。
  4. 前記バイナリー遷移ファイル内に第1のアニメーション構造を生成することは、
    前記コンピューターが、前記第1の3次元メッシュ内の頂点の量を指定する頂点カウントを前記第1のアニメーション構造内に生成し、
    前記コンピューターが、各々の頂点データ構造が前記頂点のうちの1つを格納する複数の頂点データ構造を含む頂点データアレイを、前記第1のアニメーション構造内に生成する
    ためのコンピューターにより実施される動作をさらに含む、請求項3に記載のコンピューターにより実施される方法。
  5. 前記頂点データ構造の各々は、前記頂点のうちの1つのx軸値及び前記頂点のうちの1つのy軸値を含む請求項4に記載のコンピューターにより実施される方法。
  6. 前記バイナリー遷移ファイル内に第1のアニメーション構造を生成することは、
    前記コンピューターが、前記第1の3次元メッシュが存在する前記遷移のアニメーションフレームの量を指定するフレームカウントを、前記第1のアニメーション構造内に生成し、
    前記コンピューターが、前記第1のアニメーション構造内にデルタ構造アレイを生成し、前記デルタ構造アレイは、各々のデルタデータ構造が前記アニメーションフレームのうちの1つに対応する、複数のデルタデータ構造を含む
    ためのコンピューターにより実施される動作をさらに含む、請求項5に記載のコンピューターにより実施される方法。
  7. 前記複数のデルタデータ構造の各々は、前記アニメーションフレームのうちの1つにおける頂点にわたって複数のデルタ値における最小デルタ値を指定する最小値、前記アニメーションフレームのうちの1つにおける頂点にわたって前記複数のデルタ値の範囲を指定するレンジ値、及びデルタデータ構造アレイを含む、請求項6に記載のコンピューター実施方法。
  8. 前記デルタデータ構造アレイは複数のデルタデータデータ構造を含み、前記複数のデルタデータデータ構造の各々は前記頂点のうちの1つに対応し、前記複数のデルタデータデータ構造の各々は、x軸デルタ値、y軸デルタ値及びz軸デルタ値を含む、請求項7に記載のコンピューターにより実施される方法。
  9. コンピューターによって実行されると、前記コンピューターに、
    バイナリー遷移ファイル内に複数のアニメーション構造を生成させ、前記複数のアニメーション構造は3次元メッシュのシーケンスを定義し、前記複数のアニメーション構造は前記3次元メッシュを形成する頂点及びインデックスを指定し、
    前記バイナリー遷移ファイル内にヘッダー部を生成させ、前記ヘッダー部は、スライド間の遷移を生成するために前記3次元メッシュに適用されるスライドを定義し、
    前記バイナリー遷移ファイルを用いてプレゼンテーションプログラムアプリケーションを変更させ、前記プレゼンテーションプログラムアプリケーションは前記変更の際に前記遷移を提供する
    コンピューター実行可能命令を格納するコンピューター読み取り可能な記憶媒体。
  10. プロセッサーと、
    前記プロセッサーと通信可能に結合されるメモリーと、
    前記メモリーからの、前記プロセッサーにおいて実行されるプログラムモジュールであって、前記プロセッサーによって実行されると、コンピューターシステムに、
    バイナリー遷移ファイル内にアニメーション構造を生成させ、前記複数のアニメーション構造は3次元メッシュのシーケンスを定義し、前記複数のアニメーション構造は前記3次元メッシュを形成する頂点及びインデックスを指定し、
    前記バイナリー遷移ファイル内にヘッダー部を生成させ、前記ヘッダー部は、スライド間の遷移を生成するために前記3次元メッシュに適用されるスライドを定義し、前記バイナリー遷移ファイルは前記遷移におけるフレーム間の頂点のデルタ値を格納し、
    前記バイナリー遷移ファイルを用いてプレゼンテーションプログラムアプリケーションを変更させ、前記プレゼンテーションプログラムアプリケーションは前記変更の際に前記遷移を提供する
    プログラムモジュールと
    を備えるコンピューターシステム。
JP2014513653A 2011-06-03 2012-05-30 メッシュシーケンスファイルフォーマット Expired - Fee Related JP5932986B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/152,285 2011-06-03
US13/152,285 US8749559B2 (en) 2011-06-03 2011-06-03 Mesh sequence file format
PCT/US2012/039939 WO2012166764A2 (en) 2011-06-03 2012-05-30 Mesh sequence file format

Publications (2)

Publication Number Publication Date
JP2015505996A true JP2015505996A (ja) 2015-02-26
JP5932986B2 JP5932986B2 (ja) 2016-06-08

Family

ID=47260268

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014513653A Expired - Fee Related JP5932986B2 (ja) 2011-06-03 2012-05-30 メッシュシーケンスファイルフォーマット

Country Status (6)

Country Link
US (1) US8749559B2 (ja)
EP (1) EP2715564B1 (ja)
JP (1) JP5932986B2 (ja)
KR (1) KR101908161B1 (ja)
CN (1) CN103597467B (ja)
WO (1) WO2012166764A2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103150761A (zh) * 2013-04-02 2013-06-12 乐淘奇品网络技术(北京)有限公司 通过网页高速逼真3d渲染进行物品设计定制的方法
US11790154B2 (en) * 2013-10-09 2023-10-17 Interactive Solutions Corp. Mobile terminal device, slide information managing system, and a control method of mobile terminal
KR102247892B1 (ko) * 2014-12-02 2021-05-04 에스케이플래닛 주식회사 클라우드 스트리밍 서비스 시스템, 어플리케이션 코드를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002517851A (ja) * 1998-06-08 2002-06-18 マイクロソフト コーポレイション 時間依存ジオメトリの圧縮
JP2005024728A (ja) * 2003-06-30 2005-01-27 Sumitomo Electric Ind Ltd 光可変減衰器および光可変減衰器モジュール
JP2005176216A (ja) * 2003-12-15 2005-06-30 Canon Inc デジタルカメラおよび画像出力方法およびプログラム
WO2009128617A2 (en) * 2008-04-18 2009-10-22 Electronics And Telecommunications Research Institute Apparatus and method for low-complexity three-dimensional mesh compression
US20100293330A1 (en) * 2009-05-14 2010-11-18 Microsoft Corporation Displaying transition images during a slide transition

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6072496A (en) 1998-06-08 2000-06-06 Microsoft Corporation Method and system for capturing and representing 3D geometry, color and shading of facial expressions and other animated objects
US6879324B1 (en) 1998-07-14 2005-04-12 Microsoft Corporation Regional progressive meshes
US6563499B1 (en) 1998-07-20 2003-05-13 Geometrix, Inc. Method and apparatus for generating a 3D region from a surrounding imagery
US6366282B1 (en) * 1998-09-08 2002-04-02 Intel Corporation Method and apparatus for morphing objects by subdividing and mapping portions of the objects
US6396500B1 (en) 1999-03-18 2002-05-28 Microsoft Corporation Method and system for generating and displaying a slide show with animations and transitions in a browser
US6426747B1 (en) 1999-06-04 2002-07-30 Microsoft Corporation Optimization of mesh locality for transparent vertex caching
US6982715B2 (en) 2002-07-26 2006-01-03 Intel Corporation Mesh compression process
US7372991B2 (en) * 2003-09-26 2008-05-13 Seiko Epson Corporation Method and apparatus for summarizing and indexing the contents of an audio-visual presentation
US7342580B1 (en) * 2004-04-02 2008-03-11 Pacific Data Images Llc Surface compression based on reference geometry in animation models
US7880738B2 (en) * 2005-07-14 2011-02-01 Molsoft Llc Structured documents and systems, methods and computer programs for creating, producing and displaying three dimensional objects and other related information in those structured documents
US8566301B2 (en) * 2006-05-01 2013-10-22 Steven L. Rueben Document revisions in a collaborative computing environment
US20080012853A1 (en) * 2006-07-14 2008-01-17 William Geiger Generating mesh from implicit surface
CN101178817B (zh) * 2007-12-25 2010-06-02 王鹏勃 一种在三维场景内实现三维信息演示文档的方法
US20090172549A1 (en) 2007-12-28 2009-07-02 Motorola, Inc. Method and apparatus for transitioning between screen presentations on a display of an electronic device
KR100969764B1 (ko) 2008-02-13 2010-07-13 삼성전자주식회사 메쉬 모델로 구현된 3차원 데이터의 부호화 및 복호화 방법
US8108777B2 (en) 2008-08-11 2012-01-31 Microsoft Corporation Sections of a presentation having user-definable properties
US7721209B2 (en) 2008-09-08 2010-05-18 Apple Inc. Object-aware transitions
US8645822B2 (en) * 2008-09-25 2014-02-04 Microsoft Corporation Multi-platform presentation system
US8707150B2 (en) * 2008-12-19 2014-04-22 Microsoft Corporation Applying effects to a video in-place in a document

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002517851A (ja) * 1998-06-08 2002-06-18 マイクロソフト コーポレイション 時間依存ジオメトリの圧縮
JP2005024728A (ja) * 2003-06-30 2005-01-27 Sumitomo Electric Ind Ltd 光可変減衰器および光可変減衰器モジュール
JP2005176216A (ja) * 2003-12-15 2005-06-30 Canon Inc デジタルカメラおよび画像出力方法およびプログラム
WO2009128617A2 (en) * 2008-04-18 2009-10-22 Electronics And Telecommunications Research Institute Apparatus and method for low-complexity three-dimensional mesh compression
US20100293330A1 (en) * 2009-05-14 2010-11-18 Microsoft Corporation Displaying transition images during a slide transition

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HUBERT NGUYEN 編, 中本 浩 監訳, GPU GEMS 3 日本語版, vol. 第1版, JPN6016012399, 15 August 2008 (2008-08-15), JP, pages 51 - 64, ISSN: 0003290145 *
山内 敏昭, MICROSOFT OFFICE 2010 POWERPOINT2010 パーフェクトマスター, vol. 第1版, JPN6016012398, 1 April 2011 (2011-04-01), pages 726 - 747, ISSN: 0003290144 *
島田 恭宏: "仮想書籍ブラウジングシステムの試作", 情報処理学会論文誌, vol. 第46巻、第7号, JPN6016012397, 15 July 2005 (2005-07-15), JP, pages 1646 - 1660, ISSN: 0003290146 *

Also Published As

Publication number Publication date
US20120306851A1 (en) 2012-12-06
EP2715564A2 (en) 2014-04-09
WO2012166764A3 (en) 2013-01-31
US8749559B2 (en) 2014-06-10
KR20140030229A (ko) 2014-03-11
KR101908161B1 (ko) 2018-10-15
JP5932986B2 (ja) 2016-06-08
CN103597467A (zh) 2014-02-19
EP2715564A4 (en) 2015-12-30
CN103597467B (zh) 2016-09-14
WO2012166764A2 (en) 2012-12-06
EP2715564B1 (en) 2018-12-12

Similar Documents

Publication Publication Date Title
JP6709038B2 (ja) グラフィックス・パイプラインを遂行する方法及びコンピューティング装置
JP6273380B2 (ja) レイトレーシングアプリケーションにおけるツリー横断のための開始ノード決定
Wang et al. OpenSceneGraph 3.0: Beginner's guide
US9224235B2 (en) System, method, and computer program product for compression of a bounding volume hierarchy
US11995854B2 (en) Mesh reconstruction using data-driven priors
US20200013139A1 (en) Tile Based Computer Graphics
KR101386180B1 (ko) 그래픽 시스템에서 2차 프로세서를 이용하기 위한 시스템 및 방법
JP5068849B2 (ja) レイトレーシング方法、システム、およびプログラム
US8725466B2 (en) System and method for hybrid solid and surface modeling for computer-aided design environments
CN106909640A (zh) 基于webgl的三维模型轻量化展示技术
CN105556565A (zh) 片段着色器执行顶点着色器计算
US10733793B2 (en) Indexed value blending for use in image rendering
US20190172173A1 (en) Compression and decompression of indices in a graphics pipeline
JP5932986B2 (ja) メッシュシーケンスファイルフォーマット
CN114375464A (zh) 使用边界体积表示对虚拟空间中的动态单元进行光线追踪
Wolff OpenGL 4 Shading Language Cookbook: Build high-quality, real-time 3D graphics with OpenGL 4.6, GLSL 4.6 and C++ 17
US9171401B2 (en) Conservative partitioning for rendering a computer-generated animation
US20200258286A1 (en) Information generating apparatus, information processing apparatus, control method, and non-transitory computer-readable storage medium
US8270742B1 (en) Data compression for computer-aided design systems
TWI822330B (zh) 用量化及區間表示之射線相交測試
Hyvärinen Surface Reconstruction of Point Clouds Captured with Microsoft Kinect
US20240112397A1 (en) Spatial test of bounding volumes for rasterization
US11417059B1 (en) System and method for reading arrays of data by rebuilding an index buffer while preserving order
US20230351076A1 (en) Classification and similarity detection of multi-dimensional objects
WO2023236645A1 (zh) 光照信息加载方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150508

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150515

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160314

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160330

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160428

R150 Certificate of patent or registration of utility model

Ref document number: 5932986

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees