- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【JAVAによる3D描画】JAVA 3D APIとJOGLの長所・短所)
【JAVAによる3D描画】JAVA 3D APIとJOGLの長所・短所
このQ&Aのポイント
- JAVAの基本は知っていますが、初心者であり、最近Swingのサンプルプログラムを作っています。この質問では、JAVAによる3D描画についての教授を求めています。
- 開発環境はeclipse+Visual Swing for Eclipseを使用しており、開発目的は学生へのサンプルの提供と化学式の可視化用アプリケーションの作成です。
- JAVA 3D APIとJOGLは、3Dグラフィックのために使用される2つのオプションです。質問者はそれぞれの違い、長所、短所についての意見を求めています。JOGLはSwingとの統合が可能であり、マルチプラットフォームでの配布も比較的容易です。一方、JAVA 3D APIの完成度や導入の難易度なども比較したいと考えています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
Java3DとJava OpenGLとの違いは、 Java3D FAQ(http://javanews.jp/3d/j3faq.html) が参考になると思います。 特に以下のQ&Aが参考になると思います。 ・[Q] OpenGL Java binding と Java 3D はどう違うのでしょう? どういうときにどちらを選べばいいのでしょう? ・[Q] Java 3D と OpenGL の関係は? ・JOGLがSwingと使われているところはありましたが、JAVA 3D APIの方はどうか Java3DでもSwingと一緒に利用することは可能です。 Swingを用いたJava3D用材質エディタ(http://codezine.jp/article/detail/74) の記事が参考になると思います。 ・マルチプラットフォームの観点から、JOGLのアプリを作って配布する場合、簡単にできるか (dllがあるとか・・・) Java3Dでも、JOGLでも別途プラットフォームごとにDLLが必要になります。 ・導入として簡単、難しいが複雑な機能がある、といった違いがあるか JOGLはインストーラが無いため、手動でクラスパスを設定したり、実行パスにDLLを含めたりする必要があります。 ちょっと面倒です。 Java3Dはインストーラが存在し、その辺はインストーラがやってくれます。 windows環境で試してみたところJava3Dの方が若干楽だと思いました。 ・技術としての完成度 対象としているレイヤが異なるので、 どちらが完成度が高いという単純な比較はできないと思います。
お礼
お礼が遅くなり、大変申し訳ありませんでした。 詳細なご回答ありがとうございます。 ご回答内容も紹介サイトも大変参考になりました。 JOGLはOpenGLのC(C++?)の情報がとてもたくさんあるので、比較的サンプルもつくりやすかったのですが、もう一方はなんとも基本的なことに「Java3D」というキーワードにたどりついておらず、公式サイトしか探せなかったため、その意味でも本当に助かりました。 Java3DはまだHPを読んだだけですが、JOGLより抽象的にまとまっている感じがしました。「シーン」の概念が最初敷居高いかなと(わかればJavaっぽくObject志向でできる?)。内部的にOpenGL使ってたりしたんですね。勉強になりました! 一方JOGLはOpenGLのコードのままなので、ちょっとわかりにくい気もしますが、情報が多いので調べれば大丈夫といったところでしょうか・・。ソースも手に入るし。ただし、1.1に比べJOGL2はまだ未調査です。 本当に助かりました。ありがとうございます。 ひきつづき、しばらくの間締め切らずにおきます。