![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
JAVAの基本は知っていますがグラフィック初心者です。
最近Swingのサンプルプログラムを作っています。過去にAWTは触ったことがあります。
表題の通り、JAVAによる3D描画についてご教授いただきたく、投稿します。
開発環境はeclipse+Visual Swing for Eclipse(プラグイン)、jdk6update18です。
ただし、elipseのプラグインには特にこだわりません。
開発目的は2つありまして、
・初心者(学生)にサンプルとして紹介する
・化学式の可視化のため、きちんとしたアプリケーションとして利用する
3Dグラフィックについて、簡単に調べたところ、とりあえず
・JAVA 3D API
・JAVA OpenGL
の2通りを見つけました。
ご回答は、これらの主な違い、それぞれの長所短所についてならなんでも歓迎です。
わがままを聞いていただけるなら、特に
・JOGLがSwingと使われているところはありましたが、JAVA 3D APIの方はどうか
・マルチプラットフォームの観点から、JOGLのアプリを作って配布する場合、簡単にできるか
(dllがあるとか・・・)
・導入として簡単、難しいが複雑な機能がある、といった違いがあるか
・技術としての完成度
などの点について、ご意見お持ちの方がいらっしゃればお願いいたします。
No.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の方が若干楽だと思いました。
・技術としての完成度
対象としているレイヤが異なるので、
どちらが完成度が高いという単純な比較はできないと思います。
参考URL:http://javanews.jp/3d/j3faq.html
お礼が遅くなり、大変申し訳ありませんでした。
詳細なご回答ありがとうございます。
ご回答内容も紹介サイトも大変参考になりました。
JOGLはOpenGLのC(C++?)の情報がとてもたくさんあるので、比較的サンプルもつくりやすかったのですが、もう一方はなんとも基本的なことに「Java3D」というキーワードにたどりついておらず、公式サイトしか探せなかったため、その意味でも本当に助かりました。
Java3DはまだHPを読んだだけですが、JOGLより抽象的にまとまっている感じがしました。「シーン」の概念が最初敷居高いかなと(わかればJavaっぽくObject志向でできる?)。内部的にOpenGL使ってたりしたんですね。勉強になりました!
一方JOGLはOpenGLのコードのままなので、ちょっとわかりにくい気もしますが、情報が多いので調べれば大丈夫といったところでしょうか・・。ソースも手に入るし。ただし、1.1に比べJOGL2はまだ未調査です。
本当に助かりました。ありがとうございます。
ひきつづき、しばらくの間締め切らずにおきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java javaでパソコンの内臓カメラや内臓マイクの映像や音をリアルタイムで映し出した 1 2022/07/09 14:02
- その他(プログラミング・Web制作) 次に、楽天のアジャイル就活に参加して、1日で内定を獲得できる。私は大企業に就職できる? 2 2022/04/17 13:38
- IT・エンジニアリング プログラマの仕事内容 4 2022/08/13 00:34
- その他(映画) 昔の映画の3Dリメイク版。どうやって作るのか? 4 2023/02/16 10:17
- Java EclipseとVisual StudioをPC1台にインストールしただけではPCは重くならない? 3 2022/12/08 15:35
- その他(自然科学) 科学技術計算の仕事について 2 2023/02/04 18:09
- Java JavaでWebページ作成 7 2023/07/21 21:09
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- Java プログラミングのプの字も知りませんが、プログラミングを勉強したいです。とりあえず、学ぶものを決めない 3 2022/11/04 13:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Eclipseソース開発画面の行番号...
-
JAVAで標準EXEは創れますか?
-
【JAVAによる3D描画】JAVA 3D A...
-
Perl言語について。
-
IISワーカープロセスが原因でCP...
-
vba クリップボードクリアにつ...
-
使用しているJUnitのバージョン...
-
Javaのプログラミングについて
-
授業でプログラミングのJavaの...
-
EclipseでJavaコンパイラのバー...
-
VBAの「for i=1 to cells(…」...
-
JSPファイルで生じるエラーをど...
-
正規表現について質問です。 カ...
-
unzip32.dllの利用について(64b...
-
MSFormsとは何ですか?
-
NullPointerExceptionについて
-
gitでバージョン指定してダウン...
-
MSCOMCTL.OCXのアップデートの方法
-
java と javax の違いは?
-
VMwareの古いバージョンがダウ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Eclipseソース開発画面の行番号...
-
この便利な時代に開発環境すら...
-
JavaMailを使う前のTomcatの設定
-
「C#ができればJavaもできる」...
-
プログラミング開発経験とは?
-
オブジェクト指向について
-
AndroidとJavaの違いについて
-
PowerBuilderの知識が必要です。
-
コマンドボタンの文字が消える!
-
文字列に半角スペースがあるか...
-
C++C#ゲーム開発においての差違...
-
研究開発現場でのVBA(マク...
-
TOMCATとANDROIDSTUDIOの違い
-
macでjavaとphpの勉強をしたい...
-
Java開発って何ですか?
-
この様な場合のWeb開発における...
-
android開発環境アンインストール
-
プログラミング言語について
-
JavaScriptの開発環境について
-
サーバサイドJavaの「べか...
おすすめ情報