梶浦研究室 梶浦研究室 4 Java3D と Blender による 3D CG 梶浦研究室 E09J081 藤原 1 はじめに 康宏 フには表現すべきオブジェクトだけでなく、 Java3D を用いることにより、Web ページ 背景や証明やカメラなどすべての要素を定義 上でリアルタイムに 3DCG を扱うことがで する。Java3D はこのようにして、仮想空間 きる。しかし、Java3D で物体を定義するに を創り出している。 は、プログラム中で膨大な量の情報を定義し 3 Blender なければならない。事実、昨年度の研究[1] においても、3150 行以上のプログラムを記述 Blender はオランダ最大のアニメーション してオブジェクトを定義、表示させていた。 スタジオ NeoGeo によって開発された、オブジ Java3D プログラムでは Java3D オブジェ ェクト指向の統合型 3D アニメーションソフ クト(object)のインスタンス(instance)を生成 トである。なお Blender の特徴は以下に示す。 し、それらを「シーングラフ・データ構造 ① モデリング、アニメーション、レンダリ (scene graph data structure)」に配置する。 ング、ビデオ・ポスト・プロダクション、 従来ではシーングラフ・データ構造を配置す ゲーム制作を含む、3D コンテンツの制作 る上で、プログラム言語により、定義しなけ には欠かせない、幅の広いツール群を提 ればならなかった。 供する完璧な統合開発環境。 そこで本研究ではシーングラフのデータ構 ② 配布しやすい軽いサイズのプログラム。 造の定義を簡略化するため、Blender と言う ③ クロスプラットフォーム。GUI は OpenGL ソフトを使った。Java3D と Blender を使う ベースで、対象は Windows、Linux、OSX、 ことで精度の高いオブジェクトの作成、表示 FreeBSD、Irix、Sun。 を試みた。以下では、Java3D、Blender、開 ④ 高速で効率的な製作作業を可能にするハ 発手順、システムの特徴、について述べる。 イクオリティな 3D アーキテクチャー。 ⑤ www.blender3d.org を通したタダで使え 2 Java3D Java3D るサポートチャンネル。 Java3D とは、Java プログラムの中から使 ⑥ 25 万人以上の世界中のユーザーのコミュ 用できる 3DCG(3 次元コンピュータグラフィ ッ ク ス ) の API(Application ニティー。 ⑦ 完全無料の Free Software Program Interface)である。Java と同様に Web ブラウ ザ上で実行できるが、Java3D を含むアプレ ットの場合には、Web ブラウザに Java3D 用 プラグインがインストールされている必要が ある。 Java3D で 3DCG を作成するためには、シ ーングラフと呼ばれるデータ構造(データベ 図 1.開発途中図 ース)を定義しなければならない。シーングラ 9 2006 年度 コンピュータ情報学科卒論発表会予稿 コンピュータ情報学科卒論発表会予稿 本研究で私が Blender に着目したのは、ク ロスプラットフォームで、完全無料であるソ フトウェアということである。 他の 3DCG ソフトとしては Shade、六角大 王、light wave、MAYA、3DS-MAX etc があ るが、便利なソフトはほぼ有料で高額となっ ている。 図 2.公開している 公開しているホームページ しているホームページ① ホームページ① 4 開発手順 開発手順 本システムは、左記で説明した Java3D と Blender、テキストエディタにより HTML の作 成という手順をおって開発した。開発順と内 容は以下に示す。 ① Blender により、CPU、マザーボード、 MEMORY、HDD、DVD ドライブ、PC ケー ス、PC 全体図のオブジェクトを作成。 同時にオブジェクトのファイル形式 図 3.公開している 公開しているホームページ しているホームページ② ホームページ② を VRML97 形式にして保存。 ② 6 おわりに Java3D の MyVrmlLoader クラスにより、 VRML97 のファイルを読み込むプログ ③ Java3D と Blender を使うことにより、精度 ラムを作成。 の高いオブジェクトを作成し、閲覧すること テキストエディタで、HTML ファイルを を可能とさせた。今回はオブジェクトをパソ 作成。 ②の Java3D プログラムを使い、 コンのパーツとし、実装したので、コンピュ ①で作成した VRML97 形式のファイル ータのハードの基礎を効果的に学ぶことがで を読み込み、Java アプレットとして実 きる。今後は今回表現できなかった、外部イ 装。 ンターフェイスや、精度の高いオブジェクト の作成も行ってみたい。 5 システムの システムの特徴 参考文献 本システムは、図2のように Java アプレ ットとして Web 上に実装している[3]。 また、 [1] 久保田祥正氏: 『Java3D によるステアリ 図3のように作成したオブジェクトだけを表 ングシステムの可視化』(2005 倉敷芸術科学 示するのではなく、各パーツの説明を加える 大学 卒業論文予稿集) ことにより、機能を理解しつつ、パーツの形 [2] 広内哲夫:『Java3D グラフィックス』 ,小 をユーザーの思うように動かせ、学べるとい 学館(2004). う特徴も備えている。 [3] 『コンピュータの仕組みの学習』 http://www.kusa.ac.jp/~e09j081/index.htm 10
© Copyright 2024 Paperzz