VRMLとは
概説
VRML(Virtual Reality Modeling Language)は3次元の仮想空間を表現するための言語である。
データの仕様は SGI における Open Inventor のデータである iv ファイルのサブセットになっている。
VRML のデータを表示するためには VRML 用のビューワを使用する。
また、Netscape などのブラウザー用のプラグインを使用すれば、ブラウザー上で表示することもできる。
もともとはインターネット上で3次元データを表示するためのものとして開発されたが、CG制作者にとってはCGソフトウェア間のデータ受渡しのために利用できる。
(MAYAではVRML2.0のフォーマットで出力される)
現在はVRML97(VRML2.0の次のバージョン)が最新だが、ここではVRML1.0 にもとづいて解説する。
VRML の特徴
- ノードの組合せによって構成される。
ノードとは3次元空間を構成する要素のことである。
(球、ポリゴン、ライトなど)
- ノードにはフィールドがつく。
フィールドとはノードのパラメータ(球の半径、座標値、色の値など)のことである。
(フィールドが記述されていない場合はデフォールトの値になる)
- ノードは階層構造になっている。
- 静止画・動画よりもデータの量が少なくて済む。
- オブジェクトにリンクを張ることが出来る。
- データファイルがテキストなので、特別なツールが無くてもデータを作ることが出来る。
- ポリゴンベースなので自由曲線・自由曲面(NURBSなど)は表現できない。
VRML ビューワ
VRMLのデータを見るためには各種のソフトがあるがブラウザ(ネットスケープなど)によるのが便利だろう。
また、DXF ファイルなどから VRML にコンバートするツールなどもある。
主なビューワは参考の項を参照のこと。
VRMLのバージョン
VRMLには以下のバージョンがある。
VRML2.0は1.0とは文法的に互換性が無いので注意が必要である。
VRML2.0 で追加された機能
- リアリティのある表現機能
空と地面に色・テクスチャーを着けることが出来る。霧の効果もつく。
- インタラクション
物体に当たると衝突する。センサを使って特定の動作をさせることが出来る。
- アニメーション機能
物体を線形に動かすことが出来る。
- スクリプト
インタラクションから、Javaなどの言語を呼び出すことが出来る。
- プロトタイプ機能
オブジェクトの雛型を作る
VRML97 で追加された機能
- マルチユーザー
一つのシーンに同時に複数のユーザーが入って操作できる。
参考
- VRML関係のサイト
- VRMLビューワー
- CosmoPlayer
IRIX
- VRwave
UNIX(Linux, Solaris, Irix, HPUX)
- Geomview
UNIX(Linux, Solaris, SunOs, Irix, etc.)
- DIVE
UNIX(Linux, Solaris, Irix, WindowsNT)
- xweb3d
UNIX(SunOS, Irix, Ultrix, HPUX, WindowsNT)
- GopherVR
UNIX(Linux, Solaris, SunOs, Irix, AIX, Alpha-OS)
- GLView
Windows
- Pueblo
Windows
- MemeViewer
Windows
prev | next
index | home
abe@injapan.net