JP3949109B2 - 仮想3次元空間におけるリンクされた複数のオブジェクトの階層的ソート - Google Patents

仮想3次元空間におけるリンクされた複数のオブジェクトの階層的ソート Download PDF

Info

Publication number
JP3949109B2
JP3949109B2 JP2003536997A JP2003536997A JP3949109B2 JP 3949109 B2 JP3949109 B2 JP 3949109B2 JP 2003536997 A JP2003536997 A JP 2003536997A JP 2003536997 A JP2003536997 A JP 2003536997A JP 3949109 B2 JP3949109 B2 JP 3949109B2
Authority
JP
Japan
Prior art keywords
image
rendering
objects
visual field
linked
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.)
Expired - Fee Related
Application number
JP2003536997A
Other languages
English (en)
Other versions
JPWO2003034343A1 (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2003034343A1 publication Critical patent/JPWO2003034343A1/ja
Application granted granted Critical
Publication of JP3949109B2 publication Critical patent/JP3949109B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • 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/005Tree description, e.g. octree, quadtree

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)

Description

発明の分野
本発明は、3次元オブジェクトの画像のレンダリングに関し、特に、オブジェクト画像を効率的にレンダリングするために仮想3次元空間におけるリンクされた複数のオブジェクトを階層的にソートすることに関する。
発明の背景
現在、インターネットのホームページにはショッピングモールが設けられている。そのショッピングモールは3次元仮想世界であってもよい。ショッピングモールにおける仮想店舗オブジェクトには3次元の多数の商品オブジェクトが配置される。3次元仮想ショッピングモールの画像は、サーバ・マシンまたはクライアント・マシンにおいて仮想3次元画像表示プログラムを用いて生成され表示される。仮想ショッピングモールにおける複数のオブジェクトの中の1つのオブジェクトは、URLを用いてその中の他のオブジェクトにリンクされていてもよい。
通常の仮想3次元画像表示プログラムは、オブジェクトの3次元形状および配置を表す複数のオブジェクト・データ・セットに従って、仮想3次元空間にそのオブジェクトを配置し、その空間におけるユーザの視野に従ってそのオブジェクトを2次元平面に投影して2次元画像を生成し表示する。ユーザの視点から見て2つのオブジェクトが部分的に重なって見えるときは、遠い1つのオブジェクトの重なり部分が近い別のオブジェクトの後ろに隠れるようにそれぞれの画像を生成しなければならない。また、半透明のオブジェクトが配置されているときには、その半透明のオブジェクトを通してその背後にあるオブジェクトが透けて見えるようにそれぞれの画像を生成しなければならない。
視点から見たオブジェクト間の重なりを適正に処理するためにZバッファ・アルゴリズムが一般的に用いられている。このアルゴリズムは、2次元フレーム・バッファメモリ上に複数のオブジェクトの画像をレンダリング(描画)するときに、オブジェクトを構成要素のポリゴンに分離し、視点に対する複数のオブジェクト・ポリゴンの相対的位置関係を表すZ値をいわゆるZバッファに格納する。2次元フレーム・バッファメモリ上の同じピクセル位置に2つ以上のオブジェクト・ポリゴンのピクセルをレンダリングするときは、そのアルゴリズムは、それらのポリゴンのZ値を比較して視点に最も近いオブジェクト・ポリゴンのピクセルだけが最終的にその位置に格納されるようにする。半透明のオブジェクトの画像をレンダリングするときは、いわゆるアルファ・ブレンディング法が用いられて、その半透明オブジェクトのポリゴンの透明度に従ってその背後に配置された別のオブジェクト・ポリゴンのピクセルの色にその半透明オブジェクト・ポリゴンのピクセルの色を混合した色の値をそのフレーム・バッファメモリ上にレンダリングする。
Zバッファ・アルゴリズムおよびアルファ・ブレンディング法では、半透明のオブジェクトの画像をレンダリングするときに、視点から遠いオブジェクト・ポリゴンから順にレンダリングする必要がある。そのために、レンダリングする前に、いわゆるZソート法を用いて、表示される全てのオブジェクト・ポリゴンについて視点からの距離を決定し、その距離に従ってオブジェクト・ポリゴンをソートする必要がある。
しかし、仮想3次元空間に多数のオブジェクトが配置される場合は、オブジェクト・ポリゴンのソートのために長い時間および多くのメモリ資源が必要になる。そのようなソートはリアルタイム3次元画像表示には望ましくない。
発明者は、リンクされた複数の3次元オブジェクトを階層的にソートすることによってオブジェクト画像が効率的にレンダリングできると認識した。
本発明の目的は、複数の3次元オブジェクトの画像を効率的にレンダリングすることである。
本発明の別の目的は、リンクされた複数の3次元オブジェクトの画像をレンダリングするのに有利な形でそのオブジェクトをソートすることである。
発明の概要
本発明の1つの特徴によれば、情報処理装置は、視野データに従って3次元仮想空間におけるリンクされた複数のオブジェクトを表示する。その情報処理装置に含まれている制御手段は、視野データに従って、オブジェクト・データから複数のオブジェクトの画像を生成して、2次元フレーム上にその生成された画像をレンダリングする。その制御手段は、そのレンダリングのために、複数のオブジェクトの間のリンクを表すリンク・データに従って複数のオブジェクトを階層的にソートし、その階層的なソートによって決定された順序とそのリンク・データとに従って、その複数のオブジェクトの画像および部分画像をレンダリングし、1つのオブジェクトとこの1つのオブジェクトがリンクされる1つ以上の他のオブジェクトとからなるグループについて、そのグループのオブジェクトの画像および部分画像をその視点からの距離に従って順にレンダリングし、1つのオブジェクトの画像とその1つのオブジェクトがリンクされる別のオブジェクトの画像とをレンダリングするとき、その1つのオブジェクトの画像の第1の部分画像のレンダリングの完了後とその1つのオブジェクトの画像の第2の部分画像のレンダリングの開前の間の期間においてその1つのオブジェクトの画像のレンダリングが中断している間に、その別のオブジェクトの画像全体のレンダリングが開始して完了するする。
本発明の別の特徴によれば、情報処理装置は、視野データに従って、オブジェクト・データから複数のオブジェクトの画像を生成して、2次元フレーム上にその生成された画像をレンダリングする制御手段を具えている。その制御手段は、1つのオブジェクトの画像とこの1つのオブジェクトがリンクされる別のオブジェクトの画像とをレンダリングし、その際、その1つのオブジェクトの画像のレンダリングの開始後と終了前の間の期間においてその1つのオブジェクトの画像のレンダリングが中断している間に、その別のオブジェクトの画像全体のレンダリングを開始して完了する。
実施形態において、その制御手段は、その1つのオブジェクトの画像または複数の部分画像と、その別のオブジェクトの画像を、視点からの距離に従って順にレンダリングする。
本発明のさらに別の特徴によれば、オブジェクト・データ処理方法は、制御手段とメモリとを有する情報処理装置において、視野データに従って3次元仮想空間におけるリンクされた複数のオブジェクトを表示するためのものである。その方法は、その制御手段によって、そのメモリに格納されている複数のオブジェクトの間のリンクを表すリンク・データに従って複数のオブジェクトを階層的にソートするステップと;その制御手段によって、視野データに従って、オブジェクト・データから複数のオブジェクトの画像を生成するステップと;その制御手段によって、その階層的なソートによって決定された順序に従って、2次元フレーム上にその生成された画像をレンダリングするステップと、を含む。そのレンダリングするステップは、その階層的なソートによって決定された順序とそのリンク・データとに従って、その複数のオブジェクトの画像および部分画像をレンダリングし、1つのオブジェクトとこの1つのオブジェクトがリンクされる1つ以上の他のオブジェクトとからなるグループについて、そのグループのオブジェクトの画像および部分画像をその視点からの距離に従って順にレンダリングし、1つのオブジェクトの画像とその1つのオブジェクトがリンクされる別のオブジェクトの画像とをレンダリングするとき、その1つのオブジェクトの画像の第1の部分画像のレンダリングの完了後とその1つのオブジェクトの画像の第2の部分画像のレンダリングの開前の間の期間においてその1つのオブジェクトの画像のレンダリングが中断している間に、その別のオブジェクトの画像全体のレンダリングが開始して完了することを含む。
本発明のさらに別の特徴によれば、オブジェクト・データ処理方法は、制御手段とメモリとを有する情報処理装置において、その制御手段によって、その視野データに従って、そのメモリに格納されているオブジェクト・データから複数のオブジェクトの画像を生成するステップと;その制御手段によって、2次元フレーム上にその生成された画像をレンダリングするステップと、を含む。そのレンダリングするステップは、1つのオブジェクトの画像とこの1つのオブジェクトがリンクされる別のオブジェクトの画像とをレンダリングすることを含み、その際、その1つのオブジェクトの画像のレンダリングの開始後と終了前の間の期間においてその1つのオブジェクトの画像のレンダリングが中断している間に、その別のオブジェクトの画像全体のレンダリングを開始して完了する。
実施形態において、これらの方法は、情報処理装置によって実行されるプログラムとして実現される。
本発明によれば、リンクされた複数の3次元オブジェクトを有利な形でソートすることができ、複数の3次元オブジェクトの画像を効率的にレンダリングすることができる。本発明によれば、表示される全てのオブジェクトの全てのポリゴン面をソートする必要がない。
発明の好ましい実施形態
図1は、本発明の実施形態による情報処理装置100の構成を示している。情報処理装置100は、入力装置101、制御器またはプロセッサ103、オブジェクト・データ管理器104、表示装置106、情報蓄積装置107、プログラム・メモリ112、オブジェクト・データ・メモリ113、およびネットワーク50を介してウェブ・サーバ200に接続されたネットワーク・インタフェース127を具えている。
情報処理装置100は、仮想3次元空間に配置されたリンクされた複数の3次元オブジェクトを表示装置106に表示する。
3次元オブジェクトは1つ以上のポリゴン(多角形)面で構成されており、各面は典型的には外面および内面を持っている。曲面は典型的には複数のポリゴン面で表される。
3次元オブジェクトは、1つ以上のポリゴンで構成されていて、3次元仮想空間において、例えば、1つのテキスト文書、1つのテキストおよびグラフィックッスを含む文書、1つの画像、動画像のストリーム、複数の部品で構成される1つの立体画像、またはオーディオ・ストリーム、等の1単位で扱われる任意の情報コンテンツを視覚的に表すものである。
ネットワーク50は、典型的には、インターネット、ローカル・エリア・ネットワーク(LAN)、移動体通信網を含む電話回線網、ケーブルテレビ網、電力線搬送網、および/または光ファイバ網等で構成されている。
制御器103は、CPU、RAM122およびROMを具えている。制御器103は、プログラム・メモリ112に格納されているブラウザ・プログラム等のプログラムに従って動作してブラウザ機能を実現する。制御器103は、そのブラウザ機能が集積回路の形で実装されたプロセッサであってもよい。オブジェクト・データ管理器104は、オブジェクト・データ管理プログラムに従って動作するプロセッサとして実装されていても、またはその機能が集積回路の形で実装されたプロセッサであってもよい。
制御器103は、オブジェクトの表示のためにコンテンツ・データが必要となったときに、ウェブ・サーバ200からネットワーク50およびネットワーク・インタフェース127を介してコンテンツ・データを取込んで、オブジェクト管理器に104に供給する。制御器103は、必要なコンテンツ・データを情報蓄積装置107から取り込んでもよい。オブジェクト管理器104は、取り込んだオブジェクト・データ・セットをオブジェクト・データ・メモリ113に格納して管理する。
入力装置101は、ユーザの操作によるURLおよび視野データのような入力データを制御器103に供給する。制御器103は、視野データを受け取ったときにその視野データを保持し、ユーザの入力データに従って視野データを更新する。
制御器103は、表示画像生成処理において、オブジェクト・データ・メモリ113に格納されたオブジェクト・データ・セットを用いて、視野移動に従って変化するオブジェクト画像をリアルタイムで生成して表示装置106に表示する。
図2は、オブジェクトのオブジェクト・データ・セット30の構成を示している。オブジェクト・データ・セット30は、少なくともオブジェクトの3次元形状を表すデータ31を有する。データ・セット30を有するその現在のオブジェクトが後続の別のオブジェクトにリンクされているときは、オブジェクト・データ・セット30はリンク・データ・リスト40を含んでいる。そのリンクされる別のオブジェクトは現在のオブジェクトに関連付けられた配置を有する。リンク・データ・リスト40は1つ以上のリンク・データ・セット37を含んでいる。リンク・データ・セット37は、別のオブジェクトへのリンクを表すその別のオブジェクトの識別38と、その別のオブジェクトの座標を現在のオブジェクトの座標に変換するための座標変換行列39とを有する。オブジェクト・データ・セット30は複数のオブジェクトにリンクされることもある。従って、オブジェクト・データ・セット30は、示されているように複数のリンク・データ・セットを有していてもよい。
図3は、本発明による、リンクされた複数のオブジェクト・データ・セットによって表されるリンクされた複数のオブジェクトの階層構造を示している。それらのオブジェクトはレンダリングのためにこの階層構造に従ってソートされる。
図3では、開始オブジェクトのオブジェクト・データ・セット301は、リンクされる他のオブジェクトの識別をそれぞれ含んだ3つのリンク・データ・セット211、212および213を有する。その開始オブジェクトは、オブジェクト・データ・セット311、312および313をそれぞれ有する3つの他のオブジェクトにリンクされる。オブジェクト・データ・セット311は3つのリンク・データ・セット221、222および223を有する。オブジェクト・データ・セット311を有するオブジェクトは、オブジェクト・データ・セット321、322および323をそれぞれ有する3つのオブジェクトにリンクされる。オブジェクト・データ・セット312を有するオブジェクトは、同様に、オブジェクト・データ・セット324を有するオブジェクトにリンクされる。オブジェクト・データ・セット313を有するオブジェクトは、オブジェクト・データ・セット325および326をそれぞれ有する2つのオブジェクトにリンクされる。オブジェクト・データ・セット321、323、324および325を有するオブジェクトはさらに他のオブジェクトにリンクされる。オブジェクト・データ・セット322および326を有するオブジェクトは他のオブジェクトにリンクされない。
後で詳しく説明するように、その階層化されたオブジェクトに従って、リンクされた複数のオブジェクトの画像をRAM122のフレーム・メモリ領域上に効率的にレンダリングすることができる。
図4は、3次元ウェブ・ブラウザ・プログラムに従って制御器103によって実行される、オブジェクトの画像を生成してレンダリングするのための概略的フローチャートを示している。
制御器103は、先に、ユーザによって入力されたURLに従って、ネットワーク50を介してまたは情報蓄積装置107から、最初のオブジェクトのオブジェクト・データ・セットとそれに直接的および間接的にリンクする後続の他のオブジェクトのオブジェクト・データ・セットを取り込んで、オブジェクト・データ管理器104を介してオブジェクト・データ・メモリ113に格納する。制御器103は、その後、図4に従ってオブジェクトの画像を生成およびレンダリングする
ステップ402において、制御器103は、入力装置101の例えばマウスによって入力された視点および視野のデータを取得し、そのデータに従って3次元仮想空間に対する視点および視野を移動させる。
図6は、ユーザの視野とオブジェクトの間の幾何学的関係を例示している。この図では、仮想3次元空間に視野71が定義され、情報オブジェクト73が配置されている。視野71に対して固定された視野座標系72が定義されている。また、視野座標系72の原点の位置に視点70が定義されている。視野に対するオブジェクトの幾何学的関係は、例えば、オブジェクトのローカル座標系から視野座標系72への変換行列によって定義できる。
ステップ404において、制御器103は、その視点および視野に従って、オブジェクト・データ・メモリ113に格納されたオブジェクト・データ・セット30から3次元仮想空間における各オブジェクトの配置を決定し、それぞれのオブジェクトの2次元画像を生成してRAM122に格納する。その際、必要なオブジェクト・データ・セットがオブジェクト・データ・メモリ113に格納されていないときは、制御器103は、ネットワーク・インタフェース127を介してまたは情報処理装置107から必要なオブジェクト・データ・セットをオブジェクト・データ・メモリ113に取り込む。
ステップ406において、図5に示されているサブルーチンに従って、制御器103は、その視点および視野に従って、図3に例示された複数のオブジェクトのその生成された各画像をRAM122の2次元フレーム・メモリ領域上にレンダリングする。
図4のフローチャートでは、ステップ404において全てのオブジェクトの画像を生成した後に、ステップ406においてその生成された画像をレンダリングするが、ステップ404をなくして、ステップ406において、レンダリングの順序で各オブジェクトの画像を生成してRAM122に格納しながら、RAM122からその生成された画像を順次取り出してレンダリングしてもよい。
ステップ408において、制御器103は、視野が移動したかどうか、即ちユーザによって視点および視野データが更新されたかどうかを判定する。視野が移動した場合はステップ402に戻る。これによって、視点および視野が移動し続けているときはステップ402〜406が繰り返される。視野が移動していない場合は手順はステップ412に進む。
ステップ412において、制御器103は、所定遅延時間(例えば1秒)の後、ユーザの入力データを受け取ったかどうかを判定する。それが入力データを受け取った場合は、手順はステップ414に進む。それが入力データを受け取らなかった場合は、手順はステップ412に戻る。これによって、制御器103は新しい入力データを受け取るまで待つ。
ステップ414において、制御器103は、その入力データが終了コマンドかどうかを判定する。それが終了コマンドである場合は、手順は図4のルーチンから出る。それが終了コマンドでない場合は、手順はステップ402に戻る。
ステップ402〜414は毎秒30回以上実行され、毎秒60フレームが生成される。
図7A〜7Cは、視点の移動に従って、ズームイン(拡大)におけるオブジェクト画像の表示画面の例を示している。
図7Aに示されているように、仮想3次元空間に配置された長方形オブジェクト601の上に蓋のないボックス611、球613および三角錐615のオブジェクトが配置されている。長方形オブジェクト601は、ボックス611、球613および三角錐615にリンクされている。図7Cに示されているように、ボックス611は2つの球621および622および1つの円柱623を含んでいる。ボックス611は2つの球621および622および1つの円柱623にリンクされている。
図7A〜7Cに示されているように、ボックス611に対してズームインするに従って、より拡大されたボックス611およびその中のオブジェクト621〜623が表示される。
図5は、本発明による、制御器103によって実行される、図4のステップ406におけるオブジェクトの画像のレンダリングのためのサブルーチンの概略的フローチャートを示している。
図7A〜7Cのオブジェクト601およびリンクされる後続のオブジェクト611〜615および621〜623の画像をレンダリングする例を用いて、図5のフローチャートを説明する。
ステップ502において、制御器103は、開始または現在のオブジェクトの画像データ・セットをRAM122から取り出す。その画像データ・セットは、図4のステップ404においてそのオブジェクトのオブジェクト・データ・セット中の3次元形状データ(図2の31)から生成されてRAM122に格納されたものである。制御器103は、図7Aの例では、開始オブジェクトである長方形601のオブジェクト・データ・セット301(図3)の中の3次元形状データから生成された長方形601の画像データ・セットをRAM122から取り出す。
ステップ504において、制御器103は、先に、現在のオブジェクトの1つ以上の面の中で視点から見て奥にある面の前面をレンダリングする。図7Aの例では、制御器103は長方形601の上面をレンダリングする。その長方形の下面はその裏側にあって視点からは見えない。
ステップ506において、制御器103は、現在のオブジェクトのオブジェクト・データ・セットにおける全てのリンク・データ・セットを視点から遠い順にキューに入れる。図7Aの例では、制御器103は、長方形601のオブジェクト・データ・セット301におけるそれぞれ球613、ボックス611および三角錐615に対する3つのリンク・データ・セット213、211および212をこの順にキューに入れる。
ステップ508において、制御器103は、キューの中に、まだレンダリングされていない他のオブジェクトへのリンクを表す残りのリンク・データ・セットがあるかどうかを判定する。それがあると判定された場合は手順はステップ510に進む。残りのリンク・データ・セットがないと判定された場合は、手順はステップ514に進む。図7Aの例では、キュー中にオブジェクト613、611および615へのリンクを表すリンク・データ・セット213、211および212が存在するのでステップ510に進む。
ステップ510において、制御器103は、順番に従ってキューにおける残りのリンク・データ・セットの中の1つを取り出す。図7Aの例では、制御器103は、最初に、球613へのリンクを表すリンク・データ・セット213を取り出す。
ステップ512において、制御器103は、その取り出されたリンク・データ・セットに従ってリンクされるオブジェクトの画像データ・セットをRAM122から取り出してその画像をレンダリングする。その際、そのオブジェクトの視点から遠い面の前面を先にレンダリングし、次いで視点に近い面の前面をレンダリングする。図7Aの例では、制御器103は、球613の遠い半球面の内面は見えないので、視点に近い半球面の外面だけをレンダリングする。
同様に、キュー中の残りのリンク・データ・セットの数の回数だけステップ508〜512が繰り返されて、開始オブジェクトにリンクされる残りのオブジェクトの画像がレンダリングされる。図7Aの例では、ボックス611および三角錐615の画像が順にレンダリングされる。
ステップ514において、制御器103は、開始オブジェクトの面の中で視点に近い面の前面をレンダリングする。図7Aの例では、制御器103は、長方形601は視点に近い面を持っていないのでレンダリングする必要がない。
このようにして、図5のフローチャートに従って、開始オブジェクトの遠い面の前面のレンダリングと近い面の前面のレンダリングの間に、開始オブジェクトがリンクされるオブジェクトの画像がレンダリングされる。開始オブジェクトは、その遠い面と近い面の一方だけ持っていてもよい。
ステップ512において、制御器103は、1つのオブジェクトの画像をレンダリングするとき、そのオブジェクトが別のオブジェクトにリンクされる場合は、その1つのオブジェクトを新たな開始オブジェクトとして、ステップ502〜514のサブルーチンを別に実行する。即ち、ステップ512のサブルーチンは入れ子になっている。それによって、その新たな開始オブジェクトの遠い面の前面のレンダリングと近い面の前面のレンダリングの間に、開始オブジェクトがリンクされる別のオブジェクトの画像がレンダリングされる。
図7Aの例では、制御器103は、ステップ512においてボックス611の画像をレンダリングするとき、ボックス611を開始オブジェクトとしてステップ502〜514を別に実行する。
図8A〜8Eは、本発明による、複数のオブジェクトの画像のレンダリングの手順の例を示している。
図8A〜8Eを参照して、図5のフローチャートに従って、ボックス611を開始オブジェクトとして、ボックス611、球621、円柱623および球622の画像をレンダリングする手順を説明する。
ステップ502において、制御器103は、ボックス611の画像データ・セットをRAM122から取り出す。この画像データ・セットは、図4のステップ404において、図3におけるオブジェクト・データ・セット311の形状データから生成されてRAM122に格納されたものである。前述したように、図4のステップ404を設けないときは、ボックス611の画像は、ステップ502においてレンダリングの前に生成されてRAM122に格納される。
ステップ504において、制御器103は、図8Aに示されているように、ボックス611の奥の3つの面の内面6111、6112および6113をレンダリングする。
ステップ506において、制御器103は、ボックス611のオブジェクト・データ・セット311におけるそれぞれ球621、円柱623および球622へのリンクを表す3つのリンク・データ・セット221、223および222をこの順にキューに入れる。
ステップ508において、制御器103は、最初は、キューの中にまだレンダリングされていないオブジェクトへのリンクを表すリンク・データ・セット221、223および222があると判定し、従って、手順は次のステップ510に進む。
ステップ510において、制御器103は、最初のリンク・データ・セット221をキューから取り出す。
ステップ512において、制御器103は、リンク・データ・セット221によってリンクされる球621の画像データ・セットをRAM122から取り出して、図8Bに示されているように球621の画像をレンダリングする。球621の遠い半球面の内面は見えないので視点に近い半球面の外面だけをレンダリングすればよい。その後、手順はステップ508に戻る。前述したように、図4のステップ404を設けないときは、球621の画像は、ステップ512においてレンダリングの前に生成される。
同様に、円柱623および球622についてステップ508〜512が反復的に実行されて、図8Cおよび8Dに示されているように、円柱623および球622の画像が順にレンダリングされる。
ステップ514において、制御器103は、図8Eに示されているように、ボックス611の近い面の外面6114および6115をレンダリングする。このようにして、ボックス611およびリンクされる球621、円柱623および球622の画像がレンダリングされる。
図5のフローチャートが実行されることによって、図3に示された階層構造に従ってオブジェクトがソートされることは明らかである。
図5のフローチャートでは階層的ソートとレンダリングを並行して行ったが、図3に示されたような階層構造を先に決定し、その階層構造に従ってオブジェクトを視点からの距離に従って遠くから近くへとソートし、そのソートされた順序に従ってオブジェクトの画像をレンダリングしてもよい。その際、リンク・データ・セットに従って、或るオブジェクトが別のオブジェクトにリンクされるとき、その或るオブジェクトの遠い面のレンダリングと近い面のレンダリングの間に別のオブジェクトをレンダリングする。あるいは、遠い面と近い面の双方を有する或るオブジェクトが別のオブジェクトにリンクされるとき、その遠い面と近い面を別のオブジェクトとともにソートしてレンダリングの順序を決定してもよい。後続のオブジェクトにリンクされないオブジェクトは、複数の面を持っていても、通常、ソートのために複数の面に分離する必要はない。
このようにして、1つのオブジェクトがリンクされる後続のオブジェクトの画像が順にレンダリングされる。リンクされた前のオブジェクトの画像がレンダリングされるとき、その前に、その後に、またはそのレンダリングの途中で、リンクされる後続のオブジェクトの画像がレンダリングされる。換言すると、オブジェクト画像は、オブジェクト間のリンクに従って局所的にデプス・ソートされる。
図9Aは、図8Eのオブジェクト611が半透明の場合の表示画像を示している。図9Aにおいて点線は透けて見える線を示している。この場合、ボックス611の面6114および6115がレンダリングされるとき、その背後にある面6111および6112、および球622の近い半球面の外面の色と、その面6114の色とが重なり部分で混合され、その面6111および6113、および球622の近い半球面の外面の色と、その面6115の色とが重なり部分で混合される。
図9Bは、図9Aのオブジェクト611、621、622および623が半透明の場合の表示画像を示している。球621の画像がレンダリングされるとき、その背後にある面6111、6112および6113の色と球621の色とが重なり部分で混合される。円柱623の画像がレンダリングされるとき、その背後にある先にレンダリングされたオブジェクト画像と円柱623の画像とが重なり部分で混合される。球622の画像がレンダリングされるとき、その背後にある先にレンダリングされたオブジェクト画像と球622の画像とが重なり部分で混合される。面6114および6115がレンダリングされるとき、その背後にあるレンダリングされたオブジェクト画像と球622の画像とが重なり部分で混合される。
このようにオブジェクトを階層的にソートすることによってオブジェクトの画像を効率的にレンダリングできる。全てのオブジェクトの全ての面をソートする必要がなくなる。上述の例では、2つのオブジェクトが3次元空間で交差するような複雑な配置はなかった。そのような場合は、各オブジェクトをその交差面において2つのオブジェクト部分に分割して、それを他のオブジェクトとともに階層的にソートすればよい。
以上説明した実施形態は典型例として挙げたに過ぎず、その変形およびバリエーションは当業者にとって明らかであり、当業者であれば本発明の原理および請求の範囲に記載した発明の範囲を逸脱することなく上述の実施形態の種々の変形を行えることは明らかである。
【図面の簡単な説明】
図1は、本発明の実施形態による、3次元オブジェクト・データを処理して表示する情報処理装置の構成を示している。
図2は、オブジェクト・データ・セットの構成を示している。
図3は、本発明による、リンクされた複数のオブジェクト・データ・セットによって表されるリンクされた複数のオブジェクトの階層構造を示している。
図4は、3次元ウェブ・ブラウザ・プログラムに従って制御器によって実行される、オブジェクトの画像を生成してレンダリングするのための概略的フローチャートを示している。
図5は、本発明による、複数のオブジェクトの画像をレンダリングするための概略的フローチャートを示している。
図6は視野とオブジェクトの間の幾何学的関係を例示している。
図7A〜7Cは、視点の移動に従って、ズームインにおけるオブジェクト画像の表示画面の例を示している。
図8A〜8Eは、本発明による、複数のオブジェクトの画像のレンダリングの手順の例を示している。
図9Aは、図8Eにおける1つオブジェクトが半透明である場合の画像を示している。
図9Bは、図9Aにおけるオブジェクトが半透明である場合の画像を示している。

Claims (8)

  1. 視野データに従って3次元仮想空間におけるリンクされた複数のオブジェクトを表示する情報処理装置であって、
    前記視野データは前記仮想空間における視野および視点を規定するものであり、
    オブジェクト・データを格納するメモリと、
    前記視野データに従って、前記メモリに格納されている前記オブジェクト・データから前記複数のオブジェクトの画像を生成して、2次元フレーム上に前記生成された画像をレンダリングする制御手段と、
    を具え、
    前記制御手段は
    前記レンダリングのために、前記複数のオブジェクトの間のリンクを表すリンク・データに従って前記複数のオブジェクトを階層的にソートし、
    前記階層的なソートによって決定された順序と前記リンク・データとに従って、前記複数のオブジェクトの画像および部分画像をレンダリングし、
    1つのオブジェクトとこの1つのオブジェクトがリンクされる1つ以上の他のオブジェクトとからなるグループについて、前記グループのオブジェクトの画像および部分画像を前記視点からの距離に従って順にレンダリングし、
    1つのオブジェクトの画像と前記1つのオブジェクトがリンクされる別のオブジェクトの画像とをレンダリングするとき、前記1つのオブジェクトの画像の第1の部分画像のレンダリングの完了後と前記1つのオブジェクトの画像の第2の部分画像のレンダリングの開前の間の期間において前記1つのオブジェクトの画像のレンダリングが中断している間に、前記別のオブジェクトの画像全体のレンダリングが開始して完了するものであることを特徴とする、
    情報処理装置。
  2. 視野データに従って3次元仮想空間におけるリンクされた複数のオブジェクトを表示する情報処理装置であって、
    前記視野データは前記仮想空間における視点および視野を規定するものであり、
    オブジェクト・データを格納するメモリと、
    前記視野データに従って、前記メモリに格納されている前記オブジェクト・データから前記複数のオブジェクトの画像を生成して、2次元フレーム上に前記生成された画像をレンダリングする制御手段と、
    を具え、
    前記制御手段は、1つのオブジェクトの画像と前記1つのオブジェクトがリンクされる別のオブジェクトの画像とをレンダリングし、その際、前記1つのオブジェクトの画像のレンダリングの開始後と終了前の間の期間において前記1つのオブジェクトの画像のレンダリングが中断している間に、前記別のオブジェクトの画像全体のレンダリングを開始して完了するものであることを特徴とする
    情報処理装置。
  3. 前記制御手段は、前記1つのオブジェクトの画像または複数の部分画像と、前記別のオブジェクトの画像を、前記視点からの距離に従って順にレンダリングするものである、請求項に記載の情報処理装置。
  4. 制御手段とメモリとを有する情報処理装置において使用するための、視野データに従って3次元仮想空間におけるリンクされた複数のオブジェクトを表示するためプログラムであって、
    前記視野データは前記仮想空間における視野および視点を規定するものであり、
    前記制御手段によって、前記メモリに格納されている前記複数のオブジェクトの間のリンクを表すリンク・データに従って前記複数のオブジェクトを階層的にソートするステップと、
    前記制御手段によって、前記視野データに従って、前記オブジェクト・データから前記複数のオブジェクトの画像を生成するステップと、
    前記制御手段によって、前記階層的なソートによって決定された順序に従って、2次元フレーム上に前記生成された画像をレンダリングするステップと、
    を実行させるよう動作可能であり、
    前記レンダリングするステップは、
    前記階層的なソートによって決定された順序と前記リンク・データとに従って、前記複数のオブジェクトの画像および部分画像をレンダリングし、
    1つのオブジェクトとこの1つのオブジェクトがリンクされる1つ以上の他のオブジェクトとからなるグループについて、前記グループのオブジェクトの画像および部分画像を前記視点からの距離に従って順にレンダリングし、
    1つのオブジェクトの画像と前記1つのオブジェクトがリンクされる別のオブジェクトの画像とをレンダリングするとき、前記1つのオブジェクトの画像の第1の部分画像のレンダリングの完了後と前記1つのオブジェクトの画像の第2の部分画像のレンダリングの開前の間の期間において前記1つのオブジェクトの画像のレンダリングが中断している間に、前記別のオブジェクトの画像全体のレンダリングが開始して完了すること
    を含むものであることを特徴とする、
    プログラム。
  5. 制御手段とメモリとを有する情報処理装置において使用するための、視野データに従って3次元仮想空間におけるリンクされた複数のオブジェクトを表示するためプログラムであって、
    前記視野データは前記仮想空間における視野および視点を規定するものであり、
    前記制御手段によって、前記視野データに従って、前記メモリに格納されている前記オブジェクト・データから前記複数のオブジェクトの画像を生成するステップと、
    前記制御手段によって、2次元フレーム上に前記生成された画像をレンダリングするステップと、
    を実行させるよう動作可能であり、
    前記レンダリングするステップは、1つのオブジェクトの画像と前記1つのオブジェクトがリンクされる別のオブジェクトの画像とをレンダリングすることを含み、その際、前記1つのオブジェクトの画像のレンダリングの開始後と終了前の間の期間において前記1つのオブジェクトの画像のレンダリングが中断している間に、前記別のオブジェクトの画像全体のレンダリングを開始して完了することを特徴とする、
    プログラム。
  6. 前記レンダリングするステップは、前記1つのオブジェクトの画像または複数の部分画像と、前記別のオブジェクトの画像を、前記視点からの距離に従って順にレンダリングすることを含むものである、請求項に記載のプログラム。
  7. 制御手段とメモリとを有する情報処理装置において、視野データに従って3次元仮想空間におけるリンクされた複数のオブジェクトを表示するためのオブジェクト・データ処理方法であって、
    前記視野データは前記仮想空間における視野および視点を規定するものであり、
    前記制御手段によって、前記メモリに格納されている前記複数のオブジェクトの間のリンクを表すリンク・データに従って前記複数のオブジェクトを階層的にソートするステップと、
    前記制御手段によって、前記視野データに従って、前記オブジェクト・データから前記複数のオブジェクトの画像を生成するステップと、
    前記制御手段によって、前記階層的なソートによって決定された順序に従って、2次元フレーム上に前記生成された画像をレンダリングするステップと、
    含み、
    前記レンダリングするステップは、
    前記階層的なソートによって決定された順序と前記リンク・データとに従って、前記複数のオブジェクトの画像および部分画像をレンダリングし、
    1つのオブジェクトとこの1つのオブジェクトがリンクされる1つ以上の他のオブジェク トとからなるグループについて、前記グループのオブジェクトの画像および部分画像を前記視点からの距離に従って順にレンダリングし、
    1つのオブジェクトの画像と前記1つのオブジェクトがリンクされる別のオブジェクトの画像とをレンダリングするとき、前記1つのオブジェクトの画像の第1の部分画像のレンダリングの完了後と前記1つのオブジェクトの画像の第2の部分画像のレンダリングの開前の間の期間において前記1つのオブジェクトの画像のレンダリングが中断している間に、前記別のオブジェクトの画像全体のレンダリングが開始して完了することを含むものであることを特徴とする、オブジェクト・データ処理方法。
  8. 制御手段とメモリとを有する情報処理装置において、視野データに従って3次元仮想空間におけるリンクされた複数のオブジェクトを表示するためのオブジェクト・データ処理方法であって、
    前記視野データは前記仮想空間における視野および視点を規定するものであり、
    前記制御手段によって、前記視野データに従って、前記メモリに格納されている前記オブジェクト・データから前記複数のオブジェクトの画像を生成するステップと、
    前記制御手段によって、2次元フレーム上に前記生成された画像をレンダリングするステップと、
    含み
    前記レンダリングするステップは、1つのオブジェクトの画像と前記1つのオブジェクトがリンクされる別のオブジェクトの画像とをレンダリングすることを含み、その際、前記1つのオブジェクトの画像のレンダリングの開始後と終了前の間の期間において前記1つのオブジェクトの画像のレンダリングが中断している間に、前記別のオブジェクトの画像全体のレンダリングを開始して完了することを特徴とする、
    オブジェクト・データ処理方法。
JP2003536997A 2001-10-15 2001-10-15 仮想3次元空間におけるリンクされた複数のオブジェクトの階層的ソート Expired - Fee Related JP3949109B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2001/009052 WO2003034343A1 (fr) 2001-10-15 2001-10-15 Tri hierarchique d'objets lies dans un espace tridimensionnel virtuel

Publications (2)

Publication Number Publication Date
JPWO2003034343A1 JPWO2003034343A1 (ja) 2005-02-03
JP3949109B2 true JP3949109B2 (ja) 2007-07-25

Family

ID=11737834

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003536997A Expired - Fee Related JP3949109B2 (ja) 2001-10-15 2001-10-15 仮想3次元空間におけるリンクされた複数のオブジェクトの階層的ソート

Country Status (5)

Country Link
US (1) US7142207B2 (ja)
EP (1) EP1437687B1 (ja)
JP (1) JP3949109B2 (ja)
DE (1) DE60136498D1 (ja)
WO (1) WO2003034343A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4015644B2 (ja) * 2004-05-31 2007-11-28 株式会社ソニー・コンピュータエンタテインメント 画像処理装置及び画像処理方法
US8633927B2 (en) 2006-07-25 2014-01-21 Nvidia Corporation Re-render acceleration of frame with lighting change
US20090091564A1 (en) * 2007-10-03 2009-04-09 Raju Thevan System and method for rendering electronic documents having overlapping primitives
US8044973B2 (en) * 2008-01-18 2011-10-25 Autodesk, Inc. Auto sorting of geometry based on graphic styles
US10290134B2 (en) * 2016-06-01 2019-05-14 Adobe Inc. Coverage based approach to image rendering using opacity values
CN111476870B (zh) * 2020-02-29 2022-08-30 新华三大数据技术有限公司 一种对象渲染方法和装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8828342D0 (en) * 1988-12-05 1989-01-05 Rediffusion Simulation Ltd Image generator
JPH0371277A (ja) * 1989-08-10 1991-03-27 Daikin Ind Ltd サーフェス・モデル描画方法およびその装置
JPH0535883A (ja) 1991-07-30 1993-02-12 Matsushita Electric Ind Co Ltd 三次元画像生成方法
JPH05174123A (ja) 1991-12-20 1993-07-13 Fujitsu Ltd 描画装置
JP2748798B2 (ja) 1992-10-07 1998-05-13 日本電気株式会社 3次元画像生成装置
JP2807608B2 (ja) 1992-12-29 1998-10-08 株式会社ナムコ ソーティング処理装置、これを用いた画像合成装置及びソーティング処理方法
EP0612031A3 (en) * 1993-02-15 1995-01-04 Canon Kk Image processing.
DE69523493D1 (de) * 1994-03-01 2001-12-06 Sega Enterprises Kk Verfahren zur Sortierung von Polygondaten, Videospielmaschine zu dessen Anwendung und Rechnerprogramm um dieses Verfahren auszuführen
US5977977A (en) * 1995-08-04 1999-11-02 Microsoft Corporation Method and system for multi-pass rendering
US5864342A (en) * 1995-08-04 1999-01-26 Microsoft Corporation Method and system for rendering graphical objects to image chunks
JPH09305791A (ja) * 1996-05-13 1997-11-28 Nec Corp 立体画像生成装置および立体画像生成方法
US6023279A (en) * 1997-01-09 2000-02-08 The Boeing Company Method and apparatus for rapidly rendering computer generated images of complex structures

Also Published As

Publication number Publication date
EP1437687A4 (en) 2007-05-09
EP1437687A1 (en) 2004-07-14
EP1437687B1 (en) 2008-11-05
US20040183797A1 (en) 2004-09-23
JPWO2003034343A1 (ja) 2005-02-03
US7142207B2 (en) 2006-11-28
WO2003034343A1 (fr) 2003-04-24
DE60136498D1 (de) 2008-12-18

Similar Documents

Publication Publication Date Title
CN111125347B (zh) 一种基于unity3d的知识图谱3D可视化方法
EP1290642B1 (en) Method for interactive multi-user customizable web data retrieval and rendering
US6222551B1 (en) Methods and apparatus for providing 3D viewpoint selection in a server/client arrangement
US6867787B1 (en) Character generator and character generating method
US20020176636A1 (en) Method and system for displaying visual content in a virtual three-dimensional space
JP6448839B1 (ja) 画像生成装置、画像生成器、画像識別器、画像生成プログラム、及び、画像生成方法
GB2448233A (en) Producing Image Data Representing Retail Packages
CN112288665A (zh) 图像融合的方法、装置、存储介质及电子设备
US8698830B2 (en) Image processing apparatus and method for texture-mapping an image onto a computer graphics image
US20210407125A1 (en) Object recognition neural network for amodal center prediction
CN116485973A (zh) 虚拟对象的材质生成方法、电子设备和存储介质
JP3949109B2 (ja) 仮想3次元空間におけるリンクされた複数のオブジェクトの階層的ソート
CN107589989A (zh) 基于安卓平台的显示装置及其图像显示方法
US8669996B2 (en) Image processing device and image processing method
JP2003115055A (ja) 画像生成装置
CN114779948B (zh) 基于面部识别的动画人物即时交互控制方法、装置及设备
JP2003168130A (ja) リアルタイムで合成シーンのフォトリアルなレンダリングをプレビューするための方法
JPH1185432A (ja) ウィンドウ表示装置
CN115311395A (zh) 三维场景渲染方法、装置及设备
JP3501479B2 (ja) 画像処理装置
CN117437342B (zh) 一种三维场景渲染方法和存储介质
JP2020013390A (ja) 情報処理装置、情報処理プログラム及び情報処理方法
JPH05342368A (ja) 3次元画像生成方法及び装置
JP3453410B2 (ja) 画像処理装置及びその方法
JP2002024847A (ja) 画像生成装置、画像生成方法及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070123

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070320

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: 20070417

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070417

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110427

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110427

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120427

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130427

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140427

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees