Vidio games usually draw the player's 2D UI elements in a second step on top of the perspective 3D scene in the parallel/orthographic projection mode (overlay or head-up display - HUD).

This approach is already widest supported by JavaFX even with perspective 3D transforms. Using a StackPane or a self-written layered pane the user interface can be rendered onto the 3D SubScene and can be designed, updated and animated with:

 - layout panes : javafx.scene.layout.*
 - UI controls : subclasses of javafx.scene.control.*
 - two-dimensional shapes : javafx.scene.effect.shape*
 - graphical effects : javafx.scene.effect.*
 - images : javafx.scene.image.*
 - shapes and background filler : javafx.scene.paint.*
 - transformations : javafx.scene.transform
 - animations : javafx.animation

Is there any other 3D API or game engine based on C++ or Java which can beat this scenario?

FXTuxCube is a simple JavaFX 3D example with 2D elements drawn on top of a 3D SubScene: http://www.interactivemesh.org/models/jfx3dtuxcube.html

Worth reading: "User interface design in games" http://www.thewanderlust.net/blog/2010/03/29/user-interface-design-in-video-games/

August

Am Sonntag, den 21.07.2013, 16:07 +0200 schrieb Herve Girod <herve.gi...@gmail.com>:
"What is the use case for rendering 2D pixel-coordinates-based shapes
(or even controls) within a 3D scene consisting of meshes constructed
on 3D coordinates of arbitrary unit?"

In my field of work (avionics displays),we might have a lot of use
cases for that. However, you also have that in video games, where they
like to render 2D interactive panels in a 3D perspective in the game
world.

Hervé


Reply via email to