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ランキング
-
How to import HorizontalGridV...
-
Eclipseソース開発画面の行番号...
-
プログラミング言語について
-
JAVAを使って管理システムを構...
-
この便利な時代に開発環境すら...
-
プリクラの様な画像処理(webカ...
-
TOMCATとANDROIDSTUDIOの違い
-
今でも、TomcatとApacheの連結...
-
android開発環境アンインストール
-
仮想化OSの異なる開発環境で学...
-
コマンドボタンの文字が消える!
-
Javaでゲームコントローラーを...
-
Eclipseのダウンロード
-
JSPファイルで生じるエラーをど...
-
vba クリップボードクリアにつ...
-
Javaでのエラーについて
-
gitでバージョン指定してダウン...
-
IISワーカープロセスが原因でCP...
-
EclipseでJavaコンパイラのバー...
-
データベースのデータをTextBox...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Eclipseソース開発画面の行番号...
-
オブジェクト指向について
-
プログラミング開発経験とは?
-
JavaMailを使う前のTomcatの設定
-
「C#ができればJavaもできる」...
-
この便利な時代に開発環境すら...
-
プログラミング言語について
-
eclipseでtomcatを使うには
-
JAVAを使って管理システムを構...
-
文字列に半角スペースがあるか...
-
今でも、TomcatとApacheの連結...
-
Javaでバッチ処理
-
PowerBuilderの知識が必要です。
-
ファイルアップロード時の文字...
-
PL/SQLを使った開発について質...
-
Linux上でのゲーム開発環境につ...
-
C言語によるバイナリファイルの...
-
Java案件で、業務内容に製造以...
-
TOMCATを使用したStrutsについて
-
androidアプリ開発における白黒...
おすすめ情報