JP4051484B2 - Web3D画像表示システム - Google Patents

Web3D画像表示システム Download PDF

Info

Publication number
JP4051484B2
JP4051484B2 JP2003536999A JP2003536999A JP4051484B2 JP 4051484 B2 JP4051484 B2 JP 4051484B2 JP 2003536999 A JP2003536999 A JP 2003536999A JP 2003536999 A JP2003536999 A JP 2003536999A JP 4051484 B2 JP4051484 B2 JP 4051484B2
Authority
JP
Japan
Prior art keywords
scene
applet
file
information
web browser
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
JP2003536999A
Other languages
English (en)
Other versions
JPWO2003034345A1 (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.)
Yappa Corp
Original Assignee
Yappa 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 Yappa Corp filed Critical Yappa Corp
Publication of JPWO2003034345A1 publication Critical patent/JPWO2003034345A1/ja
Application granted granted Critical
Publication of JP4051484B2 publication Critical patent/JP4051484B2/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Image Generation (AREA)

Description

本発明は、Webブラウザによる双方向型のリアルタイム3D画像の表示システムに関し、特に、Webブラウザが特別なビューアをプラグインする必要が無く、また、サーバーからWebブラウザへダウンロードされる3D画像ファイルを小さくすることで、ブローバンドに頼る必要が無く、通常のインターネット回線でも伝送が可能なインタラクティブな操作を可能とするWeb3D画像表示システムに関するものである。
従来のWebを介した3D(三次元)画像表示システムとしては、VRMLブラウザが知られている。VRML(Virtual Reality Modeling Language)は、Web用に作られた3次元グラフィックス記述言語で、通常のテキストファイルファイルである。VRMLブラウザは、このVRMLファイルを直接読込み表示するように構成したWebブラウザで、Live3D(商品名)などといった特別な3Dビューアをプラグインすることで3D画像表示をするようにしたものである。
しかし、VRMLブラウザは、特別な3Dビューアをプラグインする必要があり、ユーザー自身の操作によって提供サイトからプラグインをダウンロードしなければならないという利便性の問題だけでなく、VRMLブラウザにおいてユーザーとのインタラクティビティを実現する3Dシーンのファイルを作成する場合も、非常に多くの煩雑な手作業を必要とし、作業効率が著しく悪いという問題があった。
この煩雑な作業を改善するものとして、国際公開第98/33150号(WO98/33150)が開示されている。WO98/33150は、インタラクティブな3Dワールドを実現するために、VRMLとJava(R)言語とを結び付けるためのエキスパートツールである。
しかし、WO98/33150は、インタラクティブな3Dワールドを実現するための開発ツールを提供するものではあるが、VRMLブラウザの使用を前提としたものであり、VRMLブラウザは3Dシーン情報をダウンロードする際に、サーバーから3D画像ファイル等をそのままダウンロードしていることには変わらず、ダウンロードに膨大な時間を要し、ブロードバンドを利用しても完全にユーザーの満足が得られる伝送スピードは難しく、このような背景がインターネット画像の3D化を阻害していたという問題があった。
そこで、本発明は、Webブラウザには特別な3Dビューアをインストールする必要が無く、様々な装置に装着されたWebブラウザに対応し、サーバーから3D画像ファイルを高速にダウンロードして、Webブラウザ上でインタラクティブな3D画像表示を可能にするWeb3D画像表示システムを提供することを目的としている。
上記目的を達成するため、請求項1に記載の発明は、サーバーから3D画像ファイルをダウンロードし、Webブラウザ上で3D画像を表示するコンピュータシステムであって、VRML等のWeb用に作られた3次元グラフィックス記述言語で記述されたWeb3Dファイルから取出された3Dシーン情報を基に編集・生成し、編集・生成して得られた3Dシーン情報の3D圧縮ファイルとリアルタイム3Dレンダリング及びモーションアルゴリズムを実行して該3Dシーンを表示するための3Dアプレットとを保持するサーバーと、前記3Dシーンを表示するための前記3Dアプレット及び前記3D圧縮ファイルをダウンロードして該3Dシーンを表示するWebブラウザとを備え、前記Webブラウザは、前記サーバーとのコミュニケーションにより該サーバーに前記3Dアプレットを要求してダウンロードする3Dアプレット要求手段と、前記3Dアプレットを実行して前記サーバーに前記3D圧縮ファイルを要求しダウンロードする3D圧縮ファイル要求手段と、シーン・バックグラウンド・イメージ、シェイプ・テクスチャ及びアプレット・ツールバー等のオプション情報を前記サーバーに要求してダウンロードするオプション情報要求手段と、ダウンロードを完了して全ての情報を受け取った後、前記サーバーを介さずにWebブラウザ単独で前記3Dアプレットを実行する3Dアプレット実行手段と、前記3Dアプレット実行手段によりリアルタイム3Dレンダリング及びモーションアルゴリズムをWebブラウザ単独で実行し継続して3Dシーンの表示を行う3Dシーン表示手段と、前記3Dシーンを表示すると共に、利用者とのインタラクティビィティを可能にするインタラクティブ表示処理手段とを有することを特徴としている。
また、請求項2に記載の発明は、記憶装置に保存された3D画像ファイルをロードし、Webブラウザ上で3D画像を表示するコンピュータシステムであって、各種の3Dモデリングソフトウェアプログラムを使用して3Dオブジェクトを生成し、生成されたオブジェクトまたは3Dシーン全体をVRML等のWeb用に作られた3次元グラフィックス記述言語で記述されたファイルフォーマットに変換するWeb3Dファイル作成手段と、作成された前記Web3Dファイルを基に3Dシーンのカスタマイズを行い、前記Webブラウザ上で3Dシーンを表示するための情報を付与する3Dシーンカスタマイズ手段と、前記3Dシーンカスタマイズ手段で得られた3Dシーン情報を圧縮して3D圧縮ファイルを生成する3D圧縮ファイル生成手段と、前記3D圧縮ファイルの3Dシーン情報を基に前記Webブラウザ上でリアルタイム3Dレンダリング及びモーションアルゴリズムを実行して3Dシーンを表示するための3Dアプレットを生成する3Dアプレット生成手段と、前記3Dアプレットを呼び出すアプレット・タグが含まれるハイパーテキストのWebページを作成するWebページ作成手段と、3Dシーンの表示に必要な前記3D圧縮ファイル、前記3Dアプレット、前記Webページ、テクスチャ・ファイル、及びオプションのツールバー・ファイルを記憶装置に保存する3D情報保存手段と、Webブラウザによって、前記記憶装置に保存された前記3Dアプレットを要求し、該記憶装置に保存された3D情報ファイルをロードして該3Dアプレットを実行する3Dアプレット実行手段と、前記3Dアプレットの実行により利用者とのインタラクティブな3Dシーンの表示を行うインタラクティブ表示処理手段とを備えることを特徴としている。
また、請求項3に記載の発明は、前記インタラクティブ表示処理手段が、ロード済みのツールバー及びシーンオブジェクトの移動・変更の操作を行うためのキーボード・マウス等によるユーザーイベント入力を前記3Dアプレットに受け渡して実行することにより、Webブラウザ単独で3Dシーンの編集・加工操作を可能にすることを特徴としている。
また、請求項4に記載の発明は、前記Webブラウザが前記サーバーから前記3Dアプレットをダウンロードして3Dシーンを表示する際に、前記サーバー自身のドメインと前記3Dアプレットに埋込まれたドメイン情報とを照合するライセンス情報処理手段を備えたことを特徴としている。
また、請求項5に記載の発明は、前記2つのドメインを照合し、ドメインが異なる場合は3Dシーンの描画領域内にライセンスマークを表示して警告するようにしたことを特徴としている。
また、請求項6に記載の発明は、前記3Dアプレットが、複数のアプレット・クラスで構成され、少なくとも形状、座標変換、ライト、カメラを含むシーン要素の各クラスと、ワイヤフレーム、フラット・シェーディング、グーロー・シェーディングを含むシェーダー・クラスと、3D画像を表示するための各種コア・クラスとから成る各クラス内から前記3Dシーンの表示に必要な当該クラスが選択され一つの圧縮ファイルとして保存されることを特徴としている。
また、請求項7に記載の発明は、前記3Dアプレットが、Webページに記述されるスクリプト・コードによって利用者とのインタラクティブ操作を可能にする独自のスクリプト・インターフェイスを有し、前記スクリプト・インターフェイスが、利用者とのインタラクティブ操作が可能な3D画像を表示するために、少なくともオブジェクト、形状、座標、カメラ、アニメーション、画像表示、及びユーザーインターフェイスに関する情報を含むことを特徴としている。
また、請求項に記載の発明は、前記3D圧縮ファイルが、前記3Dアプレットから呼び出される少なくとも形状、座標変換、ライト、カメラの情報を含む3Dシーン情報から成り、バイナリデータとして一つのファイルに保存されることを特徴としている。
本発明によれば、Webブラウザにより3D画像を表示する双方向型の3D画像表示システムにおいて、各種既存の3Dモデリングソフトウェアプログラムにより生成されたVRML等の標準のWeb3Dファイルから3Dシーン情報を取出し、3D圧縮ファイルを編集・加工・生成してWebサーバーに保存し、Webサーバーから3Dアプレットと3D圧縮ファイルをダウンロードしてWebブラウザのJava(R)VM(仮想マシン)上で3Dシーンを表示するもので、全ての情報を受け取った後、Webサーバーを介さずにWebブラウザ単独で3Dアプレット実行し継続して3Dシーンの表示を行い、ユーザーとのインタラクティビィティを可能にしているので、特別のビューアをプラグインする必要が無く、ブロードバンド回線を使用しなくても3Dシーンのスムースな表示ができ、Webブラウザ単独で3Dシーンの編集・加工操作が可能になるという効果がある。さらに、ライセンスマークの表示により不正使用に対する抑止効果が期待できる。
以下、本発明の実施の形態について図を参照して説明する。
図1は、本発明の、第1の実施の形態に係るWeb3D画像表示システムの伝送手順を示す図である。
図1において、6は特別な3Dサーバーでは無い標準的な通常のWebサーバーであり、2は特別な3Dビューアをプラグインしなくても3D表示ができる通常のWebブラウザである。
なお、Webサーバー6及びWebブラウザ2は市販のPC(パーソナルコンピュータ)やワークステーションに実装されて動作するもので、PCやワークステーションは、CPU(中央制御装置)、メモリやハードディスク等の記憶装置、画像やテキスト等を表示する表示装置、キーボードやマウス等の入力装置、及び通信回線との入出力装置等を備えた一般的に知られているコンピュータ装置であり、これらの構成図面及び説明は省略する。
Webサーバー6は3D圧縮ファイルである3DAファイルと、コントロール用の3DAアプレットを保持している。ここで、3DAの「A」はAnywhereの頭文字を取ったもので、「特別」のに対して「通常の何処にでもある」という意味を持たせたもので、本発明の3D圧縮ファイルと3Dアプレットには3Dの後にAを付して「3DA」と記述するものとする。
また、3DA(3D圧縮)ファイルは、3Dグラフィック記述言語の記述フォーマットであるVRMLファイル(Web3Dファイル)を入力ツールとして使用し、VRMLファイルの3Dワールド、3Dシェイプ(形状定義)に関する記述を用いて、3DAアプレットがインタラクティブ(双方向性)3Dシーンを表示するために必要な情報を有する独自のファイルとして作成するものである。
VRMLファイルは圧縮ファイルでは無く、通常のテキストファイルであり、3Dシーンの表示には場合によっては必要が無い情報を含み、逆に、インタラクティブな3Dシーンを実現するためには追加したい情報が不足しているので、単に3Dシーン情報をインポートするためにのみ使用して3DAファイルを作成している。この本発明の3DAファイルには3DAアプレットによって3Dシーンを表示するために必要な情報だけが収納されていて、3DAファイル及び3DAアプレット等のファイルは、通常のZIP圧縮により圧縮されてWebサーバー6に保持される。
一方、後述するように、3DAアプレットは、リアルタイム3Dレンダリングやモーションアルゴリズムを実行する小さなJava(R)アプリケーションの集まりであって、3DAアプレット・タグを含むWebページをWebブラウザ2から見た時、Webブラウザ2の条件によって、必要なアプレットが自動的にダウンロードされる。これはJava(R)が使用可能な状態になっているWebブラウザ2であれば自動的に行われるもので、こうして一度ダウンロードされれば3DAアプレットはWebブラウザ2で実行されて、Webサーバー6に3DAファイルの全シーンの情報を要求し、3Dシーンを描写(レンダリング)し動かすためのグラフィック・アルゴリズムが使用される。これは、一度、Webブラウザ2の3DAアプレットが全てのシーンのデータを受け取ってしまえば、もうWebサーバー6とのやり取りは必要ないということを意味している。
このように、グラフィックの全ての動きや、ユーザーとのインタラクティブ・レスポンスは、Webブラウザ2側でのみ行われるために、3D画像データの伝送にブロードバンドを使用する必要は無くなってしまう。これを可能にしたのは、3DAファイルや3DAアプレットのサイズが最小限に抑えられていて、3DAアプレット自体はJava(R)クラスファイルで圧縮され、Webブラウザ2によって自動的に開かれるようになっており、そのサイズは略100kB(バイト)以下に抑えられ、3DAファイルのサイズについても可能な限りシーン情報を圧縮し、最小限の情報伝送レートで済むようにしていることによるものである。ちなみに、平均的なアニメーションファイルでは優に1MBを超えてしまうようなデータ量でも、3DAファイルに圧縮されたデータ量は100kB程度にしかならず、そのサイズは約1/10で済む。
次に、図1に示すシステムのリアルタイム3D画像表示処理について説明する。
図1は、Webブラウザ2(クライアント)とWebサーバー6の間のHTTPコミュニケーションを通じて行われる伝送手順(インタラクション)を示した図であり、3DAアプレットの実行前、実行後におけるブラウザ・サーバー間のコミュニケーションを表したものである。
先ず、3DA処理プログラムに従って、初期化段階を経て(S100)、3DA処理プグラムを実行する(S101)ために、Webサーバー6とWebブラウザ2間のHTTPコミュニケーションが開始される(S102)。
Webブラウザ2から、3DAアプレットを含むWebサーバー6のWebページがロードされて3DAアプレットの要求を行う(S103)。
3DAアプレットがWebブラウザ2側にダウンロードされる(S104)。
続いて、Webブラウザ2側で3DAアプレットが実行され、3DAファイルの要求が行われる(S105)。
Webサーバー6よりWebブラウザ2へ、3DAファイルがダウンロードされる(S106)。続いて、オプションとして、シーン・バックグラウンド・イメージ、シェイプ・テクスチャ、アプレット・ツールバー等の編集ツールを要求する(S107)。ここで、シーン・バックグラウンド・イメージは、シーンの背景色であり、例えば、この明暗変更や、シェイプ・テクスチャによる3Dオブジェクトの質感の貼り替え、アプレット・ツールバーに収容されたツール・ボタの移動、回転、拡大・縮小による3Dオブジェクトのシーンのレンダリング(描写)、レンダリング・タイプの選択、と言ったユーザーが操作できる編集ツールバー・メニューが用意されている。
オプションのバック・グラウンド・イメージ、シェイプ・テクスチャ、アプレット・ツールバーがWebブラウザ2にダウンロードされる(S108)。
更に、オプションとして、この他に置換え用の3DAファイルや、他の3DAファイルからのシェイプの要求があり、それぞれに対するダウンロード・レスポンスは、Webブラウザ2のコンピュータで実行されるHTMLファイルに記述されたJava(R)スクリプト・コードに則して行われる(S109)。
次に、3DAアプレット、3DAファイル、オプション等のダウンロードが完了したら、Webブラウザ2は後述する3DAアプレット内から必要なアプレット・クラスを引き出し実行することによって、リアルタイム3Dレンダリング及びモーションアルゴリズムが実行される(S110)。
これによって3DAアプレットによる3Dシーンの表示が行われ、ユーザーとのインタラクティビティを可能にする(S111)。ユーザーは、バック・グラウンド・イメージ、シェイブ・テクスチャ等を、アプレット・ツールバーなどのインタラクティブ表示処理手段により、ラスター表示の3D画像を作成し、自由に3Dシーンのインタラクティブな編集・加工操作を行うことができる。
このように、3Dシーンの表示に必要な3DAファイル等のダウンロードが完了すると、全ての情報がWebブラウザ2側に移り、3DAアプレットはWebサーバー6を必要とせずにWebブラウザ2上で実行を継続できる(S112)。
図2は、本発明の、第2の実施の形態に係るWeb3D画像表示システムの処理手順を示す図である。
図2に示す第2の実施の形態は、第1の実施の形態がサーバー・ブラウザ間のコミュニケーションを基に構成されているものであるのに対し、3DAファイルや3DAアプレットの生成手段である開発ツール(3DAデザイナーと呼称する)をコンピュータ内に実装し、同一コンピュータ内に実装されている記憶装置から3DAファイルや3DAアプレットを呼び出しWebブラウザで実行するものである。
なお、Webブラウザ2や3DAデザイナー(図示せず)は市販のPC(パーソナルコンピュータ)やワークステーションに実装されて動作するもので、PCやワークステーションを構成するCPU(中央制御装置)、メモリやハードディスク等の記憶装置、画像やテキスト等を表示する表示装置、キーボードやマウス等の入力装置、及びその他の入出力装置等に関する説明及びその構成図面は省略する。
また、第2の実施の形態では市販されている既存のモデリングソフトウェアプログラム、例えば、「3ds(商品名)」などを使用して3Dオブジェクトを作成し、VRMLファイルに変換した後3DAファイルを生成して、3D表示を行う方法を示しているが、本発明は、「3ds」に限らず他の3Dソフトウェアプログラムによる作成したオブジェクトも吸収可能である。
次に、図2を参照して3DAデザイナーの動作とWebブラウザ2での表示処理について説明する。
先ず、市販されている既存のモデリングソフトウェアプログラムを使用して、3Dオブジェクトが作成される(S200)。
例えば、「3ds」を用い、生成した3Dオブジェクトに対し、モーション、カメラ、ライティング、マテリアル等のモディファイ処理を行う。
ここでは、既存のモデリングソフトウェアで生成した3Dオブジェクトから、オブジェクトまたはシーン全体がVRMLフォーマットにエクスポートされる(S201)。
このVRMLファイルが3DAデザイナーへインポートされて(S202)、3Dシーンのカスタマイズが行われ、Webページ上での3Dシーンの表示方法に関する情報(3DAアプレット対応情報)が付与される(S204)。
VRMLファイルからは、ポリゴンの頂点列、面情報、色情報、及び各面に貼り付ける画像情報等のオブジェクトの情報と、カメラ、ライト等のシーン情報と、各オブジェクトのアニメーション情報などが3DAデザイナーに取り込まれる。
3Dシーンのカスタマイズとしては、シェーディング(陰影付け)等のオブジェクトの情報と、カメラ、ライトの位置等のシーン情報と、各オブジェクトのアニメーションの編集、名前付け等のアニメーション情報と、背景画像、画面サイズ、その他シーン属性等の表示情報等の設定が可能である。
3Dシーンの表示に必要な各3Dシーン情報はバイナリデータ形式にされ、これら全ての3Dシーン情報は圧縮処理(ZIP等)されて、一つの圧縮3DAフアィルとして記憶装置(図示せず)に保存される(S205)。
3DAデザイナーは、Webブラウザ2上のインタラクティブな3Dシーン表示のためのツールバー・ファイルを生成し、3DAアプレットを呼び出すアプレット・タグが含まれている新規Webページ(HTML文書)を自動的に生成する(S206)。
更に、そのHTML文書に3DAアプレットにアクセスするための後述するJava(R)スクリプト・コードを追加して動的な3DAシーンの変更を可能にし、オペレション及びインタラクティビティの向上を図ることも可能である(S208)。
Java(R)アプレットだけでも、インタラクティブな操作は可能であるが、Java(R)スクリプト・コードにより、ほぼ全てのオブジェクト、シーンアニメーション、表示情報の属性の変更・再定義が可能となっており、HTMLコントロールとの連携情報を記述することで、より複雑なインタラクティブ操作を実現するWebページを作成することが可能である。
このようにして作成された3Dシーンの表示に必要な全てのファイルを、記憶装置に保存する(S209)。それらのファイルに含まれるものは、3DAアプレットを呼び出すアプレット・タグを持つWebページ(HTML文書)、オプションのツールバー・ファイル、テクスチャ・イメージ、3DAシーンファイル、及び3DAアプレット自身である。
3DAアプレットは、3Dシーンのカスタマイズの際に設定された各種の3Dシーン情報を呼び出しアプレット処理するために必要な各種のアプレット・クラス・ファイルをひとまとめにしたもので、一つの3DAアプレットファイルとして通常のZIP圧縮により圧縮して記憶装置に保存される。
このようにして記憶装置に保存された3DAアプレット・タグを含むHTML文書は、Webブラウザ2によって呼び出され、Webブラウザ2上に3DAアプレットがロードされ実行される(S210)。
3DAアプレットが実行されると、インタラクティブ3Dシーンが表示され、3Dシーンの表示処理が継続される(S211)。
次に、本発明の3DAアプレットの具体的な構造について、図4を参照して説明する。
図4に示すように、3DAアプレットは、3Dオブジェクトの描写(レンダリング)と動きで構成されるシーン情報を表しており、3Dシーンをコントロールする各コア・クラスを有している。全てのシーン情報は常に、IdObject30クラスに継承する全てのシーン要素を含んだCScene36オブジェクトの中に保存されており、3Dシーンの描写はCScene36の描写方法によって遂行される。
また、キーボード、マウス等による全てのユーザーイベントは、CController59クラスへと導かれる。例えば、3DAアプレットが既に実行されている時に、ユーザーイベントの使用により情報が3DAアプレットへ受け渡され、その時CController59クラスは、現在選択されているIdObject30の属性を変化させる。例えば、マウスの動きが回転にセットされている場合にマウスを動かすと、現在選択されているCTransform32クラスのOrientation属性を変化させるという処理となる。
また、CShape31クラスは3Dシーン上の実際の3Dオブジェクトを表し、その属性にはスクリーン上に3Dオブジェクトを描くために必要な全ての情報が含まれている。そして全てのCShape31クラスは、隣のCTransform32へのリファレンスを含んでいる。
CTransform32はCShape31クラスの位置情報を持ち、CShape31クラスを3Dシーン上で位置付けるのに使用される。このような1シーンの中の各オブジェクト情報とその位置情報を基にレンダリング(描写)が行われるが、シェイプ(形状)を描く時にはそのクラスをレンダリングするためにI3dObject30クラスが使用される。13dObject30インターフェイスを実現する全てのクラス(例えば、CTextureMap45クラス=質感の実現等)は、スクリーン上で描写することができる。
また、Clipper57クラスは、あるシェイプをスクリーン上にラスター表示するために、シェーダー・クラスI3dObject40クラスと共に使用される。
ツールバー中のツール・ボタンに関する情報は、アプレットモジュールの中に保存されている。
ちなみにツールバー情報は、例えば、オブジェクトを選択、オブジェクトを移動、オブジェクトを回転、オブジェクトを拡大・縮小、シーンをレンダリングする、レンダリング・タイプを選択する、…、等と言った通常メニューと考えれば良い。
次に、図4のアプレット・クラスの構造に関して(a)〜(c)の各セクションに分けて説明する。
図4(a)のセクションのIdObject30はシーン要素を表現している。
全てのシーン要素は固有のidを有しており、これはIdObject30クラスによって表現される共通の特徴であり、従って全てのシーン要素はこのクラスに継承される(「継承」はオブジェクト指向の特色であり、Java(R)はオブジェクト指向のプログラム言語である)。3Dシーンは要素の階層により表現されており、固有のidは、3DAファイルからのシーン情報のロード中に使用されてこの階層を形成している。階層はCTransform32オブジェクト(この場合オブジェクトはクラスと同義語)により形成されており、各CTransform32オブジェクトは、ライト(CLight34オブジェクト)、シェイプ(CShape31オブジェクト)、別のCTransform32オブジェクト等の、幾つかの異なるタイプのシーン要素を含んでいてもよい。
全てのシーン要素を含んでいるルート・トランスフォームが常にあり、この特別のトランスフォームはシーン・トランスフォームと呼ばれ、主要なアプレット・クラス(Applet3da56)内に含まれる一つのCScene36オブジェクトによって表現されている。階層構造の情報はシーンの3D表示には重要である。各CTransform32オブジェクトは3Dワールドにおける位置を表現しており、格納されている全ての要素はこの位置を基準に移動(座標変換)し表示される。
次に、図4(a)の各シーン要素クラスについて説明する。
Interpolator33は、シーン画像要素内の、一組の値間の書き込みに関する情報を含んでいる。インターポレーター・クラスはこれらの値の間をスライドして、次第にシーン要素のプロパティを変化させる方法を含んでいる。インターポレーターを含んでいるシーン要素はCShape31及びCTransform32である。シェイプ(形状)はインターポレーターを使用して、モーフィングを行う。トランスフォーム(座標変換)はインターポレーターを使用して、移動回転を行う。このようにしてアプレット・エンジンは3Dアニメーションを実行する。アニメーションの再生中、インターポレーターは一組の値間を「スライド」して、シーン要素のプロパティ(移動を行うためのトランスフォームのポジション・プロパティまたはシェイプ・モーフィングを行うためのシェイプ座標等)を変更する。アニメーションがシーン内で再生されている時は、CScene36オブジェクトに含まれる動作中のインターポレーターのリストによって各フレームが進められシーン内の変化、すなわちアニメーション効果を起こす。インターポレーターは時間の経過を把握しており、値を進めるためにどれだけの時間が必要かを把握している。このようにして、アニメーションの長さ(アニメーション時間)が制御されている。
CLight34は、シーン・シェイプのライティングを定義するために使用されている。ライトは光の色及び輝度を定義するカラー・プロパティを含んでいる。位置情報を含むオムニライトと、方向情報を含むスポットライトの2種類のライトがある。ライトはCTransform32オブジェクト内にある。ライト要素を含むトランスフォームを移動すると、ライトもまた移動して、シーン・シェイプの照明方法が変化する。CShape31オブジェクトがシェーダー・オブジェクト(I3dObject40クラス)を使用して画面上に描写されると、シェーダー・オブジェクトは全てのシーン・ライトの位置、方向及び色を確認して、正確なライティングでシェイプを描写することが可能になる。
CCamera35は視点を定義しており、各CCamera35オブジェクトは位置及び方向情報を含んでいる。カメラが中にあるトランスフォームの位置と組み合わされたこの情報は、3Dシーンを描写して見ることができる視点を示す。CController59オブジェクトが動作中のカメラへの参照を含んでおり、これがシーンの視点として現在使用されているカメラである。シーン・イメージが描写される毎に、全ての3D情報が動作中のカメラの座標空間に変更されて動作中のカメラがワールド座標の原点(0,0,0)にあるようになる。これは、CScene36オブジェクトによって行われる。その後、座標変更されたシーンが描写されて、3Dシーンがカメラの視点からどのように見えるかが明らかになる。
図4(b)のセクションの全てのクラスはシェーダーと呼ばれ、3Dオブジェクトの陰影付けに関するオブジェクト(アプレット・クラス)である。全てのシェーダーはI3dObject40クラスで表現される共通の特色を有しており、また、全てのシェーダーはこのクラスを継承している。シェーダーはCShape31オブジェクトが所有している。シェーダーは所有しているCShape31のラスター化(2Dビットマップ画像の作成)を行う役割を担っている。各シェーダーはシェーダーが所有しているシェイプ(形状)を異なるように描写する。シェーダーはシーン・ライト、シェイプ・カラー情報、シェイプ・テクスチャ情報等を考慮して、その形をラスター化するために必要な動作を行う。この情報を使用する各シェーダーは異なる方法を用いるか、あるいは、この情報のいくつかを無視してもよい。シェイプのシェーダーは3Dシーンの製作者によって定義された「シェードタイプ」プロパティによって定義されている。例えば、テクスチャ・シェイプを作成するシェーダーもあれば、スムースな影付のシェイプを作成するシェーダーもある。
次に、図4(b)の各シェーダー・クラスについて説明する。
CWire41は、他のシェーダーと異なり、このシェーダー・クラスはシェイプからなるポリゴンを埋めることによりシェイプを表示しない。このシェーダーはシェイプのワイヤフレームを描く。これはポリゴンが描かれるシェイプの全ての点を結合し、シェイプのワイヤフレームを作成する線という意味である。このシェーダーを所有しているCShape31の色情報がワイヤフレーム用の色として使用される。
CFlat42はフラット・シェードによるシェイプを描写している。フラット・シェーディングは各シェイプのポリゴンがシェイプの色及びシーン内のライトによる一定の色を受け取るアルゴリズムである。
CGouraud43はグーロー・シェードによるシェイプを描写している。グーロー・シェーディングはシェイプの各ポリゴンの3点における色がシェイプの色及びシーン内のライトに従って計算されるアルゴリズムである。その後、これらの色はポリゴンに沿って直線的に補間されて、シェイプがスムースにシェーディングされる。
CEnvironment44はテクスチャ・マップのシェイプを描画している。テクスチャ・マッピング・アルゴリズムは、描写されるCShape31を含むCTransform32オブジェクトの方向性によりマップ情報を生成する。このシェーダーによって使用されたアルゴリズムは、マップ情報源を除いてCTextureMap45シェーダーによって使用されるアルゴリズムと同一である。マップ情報がここでシェイプの方向に依存しているので、回転するシェイプが周囲または光源を反映しているかのように見える。このイリュ−ジョンはリアルな外見への反映及び単純なテクスチャ・マッピング・アルゴリズムを使用したライティングを実現するために使用することが可能である。
CTextureMap45はテクスチャ・マップのシェイプを描写している。テクスチャ・マッピング・アルゴリズムはシェーダー・オブジェクトを所有しているCShape31オブジェクトに格納されたマップ情報を使用して、シェイプ上にテクスチャ・ビットマップをマッピングする。このことにより、あるテクスチャまたは描かれた画像を有しているかのようにシェイプが描写される。
CTextureGur46はグーロー・シェーディング(CGouraud43等)及びテクスチャ・マッピング(CTextureMap45等)の両方を行って、シェイプのポリゴンを描写している。このことにより、テクスチャ・マッピング及びスムースなシェードがされたオブジェクトが得られる。
CTextureEnv47は2つの異なるテクスチャ・イメージと異なる組のマッピング座標を有する2つのテクスチャ・マッピング操作を行い、その後混合アルゴリズムを使用してイメージを組み合わせている。実行された2つのマッピング操作はCTextureMap45の描写アルゴリズムを遂行して、その結果をCEnvironment44の描写アルゴリズムと組み合わせることと同じである。このシェーダーはシェイプにテクスチャ・イメージと反射/照明効果を付与するために使用される。
図4(c)のセクションは3DAデザイナーのJava(R)エンジンにより使用されるその他のコア・クラスを含んでいる。これらのクラスは3Dエンジンに必要な情報を含んでおり、この情報に関する機能を遂行している。例えば、Clipper57がラスター化を手伝い、MyPixelGrabber51が画像ファイルのロードを手伝い、CController59がユーザー入力に従ってシーン情報を変更する役割を担っている、…等である。
次に、図4(c)の各コア・クラスについて説明する。
コア・クラスとして考える必要のあるこのYOE3types50クラスは、単にCScene36クラスによって使用される定数を含んでいるもので、いかなるファンクションも実行せず、またいかなるデータも格納しない。
3DAシーンファイルをロードする場合、シーンファイルの構造はシーン要素を表現するノードまたは一般的なシーンファイルを含むようになっている。各ノードはサブノード及びデータ・フィールドを含んでいる。異なるノードタイプ及びデータ・フィールドタイプは、ファイル内でこれらの前にあるid番号によって特定される。このクラスは様々な可能性のあるデータ・ノード及びノード・フィールドのidを示す定数を含んでいる。シーン・ローダー(CScene36クラスで実行される)がこのクラス内に存在しないidに出会った場合、ノードまたはこのノードに属するデータ・フィールドをスキップする。
MyPixelGrabber51は、アプレットで使用されて、シーン(シェイプ・テクスチャ、背景画像等)内で使用されるイメージをロードする。また、MyImageObserver52インターフェイスを実行するクラスと合わせて使用される。イメージのロードを終了すると、MyPixelGrabber51オブジェクトはそのオブザーバー・オブジェクトを呼び戻して、イメージが準備されたことを知らせる。実際の例は、MyImageObserver52クラスの説明に記載する。
MyImageObserver52は、イメージがロードを終了すると呼び出されるファンクションのためのインターフェイスを定義している。幾つかのクラスはMyImageObserver52インターフェイスを実行して、ロードを要求したイメージがロードを終えると通知する。アプレットによるイメージの実際のロードはMyPixelGrabber51オブジェクトを使用して行われる。MyPixelGrabber51オブジェクトがイメージのロードを終了すると、MyImageObserver52オブジェクトにこれを引き渡す。このような場合の例は、アプレットが新しい背景画像をロードする時である。Applet3da56クラスはYoe3d53クラス内のメソッド(オブジェクトの動作を定義する手続き)を呼び出して、新しい背景画像をセットする。MyImageObserver52インターフェイスを実行するYoe3d53はイメージをロードしてその後オブザーバー(この場合Yoe3d53)内のファンクション(機能)を呼び出すMyPixelGrabber51オブジェクト作成する。Yoe3d53はロードされたイメージデータを含み、それを使用してアプレットの背景を設定する。
Yoe3d53は3D幾何学的作用、画像処理及び混合作用、ラスター化作用等を遂行するために使用される様々なファンクションを含んでいる。例えば、シェーダー・クラスが画面上に2Dポリゴンを描く前に、各シェイプのポリゴンの3D座標を、透視投影アルゴリズムを使用して2D座標値に変換しなければならない。この変換を行うファンクションはYoe3d53で実行される。また、このクラスは3Dシーンのラスター化中に使用される変数を含んでいる。例えば、重なっている3Dオブジェクトを正確に表示するために、Z−Bufferingと呼ばれるアルゴリズムが、表示されるビットマップ・イメージ内に各2Dポリゴンを埋め込んでいる最中にシェーダー・クラスによって遂行される。Z−Bufferingアルゴリズムには、各描写ピクセルの視点情報からの距離を埋めるために使用される大きなメモリバッファーが必要である。このメモリバッファーはYoe3d53クラス内にある。アプレットはApplet3da56オブジェクト内にある一つの包括的なYoe3d53オブジェクトを含んでいる。
Applet3da56クラスの親であるI3daPainter54は、SuperBase55クラスの親クラスである。I3daPainter54は単なるインターフェイスであって、実際の実行を含んでおらず、I3daPainter54を実行するその他のクラスは別のクラスを継承している。このようなことは、Java(R)が可能ないかなるシステム上でも利用可能な標準的Java(R)ライブラリ・クラスであるアプレット・クラスを継承しているSuperBase55の場合もそうである。
I3daPainter54はシーン内のイベントを処理するインターフェイスを含んでいる。このようなイベントは例えば、シェイプ上またはツールバーボタン上のクリックを含んでいる。これらのイベントはその後それぞれに応じて処理される。Applet3da56の場合、これらのイベントは、アプレットをホスティングしているHTMLページの作者によって書かれた外部のJava(R)スクリプト・ファンクションからの呼び出しにより発生する。
SuperBase55はいかなるJava(R)が可能なシステムにも用意されている標準的Java(R)ライブラリ・クラスであるアプレット・クラスを継承している。このクラスの基本機能はApplet3d56クラスの説明に記載するとおりである。
次に、Applet3da56クラスについて詳述する。
Applet3da56は主要アプレット・クラスであり、Java(R)アプレット・スーパークラスを継承している。アプレット・クラスは、アプレットとその環境間のJava(R)が動作する全てのWebブラウザで利用可能な標準インターフェイスを提供し、標準Java(R)クラスライブラリの一部として実行される。Webページ上に表示される全てのJava(R)アプレットは、アプレット・クラスを継承して重要なインターフェイスを実行するクラスでなければならない。このインターフェイスは、マウス及びキーボード等のイベントを介したアプレット領域を利用する方法、ユーザー入力をアプレットに対して処理する方法、クラス中で実行される一般機能を、ブラウザによって実行されるJavaスクリプトによって呼び出されるように、エクスポートする方法を含んでいる。
アプレット・クラスを更に分類することによって、新しい種類のアプレットを定義したのが3DAアプレットである。Applet3da56はアプレット・クラスを直接に継承しているわけではない。その代わり、アプレット・クラスから継承したSuperBase55クラスを継承している。
Applet3daクラスがWebブラウザ6によってロードされると、Webブラウザ6は、Applet3da56によって実行される標準アプレット・インターフェイス機能を呼び出す。
1) まず、initファンクション(機能)が呼び出される。このファンクションはApplet3da56の内部データを初期化してシーン情報をApplet3da56の内部データ構成の中にロードする。
2) その後、startファンクションがブラウザによって呼び出される。このことにより、Applet3da56は、アプレットが受けたマウス移動及びキー入力等のイベントを処理する。これらのイベントは、Applet3da56に含まれるCController59オブジェクトによって処理される。Applet3da56は、3Dシーンを描写する理由があるかどうか(最後に描写されてから何か変更されたかどうか)を確認するループを入力する。もしそうであれば、シーンを描写する。受け取ったイベント、ブラウザにより呼び出されたAPI機能により起こった変更、実行中のアニメーション及びオブジェクト移動によって、その後CController59を呼び出し、シーン情報を更新する。このプロセスはアプレットが閉じるまでループで行われる。このループは以下の通りである。
(a) 最終フレームからの変更?
(b) シーン情報を更新するためにコントローラを呼び出す。
(c) 全ワールドの3D変換を現視点に対して行う。(Applet3da56の中に格納されたCScene36オブジェクトにアクセスすることによって行われる)
(d) シーン・イメージを描写する。ループして(a)に戻る。
3) Webブラウザ6がアプレットを閉じると、Applet3da56の中に作成・格納されたシーン情報を公開したApplet3da56のstop/destroyファンクションを呼び出す。
WebブラウザによってロードされたHTMLファイル内のアプレット・タグによって特定されているので、Webブラウザ6は、Applet3da56を実行することを理解している。
アプレット・タグは、図5の201〜206に示すように、
<applet code=”Applet3da.class” codebase=”../” width=”360” height=”240” id=”Applet1” ARCHIVE=”3danywhere.zip” MAYSCRIPT>
<param name=”source” value=”example.3da”>


</applet>
のように記述される。
アプレット・タグの「code=」部分がApplet3da56クラスファイルを特定している。これはアプレットがHTMLページに挿入されている標準的な方法である。
図5の202〜205に示したアプレット・タグのパラメータとしては、図6に示すように、背景色、アスペクト、テクスチャ等のロード方法、アンチエリアス等の表示に関するDisplay61と、ツールバー、マウス操作カメラコントロール、3Dオブジェクトの回転軸操作、座標移動、形状等の操作に関するMouse & UI(62)と、カメラの移動速度、移動座標、シェイプ選択、3Dオブジェクト等の初期状態を設定するDefault selections(63)と、その他、イベント機能の選択やマウスイベントの無効/有効などを指定するMiscelleous部分等が用意されている。
図7は、3DAアプレット内に含まれるJava(R)スクリプト・API(Application Programming Interface)の機能の項目を示しており、ユーザーとのインタラクティブな3D画像表示を実現するためにHTMLページ内に記述するインタラクティブ3Dシーン表示のための独自のJava(R)スクリプトとのインターフェイス部分の説明図である。
Java(R)スクリプト・コードは、図5の301〜305に示したように記述される。この一例では、302のMy3daEventFunction(itype, Param1, Param2)により、選択されたトランスフォーム(itype=2のとき)が変化するとイベントが発生するというものである。
Javaスクリプト・APIには、図7に示すように、Shape71(形状)、Shapeプロパティ72(属性)、Transform73(座標変換)、Transformプロパティ74、Object75(オブジェクト)、Camera76(カメラ)、User interface77(ユーザーインターフェイス)、Display78(画面表示)、Animation79(アニメーション)、及びMiscellaneous80(その他)等がある。
各機能に関する説明は、上述の3DAアプレットに関する説明、及び以下に記載する説明の通りである、
次にJava(R)スクリプト・APIについて詳述する。
Java(R)スクリプト・API・ファンクション(機能)は、全てApplet3da56クラス又はSuperBase55クラスにおいて実行されるパブリック・ファンクションである。各3DAアプレットはApplet3da56クラスのインスタンス(実体化:クラスから出来上がったオブジェクトを意味する)を一つずつ含んでいる。このインスタンスは全てのJava(R)アプレットがWebブラウザにより実行される方法であり、Webブラウザによりロード・実行される主要なアプレット・クラスである。SuperBase55クラスには実インスタンス(実体)がなく、Applet3da56がSuperBase55クラスを継承しているので、全てのJava(R)スクリプト・API・ファンクションがApplet3da56内で実行されているように見える。
API・ファンクションはApplet3da56ファンクションの一部分にアクセスしてアプレット中で種々の作業を行う。以下はその例である(図示せず)。
1) setBGColor( )ファンクションはSuperBase55クラスの“yoe3d.m_gbColor”部分にアクセスしてその値をセットする。この値はアプレットの背景色として使用されている。その後、Applet3da56のRedrawAfterAct( )メソッドを呼び出してアプレットを塗り換える。
2) setPos( )ファンクションは3Dシーン中のトランスフォームの位置をセットするために使用される。これは、コントローラ・オブジェクト、すなわちSuperBase55クラスの一部分にアクセスして特定の3Dトランスフォームが現在選択されているかどうかを確認することによって行われる。その後、コントローラ・クラスのメソッドを使用して、その機能に渡された位置を、選択されたトランスフォームがある座標系に変換する。そうした後に、選択された「翻訳」可変部分が新しい位置にセットされ、アプレットを塗り替えるためのApplet3da56のRedrawAfterAct( )メソッドを使用してアプレットを塗り替える。
上記の例では、Applet3da56クラスがアプレットの異なる面を管理する部分オブジェクトを含むことを示している。(コントローラは選択されたシーン要素に関する情報を含んでおり、yoe3d53はアプレット背景色等の一般情報を含んでいる。)これらのオブジェクトは異なるAPI・ファンクションによってアクセスされて、その後アプレット・シーンが描写されてこのアクセスの効果を示す。これらのオブジェクトはAPI・ファンクションがアクセスするためだけに存在しているのではないということを理解することが重要である。これらはシーン情報を含んでいて、シーンを描写するために使用されるオブジェクトである。例えば、アプレットとのユーザー対話によりイベントが起こる。これらのイベントはまたApplet3da56クラスにおいて処理されて、イベントの処理によりオブジェクトにアクセスする。
3DAアプレットにより取出される3Dシーン情報は、図8に示すようなファイル内容となっており、Header81(ヘッダー)、Shape82(形状)、Transform83(座標変換)、Light84(ライト)、Camera85(カメラ)等で構成され、バイナリデータとして一つのファイルに保存されている。各3Dシーン情報の説明は上述した通りである。
図9は、ライセンス情報の管理をする構成を示す概略図である。
図1の、第1の実施の形態に示したように、サーバーから3DAアプレット等をダウンロードしてユーザーのWebブラウザ上で3D画像表示をする場合に、ライセンス情報を表示するようにしたもので、不正使用を防止する役割を果たす。
先ず、第2の実施の形態に示した図2のS209において3DAアプレットを保存する際に、3Dアプレットのデータ内にドメインwww.×××.com、等のドメイン情報を埋込む。この処理が図3に示す(A)の部分のS300の処理である。
なお、第2の実施の形態はローカルな記憶装置に保存した場合を示しているが、3DAファイルも、図2のS205の保存処理に代えて該当するサーバーに保存するものとする。
次に、Webブラウザで3Dシーン画像を表示する場合、図2に示す3DAアプレットをロードする処理S210、及び表示する処理S211に代えて、図3に示す(B)のS301以降の処理に移る。
Webサーバーから3DAアプレット等をダウンロードして3DAアプレットを実行し(S301)、3DAアプレットの実行によりライセンス情報に伴う処理を行う。
これは(A)で3DAアプレットのデータ内に埋込まれたドメインと、実際のドメインの照合により実施される(S302)。
両ドメインが一致した場合は、ライセンスマーク110を表示させずに正常の3D表示処理を行う(S303)
ドメインが一致しない場合は、ライセンスマーク110を表示し警告する(S304)。ユーザーはロゴ表示を確認したら、ライセンスマーク110をクリックしてライセンスを管理する会社のホームページにアクセスしライセンスの取得手続を得る(S305)。
具体的には、図9に示すように、Webブラウザ2は、Webサーバー6からダウンロード(1)した3DAアプレット・データに埋込まれているドメインと、実際のダウンロード元のドメインを取得し(2)、双方を照合して(3)、双方のドメインが異なる場合は、Webブラウザ2の3Dシーンの描画エリア内にライセンスマーク110を表示して警告する。
Webブラウザ2の閲覧者は、ライセンスマーク110をクリックしてライセンスを管理する会社のホームページへジャンプし、ライセンスの取得方法や、手続き方法などの表示に従ってライセンスを取得して3DAシーンの表示を行う。
この処理によって、3DAアプレットのデータを頒布する場合に、アプレット・データが不正にコピーされ、複数のドメインに掲載されることを防止することができる。
最後に、第3の実施の形態によるWeb3D画像表示システムを、図10を参照して説明する。
図10のWeb3D画像表示システムは、上述した機能及び構成を一つのビジネスモデルとして構成したもので、システムセンター1に3DAデザイナーによる開発ツールと3DAデザイナーによって生成した3DAファイル等の各3DA情報のファイルをデータベース化し、ユーザー(クライアント2)によってシステムセンター1のWebサーバー6から3DA情報をダウンロードして、クライアント2のWebブラウザによってインタラクティブな3D画像を表示するようにしたものである。
なお、システムセンター1内のWebサーバー6や3DAデザイナー、及びクライアント2のWebブラウザは市販のPC(パーソナルコンピュータ)やワークステーションに実装されて動作するもので、PCやワークステーションを構成するCPU(中央制御装置)、メモリやハードディスク等の記憶装置、画像やテキスト等を表示する表示装置、キーボードやマウス等の入力装置、及び通信回線との入出力装置等に関する説明及びその構成図面は省略する。
また、上述した処理手順等の重複する説明は省略する。
図10において、1はシステムセンターであり、2はWebブラウザ(クライアントA)である。3はインターネットであり、4は他のクライアントBであり、5はその他の、不特定多数のクライアントnである。
6はシステムセンター1内のWebサーバーで、クライアントA、B…n、に3DAファイル等を、インターネット3を介して配信する。7は3DAファイル等の転送を管理するFTPサーバーで、システムセンターに外部からアクセスする場合に使用するものであるが、ここではそのアプリケーションについては触れない。8はデータベースのアクセスを管理するデータベース・サーバーである。9はライセンス情報付加手段で、Webブラウザ2において3D画像表示の際にドメイン照合によるライセンス情報の表示を行う。
10は3Dオブジェクト作成手段で「3ds」等の各種3Dソフトによる3Dオブジェクト生成が行われる。11はVRMLファイル作成手段で、生成された3DオブジェクトファイルをVRMLフォーマットに変換する。
12は3DAカスタマイズ手段、13が3DAファイル生成手段であり、3DAデザイナーにより、VRMLファイルからシーン情報を取出し、カスタマイズ情報を付加して必要なシーン情報を一つの圧縮ファイルとして3DAファイルを作成し保存する。14は3DAデザイナーによってインタラクティブな3D画像表示を行うための3DAアプレットを生成する3DAアプレット生成手段である。3Dシーンを表示するために必要な各アプレット・クラスは一つの圧縮ファイルとして保存される。
15はHTMLファイル作成手段で、3DAデザイナーにより、アプレット・タグが含まれるWebページ用のHTMLファイルが自動生成され、生成されたHTMLファイルにJava(R)スクリプト・コードを追加し、オプション要求のための追加手続きを行い、HTMLファイルを編集・作成する。17は3Dデータベースであり、3D部品から3D画像ファイルまで各種3Dデータを格納している。
一方、各Webブラウザは、HTML、Java(R)アプレット、Java(R)スクリプトの処理機能を有し、21は3DAアプレット要求手段で、Webサーバー6へ3DAアプレットのダウンロードを要求する。22は3DAファイル要求手段で、ダウンロードされた3DAアプレットによって行われる。23は3DAアプレット実行手段で3DAファイルをダウンロードして3D画像表示を行う。24はインタラクティブ表示処理手段で、Webブラウザ単独で3D表示画面の編集操作を行うことが可能である。25はライセンス情報処理手段で、ドメインを照合してライセンス情報に関する処理を行う。
このように、本発明によれば、既製の3Dソフトによる出力されたVRMLファイルを使用する場合に、従来Webブラウザは特別のビューアをプラグインしないと3Dシーンの表示ができなかったものが、本発明の3DAシステムにより、通常のWebブラウザを使用して、プラグイン無しにインタラクティビティな3Dシーンの表示が可能になった。
また、3DAアプレットによる3Dシーンの表示方式と、3DAファイルの圧縮処理によって、平均的なアニメーションファイルの1/10程度の伝送レートにまで下げられたので、ブロードバンドを使用しなくても通常のインターネットで3D画像表示をスムースに展開することができる。
また、Webブラウザ2側で3DAファイル、3DAアプレット、オプションをダウンロードした後は、サーバー無しでインタラクティブな表示が可能になるので、Webブラウザから編集・加工処理をサーバーに依頼し、サーバー側のサーバーサイド・プログラムにより3Dオブジェクトの編集・加工処理をしていた従来の方式などに比較すれば、遥かに迅速でインラクティブな3Dシーンの表示処理が可能になった。
また、本発明をe−コマース等に利用すれば、自動車のカタログを3D画像でWebブラウザ上に表示し、ユーザーはマウスで自由に車体を回転させて下側機構部分、車内のシートの状態や色などを現実と同じような感覚で見ることもできるし、自分で車体の色を塗り替えて色指定して転送・発注するようなことも可能になる。また、不動産業等でモデルルームを3D画像展示するような場合に、ユーザーはマウスで自由に家具の位置を移動させたり、色を塗り替えて色指定して注文したりすることも、居ながらにしてできるようになる。
その他、オンラインゲームを創作したりすることにも使用できるし、それ以外のあらゆる画像表示に利用できる。
本発明の第1の実施の形態に係るWeb3D画像表示システムの伝送手順を示す図である。 本発明の、第2の実施の形態に係るWeb3D画像表示システムの処理手順を示す図である。 第2図の処理にセキュリティ機能を加える場合の処理手順を示す図である。 アプレットのコア・クラスと階層構造を示す図であり、(a)はシーン要素を、(b)はシェーダー・クラスを、(c)はコア・クラスを示している。 アプレットとJava(R)スクリプトのHTMLソースの一例を示す図である。 アプレット・タグのパラメータの種類を示す説明図である。 Javaスクリプト・APIの内容を示す説明図である。 3Dシーンの圧縮ファイルを示す説明図である。 ライセンス情報の管理をする構成を示す概略図である。 本発明の、第3の実施の形態に係るWeb3D画像表示システムを示す概略図である。
符号の説明
1 システムセンター
2 クライアント(A)
3 インターネット
4 クライアントB
5 クライアントC
6 Webサーバー
7 FTPサーバー
8 データベース・サーバー
9 ライセンス情報付加手段
10 3Dオブジェクト作成手段
11 VRMLファイル作成手段
12 3DAシーンカスタマイズ手段
13 3DAファイル生成手段
14 3DAアプレット生成手段
15 HTMLファイル作成手段
16 3D情報保存手段
17 3Dデータベース
21 3DAアプレット要求手段
22 3DAファイル要求手段
23 3DAアプレット実行手段
24 インタラクティブ表示処理手段
25 ライセンス情報処理手段

Claims (8)

  1. サーバーから3D画像ファイルをダウンロードし、Webブラウザ上で3D画像を表示するコンピュータシステムであって、
    VRML等のWeb用に作られた3次元グラフィックス記述言語で記述されたWeb3Dファイルから取出された3Dシーン情報を基に編集・生成し、編集・生成して得られた3Dシーン情報の3D圧縮ファイルとリアルタイム3Dレンダリング及びモーションアルゴリズムを実行して該3Dシーンを表示するための3Dアプレットとを保持するサーバーと、
    前記3Dシーンを表示するための前記3Dアプレット及び前記3D圧縮ファイルをダウンロードして該3Dシーンを表示するWebブラウザとを備え、
    前記Webブラウザは、前記サーバーとのコミュニケーションにより該サーバーに前記3Dアプレットを要求してダウンロードする3Dアプレット要求手段と、
    前記3Dアプレットを実行して前記サーバーに前記3D圧縮ファイルを要求しダウンロードする3D圧縮ファイル要求手段と、
    シーン・バックグラウンド・イメージ、シェイプ・テクスチャ及びアプレット・ツールバー等のオプション情報を前記サーバーに要求してダウンロードするオプション情報要求手段と、
    ダウンロードを完了して全ての情報を受け取った後、前記サーバーを介さずにWebブラウザ単独で前記3Dアプレットを実行する3Dアプレット実行手段と、
    前記3Dアプレット実行手段によりリアルタイム3Dレンダリング及びモーションアルゴリズムをWebブラウザ単独で実行し継続して3Dシーンの表示を行う3Dシーン表示手段と、
    前記3Dシーンを表示すると共に、利用者とのインタラクティビィティを可能にするインタラクティブ表示処理手段とを有することを特徴とするWeb3D画像表示システム。
  2. 記憶装置に保存された3D画像ファイルをロードし、Webブラウザ上で3D画像を表示するコンピュータシステムであって、
    各種の3Dモデリングソフトウェアプログラムを使用して3Dオブジェクトを生成し、生成されたオブジェクトまたは3Dシーン全体をVRML等のWeb用に作られた3次元グラフィックス記述言語で記述されたファイルフォーマットに変換するWeb3Dファイル作成手段と、
    作成された前記Web3Dファイルを基に3Dシーンのカスタマイズを行い、前記Webブラウザ上で3Dシーンを表示するための情報を付与する3Dシーンカスタマイズ手段と、
    前記3Dシーンカスタマイズ手段で得られた3Dシーン情報を圧縮して3D圧縮ファイルを生成する3D圧縮ファイル生成手段と、
    前記3D圧縮ファイルの3Dシーン情報を基に前記Webブラウザ上でリアルタイム3Dレンダリング及びモーションアルゴリズムを実行して3Dシーンを表示するための3Dアプレットを生成する3Dアプレット生成手段と、
    前記3Dアプレットを呼び出すアプレット・タグが含まれるハイパーテキストのWebページを作成するWebページ作成手段と、
    3Dシーンの表示に必要な前記3D圧縮ファイル、前記3Dアプレット、前記Webページ、テクスチャ・ファイル、及びオプションのツールバー・ファイルを記憶装置に保存する3D情報保存手段と、
    Webブラウザによって、前記記憶装置に保存された前記3Dアプレットを要求し、該記憶装置に保存された3D情報ファイルをロードして該3Dアプレットを実行する3Dアプレット実行手段と、
    前記3Dアプレットの実行により利用者とのインタラクティブな3Dシーンの表示を行うインタラクティブ表示処理手段とを備えることを特徴とするWeb3D画像表示システム。
  3. 前記インタラクティブ表示処理手段は、ロード済みのツールバー及びシーンオブジェクトの移動・変更の操作を行うためのキーボード・マウス等によるユーザーイベント入力を前記3Dアプレットに受け渡して実行することにより、Webブラウザ単独で3Dシーンの編集・加工操作を可能にすることを特徴とする請求項1または2に記載のWeb3D画像表示システム。
  4. 前記Webブラウザが前記サーバーから前記3Dアプレットをダウンロードして3Dシーンを表示する際に、前記サーバー自身のドメインと前記3Dアプレットに埋込まれたドメイン情報とを照合するライセンス情報処理手段を備えたことを特徴とする請求項1に記載のWeb3D画像表示システム。
  5. 前記2つのドメインを照合し、ドメインが異なる場合は3Dシーンの描画領域内にライセンスマークを表示して警告するようにしたことを特徴とする請求項4に記載のWeb3D画像表示システム。
  6. 前記3Dアプレットは、複数のアプレット・クラスで構成され、少なくとも形状、座標変換、ライト、カメラを含むシーン要素の各クラスと、ワイヤフレーム、フラット・シェーディング、グーロー・シェーディングを含むシェーダー・クラスと、3D画像を表示するための各種コア・クラスとから成る各クラス内から前記3Dシーンの表示に必要な当該クラスが選択され一つの圧縮ファイルとして保存されることを特徴とする請求項1または2に記載のWeb3D画像表示システム。
  7. 前記3Dアプレットは、Webページに記述されるスクリプト・コードによって利用者とのインタラクティブ操作を可能にする独自のスクリプト・インターフェイスを有し、
    前記スクリプト・インターフェイスは、利用者とのインタラクティブ操作が可能な3D画像を表示するために、少なくともオブジェクト、形状、座標、カメラ、アニメーション、画像表示、及びユーザーインターフェイスに関する情報を含むことを特徴とする請求項1または2に記載のWeb3D画像表示システム。
  8. 前記3D圧縮ファイルは、前記3Dアプレットから呼び出される少なくとも形状、座標変換、ライト、カメラの情報を含む3Dシーン情報から成り、バイナリデータとして一つのファイルに保存されることを特徴とする請求項1または2に記載のWeb3D画像表示システム。
JP2003536999A 2001-10-11 2002-10-11 Web3D画像表示システム Expired - Fee Related JP4051484B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001314615 2001-10-11
JP2001314615 2001-10-11
PCT/JP2002/010625 WO2003034345A1 (fr) 2001-10-11 2002-10-11 Systeme d'affichage d'images 3d sur le web

Publications (2)

Publication Number Publication Date
JPWO2003034345A1 JPWO2003034345A1 (ja) 2005-02-03
JP4051484B2 true JP4051484B2 (ja) 2008-02-27

Family

ID=19132899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003536999A Expired - Fee Related JP4051484B2 (ja) 2001-10-11 2002-10-11 Web3D画像表示システム

Country Status (11)

Country Link
US (1) US7425950B2 (ja)
EP (1) EP1453011A4 (ja)
JP (1) JP4051484B2 (ja)
KR (1) KR100624804B1 (ja)
CN (1) CN1276393C (ja)
AU (1) AU2002343978B2 (ja)
BR (1) BR0213202A (ja)
CA (1) CA2462595C (ja)
IL (2) IL161243A0 (ja)
NO (1) NO20041915L (ja)
WO (1) WO2003034345A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010020781A (ja) * 2008-07-14 2010-01-28 Samsung Electronics Co Ltd アニメーション製作方法及び装置

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NO318686B1 (no) * 2002-09-27 2005-04-25 Gridmedia Technologies As Multimedia-filformat
US20040100489A1 (en) * 2002-11-26 2004-05-27 Canon Kabushiki Kaisha Automatic 3-D web content generation
US7681114B2 (en) * 2003-11-21 2010-03-16 Bridgeborn, Llc Method of authoring, deploying and using interactive, data-driven two or more dimensional content
US8423471B1 (en) * 2004-02-04 2013-04-16 Radix Holdings, Llc Protected document elements
EP1741064A4 (en) 2004-03-23 2010-10-06 Google Inc DIGITAL CARTOGRAPHIC SYSTEM
JP4779318B2 (ja) * 2004-07-09 2011-09-28 株式会社島津製作所 分析システム
AU2005331138A1 (en) * 2005-04-25 2006-11-02 Yappa Corporation 3D image generation and display system
US20060267952A1 (en) * 2005-05-26 2006-11-30 Steve Alcorn Interactive display table top
CN1331359C (zh) * 2005-06-28 2007-08-08 清华大学 交互式多视点视频系统中视频流的传输方法
WO2007011748A2 (en) 2005-07-14 2007-01-25 Molsoft, Llc Structured documents for displaying and interaction with three dimensional objects
KR100755457B1 (ko) 2005-08-16 2007-09-05 홍길철 인터넷 통신망을 이용한 다중 또는 입체 화상 서비스 방법
WO2007035988A1 (en) * 2005-09-27 2007-04-05 Spatial Freedom Holdings Pty Ltd An interface for computer controllers
JP4873004B2 (ja) * 2006-03-17 2012-02-08 日本電気株式会社 3次元データ処理システム
US20080036763A1 (en) * 2006-08-09 2008-02-14 Mediatek Inc. Method and system for computer graphics with out-of-band (oob) background
KR101108684B1 (ko) * 2007-06-19 2012-01-30 주식회사 케이티 입체 컨텐츠 제공 서버, 방법 및 입체 디스플레이 가능통신 단말기
US20090228778A1 (en) * 2007-06-27 2009-09-10 Tannenbaum Jeffrey R Method and apparatus for marking up multimedia images electronically
US8357040B2 (en) * 2007-07-31 2013-01-22 Wms Gaming Inc. Templated three-dimensional wagering game features
US8766972B2 (en) * 2007-10-29 2014-07-01 Moshe Itzhak MARKOWITZ Method and system for efficient transmission of rich three-dimensional geometry and animation content over narrow band communication networks
US20100257188A1 (en) * 2007-12-14 2010-10-07 Electronics And Telecommunications Research Institute Method and apparatus for providing/receiving stereoscopic image data download service in digital broadcasting system
US20090219985A1 (en) * 2008-02-28 2009-09-03 Vasanth Swaminathan Systems and Methods for Processing Multiple Projections of Video Data in a Single Video File
US9471996B2 (en) 2008-02-29 2016-10-18 Autodesk, Inc. Method for creating graphical materials for universal rendering framework
US8212806B2 (en) * 2008-04-08 2012-07-03 Autodesk, Inc. File format extensibility for universal rendering framework
US8667404B2 (en) * 2008-08-06 2014-03-04 Autodesk, Inc. Predictive material editor
US8601398B2 (en) * 2008-10-13 2013-12-03 Autodesk, Inc. Data-driven interface for managing materials
US8560957B2 (en) * 2008-10-13 2013-10-15 Autodesk, Inc. Data-driven interface for managing materials
US9342901B2 (en) * 2008-10-27 2016-05-17 Autodesk, Inc. Material data processing pipeline
US8584084B2 (en) * 2008-11-12 2013-11-12 Autodesk, Inc. System for library content creation
ITBO20090385A1 (it) 2009-06-15 2010-12-16 Surgica Robotica S R L Metodo per la simulazione interattiva di immagini
KR20110032836A (ko) * 2009-09-24 2011-03-30 삼성전자주식회사 권한 정보 확인 방법 및 이를 이용한 디스플레이 장치와 권한 정보 확인 시스템
KR101635567B1 (ko) * 2009-11-12 2016-07-01 엘지전자 주식회사 영상표시장치 및 그 동작방법
KR101611263B1 (ko) * 2009-11-12 2016-04-11 엘지전자 주식회사 영상표시장치 및 그 동작방법
TWI420412B (zh) * 2010-02-05 2013-12-21 Sunyouth Information Company 多媒體實境體驗平台
US9356991B2 (en) * 2010-05-10 2016-05-31 Litera Technology Llc Systems and methods for a bidirectional multi-function communication module
CN102263772A (zh) * 2010-05-28 2011-11-30 经典时空科技(北京)有限公司 基于三维技术的虚拟会议系统
CN102375815A (zh) * 2010-08-10 2012-03-14 鸿富锦精密工业(深圳)有限公司 应用于嵌入式设备的三维网络用户接口及其实现方法
US9035939B2 (en) 2010-10-04 2015-05-19 Qualcomm Incorporated 3D video control system to adjust 3D video rendering based on user preferences
US9542975B2 (en) * 2010-10-25 2017-01-10 Sony Interactive Entertainment Inc. Centralized database for 3-D and other information in videos
CN102087598A (zh) * 2011-02-22 2011-06-08 深圳市同洲电子股份有限公司 一种3d界面展示方法、装置及浏览装置
US9323871B2 (en) 2011-06-27 2016-04-26 Trimble Navigation Limited Collaborative development of a model on a network
US8456467B1 (en) * 2011-11-11 2013-06-04 Google Inc. Embeddable three-dimensional (3D) image viewer
US9183672B1 (en) * 2011-11-11 2015-11-10 Google Inc. Embeddable three-dimensional (3D) image viewer
EP2780825A4 (en) 2011-11-15 2015-07-08 Trimble Navigation Ltd 3D MODELING EXTENSIBLE ON THE WEB
WO2013074574A1 (en) 2011-11-15 2013-05-23 Trimble Navigation Limited Controlling rights to a drawing in a three-dimensional modeling environment
US20130120378A1 (en) * 2011-11-15 2013-05-16 Trimble Navigation Limited Progressively providing software components for browser-based 3d modeling
US9898852B2 (en) 2011-11-15 2018-02-20 Trimble Navigation Limited Providing a real-time shared viewing experience in a three-dimensional modeling environment
EP2780817B1 (en) 2011-11-15 2021-10-27 Trimble Inc. Efficient distribution of functional extensions to a 3d modeling software
WO2013074568A1 (en) 2011-11-15 2013-05-23 Trimble Navigation Limited Browser-based collaborative development of a 3d model
US10868890B2 (en) 2011-11-22 2020-12-15 Trimble Navigation Limited 3D modeling system distributed between a client device web browser and a server
CN103365559B (zh) * 2012-04-09 2018-07-06 腾讯科技(深圳)有限公司 一种绘制滑动轨迹的方法及移动终端
US9032391B2 (en) * 2012-06-27 2015-05-12 Clearside, Inc. System and method for dynamically creating executable files
TWI475474B (zh) * 2012-07-30 2015-03-01 Mitac Int Corp Gesture combined with the implementation of the icon control method
WO2015042901A1 (en) * 2013-09-29 2015-04-02 Microsoft Technology Licensing, Llc Media presentation effects
GB2534086B (en) 2013-10-01 2021-06-02 Dishno Aaron Three-dimensional (3D) browsing
WO2015062388A1 (zh) * 2013-10-31 2015-05-07 优视科技有限公司 图片加载方法、装置及视频播放方法、装置
KR101512084B1 (ko) * 2013-11-15 2015-04-17 한국과학기술원 가상현실 기반의 3차원 웹 검색 인터페이스를 제공하는 웹 검색 시스템 및 그 제공 방법
CN103679819A (zh) * 2013-12-17 2014-03-26 塔里木大学 西域数字博物馆的设计与开发方法
US20150339276A1 (en) * 2014-05-22 2015-11-26 Craig J. Bloem Systems and methods for producing custom designs using vector-based images
US9881332B2 (en) 2014-05-22 2018-01-30 LogoMix, Inc. Systems and methods for customizing search results and recommendations
CN105278977B (zh) * 2014-07-14 2019-05-21 阿里巴巴集团控股有限公司 一种网页组件的加载方法和装置
TWI509449B (zh) * 2014-12-11 2015-11-21 Pile Up Design Furniture online design system
CN104484530A (zh) * 2014-12-18 2015-04-01 福建省纳金网信息技术有限公司 基于云计算的室内自定义装饰渲染方法
FR3038995B1 (fr) * 2015-07-15 2018-05-11 F4 Dispositif interactif a affichage personnalisable
US10013157B2 (en) * 2015-07-22 2018-07-03 Box, Inc. Composing web-based interactive 3D scenes using high order visual editor commands
FR3042620B1 (fr) 2015-10-16 2017-12-08 F4 Dispositif web interactif a affichage personnalisable
JP6804198B2 (ja) * 2016-01-29 2020-12-23 サン電子株式会社 管理システム及びサーバのためのコンピュータプログラム
US20170300214A1 (en) * 2016-04-19 2017-10-19 SAS Automation, LLC Three Dimensional Model Launch Tools And Methods Of Use
US10498741B2 (en) 2016-09-19 2019-12-03 Box, Inc. Sharing dynamically changing units of cloud-based content
US10565802B2 (en) * 2017-08-31 2020-02-18 Disney Enterprises, Inc. Collaborative multi-modal mixed-reality system and methods leveraging reconfigurable tangible user interfaces for the production of immersive, cinematic, and interactive content
CN108986233B (zh) * 2018-06-11 2023-07-11 佛山欧神诺陶瓷有限公司 一种快速绘制室内预览图的方法及其系统
CN108830941A (zh) * 2018-06-25 2018-11-16 中国移动通信集团西藏有限公司 3d导览方法
CN111026373B (zh) * 2019-12-23 2023-08-15 武汉真蓝三维科技有限公司 一种三维数字化事务地图的制作方法
CN113043265A (zh) * 2019-12-26 2021-06-29 沈阳新松机器人自动化股份有限公司 基于Android的图书馆机器人控制方法及装置
CN112435320B (zh) * 2020-11-05 2023-12-22 北京浪潮数据技术有限公司 一种数据处理方法、装置及电子设备和存储介质
KR102605698B1 (ko) * 2022-02-11 2023-11-24 주식회사 유룸 이벤트 생성 기능을 갖는 3d 웹사이트 제작 플랫폼 제공 시스템, 방법 및 프로그램
CN116402937A (zh) * 2023-03-30 2023-07-07 中国舰船研究设计中心 一种基于web的复杂数据3D可视化简化开发方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990028523A (ko) * 1995-08-31 1999-04-15 야마모토 히데키 반도체웨이퍼의 보호점착테이프의 박리방법 및 그 장치
JP3102369B2 (ja) * 1997-01-31 2000-10-23 富士通株式会社 データ処理装置
JP3865184B2 (ja) * 1999-04-22 2007-01-10 富士通株式会社 半導体装置の製造方法
CA2341931C (en) 2000-03-24 2006-05-30 Contentguard Holdings, Inc. System and method for protection of digital works
JP2001285894A (ja) * 2000-03-31 2001-10-12 Olympus Optical Co Ltd 3次元画像データの掲載方法
US7743259B2 (en) * 2000-08-28 2010-06-22 Contentguard Holdings, Inc. System and method for digital rights management using a standard rendering engine
US20020070932A1 (en) * 2000-12-10 2002-06-13 Kim Jesse Jaejin Universal three-dimensional graphics viewer for resource constrained mobile computers
US7698389B2 (en) * 2001-05-16 2010-04-13 Hewlett-Packard Development Company, L.P. Device configuration in a distributed environment
US20020174206A1 (en) * 2001-05-21 2002-11-21 Moyer Alan L. Web-based file manipulating system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010020781A (ja) * 2008-07-14 2010-01-28 Samsung Electronics Co Ltd アニメーション製作方法及び装置

Also Published As

Publication number Publication date
AU2002343978B2 (en) 2009-01-29
WO2003034345A1 (fr) 2003-04-24
EP1453011A1 (en) 2004-09-01
CA2462595C (en) 2009-12-29
US20040239679A1 (en) 2004-12-02
CN1568486A (zh) 2005-01-19
US7425950B2 (en) 2008-09-16
BR0213202A (pt) 2004-08-31
CN1276393C (zh) 2006-09-20
IL161243A0 (en) 2004-09-27
KR20050035149A (ko) 2005-04-15
IL161243A (en) 2009-11-18
KR100624804B1 (ko) 2006-09-20
NO20041915D0 (no) 2004-05-10
EP1453011A4 (en) 2005-04-06
JPWO2003034345A1 (ja) 2005-02-03
CA2462595A1 (en) 2003-04-24
NO20041915L (no) 2004-07-08

Similar Documents

Publication Publication Date Title
JP4051484B2 (ja) Web3D画像表示システム
AU2004319589B2 (en) Integration of three dimensional scene hierarchy into two dimensional compositing system
RU2324229C2 (ru) Визуальный и пространственный графические интерфейсы
US8723875B2 (en) Web-based graphics rendering system
EP1290642B1 (en) Method for interactive multi-user customizable web data retrieval and rendering
US20080013860A1 (en) Creation of three-dimensional user interface
JP2004506262A (ja) グラフィックハードウェアおよびソフトウェアの開発
TW200537395A (en) Model 3D construction application program interface
Döllner et al. Object‐oriented 3D Modelling, Animation and Interaction
Liu et al. Function-defined shape metamorphoses in visual cyberworlds
US6762757B1 (en) Using hardware devices to generate modified geometry objects based on instructions provided by extension objects
JP2005165873A (ja) Web3D画像表示システム
Schechter et al. Functional 3D graphics in C++—with an object-oriented, multiple dispatching implementation
JP4140333B2 (ja) Web3Dファイル編集システム
Bateman et al. The Essential Guide to 3D in Flash
Chin et al. JavaFX 3D
Álvarez et al. EZ3. js: A robust and flexible WebGL-based 3D engine
Olsson et al. The Essential Guide to 3D in Flash
Egbert Design of the grams object-oriented graphics system
Dazeley 3D APIs in Interactive Real-Time Systems
Ahlgren Graph visualization with OpenGL
Pinto A Graphics Pipeline for Directtly Rendering 3D Scenes on Web Browsers
Müller et al. An Efficient Object-oriented Authoring and Presentation System for Virtual Environments
Kajler IZIC 1.0.: an Overview for the User
Bateman et al. Primitives, Models, and Sprites

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070410

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070608

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070928

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

Free format text: PAYMENT UNTIL: 20101214

Year of fee payment: 3

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101214

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101214

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20101214

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20101214

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121214

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121214

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131214

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees