JPH11328447A - 複雑なシ―ンの選択的部分レンダリング自動発生システム - Google Patents

複雑なシ―ンの選択的部分レンダリング自動発生システム

Info

Publication number
JPH11328447A
JPH11328447A JP11096527A JP9652799A JPH11328447A JP H11328447 A JPH11328447 A JP H11328447A JP 11096527 A JP11096527 A JP 11096527A JP 9652799 A JP9652799 A JP 9652799A JP H11328447 A JPH11328447 A JP H11328447A
Authority
JP
Japan
Prior art keywords
scene
path
rendering
definition
data
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.)
Pending
Application number
JP11096527A
Other languages
English (en)
Inventor
Alexis Smirnov
アレクシス・スミルノフ
Jean-Marc Krattli
ジャン−マルク・クラトリ
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.)
Avid Technology Inc
Original Assignee
Avid Technology Inc
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 Avid Technology Inc filed Critical Avid Technology Inc
Publication of JPH11328447A publication Critical patent/JPH11328447A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/00Three-dimensional [3D] image rendering
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/00Three-dimensional [3D] image rendering
    • G06T15/50Lighting effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】 【課題】 コンピュータを基本とするシステムにおい
て、3−Dシーンを定義するデータから、いわゆるパス
−画像(または単に「パス」)の生成を自動化する方法
を提供する。 【解決手段】 3−Dシーンのプロパティをオーバーラ
イドする、予め指定したパス定義によって3−Dシーン
にフィルタリング120を施すことにより、パスの生成
を自動化する。フィルタリングの結果にレンダリング3
0を行い(レンダリングは、大抵レイ・トレーシングの
プロセスを備える)、パスを形成する。本方法は、多数
のパス定義を格納する。3−Dシーンを編集する毎に、
パス定義からパスを自動的に生成することができる。ま
た、このパス生成の自動化は、3−Dシーンのレンダリ
ングのパス・プレビューを可能にすることによって、オ
ーサリング環境においてパスを使用することが可能とな
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータを用
いて3−Dシーンから得られる、レンダリング2−D画
像生成のためのシステムに関し、更に特定すれば、パス
として知られる、レンダリング画像(rendered image)
の別個のシーケンスの生成を自動化し、複合ソフトウエ
アと共に用いて、完全な画像または画像シーケンスを形
成するシステムに関するものである。
【0002】
【従来の技術】ムービーやコンピュータによって作成し
た美術作品においてしばしば見られるように、最近のコ
ンピュータ・グラフィックスは、複雑な3−Dデータか
ら得られる二次元(2−D)画像または画像シーケンス
(ムービー)で構成されている。3−Dシーン・データ
は、シーン内の各オブジェクトの3−D座標を含む。シ
ーンから得られる画像は、実際の3−Dオブジェクトの
現実的な表現を示すことを意図しているので、シーン・
データも、「シェーダ」(shader)と呼ばれるオブジェ
クトまたは定義を含み、これを用いて、例えば、各オブ
ジェクトの表面およびボリューム・プロパティのよう
な、オブジェクトのプロパティやシーン全体に関係する
レンダリングの制御を行う。例えば、シェーダは、光が
オブジェクトによってどのように反射し、屈折し、更に
散乱するかについて指示を与える。また、シェーダを用
いて、空間の内部ボリューム(例えば、煙のパフの境界
を定める3Dオブジェクト)、またはシーン環境全体の
レンダリング・プロパティを制御することもできる。後
者を環境シェーダと呼ぶ。
【0003】現実的な画像を作成するためには、3−D
シーンにレンダリングを行う。レンダリングのプロセス
には、カメラの視点から見ることができる各画素の外見
を決定する、レイ・トレーシング(ray tracing)を伴
う。レイ・トレーシングにおいて、シーン内における種
々のオブジェクトおよびボリュームによる掩蔽、拡散お
よび鏡面反射、屈折、および光の拡散の効果を決定す
る。レイ・トレーシングは、光源から直接到来する光の
反射、屈折および拡散である一次的効果だけでなく、二
次的な反射も処理の対象とする。後者は、他のオブジェ
クトからの一次光が、あるオブジェクトまたはボリュー
ムを照明するかあるいは通過するときの効果である。こ
れらの二次効果は、元の光源とカメラとの間に多数の反
射を伴う可能性があるので、光線は画面内のあらゆる画
素についてトレースしなければならないことを考慮し、
更に、シェーダによっては、複雑な数値アルゴリズムを
伴うものがあることを考慮すると、現在のコンピュータ
技術では、レンダリングのプロセスに費やす時間は非常
に長い。
【0004】このような画像や画像シーケンス(後者
は、静止画像に対して、アニメーションに対応する)の
オーサリングを行うプロセスを高速化するためには、グ
ラフィック・アーティストは、最終画像の特定の特徴を
含む画像を生成し、組み合わせたときに(または、必須
のパス全てを生成しない場合は、恐らく他の特徴とも組
み合わせる)、完全な画像または画像シーケンスを形成
する。例えば、いわゆるマット・パス(matte pass)
は、第1のオブジェクトの輪郭のみを示す。即ち、第1
のオブジェクトの背後にあり、これによって隠されてい
ない物体の部分のみを示す。このようなパスでは、第1
のオブジェクトは表面に全く特徴がない白のベタ塗とす
ることができる。他のパスとして、オブジェクトまたは
1群のオブジェクトによって作られる影のみを示すシャ
ドウ・パスを挙げることができる。複合(compositin
g)と呼ぶプロセスにおいてこれらのパスを組み合わせ
て、最終画像を形成する。
【0005】最終的なレンダリング画像をこれらのパス
に分解し、続いてパスを複合することによって、複合の
前に中間プロセスが可能となり、画素編集ソフトウエア
を用いてパス画像を編集することにより、最終画像の特
定の特徴を修正することができる。元の3−Dモデルに
戻ることなく、種々の特徴を引っ張る(tweak)ことが
できる。例えば、シャドウ・パス画像を編集することに
より、シャドウの暗さまたは色相を引っ張ることができ
る。続く複合プロセスを素早く実行し、完全な最終的画
像を得る。次に、アーティストはパスに戻り、更に変更
を加え、再び複合して結果を見る。パスで開始する複合
動作は非常に素早く行われるので、この画素プロパティ
を引っ張るプロセスは、繰り返しかつ素早く行い、画像
を洗練することができる。また、例えば、シャドウを変
更する場合、所望の効果を得るには、3−Dシーン・デ
ータにおける採光を変更する必要がある。これは、シー
ン全体のレンダリングをし直す必要があり、長時間を要
する。
【0006】以下に、作成可能な種々の形式のパスを示
す。ビューティ・パス(beauty pass)は、1群のオブ
ジェクトから選択したオブジェクトの完全なレンダリン
グのことである。ビューティ・パスは、修正を加えず
に、シーン全体のレンダリングを行う。マット・パス
は、選択したオブジェクトの輪郭を示し、当該オブジェ
クトの表面が均一に現れるので、オブジェクトのシルエ
ットの限界を定める。背景および非選択オブジェクト
は、マット・パスでは見えない。シャドウ・パスは、オ
ブジェクトが発生する影のみを示し、影を発生したオブ
ジェクトおよびその他のオブジェクト(ならびに背景)
は、レンダリング時には現れない。ハイライト・パス
は、選択したオブジェクトの表面のみを示し、鏡面反射
のために明るく見え、シーンの残りの部分は不可視とし
てフラグを立てる(flag)。透明パスは、1つ以上の透
明な選択したオブジェクトのビューティ・パスであり、
シーンの残り部分は不可視としてフラグを立てる。屈折
パスは、1つ以上の選択したオブジェクトを通過して屈
折した光のみを示し、シーンの残りの部分は不可視とし
てフラグを立てる。このリストは、決してこれで全てで
はなく、この開示の目的を容易にするために、一例とし
て提示したに過ぎない。
【0007】明らかに、パス画像の画素を編集すること
により、いくつかの修正のみを効率的に行うことができ
る。3−Dシーンに戻すことによって、ある修正のみを
効率的に行う。例えば、ある物体の形状を変更しなけれ
ばならない場合、強調、影付け、および形状の詳細のよ
うに、複雑な修正を行うには、シーンにおいて定義した
オブジェクトの3−Dモデルの編集が必要となる。
【0008】
【発明が解決しようとする課題】図2を参照すると、三
次元シーン10のステップを作成または編集した後にパ
スを発生するプロセスは、いくつかの工程を伴う。ま
ず、シーンのコピーを多数作成する(15a〜15
n)。次に、各コピーを編集し(20a〜20n)、発
生すべきそれぞれのパスに適するようにプロパティを修
正する。例えば、第1のオブジェクトにマット・パスを
発生する場合、ユーザはオブジェクトのシェーダの表面
をセットし、このバージョンのシーンのレンダリングを
行うときに当該オブジェクトが真っ白に見えるようにす
る。マット・パスを発生しようとする各オブジェクトに
同じことを行う。別の例として、第1のオブジェクトに
ビューティ・パスを発生するために、シーンの別のコピ
ーを作り、第1のオブジェクト以外の全てのシェーダを
透明即ち「ゼロ−アルファ」にセットするように修正す
る。このように、シーンを編集する毎に、各パス毎にコ
ピーを作り、当該コピーのパス特定パラメータをセット
して、特定の各パスを発生する。これは、3−Dシーン
内の変化があらゆる単一のパスに影響を与える可能性が
ある(そして恐らく与える)からである。次に、編集し
た各コピーのレンダリングを行い、特定のパスを作成す
る。ユーザは、ステップ45においてパスを用いて作業
し、3−Dシーンの編集を決定することができる。新た
な1組のパスを発生するプロセスは、以前と同一であ
る。著者は、シーンを編集するシーン10に戻り、同じ
手順を辿って新たな1組のパスを生成する。このシーン
のコピーを編集してパスを発生するプロセスは、退屈で
しかも時間がかかる場合がある。太い枠のボックスで示
すタスクは、労働集約的なアクティビティである。シー
ンを編集する毎に、それぞれを繰り返さなければならな
い。
【0009】
【課題を解決するための手段】本発明は、三次元シーン
からパス定義(複数のパス)を作成するプロセスを自動
化する方法のためのシステムである。本発明は、ユーザ
が、別個のステップにおいて、一連のパス定義を行うこ
とを可能にする。各パス定義は、シーンにおいて定義し
てあるプロパティをオーバーライドするプロパティを含
む。所与のパス定義を3−Dシーンに適用する場合、シ
ステムは、パス定義にしたがって、当該シーンを自動的
に変更する。一旦パスをアクティブとセットしたなら
ば、シーンのレンダリングを行い、それぞれのパス画像
または画像シーケンス、あるいは単に「パス」を生成す
る。
【0010】例えば、マット・パスを作成するステップ
を考える。本発明では、マット・パスの定義を、別個の
プロセスとして分解する。パーティションと呼ぶオブジ
ェクト集合化によって、プロパティをオブジェクトに割
り当てることができる。このように、パス定義は、特定
のパーティション、およびパーティション毎に特定の1
組のプロパティ値を識別することができる。シーンにお
いて、当該特定のパーティションに属するものとして定
義したオブジェクトは全て、そのパーティションのプロ
パティを継承する。パーティションは、階層状とし、親
パーティションがそれらのプロパティを継承によってそ
れぞれの子パーティションに渡し、子パーティションが
それらのプロパティをオブジェクトに、あるいは更に子
孫パーティションに渡すことができる。例えば、第1の
パーティションに属すると定義されたオブジェクトの第
1のコンステレーションに対するマット・パス定義にお
いて、第1のパーティションをオーバーライド・プロパ
ティおよび適用する値と共に識別する。したがって、定
義は、パーティション1、シェーダ色相=白、透明度=
0%、または何らかの更に技術的に効率的な同等物を指
定することができる。これらの新しい値は、シーン定義
に適用されるシェーダをオーバーライドする。したがっ
て、パーティション1が、シーン定義において全ての種
類の色および反射率によって定義した、1群の恐竜のス
ケールである場合、これらのシェーダは全て、パーティ
ションのシェーダで置換する。これによって、恐竜は、
レンダリング時に、真っ白になって現れる。同じパス定
義において、他の全オブジェクトのプロパティは自動的
に上書きされるので、これらのオブジェクトはレンダリ
ング時には見えない。次に、従来技術において教示され
ているように、得られたマット・パスは、2−D画像の
引っ張りおよび/または複合に用いることができる。
【0011】シーンに添付されている種々のパスは、シ
ステム上で維持し、必要に応じてその操作および再複合
ができるようにする。複合は従来と同様に、本発明が定
義するシステムの外側で行われる。前述のように、単一
のシーン記述を用いて、種々のパス特定画像または画像
シーケンスのレンダリングを行う。
【0012】レンダリング・パス(render pass)を発
生するプロセスを自動化する重要な動機付けは、“A sy
stem for Editing Complex Visual Data Providing a C
ontinuously Updated Rendering”(連続的に更新する
レンダリングを与える複合視覚データ編集システム)と
題する同時係属中の米国特許出願に記載してある、イン
・コンテキスト・レンダリング(in-context renderin
g)の発明を検討すれば、理解できよう。その内容は全
体的に、この言及によって本願にも含まれるものとす
る。イン・コンテキスト・レンダリング・システムは、
オーサリング環境自体においてレンダリングを与える。
これは、著者のシーンに対する修正によって、最終的な
レンダリングがどのような影響を受けるのかについて、
連続的なフィードバックを与えることによって、著者が
シーンの幾何学的プロパティおよび非幾何学的(表面、
光拡散効果、光強度等)プロパティを調整するのを助け
る。イン・コンテキスト・レンダリング・システムは、
著者が、レンダリング領域の画像サイズおよび示される
オブジェクトを適合させる(tailor)ことによって、シ
ーンの特定の幾何学的特徴に集中することを可能にす
る。パスを作成するプロセスを自動化することにより、
イン・コンテキスト・レンダリングの開示に記載してあ
るレンダリング技術を適用する前に、現在選択されてい
るパス定義によって、シーンをフィルタリングするステ
ップが可能となる。これが意味するのは、オーサリング
環境において表示したレンダリングは、選択したあらゆ
るパス定義にしたがって形成可能であるということであ
る。これによって、著者は、作業を進めつつ、更に一層
狭義に、シーンのある特徴に集中することが可能とな
る。例えば、著者は、カレント・パスとして、ハイライ
ト・パスを選択し、ハイライトを発生する3−Dパラメ
ータを調整することができる。これを、3−Dシーン・
データを編集してハイライトを得て、編集したシーンの
プレビューのレンダリングを行い、次いで逆戻りして再
び3−Dシーンの編集を行う、従来技術のプロセスと比
較されたい。このように、レンダリング・パス形成の自
動化によって、画像の画素引き延ばしを目的とするパス
の形成に伴う労働を単に軽減することを超えた、オーサ
リング環境におけるツールが得られる。また、これは、
著者に、新たな透視図、即ち、異なる種類の即時フィー
ドバック(immediate feedback)を、まさにオーサリン
グ環境において呼び出すというオプションを与える。こ
のフィードバックは、著者が3−Dシーン自体を編集す
る際の、シーンの特定の特徴に集中する能力を高める。
【0013】本システムは、3−Dシーンを定義するデ
ータからの、いわゆるパス画像シーケンス(または単に
「パス」)の生成を自動化する。本発明は、3−Dシー
ンのプロパティをオーバーライドするパス定義を予め指
定し、3−Dシーンにフィルタリングを施すことによっ
て、パスの生成を自動化する。フィルタリングの結果に
レンダリングを行い(レンダリングは、その多くがレイ
・トレーシングのプロセスを含む)、パスを形成する。
システムは、多数のパス定義を格納することも可能であ
る。3−Dシーンを編集する毎に、パス定義からパスを
自動的に生成することができる。このパス生成の自動化
は、3−Dシーンのレンダリングのパス・プレビューを
可能にすることによって、パスのオーサリング環境にお
ける使用を可能とする。パス生成の自動化は、オーサリ
ング環境にパス・プレビューを与えることにより、3−
Dシーンの編集を捗らせるツールをもたらす。また、こ
の自動化により、通常3−Dシーンの編集において必要
な実質的に手作業による作業をせずに、パスの生成が可
能となる。
【0014】本発明の一実施形態によれば、三次元シー
ンから二次元画像を作成する方法を提供する。そのステ
ップは、少なくとも1つのオブジェクトの幾何学的形状
および第1の表面特性定義を含むシーンを定義すること
を含む。シーンのレンダリングが、第1の表面特性によ
って少なくとも部分的に決定されるオブジェクトの画像
を生成する。定義するステップの結果をコンピュータに
格納する。こうして、ユーザはパス定義を編集すること
が可能となる。編集の結果は、オブジェクトの第2の表
面特性定義を含むパス定義である。表面特性は、いずれ
の非幾何学的プロパティでもよい。編集の結果をコンピ
ュータに格納する。ユーザが特定のパスを活性化する
と、パーティション・プロパティがオブジェクト(複数
のオブジェクト)の元のプロパティを覆う。レンダリン
グは、アクティブなパスに関連して発生する。
【0015】別の実施形態によれは、本発明は、三次元
シーンからパス画像(または画像シーケンス)を作成
し、それを用いて作業を行う方法である。そのステップ
は、オブジェクトのシーン幾何学的プロパティおよびシ
ーン非幾何学的プロパティを含むシーンを格納すること
を含む。この実施形態における次のステップは、複数の
パス定義を格納することである。各パス定義は、オブジ
ェクトの少なくとも1つの少なくとも1つのオーバーラ
イド非幾何学的プロパティを含む。次のステップは、格
納したパス定義の各々を用いて、シーンの各コピーにフ
ィルタリングを行い、少なくとも1つのオーバーライド
非幾何学的プロパティを用いて、それぞれのパスのレン
ダリングの外観を決定するようにすることである。フィ
ルタリングを行うステップの結果、それぞれのコピーの
シーン非幾何学的プロパティを、オーバーライド非幾何
学的プロパティと入れ換えることにより、シーン非幾何
学的プロパティを用いて、それぞれのパスのレンダリン
グの外観を決定するようにする。最後のステップは、パ
スのレンダリングを行い、非幾何学的プロパティによっ
て少なくとも部分的に決定されるオブジェクトの画像を
生成することから成る。
【0016】更に別の実施形態によれば、本発明はシー
ンの画像を与える方法である。そのステップは、シーン
定義データを受け取り、このシーン定義データを格納す
るステップであって、シーン定義データが、幾何学的プ
ロパティおよび非幾何学的プロパティを含む、ステップ
と、パス定義データを受け取り、そのパスデータ定義を
格納するステップであって、パス定義データが非幾何学
的プロパティを含む、ステップと、格納したシーン定義
データおよび格納したパス定義データに応答して、格納
したシーン定義データが定義するシーンのビューにレン
ダリングを行って画像を生成するステップである。レン
ダリングは、シーン定義内の非幾何学的プロパティを、
パス定義内の非幾何学的プロパティで置換するようにす
る。その他のステップには、画像を表示しつつ、シーン
定義に対する修正を受け入れ、その修正を用いてシーン
定義データを更新するステップ、および受け入れるステ
ップに応答して、レンダリングを更新するステップがあ
る。追加してもよい付加ステップには、レンダ−ビュー
定義データを受け取り、レンダ−ビュー定義データを格
納するステップがあり、ビューにレンダリングを行うス
テップは、レンダ−ビュー定義データに応答して実行す
る。レンダリングするステップは、受け取るステップに
関して非同期的に行うとよい。パス定義データは、多数
のパーティション−相互に排他的シーン・オブジェクト
群を含むことができる。また、レンダリングを行うステ
ップは、カレント・パスに応答してビューのレンダリン
グを行い、他のパスを除外するステップを含む。
【0017】更に別の実施形態によれば、本発明は、3
−Dシーンのオーサリングを行うためのユーザ・インタ
ーフェースの生成方法である。そのステップは、シーン
定義の変更を受け取り、変更に応答して、格納してある
シーン定義を修正するステップを含み、格納してあるシ
ーン定義は、3−Dシーンの幾何学的パラメータと非幾
何学的パラメータとを含む。更に、各々、シーンの少な
くとも1つの非幾何学的パラメータを定義する、多数の
所定のパス定義の1つの選択を指示するデータを受け取
るステップを含む。多数の所定のパス定義における非幾
何学的パラメータの少なくともいくつかは、格納してあ
るシーン定義において対応する非幾何学的パラメータに
対して冗長である。更に、第1の受け取るステップに応
答して、シーンの抽象画像を表示するステップと、受け
取るステップの双方に応答して、シーンのレンダリング
画像を最終的に表示するステップとを含む。
【0018】更に別の実施形態によれば、本発明は、オ
ーサリング・ユーザ・インターフェースを通じて3−D
シーンを修正する毎に、オーサリング・ユーザ・インタ
ーフェースに表示可能なレンダリングを繰り返しかつ自
動的に生成する方法である。そのステップは、各々が3
−Dシーンのプロパティを定義するパス定義を格納する
ステップを含む。更に、著者がオーサリング・ユーザ・
インターフェースに入力した3−Dシーンの変更に応答
して、パス定義の1つをカレントとして選択するステッ
プを含む。更に、格納してあるパス定義から選択するス
テップにおいて選択した1つにしたがって、レンダリン
グに用いるプロパティを決定し、3−Dシーンのプロパ
ティに対応するパス定義の1つのいずれかのプロパティ
が、3−Dシーンのプロパティと入れ替わるようにする
ステップを含む。最後に、この方法は、判定するステッ
プにおいて判定した、入れ替わるプロパティに応答し
て、3−Dシーンのレンダリングを行うことを必要とす
る。
【0019】更に別の実施形態によれば、本発明は、コ
ンピュータ・システムにおいて3−Dシーンのパス画像
を生成する方法であって、(1)3−Dシーンのレンダ
リングを行うことによって得られる画像の外観を決定す
る、3−Dシーン定義プロパティを格納するステップ
と、(2)各々3−Dシーンに対応するオーバーライド
・プロパティを定義する、パス・データ集合を格納する
ステップと、(3)3−Dシーンのレンダリングを行う
際に用いる、パス・データ集合の選択したものの指示を
格納するステップと、(4)パス・データ集合の各々に
ついて少なくとも1回、3−Dシーンのプロパティの少
なくとも1つの対応するプロパティの代わりに、パス・
データ集合の各々のオーバーライド・プロパティの少な
くとも1つを用いて、3−Dシーンのレンダリングを行
うことによって、パス定義の各々について、少なくとも
1つの画像または画像シーケンスを生成するステップと
から成る。更に、パス・データ集合の各々について、少
なくとも1つの画像または画像シーケンスを格納するス
テップを追加してもよい。また、データ集合の各々につ
いて、少なくとも1つの画像の少なくとも1つを編集す
るステップを追加してもよい。
【0020】更に別の実施形態によれば、本発明は、コ
ンピュータ・システムにおいて、3−Dシーンのパス画
像を作成し、それを用いて作業を行う方法である。この
方法は、3−Dシーンにレンダリングを行うことによっ
て得られる画像の外観を決定する、3−Dシーン定義プ
ロパティを格納するステップを含む。更に、この方法
は、各々3−Dシーンに対応するオーバーライド・プロ
パティを定義する、パス・データ集合を格納するステッ
プを含む。更にまた、この方法は、パス・データ集合の
1つを選択するステップと、選択したパス・データ集合
に対してレンダリングを行い、パス・データ集合の各々
のオーバーライド・プロパティの少なくとも1つが、3
−Dシーンの対応するプロパティの代わりに、得られる
レンダリング画像を決定するようにするステップとを含
む。最後に、この方法は、3−D画像を編集しつつ、レ
ンダリングした画像を表示するステップを必要とする。
また、この方法は、格納したパス・データ集合の少なく
とも2つについて、3−Dシーンのレンダリングを行う
ステップと、これから得られるパス画像を複合するステ
ップとを含んでもよい。また、この方法は、複合するス
テップに先立ち、パス画像を編集するステップを含んで
もよい。また、この方法は、3−Dシーンを編集し、同
一のパス・データ集合を用いてレンダリングを行うステ
ップを繰り返すステップを含んでもよい。
【0021】更に別の実施形態によれば、本発明は、コ
ンピュータ上においてユーザ・インターフェースを発生
し、三次元シーンのオーサリングを行う方法である。こ
の方法は、メモリ内に3−Dシーンを格納するステップ
と、3−Dシーンに対する編集を受け取るステップとを
含み、編集は、ユーザによって適用され、3−Dシーン
によって定義するオブジェクトの3−Dプロパティに対
する修正を含む。また、この方法は、受け取るステップ
と実質的に同時であるが、それに対して非同期的に、3
−Dシーンのレンダリング・ビューを発生するステップ
を含む。レンダリングしたビューは、選択したパラメー
タ集合に応答し、パラメータ集合は、3−Dシーンに関
係する1群のパラメータ集合の1つである。最後に、受
け取るステップおよび発生するステップを繰り返す。受
け取るステップと実質的に同時に、レンダリング・ビュ
ーを表示することができる。パラメータの集合は、3−
Dシーンにおけるパラメータと置換するパラメータを含
み、3−Dシーンの置換されたパラメータによってでは
なく、選択したパラメータの集合のパラメータによっ
て、レンダリング・ビューを決定するようにしてもよ
い。
【0022】
【発明の実施の形態】図1を参照し、本発明を実施する
ことができる、適切な計算機環境を示す。図示のよう
に、種々のコンピュータ・システム構成がある。尚、本
発明は、分散型計算機環境において実用化することがで
き、通信ネットワークを通じて、ローカルおよび/また
はリモート記憶装置内に配置したプログラム・モジュー
ルとリンクしたリモート処理装置によってタスクを処理
することを注記しておく。システムの一例は、従来のパ
ーソナル・コンピュータ900を含み、処理ユニット9
10、システム・メモリ920、およびシステム・メモ
リないし処理ユニット910までを含むシステム・コン
ポーネントを相互接続するシステム・バス930を備え
ている。システム・バス930は、メモリ・バスまたは
メモリ・コントローラ、周辺バス、あるいはローカル・
バスを含むあらゆる構造とすることができる。システム
・メモリは、リード・オンリ・メモリ(ROM)940
およびランダム・アクセス・メモリ(RAM)950を
含む。起動中のように、パーソナル・コンピュータ90
0内のエレメント間で情報を転送する際に役立つ基本ル
ーチンを収容した基本入出力システム(BIOS)96
0が、ROM940に記憶してある。更に、パーソナル
・コンピュータ900は、ハード・ディスク・ドライブ
970、リムーバブル磁気ディスク990を備えた磁気
(例えば、フロッピ)ディスク・ドライブ980、およ
びリムーバブル光ディスク992を備えた光ディスク・
ドライブ991も含む。ハード・ディスク・ドライブ9
70、磁気ディスク・ドライブ980、および光ディス
ク・ドライブ991は、それぞれ、ハード・ディスク・
ドライブ・インターフェース992、磁気ディスク・ド
ライブ・インターフェース993、および光ディスク・
ドライブ・インターフェース994を介して、システム
・バス930に接続してある。磁気カセット、フラッシ
ュ・メモリ・カード、デジタル・ビデオ・ディスク、ベ
ルヌーイ・カートリッジ、ランダム・アクセス・メモリ
(RAM)、リード・オンリ・メモリ(ROM)等のよ
うに、他の形式のコンピュータ読み取り可能媒体を用い
てデータを格納してもよい。
【0023】プログラム・モジュールは、ハード・ディ
スク、磁気ディスク990、光ディスク992、ROM
940またはRAM950上に記憶すればよく、オペレ
ーティング・システム950、1つ以上のアプリケーシ
ョン・プログラム996、他のプログラム・モジュール
997、およびプログラム・データ998を含む。ユー
ザは、キーボード901およびポインティング・デバイ
ス901のような入力装置を通じて、コマンドおよび情
報をパーソナル・コンピュータ900に入力することが
できる。他の入力装置(図示せず)には、マイクロホ
ン、ジョイスティック、ゲーム・パッド、サテライト・
パラボラアンテナ(satellite dish)、スキャナ等も含
まれる場合がある。これらおよびその他の入力装置は、
多くの場合、システム・バスに結合するシリアル・ポー
ト・インターフェース46を介して処理ユニット910
に接続するが、パラレル・ポート、ゲーム・ポートまた
はユニバーサル・シリアル・バス(USB)のようなそ
の他のインターフェースを介して接続することも可能で
ある。モニタ907またはその他の形式の表示装置も、
ビデオ・アダプタ908のようなインターフェースを介
して、システム・バス930に接続してある。モニタに
加えて、パーソナル・コンピュータは、典型的に、スピ
ーカやプリンタのような、その他の周辺出力装置(図示
せず)も含む。
【0024】パーソナル・コンピュータ900は、リモ
ート・コンピュータ909のような、1つ以上のリモー
ト・コンピュータへの論理接続を用いたネットワーク状
環境において動作することができる。リモート・コンピ
ュータ909は、別のパーソナル・コンピュータ、サー
バ、ルータ、ネットワークPC、ピア・デバイス、また
はその他の一般的なネットワーク・ノードとすることが
でき、典型的に、パーソナル・コンピュータ900に関
して先に記載したエレメントの多くまたは全てを含む
が、図1にはCPU911のみを図示してある。図1に
示す論理接続は、ローカル・エリア・ネットワーク(L
AN)912およびワイド・エリア・ネットワーク(W
AN)913を含む。このようなネットワーク状環境
は、事務所、会社規模のコンピュータ・ネットワーク、
イントラネット、およびインターネットにおいては、目
新しいものではない。
【0025】LANネットワーク状環境において用いる
場合、パーソナル・コンピュータ900は、ネットワー
ク・インターフェース即ちアダプタ914を介して、ロ
ーカル・ネットワーク912に接続する。WANネット
ワーク状環境において用いる場合、パーソナル・コンピ
ュータ20は、典型的に、モデム915またはインター
ネットのようなワイド・エリア・ネットワーク913を
通じて通信を確立するその他の手段を含む。モデム91
5は、シリアル・ポート・インターフェース906を介
して、システム・バス930に接続してある。ネットワ
ーク状環境では、プログラム・モジュール、またはその
一部分は、リモート・メモリ記憶装置に記憶してある場
合がある。尚、図示のネットワーク接続は一例であり、
複数のコンピュータ間に通信リンクを確立するその他の
手段も使用可能であることは認められよう。
【0026】当業者は熟知しているであろうが、コンピ
ュータ・システム900は、更に、オペレーティング・
システムおよび少なくとも1つのアプリケーション・プ
ログラムを含む。オペレーティング・システムは、コン
ピュータ・システムの動作および資源の割り当てを制御
する。アプリケーション・プログラムは、オペレーティ
ング・システムを通じて使用可能なコンピュータ資源を
利用して、ユーザが所望するタスクを処理する1組のソ
フトウエアである。双方共、図示のメモリ920または
先に示唆したようなその他の記憶装置内に位置すること
ができる。
【0027】コンピュータ・プログラミングの技術にお
ける当業者の実務(practice)にしたがって、特に指示
がない場合は、アクト(act)およびコンピュータ・シ
ステム900が処理する動作シンボル表現を参照しなが
ら、本発明の説明を行うことにする。このようなアクト
および動作は、ときとして、コンピュータ実行(comput
er-executed)と呼ぶことがある。尚、アクトおよびシ
ンボル表現した動作は、データ・ビットを表す電気信号
のCPU910による操作を含む。この操作によって、
結果としての電気信号表現の変換または減少、メモリ・
システム22内のメモリ位置へのデータ・ビットの維持
によるコンピュータ・システムの動作の再構成またはそ
の他の方法による変更、あるいはその他の信号処理が行
われる。データ・ビットを維持するメモリ位置は、当該
データ・ビットに対応する特定の電気的、磁気的、光学
的、または有機体的プロパティを有する物理的な位置で
ある。
【0028】本発明の例示的な実施形態では、コンピュ
ータ・システム20は、WindowsNT(登録商標)、Window
s95(登録商標)、Windows98(登録商標)クライアント
・サーバ・オペレーティング・システムを用いることが
できる。他のクライアント/サーバ・オペレーティング
・システム(例えば、IBMによるO/S2、MacOS、UNIX、Windo
ws CE等)も使用可能である。クライアント/サーバ・
オペレーティング・システムとは、2つの異なる種類の
多数のプロセスに分割したオペレーティング・システム
のことであり、2つの異なる種類のプロセスとは、各々
が典型的に1組のサービスを実現するサーバ・プロセス
と、サービス・プロセスから種々のサービスを要求する
クライアント・プロセスである。オブジェクト指向プロ
グラミングを用いて、クライアント/サーバ・オペレー
ティング・システム、および当該クライアント/オペレ
ーティング・システムの下で走るアプリケーションを設
計する。ここでは、オブジェクトとはシステム資源を表
す。
【0029】例えば、Windows95クライアント/サーバ
・オペレーティング・システムは、ファイル、メモリ、
プロセスおよびスレッドというような共有可能な資源を
提供する。これらは、「オブジェクト」として実装し、
「オブジェクト・サービス」を用いることによって、ア
クセスすることができる。当技術分野では周知である
が、「オブジェクト」とはデータ構造のことであり、そ
の物理的フォーマットが型定義の背後に隠されているも
のである。データ構造とは、レコードまたはフォーマッ
トとも呼ぶが、データに適用し、解釈可能としたり、当
該データに対して特定の動作を実行可能とする、編成の
スキーム(organization scheme)である。このような
データ構造は、コンピュータ・メモリ920内部に格納
してあるデータの集合体に物理的な編成を賦課し、特定
の電気的、磁気的または有機体的エレメントを表す。
【0030】「オブジェクト型」とは、「オブジェクト
・クラス」とも呼び、データ型、当該データ型のインス
タンスにおいて動作するサービス、および1組のオブジ
ェクト属性から成る。「オブジェクト属性」とは、オブ
ジェクトの状態を部分的に定義するオブジェクト内のデ
ータの欄のことである。「オブジェクト・サービス」
は、通常、オブジェクト属性を読み込みあるいは変更す
ることにより、オブジェクトの実装および操作を行う。
「オブジェクト指向設計」とは、オブジェクトを用いて
システムまたはコンポーネントを表現する、ソフトウエ
ア開発技法のことである。
【0031】典型的に、オブジェクトは2つのコンポー
ネントを有する。即ち、当該オブジェクトのクラスにお
いて定義してある各オブジェクト・メンバ関数(即ち、
ときとしてオブジェクト・メソッドとして知られてい
る)に対するポインタを含む関数テーブルと、各オブジ
ェクト変数(即ち、ときとしてオブジェクト・プロパテ
ィとしても知られている、データ・メンバ)毎に現在の
値を収容するデータ・ブロックである。アプリケーショ
ンは、オブジェクト・ポインタを介して、あるオブジェ
クトに対して何らかの参照(reference)を有する。ア
プリケーションは、何らかの型の関数コール(直接また
は黙示的)を用いることによって、このオブジェクト参
照を得る。関数コールにおいて、当該関数がオブジェク
ト・ブロックをコンピュータ・メモリ内に割り当て、関
数テーブルを初期化し、コンピュータ・メモリに対する
参照をアプリケーションに返す。コンピュータ・メモリ
は、ローカルでも、リモート・コンピュータ上に分散し
てもよい。
【0032】Windows95オペレーティング・システム
は、それが実行すべき多くのタスクを「プロセス」に編
成することにより、ユーザが2つ以上のプログラムを一
度に実行できるようにする。このオペレーティング・シ
ステムは、コンピュータの資源の一部を各プロセスに割
り当て、適切な時点に適切な順序で、各プロセスのプロ
グラムを実行のために発行することを保証する。
【0033】本発明の例示的な実施形態では、プロセス
をオブジェクトとして実装する。プロセス・オブジェク
トは、次のエレメントから成る。実行可能プログラム、
専用アドレス空間、プログラムを実行する際にオペレー
ティング・システムがプロセスに割り当てるシステム資
源(例えば、通信ポートやファイル)、および少なくと
も1つの「実行のスレッド」である。「スレッド」と
は、オペレーティング・システム・カーネルが実行のた
めにスケジュールする、プロセス内のエンティティであ
る。当技術分野では周知であるが、各スレッドは、関連
する「コンテキスト」を有する。「コンテキスト」と
は、スレッドの実行と関連する揮発性データである。ス
レッドのコンテキストは、システム・レジスタの内容、
およびスレッド・プロセスに属する仮想アドレスを含
む。したがって、スレッド・コンテキストを構成する実
際のデータは、実行するに連れて変化する。
【0034】図2および図3を参照する。本発明は、ユ
ーザが各パス毎にそれぞれの定義を作成できるようにす
るものである。図2および図3は、各型毎に1つのパス
のみを示すが、ユーザは、図示のパスの型のサブセット
(subset)またはスーパーセット(superset)のみを発
生することができ、更に各型に多数のパスを発生し、異
なる1組のオブジェクトに対して各々を定義することが
できることは理解されよう。本発明によれば、ユーザ
は、図3に概要をまとめた手順を辿る。多数のレンダリ
ング・パスの作成および維持に対応するコンピュータ・
プログラムは、パス定義の作成および修正のためのイン
ターフェースを供給する。多数の予め定義した(「記録
済み」(canned)または「市販の」(off-the-shel
f))定義を部分的または全体的に作成し、修正に利用
することができる。これらのパス定義は、シーン・デー
タからパス・シーンを発生するために必要なパラメータ
の変種全てを含み、パス・シーンのレンダリングによっ
てそれぞれのパスが得られるようにする。例えば、マッ
ト・パスに対するパス定義の場合、マットを形成するオ
ブジェクト(複数のオブジェクト)の選択を必要とし、
不透明領域を形成する際に用いるべきRGB値に関する
詳細を与えることができる。種々のパス定義において定
義する他のパラメータには、以下のものが含まれ得る。
【0035】1.画像の解像度、サンプリングの設定
値、出力画像名のようなレンダリング・オプション。 2.霧または雨の定義のような、環境的シェーダの設定
値。
【0036】3.出力シェーダ設定値。例えば、グロー
(glow)出力シェーダを定義することができる。 4.用いる特定のカメラ・オブジェクトを示すカメラ設
定値。
【0037】5.シーンの幾何学的パーティション。各
パーティションは、1組のオブジェクトから成る。当該
パーティションに属するオブジェクトの個々のプロパテ
ィ(例えば、可視性または表面プロパティのようなレン
ダリング・プロパティ)をオーバーライドするパーティ
ションの各々についてのプロパティ。
【0038】6.光のプロパティを定義し、シーンにお
いて定義した個々のプロパティをオーバーライドする光
パーティション。例えば、ソースは点光かまたは面光か
を示す。
【0039】7.他のパーティションに属さないオブジ
ェクトのプロパティに対するデフォルト・パーティショ
ンを定義し、このようなオブジェクトに対するオーバー
ライド・プロパティを定義する背景幾何学的形状設定
値。
【0040】8.他の光パーティションに属さない光オ
ブジェクトのプロパティに対するデフォルト・パーティ
ションを定義し、このような光オブジェクトに対するオ
ーバーライド・プロパティを定義する背景光形状設定
値。
【0041】好適な実施形態では、シーンにオブジェク
トを追加するためや、アニメーションの設定値を変更す
るためには、パス定義を用いない。次に、図3に示すプ
ロセスに移る。ユーザは、パス定義14a〜140fか
ら選択した1つを作成または修正する。この場合も、所
与の型に対して多数の付随事項があり、各々異なるオブ
ジェクトの集合化または何らかの別のパラメータの変種
に関係する場合がある。ユーザが3−Dシーン110を
修正する場合はいつでも、パス定義120a〜120f
によってシーン・データをフィルタリングし、各々につ
いてそれぞれのパスを得る。
【0042】本発明を用いてパスを発生する際に伴うワ
ークフロー(図3)は、従来技術によるワークフロー
(図2)と実質的に異なる。第1に、まず、シーンおよ
び1組のパス定義120および140a〜140nを作
成する。次いで、シーンを自動的にコピーし、パス定義
120a〜120nによって各コピーをフィルタリング
する。これらパス・シーンにレンダリングを行い、パス
を生成する。著者は、パス45を用いて作業し、著者が
3−Dシーン10を編集することを決定した場合、著者
はシーンを編集するだけでよい。他のステップは全て、
予め定義したパス定義を用いて、自動的または半自動的
に行われる。この場合も、手作業による集約的ステップ
は、太枠のボックスで示してある。
【0043】図2および図3を比較することによってわ
かるように、パス定義の作成の結果、パスを作成および
再作成するプロセスから、大量の作業が不要となる。1
つの利点として、オーサリング・システムに、単に最小
限必要なデータを入力することによって実装可能なテン
プレート・パス定義を供給できることがあげられる。例
えば、マット・パス定義は、既に、透明で平坦な白色シ
ェーダに対して適切なプロパティ定義を予め規定するこ
とができる。マット・パス定義をカスタマイズするため
には、適切なパーティション・アイデンティティ(part
ition identity)を追加するだけでよい。これを更に高
速化するために、デフォルトを用意することも可能であ
る。例えば、第1の組をマットによって識別した場合、
全てのパーティションに自動的に透明シェーダを与える
ことができる。すると、著者は、残りのパーティション
全てを指定して、透明シェーダ・プロパティとこれらを
関連付ける必要はなくなる。勿論、他のデフォルトも、
必要に応じて、実施することができる。例えば、全ての
カメラ選択のデフォルトを、第1の選択または全体的選
択とし、必要に応じて、所与のパス定義に対するカメラ
の選択を修正することができる。このように、各パス定
義毎に、カメラの選択を指定する必要はない。多くの他
の例も可能である。本発明の別の利点は、パス定義プロ
セス全体を、シーン編集ループの外側で行うことであ
る。一旦パスを定義したなら、3−Dシーンを編集した
後にそれらを実装する際には手作業の労働を必要としな
い。これは、パスを用いる作業に必要な労力を大幅に削
減することができる。
【0044】好適な実施形態では、本発明を、3−Dオ
ーサリング環境において小さなプレビュー・パス画像の
連続的および自動的レンダリングを行うシステムに実装
する。この、いわゆるイン・コンテキスト・レンダリン
グ・システムは、“A systemfor Editing Complex Visu
al Data Providing a Continuously Updated Renderin
g”(連続的に更新するレンダリングを与える複合デー
タ編集システム)と題する同時係属中の米国特許出願に
記載してある。その内容は全体的に、この言及によって
本願にも含まれるものとする。端的に言えば、イン・コ
ンテキスト・レンダリング・システムは、作業中のシー
ンの小さなビュー領域にレンダリングを限定し、ユーザ
が同時に3−Dデータを修正しつつこれを更新する。オ
ーサリング環境においては、パスのレンダリングのプレ
ビューを見ることができる。このパスを、カレント(cu
rrent)として識別する。イン・コンテキスト・レンダ
リングを適用するシーンにおいて論じられるレンダリン
グ領域は、パスを示す。これを行うには、領域のビュー
をレンダリングする前に、関連するシーン・データを、
パス定義によってフィルタリングする。このように、基
礎の3−Dシーン・データを編集するに連れて、領域の
レンダリングが連続的に行われる。例えば、ユーザが2
つのパス、ビューティ・パスおよびマット・パスの作業
を行い、ビューティ・パスをカレントとすると、本実施
形態は以下のように機能することができる。
【0045】1.ユーザが、マット・パスをカレントと
してセットする。 2.ビューティ・パスについては、非カレントとしてフ
ラグを立てる。 3.ビューティ・パスのパーティションがある場合、そ
れによって実装される設定値を引っ込める。
【0046】4.背景パーティションによって実装され
る設定値を引っ込める。 5.マット・パスを、カレントとして、フラグを立て
る。 6.マット・パス定義において定義した背景の設定値を
実装する。
【0047】7.マット・パス定義に定義してあるパー
ティションがある場合、その設定値を実装する(幾何学
的形状および光)。 8.シーン・データのレンダリングおよび修正は、カレ
ント・パスに対して、同時係属中の出願において論じら
れるように進行する。
【0048】尚、ユーザ・インターフェースは、全ての
パスに共通の3−Dシーン・データの直接変更に対応す
ることができ、これらは、自動的にカレント・パスの設
定値によってフィルタリングされ、レンダリングに用い
るパス・シーンを得ることができることを注記してお
く。あるいは、3−Dシーン・データをカレント・パス
・フィルタによってフィルタリングした結果得られるパ
ス・シーン・データを、ユーザ・インターフェースによ
って修正することも可能である。更に他の好ましい代替
案では、3−Dシーン・データおよびパス定義を修正
し、変更の結果を同時にイン・コンテキスト・レンダリ
ング・システムにおいてレンダリングしてもよい。レン
ダリング・パスを用いる作業のために、イン・コンテキ
スト・システムにおいて有用な他の構造は、新たなパス
がカレントとなったときに、画像(複数の画像)に再度
レンダリングを行う機能である。カレント・パスを変更
すると、イン・コンテキスト・システムは、カレント・
パスにおける変更の結果としてどのタイルの更新が必要
かについて判定しなければならないという点において、
他の種類のシーン修正と同じ影響がある。
【0049】上述のシステムは、オブジェクト指向プロ
グラミング・フレームワークに実装することが好まし
い。広義の用語で、以下のコンポーネントを定義するこ
とができる。
【0050】レンダ・システム:レンダリング・システ
ム全体は、このオブジェクトによって包まれる(wra
p)。同時係属中の出願に記載してあるイン・コンテキ
スト・システムにおいて識別される特徴の殆どは、カレ
ント・パスに適用されることを除いて、このオブジェク
トによって包含(subsume)する。
【0051】パス・コンテナ:このオブジェクトは、プ
ロジェクトに対するパス定義の集合体を収容する。パス
・コンテナは、パス管理機能および関連する動作を実行
する。これは、パスをカレントとしてセットし、シーン
内のオブジェクトからカレント・パスの設定値を引っ込
め、カレント・パスの設定値全てをアクティブとしてセ
ットする。これらは、先に論じた通りである。
【0052】レンダ・パス:レンダ・パス・オブジェク
トは、先に列挙した設定値をカプセル化する。あるパス
をカレントとした場合、レンダリング・プロパティをレ
ンダリング・エンジンに送る。カメラを指定する。環境
および出力シェーダをセットする。その後、背景および
その他の幾何学的プロパティをシーン全体に割り当て
る。次いで、各パーティションの設定値をオブジェクト
に適用し、シーン定義において定義したいずれの設定値
もオーバーライドする。パーティションにないオブジェ
クトはいずれも、背景設定値を受け取る。背景はデフォ
ルトとして維持してあるので、これらの設定値は、シー
ン内のオブジェクトの残りを包括する別個のパーティシ
ョンとして定義する必要はない。
【0053】尚、グローバル・パス定義を与えてもよい
ことを注記しておく。グローバル定義に入り得るパラメ
ータは、例えば、シーンが多数のカメラ・オブジェクト
を定義する場合、カメラの選択である。
【0054】以下に述べるのは、イン・コンテキスト・
レンダリング・システムをいかにして修正し、本発明の
パス発生機構を結合するかについての説明である。図4
を参照する。本発明は、パス・コンテナ・オブジェクト
620を追加することによって、同時係属中の出願に記
載したオブジェクト指向内に折り込むことができる。図
4は、オブジェクト指向の実現例のためのフレームワー
クとして用いることができる、オブジェクトおよびデー
タ・フローの特定例を示す。そのアーキテクチャは、例
えば、MicrosoftのComponent Object Model(COM)
技術(コンポーネント・オブジェクト・モデル技術)を
基本とすることができ、カスタムCOMインターフェー
スを用いてコンポーネント(オブジェクト)同士が相互
動作を行う。以下の説明は抽象化してあり、記載する各
オブジェクトは実際には、多数のコンポーネント・オブ
ジェクトから成り、それらが相互動作することにより、
記載する機能を行う。COM技術に関する更なる情報
は、http://www.microsoft.com/oledevにおいて見るこ
とができる。このアーキテクチャは、通知モデル(noti
fication model)に基づくものである。コンポーネント
は非同期的に通信する。
【0055】オブジェクト指向の実現例の例では、以下
の3種類の別個のスレッドを定義する。(1)パス・コ
ンテナと関連するタスクを含むユーザ・インターフェー
スのための支援、(2)レンダリング、および(3)レ
ンダリングした部分の画面彩色(screen-painting)。
先に論じたように、ユーザ・インターフェースの支援機
能に、より高い優先度を与えることができる。あるい
は、他の何らかの方法で別個のスレッドを制御し、レン
ダリング・スレッドによってユーザ・インターフェース
が不当に遅くならないことを保証するようにしてもよ
い。パス・コンテナ機能は、レンダリング・スレッド、
ユーザ・インターフェース・スレッドと同期するか、ま
たは別個のスレッドで実行すればよい。また、その代わ
りに、シーン・データのフィルタリングを行うパス・コ
ンテナ・プロセスは、レンダ・エンジン・オブジェクト
によって実行することができる。
【0056】ユーザ・インターフェース:ユーザ・イン
ターフェース・オブジェクト305は、ユーザ・インタ
ーフェースを支援する機能を扱う。従来のユーザ・イン
ターフェース機構の支援に加えて、ユーザ・インターフ
ェース・オブジェクト305は、レンダ領域の位置およ
びサイズを決めることができる。シーン定義データおよ
び修正値を受け入れることに加えて、ゼロ−アルファ複
合オプションや、レンダ領域に関連するその他のいずれ
かのような、レンダリング・オプションのユーザ入力を
支援する。また、ユーザ・インターフェース・オブジェ
クトは、パス定義や、カレント・パスの識別に対する修
正も受け入れる。後者の2つは、パス・コンテナ・オブ
ジェクト620に伝達する。ユーザ・インターフェース
の従来の形態では、レンダ領域を彩色するワイヤ・フレ
ーム・ビューの特殊処理(tailoring)を備えている。
このデータは、レンダリングを実行する際に用いる。ユ
ーザ・インターフェース305は、従来よりオーサリン
グ環境と関係する全ての機能を支援するという意味にお
いて、従来通りに応答する。
【0057】パス・コンテナ:パス・コンテナ・オブジ
ェクト620は、パス定義を格納し、ユーザ・インター
フェース・オブジェクト305から供給するパス修正デ
ータにしたがって、これらを維持する。また、パス・コ
ンテナ620は、ユーザ・インターフェースから伝達す
る選択に応じて、カレント・パスの識別を維持する。パ
ス・コンテナは、カレント・パスの定義によって、シー
ン・データのフィルタリングを行い、レンダ・エンジン
325に供給するシーン・データが、カレント・パスの
定義のプロパティを有するようにする。
【0058】レンダ・マネージャ:レンダ・マネージャ
310は、レンダ・エンジンの起動および停止を担当す
る。このオブジェクトはシーン変更を受け取り、その変
更が、(オブジェクトの表面テクスチャの変更のよう
な)レンダ領域の更新を必要とし得る形式のものである
か、あるいは(オブジェクトの名称、または他のオブジ
ェクトとの集合化のような)表示不可能な変更であるか
について判定を行う。変更が表示可能と判定した場合、
レンダ・マネージャは、レンダリング停止コマンドをレ
ンダ・エンジンに送ることによって、レンダリングを中
断する。更新した内容をレンダ・エンジンに送り、どの
タイル(レンダ領域ビューは、タイルと呼ばれる隣接部
分に分割する)のレンダリングをし直さなければならな
いかについてレンダ・エンジンが判断できるようにす
る。
【0059】レンダ・マネージャ310は、ユーザ・イ
ンターフェースからシーン修正を受け取り、これらの変
更を選択的にレンダ・エンジン325に渡す。シーン修
正が性質上グローバルである場合、レンダ・マネージャ
は、シーン修正データをレンダ・エンジンに渡す前に、
これを判定する。グローバル・パラメータ、例えば、シ
ーンの周辺光強度を修正する場合、シーンのレンダ領域
部分のレンダリングを無効にする。レンダ・マネージャ
は対応するコマンドを、レンダ・エンジンに発行し、あ
らゆるレンダリング・プロセスを中断するようにレンダ
・エンジンを指揮する。レンダ・エンジンは、コマンド
をレンダ・キャッシュに渡し、キャッシュを空にする。
これによって、レンダ・エンジンおよびレンダ・キャッ
シュが、無効のシーンの部分をレンダリングすることに
よる不要な資源消費を防止する。本実施形態では、レン
ダリング・プロセスはタイル毎に進められる。グローバ
ル・パラメータ、即ち、レンダリングの外観全体に影響
を及ぼすパラメータを変更する場合、レンダリング中断
/キャッシュ消去コマンドの効果は、レンダ・エンジン
がタイルのレンダリングを停止し、レンダ・キャッシュ
は、レンダリングしてレンダ・ビューが拾い上げるのを
待っているあらゆるタイルを破棄し、レンダ領域の表示
をリフレッシュする。レンダ・マネージャは、レンダリ
ング・スレッドを制御することに関しては、カレント・
パスにおける変更を、他のシーン修正と同一に扱う。
【0060】ユーザが、レンダ領域を移動させるかその
サイズを変更するためのいずれかのコマンドを入力した
場合、そのデータはユーザ・インターフェースからレン
ダ・ビューに送られる。レンダ・ビューは、変更の指示
をレンダ・マネージャに送り、レンダ・マネージャがそ
れに応じて再レンダリングを開始できるようにする。
尚、レンダ領域の修正により、シーン修正と同じイベン
トのチェーンが発生する場合があることを注記してお
く。即ち、レンダ領域は、シーンを修正するときにそれ
を変更しなければならないのと同様に、当該領域を再定
義するときに、更新しなければならない。
【0061】レンダ・エンジン325:このオブジェク
トは、レンダ・マネージャ310から、レンダリングを
開始および停止する命令を受け取る。シーン・データ
は、パス・コンテナ620から得る。シーン・マネージ
ャ320、即ち、シーン・データの中央倉庫は、シーン
・データを格納しており、ユーザ・インターフェースか
ら供給されるシーン修正に応答して、自動的に更新する
ことができる。パス・コンテナ620は、カレント・パ
スによって、シーン・データのフィルタリングを行い、
カレント・パスにおいて定義したプロパティがシーンの
プロパティをオーバーライドするようにする。このよう
に、パスおよびカレント・パスの維持に関連する動作
は、レンダリング・プロセスには透明である。
【0062】レンダ・マネージャ310を通じて、ユー
ザ入力の結果生ずるシーン修正をレンダ・エンジン32
5に供給する。すると、レンダ・マネージャ310は、
レンダ領域175のどの部分をリフレッシュし、必要な
レンダリングを実行しなければならないかについて決定
することができる。好適な実施形態では、既に論じたよ
うに、画像エリアをタイル172に分解する。したがっ
て、レンダ・エンジンは、その場合、タイルの寸法(座
標)および特定のシーン修正の座標から、再度レンダリ
ングしなければならない特定のタイルを判定することが
できる。次いで、レンダ・エンジンは、これらのタイル
172に順次レンダリングを行い、各タイルのレンダリ
ングが完了する毎に、レンダリングしたタイルを定義す
るデータを、レンダ・キャッシュ330に印加する。こ
のタイルにレンダリングを行うプロセスは、ユーザ・イ
ンターフェースの保守(シーン修正を受け入れ、ワイヤ
・フレーム・ビューを更新する等)、およびレンダ・マ
ネージャ310が実行するシーン修正フィルタリング・
プロセスと平行して進める。著者の修正による影響を受
けるタイルのみを識別し、再度レンダリングすることに
よって、レンダリングを更新する速度は更に高まる。例
えば、オブジェクトの表面のテクスチャに変更を加える
場合、いくつかのタイルのみ再度レンダリングすればよ
い場合がある。レンダ・エンジンは、タイルにレンダリ
ングを行いつつ、レンダリングしたタイルをレンダ・キ
ャッシュに連続的に供給する。
【0063】レンダ・エンジン325は、レンダ・キャ
ッシュにコマンドを送って無効のタイルを空白にし、有
効なタイルをレンダ・キャッシュ330に供給して無効
のものと置換するまで、対応する領域に何も表示しない
ようにすることも可能である。あるいは、新しいタイル
を受け取るまで、最後の有効なタイルを適所に残してお
いてもよい。これにより、「古い」バージョンおよび
「新しい」バージョンの比較が改善する。どこかで論じ
たように、この並置は、著者にとって有用な場合があ
る。この機構は、レンダ・オプション(例えば、無効タ
イルの空白化、または更新時の上書き)の中に含ませて
もよい。他の代替案としては、全てのタイルについて再
度レンダリングをする場合のみキャッシュを破棄し、特
定のタイルにレンダリングが必要であると判定した場合
には、タイルを上書きすることがあげられる。
【0064】レンダ・キャッシュ330:このオブジェ
クトは、レンダ・エンジン325がタイルをレンダリン
グした後、レンダリングしたタイルを格納する。また、
レンダ・キャッシュ330は、レンダ・マネージャ32
5またはレンダ・エンジン325からのコマンドに応答
して、その中に格納されている古いタイルを捨てること
も可能である。レンダ・キャッシュ330を空にする
と、レンダ領域を空白にし、それぞれのタイルに有効な
レンダリングが得られるまで、何もオブジェクトを表示
しないようにするという効果がある。
【0065】レンダ・ビュー335:このオブジェクト
は、レンダ領域175のサイズおよび位置を指定するコ
マンドを受け取り、格納し、実施する。このレンダ領域
定義データは、レンダ・エンジン325にも入手可能と
なっており、レンダ・エンジン325はこれを用いて、
レンダリングするタイルを決定することができる。ま
た、レンダ・ビュー・オブジェクト335は、レンダリ
ング・オプション、例えば、サンプリングおよび彩色速
度を格納する。レンダリング速度を更に高めることがで
きるレンダリング・オプションの一例は、レンダリング
の目的のために、全ての光を、面光ではなく点光として
レンダリングするように指定することである。後者の方
が、レンダリングに要する時間は少なくて済む。これら
のオプションは、レンダ・エンジンに供給しなければな
らない場合もある。
【図面の簡単な説明】
【図1】従来技術による従来のコンピュータ・システム
を示す図。
【図2】従来技術によるパスを用いた作業のワークフロ
ーを示す図。
【図3】本発明を用いたパスによる作業のワークフロー
を示す図。
【図4】本発明の1つの可能なオブジェクト指向実現例
に対応するオブジェクトとオブジェクトの関数との間の
データ・フローを示すブロック図。
【符号の説明】
10 3−Dシーン 120a〜120f パス定義 140a〜140f パス定義 172 タイル 305 ユーザ・インターフェース・オブジェクト 310 レンダ・マネージャ 325 レンダ・エンジン 330 レンダ・キャッシュ 335 レンダ・ビュー・オブジェクト 620 パス・コンテナ・オブジェクト 900 パーソナル・コンピュータ 901 キーボード 901 ポインティング・デバイス 906 シリアル・ポート・インターフェース 907 モニタ 908 ビデオ・アダプタ 909 リモート・コンピュータ 910 処理ユニット 912 ローカル・エリア・ネットワーク(LAN) 913 ワイド・エリア・ネットワーク(WAN) 914 ネットワーク・インターフェース 915 モデム 920 システム・メモリ 930 システム・バス 940 リード・オンリ・メモリ(ROM) 950 ランダム・アクセス・メモリ(RAM) 960 基本入出力システム(BIOS) 970 ハード・ディスク・ドライブ 980 磁気ディスク・ドライブ 990 リムーバブル磁気ディスク 991 光ディスク・ドライブ 992 リムーバブル光ディスク 992 ハード・ディスク・ドライブ・インターフェ
ース 993 磁気ディスク・ドライブ・インターフェース 994 光ディスク・ドライブ・インターフェース 996 アプリケーション・プログラム 997 プログラム・モジュール 998 プログラム・データ
───────────────────────────────────────────────────── フロントページの続き (71)出願人 397064117 Metropolitan Techno logy Park,One Park West,Tewksbury,Mass achusetts 01876,Unite d States of America (72)発明者 アレクシス・スミルノフ カナダ国エイチ2ジェイ,ケベック,モン トリオール,セント・ポール・ストリー ト・ウエスト 367,アパートメント 2 (72)発明者 ジャン−マルク・クラトリ フランス共和国75019,パリ,リュー・ド ートプル 25

Claims (24)

    【特許請求の範囲】
  1. 【請求項1】 三次元シーンから二次元シーンを作成す
    る方法であって、 幾何学的形状を含むシーンと、少なくとも1つのオブジ
    ェクトの第1の表面特性定義とを定義することにより、
    前記シーンのレンダリングが、前記第1の表面特性によ
    って少なくとも部分的に決定される、前記少なくとも1
    つのオブジェクトの画像を生成するステップと、 前記定義の結果をコンピュータに格納するステップと、 パス定義を編集し、該編集の結果、前記少なくとも1つ
    のオブジェクトの第2の表面特性定義を含む、パス定義
    を得るステップと、 前記編集の結果をコンピュータに格納するステップと、 前記格納したパス定義に応答して前記シーンのコピーを
    フィルタリングし、前記コピー内の前記第1の表面特性
    を、前記コピー内の前記第2特性と置換すると共に、か
    つ前記フィルタリングするステップの結果のレンダリン
    グが、前記第2の表面特性によって少なくとも部分的に
    決定される、前記少なくとも1つのオブジェクトの画像
    となるようにするステップと、から成ることを特徴とす
    る方法。
  2. 【請求項2】 請求項1記載の方法であって、更に、前
    記フィルタリングするステップの結果をレンダリングす
    るステップと、該レンダリングするステップの結果を格
    納するステップとを含むことを特徴とする方法。
  3. 【請求項3】 請求項1記載の方法であって、更に、前
    記シーンを編集するステップと、前記シーンを編集する
    前記ステップの結果を格納するステップと、前記フィル
    タリングするステップを繰り返すステップとを含むこと
    を特徴とする方法。
  4. 【請求項4】 請求項3記載の方法であって、更に、前
    記フィルタリングするステップを繰り返す前記ステップ
    の結果をレンダリングするステップを含むことを特徴と
    する方法。
  5. 【請求項5】 三次元シーンからのパス画像を作成し、
    それを用いて作業する方法であって、 複数のオブジェクトのシーン幾何学的プロパティおよび
    シーン非幾何学的プロパティを含むシーンを格納し、前
    記シーンのレンダリングによって、前記非幾何学的プロ
    パティによって少なくとも部分的に決定される、前記オ
    ブジェクトの画像を生成するステップと、 複数のパス定義を格納するステップであって、各パス定
    義が、前記オブジェクトの少なくとも1つの、少なくと
    も1つのオーバーライド非幾何学的プロパティを含む、
    ステップと、 前記格納したパス定義の各々を用いて前記シーンの各コ
    ピーにフィルタリングを行い、前記少なくとも1つのオ
    ーバーライド非幾何学的プロパティを用いて、前記各コ
    ピーのレンダリングの外観を決定するようにするステッ
    プと、から成ることを特徴とする方法。
  6. 【請求項6】 請求項5記載の方法において、前記フィ
    ルタリングするステップの結果、前記オーバーライド非
    幾何学的プロパティが、前記各コピーのシーン非幾何学
    的プロパティと入れ替わり、前記シーン非幾何学的プロ
    パティを用いずに、前記各コピーの前記レンダリングの
    外観を決定するようにすることを特徴とする方法。
  7. 【請求項7】 シーンの画像を与える方法であって、 シーン定義データを受け取り、該シーン定義データを格
    納するステップであって、該シーン定義データが、幾何
    学的プロパティおよび非幾何学的プロパティを含む、ス
    テップと、 パス定義データを受け取り、該パス定義データを格納す
    るステップであって、該パス定義データが非幾何学的プ
    ロパティを含む、ステップと、 前記格納したシーン定義データおよび前記格納したパス
    定義データに応答して、前記格納したシーン定義データ
    が定義するシーンのビューにレンダリングを行って画像
    を生成し、前記シーン定義内の非幾何学的プロパティ
    を、前記パス定義内の非幾何学的プロパティで置換する
    ようにするステップと、 前記画像を表示しつつ、前記シーン定義に対する修正を
    受け入れ、該修正を用いて前記シーン定義データを更新
    するステップと、 前記レンダリングを、前記受け入れるステップに応答し
    て更新するステップと、から成ることを特徴とする方
    法。
  8. 【請求項8】 請求項7記載の方法であって、更に、レ
    ンダ−ビュー定義データを受け取り、該レンダ−ビュー
    定義データを格納するステップを含み、前記ビューにレ
    ンダリングを行うステップは、前記レンダ−ビュー定義
    データに応答して実行することを特徴とする方法。
  9. 【請求項9】 請求項7記載の方法において、レンダリ
    ングするステップは、前記受け取るステップに関して非
    同期的に行うことを特徴とする方法。
  10. 【請求項10】 請求項7記載の方法において、 前記パス定義データが、多数の相互に排他的なパス・パ
    ラメータ集合を含み、 前記受け取るステップが、前記パス・パラメータ集合の
    内選択した1つをカレントとする識別を受け取るステッ
    プを含み、 前記レンダリングを行うステップが、前記カレント・パ
    ス・パラメータ集合に応答して前記ビューのレンダリン
    グを行い、前記パス・パラメータ集合の他のものを除外
    するステップを含むことを特徴とする方法。
  11. 【請求項11】 3−Dシーンのオーサリングを行うた
    めのユーザ・インターフェースの生成方法であって、 シーン定義の変更を受け取り、該変更に応答して、格納
    してあるシーン定義を修正するステップであって、前記
    格納してあるシーン定義が、前記3−Dシーンの幾何学
    的パラメータと非幾何学的パラメータとを含む、ステッ
    プと、 各々、前記シーンの少なくとも1つの非幾何学的パラメ
    ータを定義する、多数の所定のパス定義の1つの選択を
    指示するデータを受け取るステップと、 前記多数の所定のパス定義における前記非幾何学的パラ
    メータの少なくともいくつかが、前記格納してあるシー
    ン定義において対応する非幾何学的パラメータに対して
    冗長であり、 前記第1の受け取るステップに応答して、シーンの抽象
    画像を表示するステップと、 前記受け取るステップの双方に応答して、前記シーンの
    レンダリング画像を表示するステップと、から成ること
    を特徴とする方法。
  12. 【請求項12】 オーサリング・ユーザ・インターフェ
    ースを通じて3−Dシーンを修正する毎に、該オーサリ
    ング・ユーザ・インターフェースに表示可能なレンダリ
    ングを繰り返しかつ自動的に生成する方法であって、 各々が前記3−Dシーンのプロパティを定義するパス定
    義を格納するステップと、 前記パス定義の1つをカレントとして選択するステップ
    と、 著者が前記オーサリング・ユーザ・インターフェースに
    入力した、前記3−Dシーンの変更に応答して、前記格
    納してあるパス定義から前記選択するステップにおいて
    選択した1つにしたがって、前記レンダリングに用いる
    プロパティを決定し、前記3−Dシーンのプロパティに
    対応する前記パス定義の前記1つのいずれかのプロパテ
    ィが、前記3−Dシーンの前記プロパティと入れ替わる
    ようにするステップと、 前記判定するステップにおいて判定した、前記入れ替わ
    るプロパティに応答して、前記3−Dシーンのレンダリ
    ングを行うステップと、から成ることを特徴とする方
    法。
  13. 【請求項13】 コンピュータ・システムにおいて3−
    Dシーンのパス画像を生成する方法であって、 前記3−Dシーンのレンダリングを行うことによって得
    られる画像の外観を決定する、3−Dシーン定義プロパ
    ティを格納するステップと、 各々前記3−Dシーンに対応するオーバーライド・プロ
    パティを定義する、パス・データ集合を格納するステッ
    プと、 前記3−Dシーンのレンダリングを行う際に用いる、前
    記パス・データ集合の内選択したものの指示を格納する
    ステップと、 前記パス・データ集合の各々について少なくとも1回、
    前記3−Dシーンの前記プロパティの少なくとも1つの
    対応するプロパティの代わりに、前記パス・データ集合
    の前記各々の前記オーバーライド・プロパティの少なく
    とも1つを用いて、前記3−Dシーンのレンダリングを
    行うことによって、前記パス・データ集合の各々につい
    て、少なくとも1つの画像を生成するステップと、から
    成ることを特徴とする方法。
  14. 【請求項14】 請求項13記載の方法であって、更
    に、前記パス・データ集合の各々について、前記少なく
    とも1つの画像を格納するステップを含むことを特徴と
    する方法。
  15. 【請求項15】 請求項14記載の方法であって、更
    に、前記データ集合の各々について、前記少なくとも1
    つの画像の少なくとも1つを編集するステップを含むこ
    とを特徴とする方法。
  16. 【請求項16】 コンピュータ・システムにおいて、3
    −Dシーンのパス画像を作成し、それを用いて作業を行
    う方法であって、 前記3−Dシーンにレンダリングを行うことによって得
    られる画像の外観を決定する、3−Dシーン定義プロパ
    ティを格納するステップと、 各々前記3−Dシーンに対応するオーバーライド・プロ
    パティを定義する、パス・データ集合を格納するステッ
    プと、 前記パス・データ集合の1つを選択するステップと、 前記選択したパス・データ集合に対して、前記3−Dシ
    ーンのレンダリングを行い、前記パス・データ集合の前
    記各々の前記オーバーライド・プロパティの少なくとも
    1つが、前記3−Dシーンの前記プロパティの少なくと
    も1つの対応するプロパティの代わりに、それから得ら
    れるレンダリング画像を決定するようにするステップ
    と、 前記3−D画像を編集しつつ、前記レンダリングした画
    像を表示するステップと、から成ることを特徴とする方
    法。
  17. 【請求項17】 請求項16記載の方法であって、更
    に、 前記格納したパス・データ集合の少なくとも2つについ
    て、前記3−Dシーンのレンダリングを行うステップ
    と、 これから得られるパス画像を複合するステップと、を含
    むことを特徴とする方法。
  18. 【請求項18】 請求項17記載の方法であって、更
    に、前記複合するステップに先立ち、前記パス画像を編
    集するステップを含むことを特徴とする方法。
  19. 【請求項19】 請求項17記載の方法であって、更
    に、前記3−Dシーンを編集し、同一のパス・データ集
    合を用いて前記レンダリングを行うステップを繰り返す
    ステップを含むことを特徴とする方法。
  20. 【請求項20】 請求項16記載の方法であって、更
    に、前記3−Dシーンを編集し、同一のパス・データ集
    合を用いて前記レンダリングを行うステップを繰り返す
    ステップを含むことを特徴とする方法。
  21. 【請求項21】 コンピュータ上においてユーザ・イン
    ターフェースを発生し、三次元シーンのオーサリングを
    行う方法であって、 メモリ内に3−Dシーンを格納するステップと、 前記3−Dシーンに対する編集を受け取るステップであ
    って、該編集が、ユーザによって適用され、前記3−D
    シーンによって定義するオブジェクトの3−Dプロパテ
    ィに対する修正を含む、ステップと、 前記受け取るステップと実質的に同時であるが、それに
    対して非同期的に、前記3−Dシーンのレンダリング・
    ビューを発生するステップと、 前記レンダリング・ビューは、選択したパラメータ集合
    に応答し、前記パラメータ集合は、前記3−Dシーンに
    関係する1群のパラメータ集合の1つであり、 前記受け取るステップおよび前記発生するステップを繰
    り返すステップと、から成ることを特徴とする方法。
  22. 【請求項22】 請求項21記載の方法であって、更
    に、前記受け取るステップと実質的に同時に、前記レン
    ダリング・ビューを表示するステップを含むことを特徴
    とする方法。
  23. 【請求項23】 請求項22記載の方法において、前記
    パラメータの集合が、前記3−Dシーンにおけるパラメ
    ータを置換するパラメータを含み、前記レンダリング・
    ビューは、前記3−Dシーンの置換されたパラメータに
    よってではなく、前記選択したパラメータの集合のパラ
    メータによって決定するようにしたことを特徴とする方
    法。
  24. 【請求項24】 請求項21記載のステップを実行する
    ための、コンピュータ実行可能命令を有するコンピュー
    タ読み取り可能媒体。
JP11096527A 1998-04-03 1999-04-02 複雑なシ―ンの選択的部分レンダリング自動発生システム Pending JPH11328447A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US8058498P 1998-04-03 1998-04-03
US09/107,993 US6570578B1 (en) 1998-04-03 1998-06-30 System for automatic generation of selective partial renderings of complex scenes
US60/080584 1998-06-30
US09/107993 1998-06-30

Publications (1)

Publication Number Publication Date
JPH11328447A true JPH11328447A (ja) 1999-11-30

Family

ID=26763702

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11096527A Pending JPH11328447A (ja) 1998-04-03 1999-04-02 複雑なシ―ンの選択的部分レンダリング自動発生システム

Country Status (5)

Country Link
US (1) US6570578B1 (ja)
EP (1) EP0947959A3 (ja)
JP (1) JPH11328447A (ja)
AU (1) AU2359999A (ja)
CA (1) CA2267440C (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007522567A (ja) * 2004-02-17 2007-08-09 ウニヴェルズィテート デス ザールランデス 複雑な動的3次元シーンをレイトレーシング法により写真現実的に表示する装置
JP2007531928A (ja) * 2004-03-26 2007-11-08 ピクサー 改良された動的シーン・ディスクリプタの方法と装置
JP2013037691A (ja) * 2011-08-04 2013-02-21 Nvidia Corp 加速構造を構築するためのシステム、方法、及びコンピュータプログラムプロダクト
US9761039B2 (en) 2014-07-22 2017-09-12 Samsung Electronics Co., Ltd. Method and apparatus for hybrid rendering

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3619143B2 (ja) * 1999-11-18 2005-02-09 キヤノン株式会社 画像処理装置およびその方法
US20060036756A1 (en) * 2000-04-28 2006-02-16 Thomas Driemeyer Scalable, multi-user server and method for rendering images from interactively customizable scene information
US6763175B1 (en) * 2000-09-01 2004-07-13 Matrox Electronic Systems, Ltd. Flexible video editing architecture with software video effect filter components
US6763176B1 (en) * 2000-09-01 2004-07-13 Matrox Electronic Systems Ltd. Method and apparatus for real-time video editing using a graphics processor
US6956570B2 (en) * 2001-06-27 2005-10-18 Believe, Inc. Object visibility control for ray tracing
US7161599B2 (en) 2001-10-18 2007-01-09 Microsoft Corporation Multiple-level graphics processing system and method
US7619633B2 (en) 2002-06-27 2009-11-17 Microsoft Corporation Intelligent caching data structure for immediate mode graphics
US7443401B2 (en) * 2001-10-18 2008-10-28 Microsoft Corporation Multiple-level graphics processing with animation interval generation
US6864889B2 (en) * 2001-10-31 2005-03-08 Hewlett-Packard Development Company, L.P. System for previewing a photorealistic rendering of a synthetic scene in real-time
US20030146973A1 (en) * 2001-11-09 2003-08-07 Swift David C 3D stereoscopic enabling methods for a monoscopic application to support 3D stereoscopic imaging
US7009605B2 (en) * 2002-03-20 2006-03-07 Nvidia Corporation System, method and computer program product for generating a shader program
GB2392072B (en) * 2002-08-14 2005-10-19 Autodesk Canada Inc Generating Image Data
US20040145588A1 (en) * 2003-01-27 2004-07-29 Scimed Life Systems, Inc. System and method for reviewing an image in a video sequence using a localized animation window
US7486294B2 (en) 2003-03-27 2009-02-03 Microsoft Corporation Vector graphics element-based model, application programming interface, and markup language
US7088374B2 (en) * 2003-03-27 2006-08-08 Microsoft Corporation System and method for managing visual structure, timing, and animation in a graphics processing system
US7466315B2 (en) 2003-03-27 2008-12-16 Microsoft Corporation Visual and scene graph interfaces
US7417645B2 (en) 2003-03-27 2008-08-26 Microsoft Corporation Markup language and object model for vector graphics
US7511718B2 (en) 2003-10-23 2009-03-31 Microsoft Corporation Media integration layer
US20050248573A1 (en) * 2004-05-10 2005-11-10 Pixar Storing intra-model dependency information
US7064761B2 (en) * 2004-05-10 2006-06-20 Pixar Techniques for animating complex scenes
US7330185B2 (en) * 2004-05-10 2008-02-12 Pixar Techniques for processing complex scenes
US7532212B2 (en) 2004-05-10 2009-05-12 Pixar Techniques for rendering complex scenes
US7280897B2 (en) 2004-05-28 2007-10-09 Lockheed Martin Corporation Intervisibility determination
US7486840B2 (en) * 2004-05-28 2009-02-03 Lockheed Martin Corporation Map image object connectivity
US7492965B2 (en) * 2004-05-28 2009-02-17 Lockheed Martin Corporation Multiple map image projecting and fusing
US8218227B2 (en) 2004-06-23 2012-07-10 Quin Media Arts And Sciences Inc. Sculptural imaging with optical tiles
US8627344B2 (en) * 2004-12-15 2014-01-07 Siebel Systems, Inc. Methods and apparatuses for user interface management
US7535480B2 (en) * 2005-08-24 2009-05-19 Microsoft Corporation Compositing rendering layers
US9349219B2 (en) * 2006-01-09 2016-05-24 Autodesk, Inc. 3D scene object switching system
US8633927B2 (en) * 2006-07-25 2014-01-21 Nvidia Corporation Re-render acceleration of frame with lighting change
TW200823798A (en) * 2006-11-16 2008-06-01 Xengda Technology Co Ltd Computer copy editing method
US8253728B1 (en) * 2008-02-25 2012-08-28 Lucasfilm Entertainment Company Ltd. Reconstituting 3D scenes for retakes
US8370293B2 (en) * 2008-08-21 2013-02-05 Terarecon Inc. Workflow template management for medical image data processing
US9021390B1 (en) * 2010-05-05 2015-04-28 Zynga Inc. Methods and apparatus for optimized pausing of an embedded application to render pop-up window
US9019275B2 (en) 2010-10-01 2015-04-28 Lucid Software, Inc. Manipulating graphical objects
US9563971B2 (en) 2011-09-09 2017-02-07 Microsoft Technology Licensing, Llc Composition system thread
US9342322B2 (en) 2011-09-12 2016-05-17 Microsoft Technology Licensing, Llc System and method for layering using tile-based renderers
US9967549B2 (en) * 2013-03-20 2018-05-08 Mediatek Inc. 3D image capture method with 3D preview of preview images generated by monocular camera and related electronic device thereof
US10403054B2 (en) * 2017-03-31 2019-09-03 Microsoft Technology Licensing, Llc Deconstructing and recombining three-dimensional graphical objects
CN117372583B (zh) * 2023-12-08 2024-04-09 广东咏声动漫股份有限公司 一种动画文件处理方法、系统、电子设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0698259B1 (en) * 1993-08-24 1996-11-06 Taligent, Inc. Object oriented shading
US5561752A (en) * 1994-12-22 1996-10-01 Apple Computer, Inc. Multipass graphics rendering method and apparatus with re-traverse flag

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007522567A (ja) * 2004-02-17 2007-08-09 ウニヴェルズィテート デス ザールランデス 複雑な動的3次元シーンをレイトレーシング法により写真現実的に表示する装置
JP4769732B2 (ja) * 2004-02-17 2011-09-07 ジョーダーン コンサルティング リミテッド ヴイ エルエルシー 複雑な動的3次元シーンをレイトレーシング法により写真現実的に表示する装置
JP2007531928A (ja) * 2004-03-26 2007-11-08 ピクサー 改良された動的シーン・ディスクリプタの方法と装置
JP2013037691A (ja) * 2011-08-04 2013-02-21 Nvidia Corp 加速構造を構築するためのシステム、方法、及びコンピュータプログラムプロダクト
US9761039B2 (en) 2014-07-22 2017-09-12 Samsung Electronics Co., Ltd. Method and apparatus for hybrid rendering

Also Published As

Publication number Publication date
EP0947959A3 (en) 2006-04-26
CA2267440C (en) 2007-09-25
US6570578B1 (en) 2003-05-27
AU2359999A (en) 1999-10-14
EP0947959A2 (en) 1999-10-06
CA2267440A1 (en) 1999-10-03

Similar Documents

Publication Publication Date Title
JPH11328447A (ja) 複雑なシ―ンの選択的部分レンダリング自動発生システム
US6091422A (en) System for editing complex visual data providing a continuously updated rendering
EP0993659B1 (en) A computer graphics system
RU2360290C2 (ru) Интеграция иерархии трехмерной сцены в двумерную систему компоновки изображений
RU2324229C2 (ru) Визуальный и пространственный графические интерфейсы
US8106904B2 (en) Shader program generation system and method
US10372308B2 (en) Predictive material editor
JP4129039B2 (ja) 三次元グラフィックス・レンダリング・システム
JP2002517839A (ja) オブジェクトのルールベースグループを規定し、使用するアニメーションシステムおよび方法
JPH09501786A (ja) オブジェクト指向シェーディング
Döllner et al. Object‐oriented 3D Modelling, Animation and Interaction
CN117974269A (zh) 基于3d引擎的商品配置方法、系统及设备
Fanini et al. Interactive and immersive discovery of diagnostic processes on multi-layered 3D collections on the web: the MuLaX tool
Thorn 3D lighting and materials
JP2003331318A (ja) 物体データ生成装置
Pokorný et al. A 3D Visualization of Zlín in the Eighteen–Nineties Using Virtual Reality
CN121588457A (zh) 游戏特效的渲染方法、装置、设备、存储介质及程序产品
JPH0778243A (ja) 機械操作方法
CN117453097A (zh) 材质实例的生成方法、装置、电子设备及可读存储介质
Debelov et al. One approach to C++ look at DirectDraw and Direct3D
Mech et al. Przemyslaw Prusinkiewicz
Monitor Manual and Reference (63 pages total)
JPH08503324A (ja) オブジェクト指向要素シェイディングとカラーリング

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070612

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070911

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070914

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071212

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080121