Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8091324

Allow FX to interoperate with 3rd party (native) OpenGL visualizations

    Details

    • Type: Enhancement
    • Status: Open
    • Priority: P3
    • Resolution: Unresolved
    • Affects Version/s: 8, 9, 10
    • Fix Version/s: tbd
    • Component/s: javafx
    • Labels:
      None

      Description

      There are currently plenty of domain-specific applications/libraries that use OpenGL based rendering (Java or not). It would be good if those could integrate with JavaFX.

      There are lightweight approaches to do this, for example let the libraries render in an OpenGL texture and pick it up in JavaFX.

      Some examples from different domains:
      - JReality: mathematical visualization (http://www3.math.tu-berlin.de/jreality/index.php?article_id=73)
      - YaDiV: medical 3D volume data (http://www.welfenlab.de/en/research/projects/yadiv/)
      - LuciadLightspeed: geospatial visualization (luciad.com)

      Such domain specific applications usually can't do with JavaFX's built-in 3D support, they just need the full OpenGL power.

      Workaround: render in an image and let FX show the image. This has a performance impact though, as the image is copied over the CPU and main memory. Especially an issue on large or retina displays (often used in the above mentioned domains).

      Related links:
      - JOGL integration with JavaFX: https://jogamp.org/bugzilla/show_bug.cgi?id=607
      - http://mail.openjdk.java.net/pipermail/openjfx-dev/2013-January/005756.html
      - Steve and Felipe's JavaOne presentation "Integrating JavaFX with Native Technologies" http://www.parleys.com/play/524ee4dbe4b0ab14e307d7b1/about

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                sdebruyckjfx Stijn Debruyckere (Inactive)
              • Votes:
                10 Vote for this issue
                Watchers:
                16 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Imported: