JP2005165873A - Web 3d-image display system - Google Patents

Web 3d-image display system Download PDF

Info

Publication number
JP2005165873A
JP2005165873A JP2003406404A JP2003406404A JP2005165873A JP 2005165873 A JP2005165873 A JP 2005165873A JP 2003406404 A JP2003406404 A JP 2003406404A JP 2003406404 A JP2003406404 A JP 2003406404A JP 2005165873 A JP2005165873 A JP 2005165873A
Authority
JP
Japan
Prior art keywords
scene
applet
information
web
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003406404A
Other languages
Japanese (ja)
Inventor
Masahiro Ito
藤 正 裕 伊
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to JP2003406404A priority Critical patent/JP2005165873A/en
Publication of JP2005165873A publication Critical patent/JP2005165873A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a Web 3D-image display system which is not limited to a platform and a Web browser. <P>SOLUTION: The system comprises a 3D applet that reads a Web 3D file of a standard format, such as a VRML, edits a 3D scene, assigns various pieces of information to it, compresses 3D scene information including attribute information necessary for animation, etc. and displays a 3D scene based on the compressed file, and a 3D scene editing means that creates a 3D-control applet that transfers event inputs by a keyboard, a mouse, etc. to the 3D applet, and performs interactive operations, such as moving or changing the 3D object, and a Web page that calls up these applets, and stores these 3D information files necessary for displaying the 3D scene in a memory unit. The system reads the stored 3D information files with a Web browser, executes the read-in applets, and displays the 3D scene that is interactive with a user. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、Webブラウザを用いた利用者との双方向型のリアルタイム3D(三次元)画像の表示システムに関するもので、より詳しくはWebブラウザに特別なプラグインソフトをインストールせずに利用者によるインタラクティブ操作を可能にするWeb3D画像表示システムに関するものである。   The present invention relates to a bidirectional real-time 3D (three-dimensional) image display system for a user using a Web browser, and more specifically, by a user without installing special plug-in software in the Web browser. The present invention relates to a Web 3D image display system that enables interactive operation.

従来からWeb用の3D画像表示を行うための標準フォーマットとしてVRML(Virtual Reality Modeling Language)が知られている。
このVRMLファイルを直接読込み専用のプラグインにより3D画像を表示するように構成したWebブラウザ(VRMLブラウザ)があるが、利用者自身の操作によりプラグインをインストールする必要があるという利便性の問題だけでなく、このようにプラグインをインストールしたVRMLブラウザにおいて利用者とのインタラクティブ操作を実現するための3Dシーンの作成にも非常に多くの煩雑な手作業を必要とし、作業効率も著しく悪いという問題があった。また、VRMLファイルをそのまま利用した場合は、インタラクティブ操作の種類だけでなく、処理の複雑さや重さから応答性等でも問題があり、軽快で多機能な3Dシーンを表示することはできなかった。
Conventionally, VRML (Virtual Reality Modeling Language) is known as a standard format for displaying 3D images for the Web.
There is a Web browser (VRML browser) configured to display 3D images by a plug-in dedicated to directly reading this VRML file, but only the convenience problem that the plug-in needs to be installed by the user's own operation In addition, the creation of a 3D scene for realizing an interactive operation with the user in the VRML browser in which the plug-in is installed in this way requires a great amount of complicated manual work, and the work efficiency is extremely poor. was there. Further, when the VRML file is used as it is, there is a problem not only in the type of interactive operation but also in the responsiveness due to the complexity and weight of the processing, and a light and multifunctional 3D scene cannot be displayed.

これを改善したWebブラウザ上で3D表示を行うシステムとして、本発明と同一発明者による「Web3D画像表示システム」(特許文献1)がある。
特許文献1は、VRML等の標準的なWeb3Dファイルを読込み、読み込んだ3Dシーンをカスタマイズし3Dアニメーション等を付加してWebブラウザ上で軽快に動作するためのファイル群を生成するシステムであるが、利用者とのインタラクティブ操作に関する部分は、Webブラウザ上で表示するために生成した3Dシーン表示用のJava(R)アプレット中に独自のJava(R)スクリプトAPI(Application Programm Interface)を設け、Webページ(HTMLファイル)中に記述したこの独自スクリプトを介して実現するものであった。
As a system that performs 3D display on a Web browser that improves this, there is a “Web 3D image display system” (Patent Document 1) by the same inventor as the present invention.
Patent Document 1 is a system that reads a standard Web3D file such as VRML, customizes the read 3D scene, adds a 3D animation, etc., and generates a file group for lightly operating on a Web browser. The part related to the interactive operation with the user is provided with an original Java (R) script API (Application Program Interface) in the Java (R) applet for displaying the 3D scene generated for display on the Web browser, and the Web page This was realized through this unique script described in (HTML file).

国際公開第03/034345号パンフレットInternational Publication No. 03/033455 Pamphlet

しかしながら、利用者とのインタラクティブ操作を実現する機能をJava(R)スクリプトによって記述することから、プラットフォームの違い(OS:Operating Sysytem、マシン環境等の違い)やWebブラウザの違い等の、動作環境の違いによってスクリプトの記述を変える必要を生じることや、或いはJava(R)スクリプトAPIが動作環境によってはうまく機能せず、その動作環境を限定せざるを得なかった。また、スクリプトの記述自身もWeb編集担当者が手入力で作成する必要があり、3Dシーンの画像表示やアニメーションとそのインタラクティブ操作もスクリプトをその都度Webブラウザ上で走らせて動作確認するというものであった。   However, since the function that realizes interactive operation with the user is described by a Java (R) script, the operating environment such as platform differences (OS: Operating System, machine environment differences) and Web browser differences, etc. Depending on the difference, it becomes necessary to change the description of the script, or the Java® API does not function well depending on the operating environment, and the operating environment must be limited. In addition, the script description itself needs to be manually created by the web editor, and 3D scene image display, animation, and interactive operations are performed by running the script on the web browser each time and confirming the operation. It was.

以上のような問題を解決するために本発明では、プラットフォームやWebブラウザ等の動作環境に対する限定をできるだけなくした利用者とのインタラクティブ操作を実現するWeb3D画像表示システムを提供することを目的とする。また、利用者とのインタラクティブ操作を実現するためのプログラムの記述を、Webブラウザ上で表示される3Dシーンと同一の表示画面を用いて相互に確認できるWeb3DオーサリングツールによってWebページを生成するWeb3D画像表示システムを提供することを目的とする。   In order to solve the problems as described above, an object of the present invention is to provide a Web 3D image display system that realizes an interactive operation with a user with the operating environment such as a platform and a Web browser as limited as possible. In addition, a Web 3D image that generates a Web page by a Web 3D authoring tool that can mutually confirm description of a program for realizing an interactive operation with a user using the same display screen as the 3D scene displayed on the Web browser An object is to provide a display system.

上記目的を達成するため、請求項1に記載の発明は、各種の3Dモデリングソフトウェアプログラムによって生成されたVRML等の標準的なWeb用3Dグラフィックス記述言語で記述されたファイルフォーマットのWeb3Dファイルを基に3Dシーンの編集を行いWebブラウザ上で3Dシーンを表示するコンピュータシステムであって、
3Dオブジェクト及び3Dシーン情報を含む前記Web3Dファイルを基に3Dシーンのカスタマイズを行い前記Webブラウザ上で3Dシーンを表示するための各種情報を付与する3Dシーンカスタマイズ手段と、前記Web3Dファイルから得られたアニメーション等に必要な属性情報を含む3Dオブジェクト及び3Dシーン情報を圧縮し3D圧縮ファイルを生成する3D圧縮ファイル生成手段と、圧縮された前記3D圧縮ファイルの3Dオブジェクト及び3Dシーン情報を基に前記Webブラウザ上でリアルタイム3Dレンダリング及びモーションアルゴリズムを実行して3Dシーンを表示するための3Dアプレットを生成する3Dアプレット生成手段と、前記Webブラウザ上でキーボード・マウス等によるユーザーイベント入力を前記3Dアプレットに受け渡し3Dオブジェクトの移動・変更等の利用者とのインタラクティブ操作を行うための3D制御アプレットを生成する3D制御アプレット生成手段と、前記3Dアプレット及び前記3D制御アプレットを呼び出すアプレット・タグが含まれるWebページを生成するWebページ生成手段と、3Dシーンの表示に必要な生成された前記3D圧縮ファイル、前記3Dアプレット、前記3D制御アプレット、前記Webページ、及びテキスチャ・ファイルからなる3D情報ファイルを記憶装置に保存する3D情報保存手段と、を少なくとも含む3Dシーン編集手段を備え、
前記Webブラウザによって、保存された前記3D情報ファイルを読込み前記3Dアプレット及び前記3D制御アプレットを実行する3Dアプレット実行手段と、前記3Dアプレット及び前記3D制御アプレットの実行によって利用者とのインタラクティブな3Dシーンの表示を行うインタラクティブ表示処理手段とを備えることを特徴とする。
In order to achieve the above object, the invention described in claim 1 is based on a Web3D file in a file format described in a standard 3D graphics description language for Web such as VRML generated by various 3D modeling software programs. A computer system that edits a 3D scene and displays the 3D scene on a web browser,
3D scene customization means for customizing 3D scenes based on the Web3D file including 3D objects and 3D scene information and providing various information for displaying the 3D scene on the Web browser, and obtained from the Web3D file 3D compressed file generating means for generating a 3D compressed file by compressing 3D object and 3D scene information including attribute information necessary for animation and the like, and the Web based on the 3D object and 3D scene information of the compressed 3D compressed file 3D applet generation means for generating a 3D applet for executing a real-time 3D rendering and motion algorithm on a browser to display a 3D scene, and a user event input by a keyboard / mouse on the Web browser A 3D control applet generating means for generating a 3D control applet for performing an interactive operation with a user such as transfer and change of a 3D object, and an applet tag for calling the 3D applet and the 3D control applet. Web page generation means for generating an included Web page, and a 3D information file including the generated 3D compressed file, the 3D applet, the 3D control applet, the Web page, and a texture file necessary for displaying a 3D scene A 3D scene editing means including at least a 3D information storage means for storing the information in a storage device,
The 3D applet executing means for reading the stored 3D information file by the web browser and executing the 3D applet and the 3D control applet, and the interactive 3D scene with the user by executing the 3D applet and the 3D control applet. And an interactive display processing means for displaying the above.

請求項2に記載の前記3D圧縮ファイルは、前記3Dアプレットから呼び出される少なくとも形状、座標変換、ライト、カメラの情報を含む3Dシーン情報から成り、バイナリデータとして一つのファイルに保存されることを特徴とする。
請求項3に記載の前記3Dアプレットは、複数のアプレット・クラスで構成され、少なくとも形状、座標変換、ライト、カメラを含むシーン要素の各クラスと、ワイヤフレーム、フラット・シェーディング、グーロー・シェーディングを含むシェーダー・クラスと、3D画像を表示するための各種コア・クラスとから成る各クラス内から前記3Dシーンの表示に必要な当該クラスが選択され一つの圧縮ファイルとして保存されることを特徴とする。
請求項4に記載の前記3D制御アプレットの実行による前記3Dアプレットとの受け渡し情報は、利用者とのインタラクティブ操作が可能な3D画像を表示するために、少なくともオブジェクト、形状、座標、カメラ、アニメーション、画像表示、及びユーザーインターフェイスの各情報のいずれか1つ以上を含むことを特徴とする。
請求項5に記載の前記3D制御アプレットは、少なくとも、画像による選択ボタン、テキストによる選択ボタン、複数候補から選択するチェックボックス、ドロップダウンリストにより選択するセレクトボタン、及びテキスト入力欄を含むユーザーインターフェイスの各クラスと、Webページ内のタグ範囲指定、画像タグ情報、及びテキストエリア・タグ情報の各クラスとを含む複数のアプレット・クラスが、前記3Dアプレットとの受け渡し情報の一部を構成し、該各クラス内から前記インタラクティブ操作のために必要な当該クラスが選択され一つの圧縮ファイルとして保存されることを特徴とする。
請求項6に記載の前記3Dアプレットは、スクリプト・コードによって利用者とのインタラクティブ操作を可能にする独自のスクリプト・インターフェイスを有し、前記3D制御アプレットの実行による前記3Dアプレットとの前記3Dシーンの情報及び前記インタラクティブ操作に伴う情報の受け渡しは、該スクリプト・インターフェイスを介して行うことを特徴とする。
請求項7に記載の前記3Dシーンカスタマイズ手段は、前記3Dシーンをカスタマイズするためのスクリプト言語の編集手段及び該スクリプト言語で記述されたプログラムソースのコンパイル手段を有し、該コンパイル手段によって前記3D制御アプレットの実行により前記スクリプト・インターフェイスを介し前記3Dアプレットと情報の受け渡しを行うためのスクリプティング・エンジンを生成することを特徴とする。
請求項8に記載の前記3Dシーン編集手段は、Webブラウザ上で表示される3D画像、3D画像のアニメーション、及び利用者とのインタラクティブ操作を行うユーザ操作ボタン等を含む前記3Dシーンを確認表示するためのプレビュー部と、該プレビュー部の3Dシーンをカスタマイズするためのスクリプト記述部とを少なくとも含む表示手段を有することを特徴とする。
請求項9に記載の前記スクリプト記述部の、3D画像の形状、座標、カメラ、テキスチャ、アニメーション、利用者とのインタラクティブ操作等の3Dシーンのカスタマイズは、プログラムステップ毎に前記プレビュー部の3Dシーンの当該箇所に反映され、前記プレビュー部のユーザ操作ボタン等によるインタラクティブ操作によって生じる前記3Dシーンの変更は、前記スクリプト記述部のプログラムソーステキストの当該記述箇所に反映され、該スクリプト記述部又は該プレビュー部のいずれか一方の編集又は操作結果が、ほぼリアルタイムに相互に反映されることを特徴とする。
3. The 3D compressed file according to claim 2, comprising at least 3D scene information including shape, coordinate transformation, light, and camera information called from the 3D applet, and is stored in a single file as binary data. And
The 3D applet according to claim 3 is composed of a plurality of applet classes and includes at least each class of scene elements including shape, coordinate transformation, light, and camera, and wireframe, flat shading, and goo shading. The class required for displaying the 3D scene is selected from each class including a shader class and various core classes for displaying a 3D image, and is stored as one compressed file.
The information exchanged with the 3D applet according to the execution of the 3D control applet according to claim 4 includes at least an object, a shape, coordinates, a camera, an animation, in order to display a 3D image that can be interactively operated with a user. It includes any one or more of image display and user interface information.
The 3D control applet according to claim 5, wherein the 3D control applet includes at least a selection button by an image, a selection button by a text, a check box for selecting from a plurality of candidates, a selection button for selection by a drop-down list, and a text input field. A plurality of applet classes including each class and each class of tag range designation in the web page, image tag information, and text area tag information constitute part of the passing information with the 3D applet, The class required for the interactive operation is selected from each class, and is stored as one compressed file.
7. The 3D applet according to claim 6, wherein the 3D applet has a unique script interface that enables interactive operation with a user by script code, and the 3D applet is executed by the execution of the 3D control applet. Passing of information and information associated with the interactive operation is performed through the script interface.
8. The 3D scene customizing unit according to claim 7, further comprising a script language editing unit for customizing the 3D scene and a program source compiling unit described in the script language, wherein the 3D control is performed by the compiling unit. A scripting engine for exchanging information with the 3D applet through the script interface is generated by executing the applet.
The 3D scene editing unit according to claim 8 confirms and displays the 3D scene including a 3D image displayed on a Web browser, a 3D image animation, a user operation button for performing an interactive operation with a user, and the like. And a display unit including at least a script description part for customizing a 3D scene of the preview part.
The 3D scene customization such as 3D image shape, coordinates, camera, texture, animation, interactive operation with a user, etc. in the script description unit according to claim 9 is performed for each program step. The change of the 3D scene reflected by the interactive operation by the user operation button or the like of the preview part is reflected in the description part of the program source text of the script description part, and is reflected in the part, and the script description part or the preview part The editing or operation result of either one of these is reflected mutually in substantially real time.

本発明のWeb3D画像表示システムによれば、従来HTML(Hyper Text Markup Language)ページ内に手入力で記述していたスクリプトを、外部ファイルの3D制御アプレットとして呼び出す構成にしたので、プラットフォームやWebブラウザを限定しないシステムが構築できるという効果がある。
また、この3D制御アプレットは、実際のWebブラウザ上で表示される3Dシーンと同一の表示画面を参照して相互に確認しながらプログラムできるJava(R)スクリプトに準じたスクリプトを用いた3Dシーン編集手段により生成するように構成したので、Web編集担当者の負担が軽減できるという効果も大きい。
According to the Web 3D image display system of the present invention, a script that has been manually entered in a Hyper Text Markup Language (HTML) page is called as a 3D control applet of an external file. There is an effect that an unrestricted system can be constructed.
This 3D control applet can edit 3D scenes using a script conforming to the Java® script that can be programmed while referring to the same display screen as the 3D scene displayed on the actual Web browser. Since it is configured so as to be generated by the means, the effect of reducing the burden on the person in charge of web editing is also great.

本発明に係るWeb3D画像表示システムの、実施の形態の具体例を、図面を参照しながら説明する。   A specific example of the embodiment of the Web 3D image display system according to the present invention will be described with reference to the drawings.

図1は、本実施の形態におけるWeb3D画像表示システムの構成を示す概略図である。
図1(a)は、Webブラウザ上で利用者とのインタラクティブ操作を実現し軽快な3Dシーンを表示するための3D情報データを生成するコンピュータシステムの構成を示しており、図1(b)は、図1(a)で生成した3D情報データを読み込み3Dシーンを表示するためのWebブラウザを有するPC(パーソナルコンピュータ)等のコンピュータ端末である。
図1に示す各手段はソフトウェアプログラムを市販のPCやワークステーションにインストールし実行することでその機能を実現するもので、PCやワークステーションは、CPU(中央制御装置)、メモリやハードディスク等の記憶装置、画像やテキスト等を表示する表示装置、キーボードやマウス等の入力装置、及びその他の入出力装置や周辺機器類等を備えた一般的に知られているコンピュータ装置であり、これらに関する説明及びその構成図面は省略する。
また、図1(a)、(b)に用いられるコンピュータは別構成でも同一のコンピュータを使用する構成でもどちらでもかまわない。
FIG. 1 is a schematic diagram showing a configuration of a Web 3D image display system according to the present embodiment.
FIG. 1A shows a configuration of a computer system that generates 3D information data for displaying a light 3D scene by realizing interactive operation with a user on a Web browser, and FIG. A computer terminal such as a PC (personal computer) having a Web browser for reading the 3D information data generated in FIG. 1A and displaying a 3D scene.
Each means shown in FIG. 1 realizes its function by installing and executing a software program on a commercially available PC or workstation. The PC or workstation stores a CPU (Central Control Unit), a memory, a hard disk or the like. Device, a display device for displaying images, text, etc., an input device such as a keyboard and a mouse, and other generally known computer devices equipped with other input / output devices and peripheral devices. The configuration drawing is omitted.
Further, the computer used in FIGS. 1A and 1B may be either a different configuration or a configuration using the same computer.

1はWebブラウザ上で3Dシーンを表示するための各種ファイル群を生成するWeb3D画像生成システムであり、2は生成された3D情報の各種ファイルを読み込み3Dシーンを表示するためのWebブラウザを有するコンピュータである。
10は3Dオブジェクト作成手段であり、本発明の3D情報データを生成する基になる3Dオブジェクトや3Dシーンを各種の3Dモデリングソフトを用いて作成する。
11は3Dモデリングソフトで作成した3Dオブジェクトや3Dシーン情報をVRMLファイルとして出力するVRMLファイル生成手段である。
Reference numeral 1 denotes a Web 3D image generation system that generates various file groups for displaying a 3D scene on a Web browser. Reference numeral 2 denotes a computer having a Web browser for reading various generated 3D information files and displaying the 3D scene. It is.
Reference numeral 10 denotes a 3D object creation means, which creates a 3D object or 3D scene that is a basis for generating the 3D information data of the present invention using various 3D modeling software.
Reference numeral 11 denotes VRML file generation means for outputting 3D objects and 3D scene information created by 3D modeling software as VRML files.

12〜17は3Dシーン編集手段を構成する各手段である。
12は3Dシーンカスタマイズ手段であり、3Dモデリングソフトで生成したVRMLファイルを読み込み、Webブラウザにロードしたアプレットによって利用者とのインタラクティブ操作が可能な3Dシーンを表示するための付加・編集手段である。3Dオブジェクトや3Dシーン情報に対し、移動、回転、拡大・縮小、及びアニメーション等の必要な各種情報がWeb編集担当者によって付加される。
Reference numerals 12 to 17 denote each means constituting the 3D scene editing means.
Reference numeral 12 denotes 3D scene customization means, which is an addition / editing means for reading a VRML file generated by 3D modeling software and displaying a 3D scene that can be interactively operated with a user by an applet loaded on a Web browser. Various necessary information such as movement, rotation, enlargement / reduction, and animation is added to the 3D object and 3D scene information by the web editor.

13は3D圧縮ファイル生成手段であり、3Dシーンカスタマイズ手段12で付加・編集された属性情報を有する3Dオブジェクトや3Dシーンを、バイナリデータによる一つの3D圧縮ファイルとしてテキスチャ・ファイル(図示せず)と共に生成する。
14は3Dアプレット生成手段であり、3D圧縮ファイル生成手段13で生成した3D圧縮ファイルを基に利用者とのインタラクティブ操作が可能な3Dオブジェクトや3Dシーンを表示するために必要なアプレット群を、一つにまとめた圧縮ファイルとして生成する。
15は3D制御アプレット生成手段であり、3Dアプレット生成手段14で生成された3Dアプレットを介して3Dオブジェクトや3Dシーンを表示する際の、利用者とのインタラクティブ操作に伴うイベント入力を扱うために必要なアプレット群を、一つにまとめた圧縮ファイルとして生成する。3D制御アプレット生成手段15で生成されるアプレット群は利用者とのインタラクティブ操作のためのインターフェイスだけでなく、3Dオブジェクトや3Dシーンを表示するための3Dアプレットとのインターフェイスも含まれている。
Reference numeral 13 denotes a 3D compressed file generating means, which combines a 3D object or 3D scene having attribute information added / edited by the 3D scene customizing means 12 together with a texture file (not shown) as a single 3D compressed file using binary data. Generate.
Reference numeral 14 denotes a 3D applet generation means. An applet group necessary for displaying a 3D object and a 3D scene that can be interactively operated with a user based on the 3D compressed file generated by the 3D compressed file generation means 13 is displayed. Generate as a compressed file.
Reference numeral 15 denotes a 3D control applet generation means, which is necessary for handling event input associated with an interactive operation with a user when a 3D object or 3D scene is displayed via the 3D applet generated by the 3D applet generation means 14. A group of applets is generated as a compressed file. The applet group generated by the 3D control applet generation means 15 includes not only an interface for interactive operation with a user but also an interface with a 3D applet for displaying 3D objects and 3D scenes.

16はWebページ生成手段で、3Dシーンを表示するための3D制御アプレット生成手段15で生成された3D制御アプレット・タグを含むWebページ(HTMLページ)を自動生成する。
17は3Dシーン編集手段によって生成された3Dシーンの表示に必要な各種3D情報を保存する3D情報保存手段であり、Webブラウザ上で3Dシーンを表示するために必要な各生成手段で生成されたこれらの各種3D情報を3D情報データ18としてWeb画像生成システム内の記憶装置(図示せず)に保存・蓄積する。
Reference numeral 16 denotes a Web page generation unit that automatically generates a Web page (HTML page) including the 3D control applet tag generated by the 3D control applet generation unit 15 for displaying a 3D scene.
Reference numeral 17 denotes a 3D information storage unit for storing various 3D information necessary for displaying the 3D scene generated by the 3D scene editing unit. The 3D information storage unit 17 is generated by each generation unit necessary for displaying the 3D scene on the Web browser. These various types of 3D information are stored and accumulated as 3D information data 18 in a storage device (not shown) in the Web image generation system.

21〜26はWebブラウザによりアプレット・タグが記載されたWebページを読み込みWebブラウザに実装されたVM(仮想マシン)によってアプレットを実行し実現する各手段である。
21は3D制御アプレット要求手段であり、Webページ内に記載されたアプレット・タグによって3D制御アプレットが要求されWebブラウザにロードされる。
22はロードされた3D制御アプレットによってさらに3Dアプレットを要求しWebブラウザにロードする3Dアプレット要求手段であり、23はロードされた3Dアプレットによって3D圧縮ファイル要求しWebブラウザにロードして3Dシーンを表示するための3D圧縮ファイル要求手段である。
Reference numerals 21 to 26 denote each means for reading a Web page in which an applet tag is described by a Web browser and executing the applet by a VM (virtual machine) installed in the Web browser.
Reference numeral 21 denotes 3D control applet request means, which requests a 3D control applet by an applet tag described in the Web page and loads it into the Web browser.
Reference numeral 22 is a 3D applet request means for requesting a 3D applet by the loaded 3D control applet and loading it into the Web browser. Reference numeral 23 is a request for a 3D compressed file by the loaded 3D applet and loading it into the Web browser to display the 3D scene. 3D compressed file requesting means.

24はWebブラウザにロードされた3D制御アプレットを実行する3D制御アプレット実行手段であり、Webブラウザに実装されたVMによって実行される。
25は3D制御アプレットから呼ばれ、3Dシーンを表示するために3Dアプレットを実行する3Dアプレット実行手段である。
26はインタラクティブ表示処理手段であり、Webブラウザにロードされた3D制御アプレット及び3DアプレットがWebブラウザに実装されたVMにより実行されることで3Dシーンの表示を継続的に行う。
Webブラウザに読み込まれて3Dシーンの表示を行うために必要な各種の3D情報は3D情報データ27としてPC2内の記憶装置(図示せず)に保存・蓄積されている。PC2内の3D情報データ27は、Web画像生成システム1で生成された3D情報データ18と同じもので、Web画像生成システム1とPC2が同一コンピュータでない場合は通信回線或いはCD等の記録媒体(図示せず)を介しWeb画像生成システム1からコピー又はロードして使用する。
Reference numeral 24 denotes 3D control applet execution means for executing a 3D control applet loaded in the Web browser, and is executed by a VM installed in the Web browser.
Reference numeral 25 denotes a 3D applet execution unit which is called from a 3D control applet and executes a 3D applet to display a 3D scene.
26 is an interactive display processing means, and the 3D control applet loaded in the Web browser and the 3D applet are executed by the VM installed in the Web browser, thereby continuously displaying the 3D scene.
Various types of 3D information necessary for displaying a 3D scene by being read by the Web browser is stored and accumulated as 3D information data 27 in a storage device (not shown) in the PC 2. The 3D information data 27 in the PC 2 is the same as the 3D information data 18 generated by the Web image generation system 1, and if the Web image generation system 1 and the PC 2 are not the same computer, a recording medium such as a communication line or a CD (see FIG. (Not shown) and copied or loaded from the Web image generation system 1 for use.

次に、図2の処理フロー図を参照して、Webブラウザ上で利用者とのインタラクティブ操作を実現するための3D情報データの生成と、生成された3D情報データを読み込みWebブラウザで3Dシーンを表示するまでの動作について説明する。   Next, referring to the processing flow diagram of FIG. 2, 3D information data generation for realizing an interactive operation with the user on the Web browser, and the generated 3D information data are read and a 3D scene is read by the Web browser. The operation until display is described.

先ず、Web編集担当者は、3Dオブジェクト作成手段10として、市販されている既存の3Dモデリングソフトウェアプログラムを使用し3Dオブジェクトを作成する(S101)。
3DモデリングソフトウェアプログラムはVRMLファイルとして出力できるもの(VRMLファイル生成手段11)ならば何を使用してもよく、たとえば「3ds(商品名)」などを使用して3Dオブジェクトを作成し、作成した3Dオブジェクトに対しさらにモーション、カメラ、ライティング、及びマテリアル等のモディファイ処理を行い、3Dオブジェクト及び3Dシーン全体を「3ds」に備わるVRMLフォーマットのファイルとしてエクスポートする(S102)。
First, the person in charge of web editing creates a 3D object using a commercially available existing 3D modeling software program as the 3D object creation means 10 (S101).
Any 3D modeling software program can be used as long as it can output as a VRML file (VRML file generation means 11). For example, a 3D object is created by using “3ds (product name)” and the created 3D The object is further subjected to modification processing such as motion, camera, lighting, and material, and the 3D object and the entire 3D scene are exported as a VRML format file included in “3ds” (S102).

3Dシーン編集手段は、3Dオブジェクト作成手段10及びVRMLファイル生成手段11によって生成された3Dシーン情報が含まれたVRMLファイル(Web3Dファイル)を取り込み(S103)、Webブラウザで利用者とのインタラクティブ操作を可能にする3Dシーンの表示方法に関する各種情報を付与し3D情報データ18として保存するものである。
VRMLファイルからは、ポリゴンの頂点列、面情報、色情報、及び各面に貼り付けるテキスチャを含む画像情報等のオブジェクト情報と、カメラ、ライト等のシーン情報と、各オブジェクトのアニメーション情報などが取り込まれる。
The 3D scene editing unit takes in a VRML file (Web3D file) including 3D scene information generated by the 3D object generation unit 10 and the VRML file generation unit 11 (S103), and performs an interactive operation with the user using a Web browser. Various kinds of information regarding the display method of the 3D scene to be enabled are given and stored as 3D information data 18.
The VRML file captures object information such as polygon vertex rows, surface information, color information, and image information including textures to be pasted on each surface, scene information such as cameras and lights, and animation information of each object. It is.

3Dシーンカスタマイズ手段12では、3Dグラフィックス記述言語の記述フォーマットとして一般的に知られているVRMLファイルを入力ツールとして使用し、VRMLファイル中の3Dワールド、3Dシェイプ(形状定義)に関する記述を取り込み、3Dアプレット生成手段14で生成される3Dアプレットが利用者とのインタラクティブ(双方向性)な3Dシーンを表示するために必要な3Dシーンの表示方法等の情報を付与する(S104、S105)。
カスタマイズされた全ての3Dオブジェクト及び3Dシーンの情報は3D圧縮ファイル生成手段13によりバイナリ形式の独自の3D圧縮ファイルとして一つにまとめられ、3D情報保存手段17よって3D情報データ18として記憶装置に保存・蓄積される(S106)。
The 3D scene customizing unit 12 uses a VRML file generally known as a description format of a 3D graphics description language as an input tool, takes in a description relating to a 3D world and 3D shape (shape definition) in the VRML file, The 3D applet generated by the 3D applet generation unit 14 gives information such as a 3D scene display method necessary for displaying an interactive (bidirectional) 3D scene with the user (S104, S105).
Information on all customized 3D objects and 3D scenes are combined into a single 3D compressed file in binary format by the 3D compressed file generation unit 13 and stored in the storage device as 3D information data 18 by the 3D information storage unit 17. -Accumulated (S106).

VRMLファイルは圧縮ファイルではなく、通常のテキストファイルで書かれており、例えばある特定の3Dシーンを表示する際にもその汎用性ゆえにその3Dシーンを表示するのに必要のない情報が含まれており、逆に利用者とのインタラクティブな3Dシーンを表示するために欲しい情報が不足しているので、3Dシーン編集手段では単に3Dシーン情報をインポートするためにのみ使用し、3Dワールド及び3Dシェイプ(形状定義)に関する記述を用い、3Dシーンカスタマイズ手段12で必要な情報を付与して3D圧縮ファイルを生成している。3D圧縮ファイルには3Dアプレットによって3Dシーンを表示するために必要な情報だけが収納されている。   The VRML file is not a compressed file but is written as a normal text file. For example, when displaying a specific 3D scene, it contains information that is not necessary to display the 3D scene due to its versatility. On the contrary, since there is not enough information to display the interactive 3D scene with the user, the 3D scene editing means is used only for importing the 3D scene information, and the 3D world and 3D shape ( A 3D compressed file is generated by adding information necessary for the 3D scene customization unit 12 using a description relating to (shape definition). The 3D compressed file contains only information necessary for displaying the 3D scene by the 3D applet.

3Dシーンのカスタマイズとしては、シェーディング(陰影付け)等のオブジェクトの情報と、カメラ、ライトの位置等のシーン情報と、各オブジェクトのアニメーションの編集、名前付け等のアニメーション情報と、背景画像、画面サイズ、その他のシーン属性等の表示情報等が可能である。   3D scene customization includes object information such as shading (shading), scene information such as camera and light positions, animation information such as animation editing and naming of each object, background image, and screen size. In addition, display information such as other scene attributes is possible.

3Dアプレットは、3Dシーン編集手段で予め用意されたもので、リアルタイム3Dレンダリングやモーションアルゴリズムを実行する小さなJava(R)アプリケーションの集まりであり、3Dシーンのカスタマイズにより設定された3D圧縮ファイル内の各種の3Dシーン情報をWebブラウザで呼び出し3Dシーンを軽快に表示処理するために最適化されている。3Dアプレット生成手段14は、カスタマイズの際に設定された3D圧縮ファイルの情報から3Dシーンを表示するために必要な部分のみのアプレット・クラスファイルを一まとめにし、一つのZIP圧縮ファイルを生成する。   The 3D applet is prepared in advance by 3D scene editing means and is a collection of small Java (R) applications that execute real-time 3D rendering and motion algorithms. Various 3D applets in 3D compressed files set by 3D scene customization The 3D scene information is called by a Web browser and optimized to display the 3D scene lightly. The 3D applet generation means 14 collects only applet class files necessary for displaying the 3D scene from the information of the 3D compressed file set at the time of customization, and generates one ZIP compressed file.

利用者とのインタラクティブ操作のためのイベント入力等の処理に伴う3D制御情報の付加・編集は、主にデバッガ(図示せず)を用いて行う(S107、S108)。
デバッガはいわゆるビジュアルエディタと称されるもので、その編集画面にはWebブラウザで3Dシーンを表示する際と同一の動作を行うプレビュー部と、プレビュー部に表示された3Dシーンをカスタマイズし、利用者とのインタラクティブ操作を実現するためのテキストエディタからなるスクリプト記述部が含まれている。スクリプトは、本発明独自のものであるが、Java(R)スクリプトの文法に準拠したもので、Web編集担当者に受け入れやすいものとなっている。
プレビュー部での操作とスクリプト記述部のプログラムソーステキストの編集内容とは、それぞれの操作結果や編集結果がほぼリアルタイムに相互に反映されるように構成されている。スクリプト記述部に記述されたスクリプトは、そのプログラムステップごとに動作確認することができ、ステップごとの3Dシーンの動きを確認することができる。また、プレビュー部の3Dオブジェクトや3Dシーンを操作すると、その部分のスクリプトがハイライトやブリンクによって明示されるだけでなく、操作に応じたスクリプトを自動生成することも可能になっている。
The addition / editing of 3D control information accompanying processing such as event input for interactive operation with the user is mainly performed using a debugger (not shown) (S107, S108).
The debugger is called a so-called visual editor. On the editing screen, a preview part that performs the same operation as when a 3D scene is displayed by a Web browser, and a 3D scene displayed on the preview part are customized. The script description part which consists of a text editor for implement | achieving interactive operation is included. The script is unique to the present invention, but conforms to the grammar of the Java (R) script, and is easy for a web editor to accept.
The operation in the preview part and the edited contents of the program source text in the script description part are configured so that the respective operation results and editing results are mutually reflected in almost real time. The script described in the script description part can confirm the operation for each program step, and can confirm the movement of the 3D scene for each step. Further, when a 3D object or 3D scene in the preview portion is operated, the script of that portion is not only clearly indicated by highlighting or blinking, but a script corresponding to the operation can be automatically generated.

デバッガは3Dシーンカスタマイズ手段12、3D圧縮ファイル生成手段13、及び3Dアプレット生成手段14で生成した各3D情報データを基に利用者とのインタラクティブ操作のためのイベント入力等の処理を付加・編集するもので、付加・編集されたこれらの情報は、3D制御アプレット生成手段15によって3D制御アプレットを含む3D制御情報ファイルとして一つの圧縮ファイルにまとめられる。また、3D制御アプレット・タグが記述されたHTMLファイルがWebページ生成手段16によって自動生成される(S109)。
デバッガで付加・編集した情報は、再度3D圧縮ファイル、3Dアプレットに反映され、3D情報保存手段17によって、3D制御アプレット、HTMLファイルと共に、これら3D圧縮ファイル、3Dアプレット、及びJPEG(Joint Photographic Experts Group)等により圧縮されたテキスチャ・ファイルのイメージデータが3D情報データ18として記憶装置に保存される(S110)。
The debugger adds / edits processing such as event input for interactive operation with the user based on each 3D information data generated by the 3D scene customization unit 12, the 3D compressed file generation unit 13, and the 3D applet generation unit 14. The added / edited information is collected by the 3D control applet generation means 15 into a single compressed file as a 3D control information file including the 3D control applet. In addition, the HTML file in which the 3D control applet tag is described is automatically generated by the Web page generating means 16 (S109).
The information added / edited by the debugger is reflected again in the 3D compressed file and 3D applet, and by the 3D information storage means 17, together with the 3D control applet and HTML file, these 3D compressed file, 3D applet, and JPEG (Joint Photographic Experts Groups) The image data of the texture file compressed by the above is stored in the storage device as 3D information data 18 (S110).

3D情報データとして保存された3Dシーン情報は、記録媒体又は通信回線(図示せず)を介してPC2内の3D情報データ27としてハードディスク等の記憶装置(図示せず)に一旦保存する。記録媒体がCDやDVDであれば、そのまま読み取るようにしてもよい。3Dシーン情報はPC2内のWebブラウザにより読み込まれ、Webブラウザに実装されたVMによりアプレットが実行され3Dシーンが表示される。   The 3D scene information stored as 3D information data is temporarily stored in a storage device (not shown) such as a hard disk as 3D information data 27 in the PC 2 via a recording medium or a communication line (not shown). If the recording medium is a CD or DVD, it may be read as it is. The 3D scene information is read by the Web browser in the PC 2, and the applet is executed by the VM installed in the Web browser to display the 3D scene.

Webブラウザによって3Dシーン情報を呼び出し実行するためのWebページを読み込むと、そのHTMLファイル内には3D制御アプレットを要求するアプレット・タグが記載されており(3D制御アプレット要求手段21)、3D制御アプレットがWebブラウザにロードされるとWebブラウザに実装されたVMによって3D制御アプレットが実行され(3D制御アプレット実行手段24)、この3D制御アプレットによって3Dシーンを表示するための3Dアプレットが要求される(3Dアプレット要求手段22)。
3Dアプレットがロードされると、VMによって3Dアプレットが実行され(3Dアプレット実行手段25)、3D圧縮ファイル、テキスチャ・ファイルを読み込み(3D圧縮ファイル要求手段23)、3D制御アプレットと連携して利用者とのインタラクティブ操作を実現した3Dシーンを表示する(インタラクティブ表示処理手段26)(S111、S112)。
When a web page for calling and executing 3D scene information is read by a web browser, an applet tag for requesting a 3D control applet is described in the HTML file (3D control applet request means 21), and the 3D control applet. Is loaded into the Web browser, the 3D control applet is executed by the VM installed in the Web browser (3D control applet execution means 24), and the 3D applet for displaying the 3D scene is requested by this 3D control applet ( 3D applet request means 22).
When the 3D applet is loaded, the VM executes the 3D applet (3D applet executing means 25), reads the 3D compressed file and the texture file (3D compressed file requesting means 23), and cooperates with the 3D control applet. The 3D scene that realizes the interactive operation is displayed (interactive display processing means 26) (S111, S112).

次に、3Dアプレットの構造について、図3を参照して説明する。
図3に示すように、3Dアプレットは、3Dオブジェクトの描写(レンダリング)と動きとで構成されるシーン情報を表しており、3Dシーンをコントロールする各コア・クラスを有している。全てのシーン情報は、常にIdObject30クラスに継承する全てのシーン要素を含んだScene36オブジェクトの中に保存されており、3Dシーンの描写はScene36の描写方法によって遂行される。
Next, the structure of the 3D applet will be described with reference to FIG.
As shown in FIG. 3, the 3D applet represents scene information composed of rendering (rendering) and motion of a 3D object, and has core classes for controlling the 3D scene. All scene information is always stored in a Scene 36 object including all scene elements inherited by the IdObject30 class, and the 3D scene rendering is performed by the Scene 36 rendering method.

3D制御アプレットを介して入力される利用者のイベントは、Controller59クラスへと導かれる。例えば、3Dアプレットが既に実行されている時に、利用者イベントの使用によりその情報が3Dアプレットへと受け渡され、その時Contorller59クラスは、現在選択されているTransform32クラスのOrientation属性を変化させるという処理となる。   User events entered via the 3D control applet are routed to the Controller 59 class. For example, when a 3D applet is already running, the information is passed to the 3D applet by using a user event, and the Controller 59 class changes the Orientation attribute of the currently selected Transform32 class. Become.

Shape31クラスは3Dシーン上の実際の3Dオブジェクトを表示し、その属性には画面上に3Dオブジェクトを描くために必要な全ての情報が含まれている。そして全てのShape31クラスは、隣のTransform32へのリファレンスを含んでいる。
Transform32は、Shape31クラスの位置情報を持ち、Shape31クラスを3Dシーン上で位置付けるのに使用される。このような1シーンの中の各オブジェクト情報とその位置情報を基にレンダリング(描写)が行われるが、シェイプ(形状)を描く時にはそのクラスをレンダリングするためにI3dObject40クラスが使用される。I3dObject40インターフェイスを実現する全てのクラス(例えばTextureMap45クラス=質感の実現)は、スクリーン上で描写することができる。
The Shape31 class displays an actual 3D object on the 3D scene, and its attributes include all the information necessary to draw the 3D object on the screen. All Shape31 classes contain a reference to the adjacent Transform32.
The Transform 32 has the position information of the Shape31 class, and is used to position the Shape31 class on the 3D scene. Rendering (drawing) is performed based on each object information and its position information in one scene. When drawing a shape (shape), the I3dObject40 class is used to render the class. All classes that implement the I3dObject40 interface (eg, TextureMap45 class = realization of texture) can be drawn on the screen.

Clipper57クラスは、あるシェイプを画面上にラスター表示するために、シェーダー・クラスI3dObject40クラスと共に使用される。   The Clipper57 class is used in conjunction with the shader class I3dObject40 class to rasterize a certain shape on the screen.

次に、図3のアプレット・クラスの構造について(a)〜(c)の各セクションに分けて説明する。
図3(a)セクションのIdObject30はシーン要素を表現している。全てのシーン要素は固有のIdを有しており、これはIdObject30クラスによって表現される共通の特徴であり、従って全てのシーン要素はこのクラスに継承される(「継承」はオブジェクト指向の特色であり、Java(R)はオブジェクト指向のプログラム言語である)。3Dシーンは要素の階層により表現されており、固有のIdは3D圧縮ファイルからのシーン情報のロード中に使用されてこの階層を形成している。階層はTransform32オブジェクト(この場合の「オブジェクト」は「クラス」と同義語)により形成されており、各Transform32オブジェクトは、ライト(Light34オブジェクト)、シェイプ(Shape31オブジェクト)、別のTransform32オブジェクト等の、いくつかの異なるタイプのシーン要素を含んでいてもよい。
全てのシーン要素を含んでいるルート・トランスフォームが常にあり、この特別のトランスフォームはシーン・トランスフォームと呼ばれ、主要なアプレット・クラス(Applet3da56)内に含まれる一つのScene36オブジェクトによって表現されている。階層構造の情報はシーンの3D表示には重要である。各Transform32オブジェクトは3Dワールドにおける位置を表現しており、格納されている全ての要素はこの位置を基準に移動(座標変換)し表示される。
Next, the structure of the applet class shown in FIG. 3 will be described in each of the sections (a) to (c).
An IdObject 30 in the section (a) of FIG. 3 represents a scene element. All scene elements have a unique Id, which is a common feature represented by the IdObject30 class, so all scene elements are inherited by this class (“inheritance” is an object-oriented feature. Yes, Java (R) is an object-oriented programming language). A 3D scene is represented by a hierarchy of elements, and a unique Id is used during the loading of scene information from a 3D compressed file to form this hierarchy. The hierarchy is formed by Transform32 objects (in this case, “object” is a synonym for “class”). Each Transform32 object has a number of Light (Light34 object), shape (Shape31 object), another Transform32 object, and so on. These different types of scene elements may be included.
There is always a root transform that contains all the scene elements, this special transform is called a scene transform and is represented by a single Scene36 object contained within the main applet class (Applet3da56). Yes. Hierarchical information is important for 3D display of scenes. Each Transform32 object represents a position in the 3D world, and all stored elements are moved (coordinate converted) based on this position and displayed.

Interpolator33は、シーン画像要素内の、一組の値間の書き込みに関する情報を含んでいる。インターポレーター・クラスはこれらの値の間をスライドして、次第にシーン要素のプロパティを変化させる方法を含んでいる。インターポレーターを含んでいるシーン要素はShape31及びTransform32である。シェイプ(形状)はインターポレーターを使用して、モーフィングを行う。トランスフォーム(座標変換)はインターポレーターを使用して、移動回転を行う。このようにしてアプレット・エンジンは3Dアニメーションを実行する。アニメーションの再生中、インターポレーターは一組の値間を「スライド」して、シーン要素のプロパティ(移動を行うためのトランスフォームのポジション・プロパティまたはシェイプ・モーフィングを行うためのシェイプ座標等)を変更する。アニメーションがシーン内で再生されている時は、Scene36オブジェクトに含まれる動作中のインターポレーターのリストによって各フレームが進められシーン内の変化、すなわちアニメーション効果を起こす。インターポレーターは時間の経過を把握しており、値を進めるためにどれだけの時間が必要かを把握している。このようにして、アニメーションの長さ(アニメーション時間)が制御されている。   Interpolator 33 contains information about writing between a set of values in the scene image element. The interpolator class includes a way to slide between these values and gradually change the properties of the scene elements. The scene elements including the interpolator are Shape 31 and Transform 32. The shape (shape) is morphed using an interpolator. Transform (coordinate transformation) uses an interpolator to move and rotate. In this way, the applet engine performs 3D animation. As the animation plays, the interpolator "slides" between a set of values to set the properties of the scene elements (such as transform position properties for movement or shape coordinates for shape morphing). change. When an animation is being played in the scene, each frame is advanced by a list of active interpolators included in the Scene 36 object, causing a change in the scene, ie, an animation effect. The interpolator knows the passage of time and how much time is needed to advance the value. In this way, the length of animation (animation time) is controlled.

Light34は、シーン・シェイプのライティングを定義するために使用されている。ライトは光の色及び輝度を定義するカラー・プロパティを含んでいる。位置情報を含むオムニライトと、方向情報を含むスポットライトの2種類のライトがある。ライトはTransform32オブジェクト内にある。ライト要素を含むトランスフォームを移動すると、ライトもまた移動して、シーン・シェイプの照明方法が変化する。Shape31オブジェクトがシェーダー・オブジェクト(I3dObject40クラス)を使用して画面上に描写されると、シェーダー・オブジェクトは全てのシーン・ライトの位置、方向及び色を確認して、正確なライティングでシェイプを描写することが可能になる。   Light 34 is used to define the lighting of the scene shape. The light contains color properties that define the color and brightness of the light. There are two types of lights: an omni light that includes position information and a spotlight that includes direction information. The light is in a Transform32 object. When you move a transform that contains a light element, the light will also move, changing the way the scene shape is illuminated. When a Shape31 object is rendered on the screen using a shader object (I3dObject40 class), the shader object checks the position, orientation, and color of all scene lights and renders the shape with accurate lighting It becomes possible.

Camera35は視点を定義しており、各Camera35オブジェクトは位置及び方向情報を含んでいる。カメラが中にあるトランスフォームの位置と組み合わされたこの情報は、3Dシーンを描写して見ることができる視点を示す。Controller59オブジェクトが動作中のカメラへの参照を含んでおり、これがシーンの視点として現在使用されているカメラである。シーン・イメージが描写される毎に、全ての3D情報が動作中のカメラの座標空間に変更されて動作中のカメラがワールド座標の原点(0,0,0)にあるようになる。これは、Scene36オブジェクトによって行われる。その後、座標変更されたシーンが描写されて、3Dシーンがカメラの視点からどのように見えるかが明らかになる。   The Camera 35 defines a viewpoint, and each Camera 35 object includes position and direction information. This information combined with the position of the transform in which the camera is located indicates the viewpoint from which the 3D scene can be depicted and viewed. The Controller 59 object contains a reference to the active camera, which is the camera currently used as the scene viewpoint. Each time a scene image is rendered, all 3D information is changed to the coordinate space of the active camera so that the active camera is at the origin (0, 0, 0) of the world coordinates. This is done by the Scene 36 object. Then, the coordinate-changed scene is drawn to reveal how the 3D scene looks from the camera perspective.

図3(b)のセクションの全てのクラスはシェーダーと呼ばれ、3Dオブジェクトの陰影付けに関するオブジェクト(アプレット・クラス)である。全てのシェーダーはI3dObject40クラスで表現される共通の特色を有しており、また、全てのシェーダーはこのクラスを継承している。シェーダーはShape31オブジェクトが所有している。シェーダーは所有しているShape31のラスター化(2Dビットマップ画像の作成)を行う役割を担っている。各シェーダーはシェーダーが所有しているシェイプ(形状)を異なるように描写する。シェーダーはシーン・ライト、シェイプ・カラー情報、シェイプ・テキスチャ情報等を考慮して、その形をラスター化するために必要な動作を行う。この情報を使用する各シェーダーは異なる方法を用いるか、あるいは、この情報のいくつかを無視してもよい。シェイプのシェーダーは3Dシーンの編集担当者によって定義された「シェードタイプ」プロパティによって定義されている。例えば、テキスチャ・シェイプを作成するシェーダーもあれば、スムースな影付のシェイプを作成するシェーダーもある。   All the classes in the section of FIG. 3B are called shaders and are objects (applet class) related to shading of 3D objects. All shaders have a common feature represented by the I3dObject40 class, and all shaders inherit from this class. The shader is owned by the Shape31 object. The shader plays a role of rasterizing the owned Shape 31 (creating a 2D bitmap image). Each shader depicts the shape (shape) owned by the shader differently. The shader takes into account scene light, shape color information, shape texture information, etc., and performs operations necessary to rasterize the shape. Each shader that uses this information may use a different method or ignore some of this information. Shape shaders are defined by the “Shade Type” property defined by the 3D scene editor. For example, some shaders create texture shapes, while others create smooth shaded shapes.

Wire41は、他のシェーダーと異なり、このシェーダー・クラスはシェイプからなるポリゴンを埋めることによりシェイプを表示しない。このシェーダーはシェイプのワイヤフレームを描く。これはポリゴンが描かれるシェイプの全ての点を結合し、シェイプのワイヤフレームを作成する線という意味である。このシェーダーを所有しているShape31の色情報がワイヤフレーム用の色として使用される。   Unlike other shaders, Wire 41 does not display a shape by filling a polygon made up of the shape. This shader draws a wireframe of shapes. This means a line that connects all the points of the shape on which the polygon is drawn to create the wireframe of the shape. The color information of Shape 31 that owns this shader is used as the color for the wire frame.

Flat42はフラット・シェードによるシェイプを描写している。フラット・シェーディングは各シェイプのポリゴンがシェイプの色及びシーン内のライトによる一定の色を受け取るアルゴリズムである。   Flat 42 depicts a shape with a flat shade. Flat shading is an algorithm where each shape polygon receives a color of the shape and a constant color due to the lights in the scene.

Gouraud43はグーロー・シェードによるシェイプを描写している。グーロー・シェーディングはシェイプの各ポリゴンの3点における色がシェイプの色及びシーン内のライトに従って計算されるアルゴリズムである。その後、これらの色はポリゴンに沿って直線的に補間されて、シェイプがスムースにシェーディングされる。   Gouraud 43 portrays a Gouraud shade shape. Gouraud shading is an algorithm in which the color at three points of each polygon in a shape is calculated according to the color of the shape and the lights in the scene. These colors are then linearly interpolated along the polygon, and the shape is smoothly shaded.

Environment44はテキスチャ・マップのシェイプを描画している。テキスチャ・マッピング・アルゴリズムは、描写されるShape31を含むTransform32オブジェクトの方向性によりマップ情報を生成する。このシェーダーによって使用されたアルゴリズムは、マップ情報源を除いてTextureMap45シェーダーによって使用されるアルゴリズムと同一である。マップ情報がここでシェイプの方向に依存しているので、回転するシェイプが周囲または光源を反映しているかのように見える。このイリュ−ジョンはリアルな外見への反映及び単純なテキスチャ・マッピング・アルゴリズムを使用したライティングを実現するために使用することが可能である。   Environment 44 draws the shape of the texture map. The texture mapping algorithm generates map information based on the directionality of the Transform 32 object including the drawn Shape 31. The algorithm used by this shader is the same as that used by the TextureMap 45 shader except for the map information source. Since the map information now depends on the shape's direction, it looks as if the rotating shape reflects the surroundings or the light source. This illusion can be used to achieve a realistic look and lighting using a simple texture mapping algorithm.

TextureMap45はテキスチャ・マップのシェイプを描写している。テキスチャ・マッピング・アルゴリズムはシェーダー・オブジェクトを所有しているShape31オブジェクトに格納されたマップ情報を使用して、シェイプ上にテキスチャ・ビットマップをマッピングする。このことにより、あるテキスチャまたは描かれた画像を有しているかのようにシェイプが描写される。   TextureMap 45 depicts the shape of the texture map. The texture mapping algorithm maps the texture bitmap onto the shape using the map information stored in the Shape31 object that owns the shader object. This renders the shape as if it had some texture or drawn image.

TextureGur46はグーロー・シェーディング(Gouraud43等)及びテキスチャ・マッピング(TextureMap45等)の両方を行って、シェイプのポリゴンを描写している。このことにより、テキスチャ・マッピング及びスムースなシェードがされたオブジェクトが得られる。   TextureGur 46 performs both Gouraud shading (such as Gouraud 43) and texture mapping (such as TextureMap 45) to describe the polygons of the shape. This provides an object with texture mapping and smooth shades.

TextureEnv47は2つの異なるテキスチャ・イメージと異なる組のマッピング座標を有する2つのテキスチャ・マッピング操作を行い、その後混合アルゴリズムを使用してイメージを組み合わせている。実行された2つのマッピング操作はTextureMap45の描写アルゴリズムを遂行して、その結果をEnvironment44の描写アルゴリズムと組み合わせることと同じである。このシェーダーはシェイプにテキスチャ・イメージと反射/照明効果を付与するために使用される。   TextureEnv 47 performs two texture mapping operations with two different texture images and different sets of mapping coordinates, and then combines the images using a blending algorithm. The two mapping operations performed are the same as performing the TextureMap45 rendering algorithm and combining the results with the Environment44 rendering algorithm. This shader is used to give the shape a texture image and reflection / lighting effects.

図3(c)のセクションは3Dシーンを表示するためのその他のコア・クラスを含んでいる。これらのクラスは3D表示エンジンに必要な情報を含んでおり、この情報に関する機能を遂行している。例えば、Clipper57がラスター化を手伝い、MyPixelGrabber51が画像ファイルのロードを手伝い、Controller59が利用者イベントに従い3D制御アプレットを介してシーン情報を変更する役割を担っている、…等である。   The section of FIG. 3 (c) includes other core classes for displaying 3D scenes. These classes contain information necessary for the 3D display engine and perform functions related to this information. For example, Clipper 57 is responsible for rasterization, MyPixelGrabber 51 is responsible for loading an image file, Controller 59 is responsible for changing scene information via a 3D control applet according to a user event, and so on.

コア・クラスとして考える必要のあるYoe3types50クラスは、単にScene36クラスによって使用される定数を含んでいるもので、いかなるファンクションも実行せず、またいかなるデータも格納しない。
3D圧縮ファイルをロードする場合、このシーンファイルの構造はシーン要素を表現するノードまたは一般的なシーンファイルを含むようになっている。各ノードはサブノード及びデータ・フィールドを含んでいる。異なるノードタイプ及びデータ・フィールドタイプは、ファイル内でこれらの前にあるId番号によって特定される。このクラスは様々な可能性のあるデータ・ノード及びノード・フィールドのIdを示す定数を含んでいる。シーン・ローダー(Scene36クラスで実行される)がこのクラス内に存在しないIdに出会った場合、ノードまたはこのノードに属するデータ・フィールドをスキップする。
The Yoe3types50 class, which needs to be considered as a core class, simply contains the constants used by the Scene36 class, does not perform any function, and does not store any data.
When a 3D compressed file is loaded, the structure of the scene file includes a node representing a scene element or a general scene file. Each node includes subnodes and data fields. Different node types and data field types are identified by their Id numbers preceding them in the file. This class contains constants that indicate the Id of the various possible data nodes and node fields. If a scene loader (running in Scene 36 class) encounters an Id that does not exist in this class, it skips the node or the data field belonging to this node.

MyPixelGrabber51は、アプレットで使用されて、シーン(シェイプ・テキスチャ、背景画像等)内で使用されるイメージをロードする。また、MyImageObserver52インターフェイスを実行するクラスと合わせて使用される。イメージのロードを終了すると、MyPixelGrabber51オブジェクトはそのオブザーバー・オブジェクトを呼び戻して、イメージが準備されたことを知らせる。   MyPixelGrabber 51 is used in an applet to load an image used in a scene (shape texture, background image, etc.). Also used in conjunction with a class that executes the MyImageObserver52 interface. When the image finishes loading, the MyPixelGrabber 51 object recalls the observer object to inform it that the image has been prepared.

MyImageObserver52は、イメージがロードを終了すると呼び出されるファンクションのためのインターフェイスを定義している。幾つかのクラスはMyImageObserver52インターフェイスを実行して、ロードを要求したイメージがロードを終えると通知する。アプレットによるイメージの実際のロードはMyPixelGrabber51オブジェクトを使用して行われる。MyPixelGrabber51オブジェクトがイメージのロードを終了すると、MyImageObserver52オブジェクトにこれを引き渡す。このような場合の例は、アプレットが新しい背景画像をロードする時である。Applet3da56クラスはYoe3d53クラス内のメソッド(オブジェクトの動作を定義する手続き)を呼び出して、新しい背景画像をセットする。MyImageObserver52インターフェイスを実行するYoe3d53はイメージをロードしてその後オブザーバー(この場合Yoe3d53)内のファンクション(機能)を呼び出すMyPixelGrabber51オブジェクト作成する。Yoe3d53はロードされたイメージデータを含み、それを使用してアプレットの背景を設定する。   MyImageObserver 52 defines an interface for a function that is called when the image finishes loading. Some classes implement the MyImageObserver52 interface to notify when the image that requested the load has finished loading. The actual loading of the image by the applet is done using the MyPixelGrabber51 object. When the MyPixelGrabber51 object finishes loading the image, it passes it to the MyImageObserver52 object. An example of such a case is when the applet loads a new background image. The Applet3da56 class calls a method (procedure that defines the operation of the object) in the Yoe3d53 class to set a new background image. The Yoe3d53 that executes the MyImageObserver52 interface creates a MyPixelGrabber51 object that loads an image and then calls a function in the observer (Yeo3d53 in this case). Yoe3d53 contains the loaded image data and uses it to set the applet background.

Yoe3d53は3D幾何学的作用、画像処理及び混合作用、ラスター化作用等を遂行するために使用される様々なファンクションを含んでいる。例えば、シェーダー・クラスが画面上に2Dポリゴンを描く前に、各シェイプのポリゴンの3D座標を、透視投影アルゴリズムを使用して2D座標値に変換しなければならない。この変換を行うファンクションはYoe3d53で実行される。また、このクラスは3Dシーンのラスター化中に使用される変数を含んでいる。例えば、重なっている3Dオブジェクトを正確に表示するために、Z−Bufferingと呼ばれるアルゴリズムが、表示されるビットマップ・イメージ内に各2Dポリゴンを埋め込んでいる最中にシェーダー・クラスによって遂行される。Z−Bufferingアルゴリズムには、各描写ピクセルの視点情報からの距離を埋めるために使用される大きなメモリバッファーが必要である。このメモリバッファーはYoe3d53クラス内にある。アプレットはApplet3da56オブジェクト内にある一つの包括的なYoe3d53オブジェクトを含んでいる。   Yoe3d53 includes various functions used to perform 3D geometric operations, image processing and mixing operations, rasterization operations, and the like. For example, before the shader class draws a 2D polygon on the screen, the 3D coordinates of each shape's polygon must be converted to 2D coordinate values using a perspective projection algorithm. The function for performing this conversion is executed by Yoe3d53. This class also contains variables used during rasterization of 3D scenes. For example, to accurately display overlapping 3D objects, an algorithm called Z-Buffering is performed by the shader class while embedding each 2D polygon in the displayed bitmap image. The Z-Buffering algorithm requires a large memory buffer that is used to fill the distance from the viewpoint information of each rendered pixel. This memory buffer is in the Yoe3d53 class. The applet contains one generic Yoe3d53 object that resides within the Applet3da56 object.

Applet3da56クラスの親であるI3daPainter54は、SuperBase55クラスの親クラスである。I3daPainter54は単なるインターフェイスであって、実際の実行を含んでおらず、I3daPainter54を実行するその他のクラスは別のクラスを継承している。このようなことは、Java(R)が可能ないかなるシステム上でも利用可能な標準的Java(R)ライブラリ・クラスであるアプレット・クラスを継承しているSuperBase55の場合もそうである。
I3daPainter54はシーン内のイベントを処理するインターフェイスを含んでいる。このようなイベントは例えば、シェイプ上またはツールバーボタン上のクリックを含んでいる。これらのイベントはその後それぞれに応じて処理される。Applet3da56の場合、これらのイベントは、後述するスクリプティング・エンジンを介してアプレットをホスティングしている3D制御アプレットからの呼び出しにより発生する。
The I3daPainter 54 that is the parent of the Applet3da56 class is a parent class of the SuperBase55 class. The I3daPainter 54 is merely an interface, does not include actual execution, and other classes that execute the I3daPainter 54 inherit another class. This is also the case with SuperBase 55, which inherits the applet class, which is a standard Java library library class that can be used on any Java-capable system.
The I3daPainter 54 includes an interface for processing events in the scene. Such events include, for example, clicks on shapes or toolbar buttons. These events are then processed accordingly. In the case of Applet3da56, these events are generated by a call from the 3D control applet hosting the applet via the scripting engine described below.

SuperBase55はいかなるJava(R)が可能なシステムにも用意されている標準的Java(R)ライブラリ・クラスであるアプレット・クラスを継承している。このクラスの基本機能はApplet3d56クラスの説明に記載するとおりである。   SuperBase 55 inherits an applet class which is a standard Java library class prepared in any Java-capable system. The basic functions of this class are as described in the description of the Applet3d56 class.

次に、Applet3da56クラスについて詳述する。
Applet3da56は主要アプレット・クラスであり、Java(R)アプレット・スーパークラスを継承している。アプレット・クラスは、アプレットとその環境間のJava(R)が動作する全てのWebブラウザで利用可能な標準インターフェイスを提供し、標準Java(R)クラスライブラリの一部として実行される。Webページ上に表示される全てのJava(R)アプレットは、アプレット・クラスを継承して重要なインターフェイスを実行するクラスでなければならない。このインターフェイスは、マウス及びキーボード等のイベントを介したアプレット領域を利用する方法、イベント入力をアプレットに対して処理する方法、クラス中で実行される一般機能を、Webブラウザによって実行される3D制御アプレットによって呼び出されるように、エクスポートする方法を含んでいる。
Next, the Applet3da56 class will be described in detail.
Applet3da56 is the main applet class and inherits the Java (R) applet superclass. The applet class provides a standard interface that can be used by all Web browsers that run Java (R) between the applet and its environment, and is executed as part of the standard Java (R) class library. All Java (R) applets displayed on a Web page must be classes that inherit the applet class and implement important interfaces. This interface is a 3D control applet that is executed by a Web browser, using a method of using an applet area via events such as a mouse and a keyboard, a method of processing event input to an applet, and general functions executed in a class. Includes a way to export to be called by.

アプレット・クラスを更に分類することによって、新しい種類のアプレットを定義したのが3Dアプレットである。Applet3da56はアプレット・クラスを直接に継承しているわけではない。その代わり、アプレット・クラスから継承したSuperBase55クラスを継承している。
Applet3daクラスが3D制御アプレットを介してWebブラウザにロードされると、Webブラウザは、Applet3da56によって実行される標準アプレット・インターフェイス機能を呼び出す。
It is the 3D applet that has defined a new kind of applet by further classifying the applet class. Applet3da56 does not directly inherit the applet class. Instead, it inherits the SuperBase55 class inherited from the applet class.
When the Applet3da class is loaded into the web browser via the 3D control applet, the web browser calls a standard applet interface function executed by Applet3da56.

1) まず、initファンクション(機能)が呼び出される。このファンクションはApplet3da56の内部データを初期化してシーン情報をApplet3da56の内部データ構成の中にロードする。
2) その後、startファンクションがWebブラウザによって呼び出される。このことにより、Applet3da56は、アプレットが受けた3D制御アプレットからのマウス移動及びキー入力等のイベントを処理する。これらのイベントは、Applet3da56に含まれるController59オブジェクトによって処理される。Applet3da56は、3Dシーンを描写する理由があるかどうか(最後に描写されてから何か変更されたかどうか)を確認するループを入力する。もしそうであれば、シーンを描写する。受け取ったイベント、スクリプティング・エンジンにより呼び出されたAPI機能により起こった変更、実行中のアニメーション及びオブジェクト移動によって、その後Controller59を呼び出し、シーン情報を更新する。このプロセスはアプレットが閉じるまでループで行われる。このループは以下の通りである。
(a) 最終フレームからの変更?
(b) シーン情報を更新するためにコントローラを呼び出す。
(c) 全ワールドの3D変換を現視点に対して行う。(Applet3da56の中に格納されたScene36オブジェクトにアクセスすることによって行われる)
(d) シーン・イメージを描写する。ループして(a)に戻る。
3) Webブラウザがアプレットを閉じると、Applet3da56の中に作成・格納されたシーン情報を公開したApplet3da56のstop/destroyファンクションを呼び出す。
Webブラウザにロードされた3D制御アプレットによって特定されているので、Webブラウザは、Applet3da56を実行することを理解している。
1) First, the init function (function) is called. This function initializes the internal data of Applet3da56 and loads the scene information into the internal data structure of Applet3da56.
2) Thereafter, the start function is called by the Web browser. As a result, Applet3da56 processes events such as mouse movements and key inputs from the 3D control applet received by the applet. These events are processed by the Controller 59 object included in Applet3da56. Applet3da 56 enters a loop that checks if there is a reason to render the 3D scene (whether something has changed since it was last rendered). If so, draw the scene. The controller 59 is subsequently called to update the scene information by the received event, the change caused by the API function called by the scripting engine, the animation being executed, and the object movement. This process continues in a loop until the applet closes. This loop is as follows.
(A) Change from the last frame?
(B) Call controller to update scene information.
(C) Perform 3D conversion of the entire world on the current viewpoint. (This is done by accessing the Scene36 object stored in Applet3da56)
(D) Draw a scene image. Loop back to (a).
3) When the Web browser closes the applet, it calls the applet3da56 stop / destroy function that publishes the scene information created and stored in Applet3da56.
As specified by the 3D control applet loaded in the web browser, the web browser understands to execute Applet3da56.

3Dアプレットにより取り出される3D圧縮ファイル60内の3Dシーン情報は、図4に示すようなファイル内容となっており、Header61(ヘッダー)、Shape62(形状)、Transform63(座標変換)、Light64(ライト)、Camera65(カメラ)等で構成され、バイナリデータとして一つのファイルに保存されている。   The 3D scene information in the 3D compressed file 60 extracted by the 3D applet has the file contents as shown in FIG. 4 and includes Header 61 (header), Shape 62 (shape), Transform 63 (coordinate conversion), Light 64 (light), It is composed of a camera 65 (camera) or the like, and is stored in a single file as binary data.

図5は、3Dアプレット内に含まれるY3dScriptAPI70(Application Programming Interface)の機能の各項目を示しており、利用者とのインタラクティブな3D画像表示を実現するために用意したインターフェィスであって、3D制御アプレット及びスクリプティング・エンジンを介してインタラクティブ3Dシーン表示を行うための、独自のスクリプト・インターフェイス部分の説明図である。
Y3dScriptAPI70には、図5に示すように、Shape71(形状)、Shapeプロパティ72(属性)、Transform73(座標変換)、Transformプロパティ74、Object75(オブジェクト)、Camera76(カメラ)、User interface77(ユーザーインターフェイス)、Display78(画面表示)、Animation79(アニメーション)、及びMiscellaneous80(その他)等がある。
各機能に関する説明は、上述の3Dアプレットに関する説明、及び以下に記載する説明の通りである、
FIG. 5 shows each item of the function of Y3dScript API 70 (Application Programming Interface) included in the 3D applet, which is an interface prepared for realizing interactive 3D image display with the user. FIG. 4 is an explanatory diagram of a unique script interface part for performing interactive 3D scene display via a scripting engine.
As shown in FIG. 5, the Y3dScript API 70 includes a Shape 71 (shape), a Shape property 72 (attribute), a Transform 73 (coordinate transformation), a Transform property 74, an Object 75 (object), a Camera 76 (camera), a User interface 77, a user interface 77, and a user interface 77. There are Display 78 (screen display), Animation 79 (animation), and Miscellaneous 80 (others).
The explanation about each function is the same as the explanation about the above-mentioned 3D applet and the explanation described below.

次にY3dScriptAPIについて詳述する。
Y3dScriptAPIのファンクション(機能)は、全て前述のApplet3da56クラス又はSuperBase55クラスにおいて実行されるパブリック・ファンクションである。各3DアプレットはApplet3da56クラスのインスタンス(実体化:クラスから出来上がったオブジェクトを意味する)を一つずつ含んでいる。このインスタンスは全てのJava(R)アプレットがWebブラウザにより実行される方法であり、Webブラウザによりロード・実行される主要なアプレット・クラスである。SuperBase55クラスには実インスタンス(実体)がなく、Applet3da56がSuperBase55クラスを継承しているので、全てのJava(R)スクリプト・API・ファンクションがApplet3da56内で実行されているように見える。
Next, Y3dScript API will be described in detail.
All the functions (functions) of Y3dScriptAPI are public functions executed in the above-mentioned Applet3da56 class or SuperBase55 class. Each 3D applet contains one instance of the Applet3da56 class (materialization: meaning an object created from the class). This instance is a method in which all Java® applets are executed by the Web browser, and is a main applet class loaded and executed by the Web browser. The SuperBase55 class does not have a real instance (substance), and Applet3da56 inherits the SuperBase55 class, so that all Java (R) scripts / API / functions appear to be executed in Applet3da56.

API・ファンクションはApplet3da56ファンクションの一部分にアクセスしてアプレット中で種々の作業を行う。以下はその例である(図示せず)。
1) setBGColor( )ファンクションはSuperBase55クラスの“yoe3d.m_gbColor”部分にアクセスしてその値をセットする。この値はアプレットの背景色として使用されている。その後、Applet3da56のRedrawAfterAct( )メソッドを呼び出してアプレットを塗り換える。
2) setPos( )ファンクションは3Dシーン中のトランスフォームの位置をセットするために使用される。これは、コントローラ・オブジェクト、すなわちSuperBase55クラスの一部分にアクセスして特定の3Dトランスフォームが現在選択されているかどうかを確認することによって行われる。その後、コントローラ・クラスのメソッドを使用して、その機能に渡された位置を、選択されたトランスフォームがある座標系に変換する。そうした後に、選択された「翻訳」可変部分が新しい位置にセットされ、アプレットを塗り替えるためのApplet3da56のRedrawAfterAct( )メソッドを使用してアプレットを塗り替える。
The API function accesses a part of the Applet3da56 function to perform various tasks in the applet. The following is an example (not shown).
1) The setBGColor () function accesses the “yoe3d.m_gbColor” portion of the SuperBase55 class and sets its value. This value is used as the background color of the applet. After that, Applet is repainted by calling the RedeAfterAfter () method of Applet3da56.
2) The setPos () function is used to set the position of the transform in the 3D scene. This is done by accessing a controller object, ie a part of the SuperBase55 class, to see if a particular 3D transform is currently selected. The controller class method is then used to transform the position passed to the function into a coordinate system with the selected transform. After that, the selected “translation” variable is set to a new location and the Applet3da56's RedrawAfterAct () method is used to repaint the applet.

上記の例では、Applet3da56クラスがアプレットの異なる面を管理する部分オブジェクトを含むことを示している。(コントローラは選択されたシーン要素に関する情報を含んでおり、yoe3d53はアプレット背景色等の一般情報を含んでいる。)これらのオブジェクトは異なるAPI・ファンクションによってアクセスされて、その後アプレット・シーンが描写されてこのアクセスの効果を示す。これらのオブジェクトはAPI・ファンクションがアクセスするためだけに存在しているのではないということを理解することが重要である。これらはシーン情報を含んでいて、シーンを描写するために使用されるオブジェクトである。例えば、3D制御アプレットを介して対応するアプレットと利用者との対話によりイベントが起こる。これらのイベントはまたApplet3da56クラスにおいて処理されて、イベントの処理によりオブジェクトにアクセスする。   The above example shows that the Applet3da56 class contains partial objects that manage different aspects of the applet. (The controller contains information about the selected scene element, and yoe3d53 contains general information such as the applet background color.) These objects are accessed by different API functions, after which the applet scene is rendered. Show the effect of lever access. It is important to understand that these objects do not exist only for access by API functions. These are objects that contain scene information and are used to describe the scene. For example, an event occurs by interaction between a corresponding applet and a user via a 3D control applet. These events are also processed in the Applet3da56 class to access objects through event processing.

図6は、図1に示した3Dシーン編集手段で生成するスクリプティング・エンジンの動作説明図であり、(a)は従来のインタラクティブ操作、(b)は本発明のインタラクティブ操作を説明する図である。
図6(a)に示すように、従来の3Dアプレットは、3Dアプレット内に用意された独自のJava(R)スクリプト・APIを介して、HTMLページ内に記述されたJava(R)スクリプトによって、利用者とのインタラクティブ操作を実現する3Dシーンを表示していた。
これに対し本発明では、図6(b)に示すように、3Dアプレット内の独自のY3dScriptAPIに対し、スクリプティング・エンジンを介して3D制御アプレットによるイベント情報を引き渡している。
スクリプティング・エンジンは、前述した3Dシーン編集手段において3Dシーンをカスタマイズし利用者とのインタラクティブ操作を実現するスクリプト記述部で記述したJava(R)スクリプトの文法に準拠した独自のスクリプト・コードをコンパイルすることによって得られるもので、3D制御アプレットによるユーザーイベント入力及び3Dシーンの制御情報は、このスクリプティング・エンジン及び3Dアプレット内の独自のスクリプト・インターフェィス(Y3dScriptAPI)を介して受け渡される。
6A and 6B are diagrams for explaining the operation of the scripting engine generated by the 3D scene editing unit shown in FIG. 1, wherein FIG. 6A is a diagram for explaining a conventional interactive operation, and FIG. 6B is a diagram for explaining an interactive operation of the present invention. .
As shown in FIG. 6 (a), a conventional 3D applet is obtained by a Java (R) script described in an HTML page via a unique Java (R) script API prepared in the 3D applet. A 3D scene that realizes an interactive operation with the user was displayed.
On the other hand, in the present invention, as shown in FIG. 6B, event information from the 3D control applet is delivered to the unique Y3dScript API in the 3D applet via the scripting engine.
The scripting engine compiles a unique script code that conforms to the Java (R) script grammar described in the script description section that customizes the 3D scene and realizes interactive operation with the user in the 3D scene editing means described above. The user event input by the 3D control applet and the control information of the 3D scene are passed through the scripting engine and a unique script interface (Y3dScript API) in the 3D applet.

図7は、3D制御アプレットのユーザーインターフェイス部に関する概略説明図であり、任意の画像のクリック等により選択するBitmapButton91、テキストにより選択するボタンButtn92、複数候補から選択するチェックボックスCheckBox93、これらを組み合わせた複合選択ComboBox94、ドロップダウンリストを表示して選択するListBox95、編集用のEdit96、ラベル指定によりジャンプ可能なLabel97、任意の画像を表示するためのBitmap98、テキスト入力欄TextArea99、及び確認や動作の設定を求めるDialogs100等のイベント入力を含む各種入力手段が用意され、3Dシーン編集手段のスクリプト記述部内で記述するJava(R)スクリプトの文法に準拠したスクリプをコンパイルすることによって対応する3D制御アプレットが生成される。   FIG. 7 is a schematic explanatory diagram regarding the user interface part of the 3D control applet. Bitmap Button 91 selected by clicking an arbitrary image, button Butt 92 selected by text, check box Check 93 selected from a plurality of candidates, and a combination of these Select combo box 94, list box 95 for selecting and displaying a drop-down list, edit 96 for editing, label 97 that can be jumped by specifying a label, bit map 98 for displaying an arbitrary image, text input field TextArea 99, and confirmation and operation settings are obtained. Various input means including event inputs such as Dialogs 100 are prepared, and the Java (R) script described in the script description part of the 3D scene editing means is prepared. Corresponding 3D control applet by compiling scripts that conform to the capital of the grammar is generated.

図8は、アプレット・タグが記載されたHTMLソースの一例を示す図であり、(a)は従来のJava(R)スクリプトによるもので、(b)は本発明の3D制御アプレットによるものである。
従来のアプレット・タグは、図8(a)の101〜106に示すように、
<applet code=”Applet3da.class” codebase=”../” width=”360” height=”240” id=”Applet1” ARCHIVE=”3danywhere.zip” MAYSCRIPT>
<param name=”source” value=”example.3da”>


</applet>
のように記述され、アプレット・タグの「code=」部分で、直接Applet3da56クラスファイルを呼び出し、201〜205のJava(R)スクリプトにより利用者とのインタラクティブ操作を実現していた。
FIG. 8 is a diagram showing an example of an HTML source in which applet tags are described. (A) is based on a conventional Java (R) script, and (b) is based on a 3D control applet of the present invention. .
As shown in 101-106 in FIG.
<Apple code = "Applet3da.class" codebase = "../" width = "360" height = "240" id = "Applet1" ARCHIVE = "3danwhere.zip"MAYSCRIPT>
<Param name = "source" value = "example.3da">
:
:
</ Applet>
The Applet3da56 class file is directly called at the “code =” portion of the applet tag, and interactive operation with the user is realized by the Java (R) script 201-205.

これに対して、本発明では、図8(b)の301〜306に示すように、
<applet code=”Y3dButton.class” width=”100” height=”30”>
<param name=”name” value=”button1”>
<param name=”Y3dApplet” value=”AppletY3d1”>
<param name=”BGColor” value=”000000”>
<param name=”text” value=”Click me”>
</applet>
のように記述し、アプレット・タグの「code=」部分で、利用者とのインタラクティブ操作を定義したY3dButton.class(3D制御アプレット)を指定する。従来Javascriptで記述していた部分は3D制御アプレット及びスクリプティング・エンジンにより行われ、3D制御アプレット及びスクリプティング・エンジンを介してApplet3da56クラスファイルが呼び出される。変更又は定義が必要な要素は<param…>の中で指定する。
On the other hand, in the present invention, as indicated by 301 to 306 in FIG.
<Apple code = "Y3dButton.class" width = "100" height = "30">
<Param name = "name" value = "button1">
<Param name = "Y3dApplet" value = "AppletY3d1">
<Param name = "BGColor" value = "000000">
<Param name = "text" value = "Click me">
</ Applet>
Y3dButton., Which defines an interactive operation with the user in the “code =” part of the applet tag. class (3D control applet) is specified. The portion previously described in Javascript is performed by the 3D control applet and the scripting engine, and the Applet3da56 class file is called through the 3D control applet and the scripting engine. Elements that need to be changed or defined are specified in <param ...>.

最後に、Web3D画像表示システムの実施の形態として、図9の実施例2を参照して説明する。
図9に示す実施例2は、図1のWeb3D画像表示システムをサーバとクライアントシステムという構成にしたもので、通信ネットワークを介してWebサーバから3Dオブジェクトや3Dシーン等の各情報をダウンロードし、クライアントPCのWebブラウザ上で3D画像や3Dアニメーションを表示するように構成したものである。
なお、システムセンター3内のWebサーバ5、FTPサーバ6、データベースサーバ7及び各手段10〜17、PC2内のWebブラウザ及び各手段21〜26は、市販のPC(パーソナルコンピュータ)やワークステーションに実装された所定のプログラムの実行により動作するもので、PCやワークステーションを構成するCPU(中央制御装置)、メモリやハードディスク等の記憶装置、画像やテキスト等を表示する表示装置、キーボードやマウス等の入力装置、及び通信回線との入出力装置等に関する説明及びその構成図面は省略する。
また、上述した処理手順等の重複する説明は省略する。
Finally, an embodiment of the Web 3D image display system will be described with reference to Example 2 in FIG.
In the second embodiment shown in FIG. 9, the Web 3D image display system of FIG. 1 is configured as a server and a client system. Each information such as a 3D object and a 3D scene is downloaded from a Web server via a communication network, and the client It is configured to display 3D images and 3D animations on a PC web browser.
The Web server 5, FTP server 6, database server 7 and each means 10-17 in the system center 3 and the Web browser and each means 21-26 in the PC 2 are mounted on a commercially available PC (personal computer) or workstation. The computer operates by executing a predetermined program, such as a CPU (Central Control Unit) constituting a PC or a workstation, a storage device such as a memory or a hard disk, a display device for displaying images or text, a keyboard or a mouse, etc. A description of the input device, the input / output device with the communication line, and the like and the configuration drawing thereof are omitted.
In addition, overlapping description of the above-described processing procedure and the like is omitted.

図9において、3はシステムセンターであり、2はインターネット4を介してシステムセンター3と接続するWebブラウザを有する不特定多数のPC(クライアントコンピュータ)である。
5はシステムセンター3内のWebサーバで、PC3に3D情報データ18を、インターネット4を介して配信する。6は3D情報データ18の転送を管理するFTPサーバで、システムセンター3に外部からアクセスする場合に使用するものであるが、ここではそのアプリケーションについては触れない。7はデータベースのアクセスを管理するデータベースサーバである。10は3Dオブジェクト作成手段で「3ds」等の各種3Dソフトにより3Dオブジェクトの作成をする。11はVRMLファイル生成手段で、作成された3DオブジェクトファイルをVRMLフォーマットに変換する。
In FIG. 9, 3 is a system center, and 2 is an unspecified number of PCs (client computers) having Web browsers connected to the system center 3 via the Internet 4.
Reference numeral 5 denotes a Web server in the system center 3 that distributes 3D information data 18 to the PC 3 via the Internet 4. An FTP server 6 manages the transfer of the 3D information data 18 and is used when accessing the system center 3 from the outside, but the application is not described here. A database server 7 manages database access. Reference numeral 10 denotes a 3D object creation means for creating a 3D object using various 3D software such as “3ds”. Reference numeral 11 denotes a VRML file generating means for converting the created 3D object file into a VRML format.

12は3Dシーンカスタマイズ手段、13が3D圧縮ファイル生成手段であり、3Dシーン編集手段により、VRMLファイルからシーン情報を取り出し、カスタマイズ情報を付加して必要なシーン情報を一つの圧縮ファイルとして3D圧縮ファイルを生成し3D情報保存手段17により同時に生成したテキスチャ・ファイル(図示せず)と共に3D情報データ18として記憶装置(図示せず)に保存する。14は3Dシーン編集手段によってインタラクティブな3D画像表示を行うための3Dアプレットを生成する3Dアプレット生成手段である。3Dシーンを表示するために必要な各アプレット・クラスは一つの圧縮ファイルとして保存される。
15は3D制御アプレット生成手段で、利用者とのインタラクティブ操作に伴うイベント入力を扱うために必要なアプレット群を、一つにまとめた圧縮ファイルとして生成する。3D制御アプレット生成手段15で生成されるアプレット群は利用者とのインタラクティブ操作のためのインターフェイスだけでなく、3Dオブジェクトや3Dシーンを表示するための3Dアプレットとのインターフェイスも含まれる。
12 is a 3D scene customization unit, and 13 is a 3D compressed file generation unit. The 3D scene editing unit extracts scene information from the VRML file, adds customization information, and converts the necessary scene information into a single compressed file. Is stored in a storage device (not shown) as 3D information data 18 together with a texture file (not shown) simultaneously generated by the 3D information storage means 17. Reference numeral 14 denotes 3D applet generation means for generating a 3D applet for performing interactive 3D image display by the 3D scene editing means. Each applet class required to display a 3D scene is saved as a single compressed file.
Reference numeral 15 denotes a 3D control applet generating means for generating a group of applets necessary for handling event inputs accompanying interactive operations with the user as a compressed file. The applet group generated by the 3D control applet generation means 15 includes not only an interface for interactive operation with a user but also an interface with a 3D applet for displaying a 3D object and a 3D scene.

16はWebページ生成手段で、3Dシーンを表示するための3D制御アプレット生成手段15で生成された3D制御アプレット・タグを含むWebページ(HTMLページ)を自動生成する。
17は3Dシーン編集手段によって生成された3Dシーンの表示に必要な各種3D情報を保存する3D情報保存手段であり、Webブラウザ上で3Dシーンを表示するために必要な各生成手段で生成されたこれらの各種3D情報を3D情報データ18としてWeb画像生成システム内の記憶装置(図示せず)に保存・蓄積する。
Reference numeral 16 denotes a Web page generation unit that automatically generates a Web page (HTML page) including the 3D control applet tag generated by the 3D control applet generation unit 15 for displaying a 3D scene.
Reference numeral 17 denotes a 3D information storage unit for storing various 3D information necessary for displaying the 3D scene generated by the 3D scene editing unit. The 3D information storage unit 17 is generated by each generation unit necessary for displaying the 3D scene on the Web browser. These various types of 3D information are stored and accumulated as 3D information data 18 in a storage device (not shown) in the Web image generation system.

一方、PC2内のWebブラウザは、HTML、Java(R)アプレット、等の処理機能を有し、21は3D制御アプレット要求手段であり、図8に示したようなHTMLページ内に記述されたタグによってシステムセンター3のWebサーバ5へ3D制御アプレットのダウンロードを要求する。ダウンロードされた3D制御アプレットはWebブラウザ内のVM(仮想マシン)によって実行され(3D制御アプレット実行手段24)、3D制御アプレットの実行により3Dアプレット要求手段22が起動され、ダウンロードされた3Dアプレットの実行(3Dアプレット実行手段25)によって3D圧縮ファイル要求手段23を起動し、3D圧縮ファイル及びテキスチャ・ファイルをダウンロードして3Dシーンの表示を行う。26はインタラクティブ表示処理手段で、Webブラウザ単独で利用者とのインタラクティブ操作を実現した3Dシーンの表示を行う。   On the other hand, the Web browser in the PC 2 has processing functions such as HTML, Java (R) applet, etc., 21 is a 3D control applet request means, and tags described in the HTML page as shown in FIG. To request the Web server 5 of the system center 3 to download the 3D control applet. The downloaded 3D control applet is executed by a VM (virtual machine) in the Web browser (3D control applet execution means 24), and the execution of the 3D control applet activates the 3D applet request means 22 to execute the downloaded 3D applet. The (3D applet executing means 25) activates the 3D compressed file requesting means 23, downloads the 3D compressed file and the texture file, and displays the 3D scene. Reference numeral 26 denotes an interactive display processing means for displaying a 3D scene that realizes an interactive operation with a user using a Web browser alone.

上述した実施例は、PC上のWebブラウザ上で3Dシーンを表示する構成にしたものであるが、本発明は、デスクトップ型やノート型PCに限らず、PDA(携帯情報端末)や携帯電話等のモバイル端末に実装されたVMを有するWebブラウザ搭載機器で3Dシーンを表示でき、また、上述したようにJava(R)アプレットのみで利用者とのインタラクティブ操作が可能な3Dシーンを表示するように構成したので、VM(仮想マシン)を搭載した事務機器、医療機器、家電機器、AV(音声・映像)機器や、或いはカーナビゲーション、インストルメントパネル等の自動車内搭載機器に組み込むことも可能である。このようにプラットフォームを選ばないシステムとすることにより3Dシーンの表示が各種の電子機器で行えるようになり、その利用可能性は様々な分野に広がる。   The embodiment described above is configured to display a 3D scene on a Web browser on a PC. However, the present invention is not limited to a desktop type or a notebook type PC, but a PDA (personal digital assistant), a mobile phone, or the like. 3D scenes can be displayed on a web browser-equipped device having a VM mounted on a mobile terminal of the user, and a 3D scene that can be interactively operated with a user can be displayed using only a Java (R) applet as described above. Because it is configured, it can be incorporated into office equipment, medical equipment, home appliances, AV (audio / video) equipment equipped with VMs (virtual machines), or in-car equipment such as car navigation and instrument panels. . By adopting a system that does not select a platform in this way, 3D scenes can be displayed on various electronic devices, and the applicability of the 3D scenes extends to various fields.

本発明の実施の形態におけるWeb3D画像表示システムの構成を示す概略図であり、(a)はWeb3D画像生成システム、(b)は生成されたWeb3D画像を表示するWebブラウザのそれぞれの構成である。It is the schematic which shows the structure of the web 3D image display system in embodiment of this invention, (a) is a web 3D image generation system, (b) is each structure of the web browser which displays the produced | generated Web 3D image. 図1に示すWeb3D画像表示システムの処理フロー図である。FIG. 2 is a processing flowchart of the Web3D image display system shown in FIG. 1. 図1に示す3Dアプレットの構造を示す概略図である。It is the schematic which shows the structure of 3D applet shown in FIG. 図1に示す3D圧縮ファイルの内容を示す概略構成図である。It is a schematic block diagram which shows the content of the 3D compression file shown in FIG. 図1に示す3Dアプレットのスクリプト・インターフェイス部の概略構成図である。It is a schematic block diagram of the script interface part of 3D applet shown in FIG. 図1に示す3Dシーン編集手段で生成するスクリプティング・エンジンの動作説明図であり、(a)は従来のインタラクティブ操作、(b)は本発明のインタラクティブ操作説明図である。2A and 2B are operation explanatory views of a scripting engine generated by the 3D scene editing unit shown in FIG. 1, wherein FIG. 1A is a conventional interactive operation, and FIG. 1B is an interactive operation explanatory view of the present invention. 図1に示す3D制御アプレットのユーザーインターフェイス部の概略説明図である。It is a schematic explanatory drawing of the user interface part of 3D control applet shown in FIG. アプレット・タグが記載されたHTMLソースの一例を示す図であり、(a)は従来のJava(R)スクリプトによるもので、(b)は本発明の3D制御アプレットによるものである。It is a figure which shows an example of the HTML source by which the applet tag was described, (a) is based on the conventional Java (R) script, (b) is based on the 3D control applet of this invention. 本発明の実施の形態におけるWeb3D画像表示システムの実施例2の概略構成図である。It is a schematic block diagram of Example 2 of the Web3D image display system in the embodiment of the present invention.

符号の説明Explanation of symbols

1 Web3D画像生成システム
2 PC(Webブラウザ)
3 システムセンター
4 通信ネットワーク
5 Webサーバ
6 FTPサーバ
7 データベースサーバ
10 3Dオブジェクト作成手段
11 VRMLファイル生成手段
12 3Dシーンカスタマイズ手段
13 3D圧縮ファイル生成手段
14 3Dアプレット生成手段
15 3D制御アプレット生成手段
16 Webページ生成手段
17 3D情報保存手段
18、27 3D情報データ
21 3D制御アプレット要求手段
22 3Dアプレット要求手段
23 3D圧縮ファイル要求手段
24 3D制御アプレット実行手段
25 3Dアプレット実行手段
26 インタラクティブ表示処理手段
1 Web3D image generation system 2 PC (Web browser)
3 System Center 4 Communication Network 5 Web Server 6 FTP Server 7 Database Server 10 3D Object Creation Unit 11 VRML File Generation Unit 12 3D Scene Customization Unit 13 3D Compressed File Generation Unit 14 3D Applet Generation Unit 15 3D Control Applet Generation Unit 16 Web Page Generation means 17 3D information storage means 18, 27 3D information data 21 3D control applet request means 22 3D applet request means 23 3D compressed file request means 24 3D control applet execution means 25 3D applet execution means 26 Interactive display processing means 26

Claims (9)

各種の3Dモデリングソフトウェアプログラムによって生成されたVRML等の標準的なWeb用3Dグラフィックス記述言語で記述されたファイルフォーマットのWeb3Dファイルを基に3Dシーンの編集を行いWebブラウザ上で3Dシーンを表示するコンピュータシステムであって、
3Dオブジェクト及び3Dシーン情報を含む前記Web3Dファイルを基に3Dシーンのカスタマイズを行い前記Webブラウザ上で3Dシーンを表示するための各種情報を付与する3Dシーンカスタマイズ手段と、
前記Web3Dファイルから得られたアニメーション等に必要な属性情報を含む3Dオブジェクト及び3Dシーン情報を圧縮し3D圧縮ファイルを生成する3D圧縮ファイル生成手段と、
圧縮された前記3D圧縮ファイルの3Dオブジェクト及び3Dシーン情報を基に前記Webブラウザ上でリアルタイム3Dレンダリング及びモーションアルゴリズムを実行して3Dシーンを表示するための3Dアプレットを生成する3Dアプレット生成手段と、
前記Webブラウザ上でキーボード・マウス等によるユーザーイベント入力を前記3Dアプレットに受け渡し3Dオブジェクトの移動・変更等の利用者とのインタラクティブ操作を行うための3D制御アプレットを生成する3D制御アプレット生成手段と、
前記3Dアプレット及び前記3D制御アプレットを呼び出すアプレット・タグが含まれるWebページを生成するWebページ生成手段と、
3Dシーンの表示に必要な生成された前記3D圧縮ファイル、前記3Dアプレット、前記3D制御アプレット、前記Webページ、及びテキスチャ・ファイルからなる3D情報ファイルを記憶装置に保存する3D情報保存手段と、を少なくとも含む3Dシーン編集手段を備え、
前記Webブラウザによって、保存された前記3D情報ファイルを読込み前記3Dアプレット及び前記3D制御アプレットを実行する3Dアプレット実行手段と、
前記3Dアプレット及び前記3D制御アプレットの実行によって利用者とのインタラクティブな3Dシーンの表示を行うインタラクティブ表示処理手段とを備えることを特徴とするWeb3D画像表示システム。
Edit a 3D scene based on a Web3D file in a file format described in a standard 3D graphics description language for Web such as VRML generated by various 3D modeling software programs, and display the 3D scene on a Web browser A computer system,
3D scene customization means for customizing a 3D scene based on the Web3D file including a 3D object and 3D scene information and providing various information for displaying the 3D scene on the Web browser;
3D compressed file generation means for compressing a 3D object and 3D scene information including attribute information necessary for animation obtained from the Web 3D file and generating a 3D compressed file;
3D applet generation means for generating a 3D applet for displaying a 3D scene by executing real-time 3D rendering and motion algorithm on the Web browser based on the 3D object and 3D scene information of the compressed 3D compressed file;
3D control applet generation means for generating a 3D control applet for performing an interactive operation with a user such as transferring and changing a 3D object by passing a user event input by a keyboard / mouse on the web browser to the 3D applet;
Web page generating means for generating a Web page including an applet tag for calling the 3D applet and the 3D control applet;
3D information storage means for storing a 3D information file including the generated 3D compressed file, the 3D applet, the 3D control applet, the web page, and a texture file necessary for displaying a 3D scene in a storage device; 3D scene editing means including at least
3D applet execution means for reading the stored 3D information file by the web browser and executing the 3D applet and the 3D control applet;
An interactive display processing means for displaying an interactive 3D scene with a user by executing the 3D applet and the 3D control applet, and a Web 3D image display system.
前記3D圧縮ファイルは、前記3Dアプレットから呼び出される少なくとも形状、座標変換、ライト、カメラの情報を含む3Dシーン情報から成り、バイナリデータとして一つのファイルに保存されることを特徴とする請求項1に記載のWeb3D画像表示システム。   2. The 3D compressed file includes 3D scene information including at least shape, coordinate conversion, light, and camera information called from the 3D applet, and is stored in a single file as binary data. The Web3D image display system described. 前記3Dアプレットは、複数のアプレット・クラスで構成され、少なくとも形状、座標変換、ライト、カメラを含むシーン要素の各クラスと、ワイヤフレーム、フラット・シェーディング、グーロー・シェーディングを含むシェーダー・クラスと、3D画像を表示するための各種コア・クラスとから成る各クラス内から前記3Dシーンの表示に必要な当該クラスが選択され一つの圧縮ファイルとして保存されることを特徴とする請求項1に記載のWeb3D画像表示システム。   The 3D applet includes a plurality of applet classes, each class of scene elements including at least shape, coordinate transformation, light, and camera, a shader class including wireframe, flat shading, and goo shading, and 3D 2. The Web3D according to claim 1, wherein the class necessary for displaying the 3D scene is selected from each class including various core classes for displaying an image, and is stored as one compressed file. Image display system. 前記3D制御アプレットの実行による前記3Dアプレットとの受け渡し情報は、利用者とのインタラクティブ操作が可能な3D画像を表示するために、少なくともオブジェクト、形状、座標、カメラ、アニメーション、画像表示、及びユーザーインターフェイスの各情報のいずれか1つ以上を含むことを特徴とする請求項1に記載のWeb3D画像表示システム。   The information exchanged with the 3D applet by executing the 3D control applet includes at least an object, a shape, coordinates, a camera, an animation, an image display, and a user interface in order to display a 3D image that can be interactively operated with a user. The Web 3D image display system according to claim 1, comprising any one or more of each of the information. 前記3D制御アプレットは、少なくとも、画像による選択ボタン、テキストによる選択ボタン、複数候補から選択するチェックボックス、ドロップダウンリストにより選択するセレクトボタン、及びテキスト入力欄を含むユーザーインターフェイスの各クラスと、Webページ内のタグ範囲指定、画像タグ情報、及びテキストエリア・タグ情報の各クラスとを含む複数のアプレット・クラスが、前記3Dアプレットとの受け渡し情報の一部を構成し、該各クラス内から前記インタラクティブ操作のために必要な当該クラスが選択され一つの圧縮ファイルとして保存されることを特徴とする請求項1に記載のWeb3D画像表示システム。   The 3D control applet includes at least a selection button based on an image, a selection button based on a text, a check box selected from a plurality of candidates, a selection button selected based on a drop-down list, and a user interface class including a text input field, and a Web page A plurality of applet classes including tag range designation, image tag information, and text area tag information classes constitute a part of information exchanged with the 3D applet, and the interactive class is created from within each class. 2. The Web3D image display system according to claim 1, wherein the class required for operation is selected and saved as one compressed file. 前記3Dアプレットは、スクリプト・コードによって利用者とのインタラクティブ操作を可能にする独自のスクリプト・インターフェイスを有し、
前記3D制御アプレットの実行による前記3Dアプレットとの前記3Dシーンの情報及び前記インタラクティブ操作に伴う情報の受け渡しは、該スクリプト・インターフェイスを介して行うことを特徴とする請求項1に記載のWeb3D画像表示システム。
The 3D applet has a unique script interface that enables interactive operation with a user through script code;
2. The Web 3D image display according to claim 1, wherein the 3D scene information and the information accompanying the interactive operation are exchanged with the 3D applet by executing the 3D control applet through the script interface. system.
前記3Dシーンカスタマイズ手段は、前記3Dシーンをカスタマイズするためのスクリプト言語の編集手段及び該スクリプト言語で記述されたプログラムソースのコンパイル手段を有し、該コンパイル手段によって前記3D制御アプレットの実行により前記スクリプト・インターフェイスを介し前記3Dアプレットと情報の受け渡しを行うためのスクリプティング・エンジンを生成することを特徴とする請求項1に記載のWeb3D画像表示システム。   The 3D scene customizing unit includes a script language editing unit for customizing the 3D scene and a program source compiling unit described in the script language. The script is obtained by executing the 3D control applet by the compiling unit. The Web 3D image display system according to claim 1, wherein a scripting engine for exchanging information with the 3D applet via an interface is generated. 前記3Dシーン編集手段は、Webブラウザ上で表示される3D画像、3D画像のアニメーション、及び利用者とのインタラクティブ操作を行うユーザ操作ボタン等を含む前記3Dシーンを確認表示するためのプレビュー部と、該プレビュー部の3Dシーンをカスタマイズするためのスクリプト記述部とを少なくとも含む表示手段を有することを特徴とする請求項1に記載のWeb3D画像表示システム。   The 3D scene editing means includes a preview unit for confirming and displaying the 3D scene including a 3D image displayed on a web browser, an animation of a 3D image, a user operation button for performing an interactive operation with a user, and the like. The Web 3D image display system according to claim 1, further comprising display means including at least a script description unit for customizing the 3D scene of the preview unit. 前記スクリプト記述部の、3D画像の形状、座標、カメラ、テキスチャ、アニメーション、利用者とのインタラクティブ操作等の3Dシーンのカスタマイズは、プログラムステップ毎に前記プレビュー部の3Dシーンの当該箇所に反映され、
前記プレビュー部のユーザ操作ボタン等によるインタラクティブ操作によって生じる前記3Dシーンの変更は、前記スクリプト記述部のプログラムソーステキストの当該記述箇所に反映され、
該スクリプト記述部又は該プレビュー部のいずれか一方の編集又は操作結果が、ほぼリアルタイムに相互に反映されることを特徴とする請求項8に記載のWeb3D画像表示システム。
The customization of the 3D scene such as the shape, coordinates, camera, texture, animation, interactive operation with the user, etc. of the 3D image in the script description part is reflected in the corresponding part of the 3D scene in the preview part for each program step,
The change of the 3D scene caused by the interactive operation by the user operation button or the like of the preview part is reflected in the description part of the program source text of the script description part,
9. The Web 3D image display system according to claim 8, wherein an editing result or an operation result of either the script description part or the preview part is mutually reflected in substantially real time.
JP2003406404A 2003-12-04 2003-12-04 Web 3d-image display system Pending JP2005165873A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003406404A JP2005165873A (en) 2003-12-04 2003-12-04 Web 3d-image display system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003406404A JP2005165873A (en) 2003-12-04 2003-12-04 Web 3d-image display system

Publications (1)

Publication Number Publication Date
JP2005165873A true JP2005165873A (en) 2005-06-23

Family

ID=34728786

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003406404A Pending JP2005165873A (en) 2003-12-04 2003-12-04 Web 3d-image display system

Country Status (1)

Country Link
JP (1) JP2005165873A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234199A (en) * 2007-03-19 2008-10-02 Micronet Co Ltd Three-dimensional computer graphic generation device and program
JP2008545207A (en) * 2005-06-29 2008-12-11 クゥアルコム・インコーポレイテッド Visual debugging system for 3D user interface programs
JP2011502292A (en) * 2007-09-24 2011-01-20 マイクロソフト コーポレーション Rendering of 3D objects on server computers
JP2014203452A (en) * 2013-04-02 2014-10-27 勝 畢 Method of object customization by high-speed and realistic 3d rendering through web pages
CN108597028A (en) * 2018-04-11 2018-09-28 北京邮电大学 A kind of method, apparatus and equipment of continuous load Web AR objects
CN112634446A (en) * 2020-12-11 2021-04-09 北方信息控制研究院集团有限公司 Multi-engine three-dimensional scene data conversion method based on space-time consistency
WO2023185315A1 (en) * 2022-03-28 2023-10-05 京东方科技集团股份有限公司 Method and apparatus for managing scenario data, and electronic device and readable medium

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008545207A (en) * 2005-06-29 2008-12-11 クゥアルコム・インコーポレイテッド Visual debugging system for 3D user interface programs
US8589142B2 (en) 2005-06-29 2013-11-19 Qualcomm Incorporated Visual debugging system for 3D user interface program
JP2008234199A (en) * 2007-03-19 2008-10-02 Micronet Co Ltd Three-dimensional computer graphic generation device and program
JP2011502292A (en) * 2007-09-24 2011-01-20 マイクロソフト コーポレーション Rendering of 3D objects on server computers
JP2014203452A (en) * 2013-04-02 2014-10-27 勝 畢 Method of object customization by high-speed and realistic 3d rendering through web pages
CN108597028A (en) * 2018-04-11 2018-09-28 北京邮电大学 A kind of method, apparatus and equipment of continuous load Web AR objects
CN112634446A (en) * 2020-12-11 2021-04-09 北方信息控制研究院集团有限公司 Multi-engine three-dimensional scene data conversion method based on space-time consistency
CN112634446B (en) * 2020-12-11 2023-09-26 北方信息控制研究院集团有限公司 Multi-engine three-dimensional scene data conversion method based on space-time consistency
WO2023185315A1 (en) * 2022-03-28 2023-10-05 京东方科技集团股份有限公司 Method and apparatus for managing scenario data, and electronic device and readable medium

Similar Documents

Publication Publication Date Title
JP4051484B2 (en) Web3D image display system
RU2360290C2 (en) Integration of three-dimensional scene hierarchy into two-dimensional image assembly system
US8723875B2 (en) Web-based graphics rendering system
US7661071B2 (en) Creation of three-dimensional user interface
Di Benedetto et al. SpiderGL: a JavaScript 3D graphics library for next-generation WWW
EP0890926A1 (en) Device, method, and medium for generating graphic data
CN113901367A (en) BIM (building information modeling) mass model display method based on WebGL + VR (WebGL + VR)
US11625900B2 (en) Broker for instancing
JP2005165873A (en) Web 3d-image display system
Ko et al. Interactive web-based virtual reality with Java 3D
JP4140333B2 (en) Web3D file editing system
Di Benedetto et al. SpiderGL: a graphics library for 3D web applications
Álvarez et al. EZ3. js: A robust and flexible WebGL-based 3D engine
Chin et al. JavaFX 3D
Sung et al. Working with Textures, Sprites, and Fonts
Lyytikäinen Survey of the current state of 3D production pipelines for the web
Gobbetti et al. Building an interactive 3D animation system
CN118331572A (en) Method for constructing mixed reality space based on WebGL zero codes
Müller et al. An Efficient Object-oriented Authoring and Presentation System for Virtual Environments
Ahlgren Graph visualization with OpenGL
Kajler IZIC 1.0.: an Overview for the User
Nadeau et al. Introduction to Programming with Java 3D.
Rodrigues et al. Developing Interaction 3D Models for E-Learning Applications