2017-09-02 3 views
1

私の目標は、JavaFXのでは3Dシーンの上に2Dテキストをオーバーレイするために有効な選択ではないです画面上のスペース全体を占有します。静的2Dテキストは

シーンにラベルを追加して深さのバッファリングをオフにしましたが、モデルが回転すると(実際のカメラが位置を変更すると)正しい位置が壊れます。 cameraを制御するために使用するコード

アンカーペインを使用し、透明な背景を持つ2Dシーンを使用して、多分私の3Dシーンにスタティック2D GUIをオーバーレイできますか?
Question No.1
Question No.2
私の正確なニーズに対応していない:

は、スタックオーバーフローでは私はこれらの質問を見つけました。

答えて

2

サブスケンの概念は、すべてが完全に分離されたコントロールを示していると誤解されました。 3Dテキストを重ねることは、以下の構造...

  • ルートコンテナ(例えばアンカーペイン)を使用して可能である
    • 2Dコンテンツ(ラベル)
    • サブシーン
      • 透視カメラ
      • ルート3D
        • 3Dコンテンツ

コード例:

//Add 2D content here 
AnchorPane globalRoot = new AnchorPane(); 
globalRoot.getChildren().add(new Label("Hello World")); 
Scene scene = new Scene(globalRoot, 1024, 768, true); 

SubScene sub = new 
SubScene(root3D,1024,768,false,SceneAntialiasing.BALANCED); 
sub.setCamera(camera); 
globalRoot.getChildren().add(sub); 

//Add all 3D content to the root3D node  

primaryStage.setScene(scene); 
primaryStage.show(); 
関連する問題