JavaFX 3Dオブジェクト読み込み - Javaライブラリ集

JavaFX専用、3Dオブジェクト読み込み用のモジュールです。

3Dの世界では有名な(?)「obj」フォーマットに対応しています。

手作りなのと、どうも仕様をきっちり理解できていないところもあるので、
(いろんなサイトを見たけど、どうもぼやっとしている・・・)
100点のものではないことは、ご理解ください(_ _*。

「obj」ファイルを読み込んで、JavaFXの3Dオブジェクトの形にします。

下記の2ファイルをセットで利用してください。
ObjReader.java
MaterialReader.java

プログラムから直接利用するのは、ObjReader側になります。
staticメソッドであるinitメソッドを利用します。

ひとつ目の引数は3Dオブジェクトの区別を付けるキー、
ふたつ目はファイル名です。

initメソッドで、元になるデータを保持します。
createメソッドが呼ばれたタイミングで実際の3Dデータとして生成します。

引数として、自オブジェクト(Node)を渡して全ての3Dをオブジェクトを載せた状態にした上で
リターンとして、オブジェクト「o」単位のGroupオブジェクトを返却します。
「o」単位に制御したい場合に利用できるようになっています。
(「obj」フォーマットの知識がある程度必要です。JavaFX3Dの知識も・・・)

MaterialReader.javaは、ObjReader.javaから呼び出しています。

このファイルは、わたしの渾身作だったのですが、
久しぶりにソースを見ると、かなり忘れてしまってる・・・(汗)

参考にしたページ)
Wikipedia
https://ja.wikipedia.org/wiki/Wavefront_.obj%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB

その他、いろいろなページにお世話になったと思いますが、忘れてしまいました。
Objの情報は、少ないと思っています。苦労した覚えがあります。
3Dを体験したい方は難しいところもありますが、がんばってチャレンジしてみてください。

シェアしていただけるとうれしいです。