非常に簡単なJava 3Dエディタ(実験用)を作成したいと思います。私は基本的なJavaFXの使用法を知っており、十分なOpenGLの知識を持っています。しかし、私のOpenGLの経験は、C/C++で作業していることです。JavaFXでOpenGLを使用するには?
JavaFxアプリケーションで「キャンバス」を作成し、その上にOpenGLビューポートをマップできますか?
非常に簡単なJava 3Dエディタ(実験用)を作成したいと思います。私は基本的なJavaFXの使用法を知っており、十分なOpenGLの知識を持っています。しかし、私のOpenGLの経験は、C/C++で作業していることです。JavaFXでOpenGLを使用するには?
JavaFxアプリケーションで「キャンバス」を作成し、その上にOpenGLビューポートをマップできますか?
内部的には、JavaFXはレンダリングパイプラインとしてOpenGLを使用できるため、競合を避けるために、2つの間の統合に注意が必要です。 JavaFXの
リチャード・ベア、openjfx development mailing listに掲載のJavaFXチームのリードで
OpenGLNode:私は8の更新のために(例えば)に行わ見たい
ことの一つは、OpenGLNodeを持つことですまたはNativeSurfaceNodeかそれらの行に沿ったものなので、あなた自身のD3D/OpenGLをやっている場合は、それらの生のコマンドをグラフィックスカードに送ることができますが、あなたのノードはシーングラフに合成されます。
今後のJavaFXリリースのアップデートには、OpenGLNodeが含まれている可能性があります。 このような機能は、JavaFXの一般的なリリースでは、JavaFXの最初のリリース後に次のJavaFX機能がリリースされるまで、2014年9月頃にリリースされる予定です。
サードパーティのOpenGL/JavaFXの統合
あなたはJavaFXのとOpenGLの統合を開始するそう長く待つ必要はありません。実装を開始するために必要なソースコードはすべてOpenJFX repositoryで公開されていますので、lwjglやjoglなどのライブラリを使用して、そのコードのカスタム統合を構築できます。
この回答は、開発者がJavaFXとOpenGL API用の既存のJavaラッパーとの統合を開始した時代のものです。一部の開発者は既にこのような作業を開始しています。現在の統合プロジェクトとそのステータスについては、lwjgl javafx
またはjogl javafx
のGoogle検索を実行してください。
最も簡単な統合は、サードパーティのライブラリをオフスクリーンバッファにレンダリングし、必要に応じてバッファからJavaFX WritableImageまたはにピクセルを転送して、OpenGLレンダリングされたグラフィックをJavaFXシーングラフに合成させることです。
JavaFXの3D APIの代替
のJavaFXは、JavaFXのシーングラフに3Dモデルを影付き複合フォンの機能を提供し、独自の軽量の3D APIを持っています。 JavaFX 3D APIは、完全なOpenGL API統合のすべての機能を提供するわけではありませんが、JavaFX 3D APIを使用するのは比較的簡単です。説明、コード例は3D features in Java 8 is on the open-jfx wikiです。
インタラクティブメッシュには無料の3D model importer for JavaFXが用意されています。複雑な陰影を付けられた3DモデルをJavaFXシーングラフに簡単に表示できます。
には、提案したJavaFXベースの3Dエディタの基礎を作成するためにフォークできる3D Viewer projectがあります。
Nashorn JavaScriptエンジンにはスイッチがあり、use JavaFX and its 3D features from JavaScriptにすることができます。そうすれば、JavaFXの3D機能にアクセスするために、別のjvm言語を使用することができます。
だから、ほぼ1年が経過しました... OpenGLNodeについてのニュースはありますか? –
Sargeがなければ、答えにリンクされているメーリングリストに尋ねることができます。 – jewelsea
これは、JavaFXにこのように追加されたものです。これが実現することを望みます。 –
はい、是非、JOGLを使用して、OpenGLを使用してJavaでできるすべてのものをC/C++で効果的に達成できます。
JOGLまたはLWJGLを使ってJavaからOpenGLを使用することはできますが、既存のJavaFXウィンドウに実装するのは簡単ではありません。 – Appleshell
これは多くの質問には答えません。質問はどのようにして、答えはちょうど一般的な方向を指しているかを質問する。 – Suma
インターネットには多くの例はありませんが、実装はここで見ることができます:http://www.java-gaming.org/topics/lwjgl-javafx-integration/27801/view.html – Appleshell
これは使用できますプロジェクトをベースとして:https://github.com/Spasi/LWJGL-FX –