Hi, I've to admit that I could not follow you completely but JavaFX on Windows is based on DirectX (OpenGL is only provided for Linux/OS-X where it is the defacto standard and far from dead).
Tom On 16.10.15 13:54, Rolf Hemmerling wrote: > Hello Java3D / JavaFX core developers! > > Feature request: > 1. DirectX Support for Java3D / JavaFX on Windows > 2. "Take care that OpenGL1 and OpenGL2 are supported by Java3D / JavaFX > in a way, that OpenGL1-only computers are not excluded from any > function, and OpenGL2 computers benefit from better look of the visual > view" ( but have no "exclusive" commands which don´t compile or generate > runtime errors with OpenGL1 systems ). > 3. Let the end user ( not the Java application developer) select between > DirectX and OpenGL - similar to the choice available with the 3D engine > "Unity3d". > > Reason: > 1. The Past: > 10-15 years ago, standard desktop PCs were used for gaming on Windows > too, so with state-of-the-art graphics cards ( with 64-256 MB RAM ) the > graphics card manufacurers provided state-of-the-art graphics drivers > (OpenGL1, DirectX). > > 2. Nowadays: > 2.1 most PCs running Windows use standard graphics drivers supplied by > Microsoft ( especially for "legacy" computers, especially after upgrade > of the operating system, e.g. Vista -> Win7 -> Win8 > Win10, especially > for busines PCs which are not gamer PCs, e.g. notebooks with > non-dedicated graphics cards ), and not by the graphics card > manufacturers AMD & NVidia. > 2.2 Microsoft's standard drivers supplied win Win7 / Win8 support still > OpenGL1 and DirectX ( by installation of a DirectX runtime), but usually > not OpenGL2. There is no option to upgrade a PC by installing a (newer) > OpenGL1 or OpenGL2 driver. > 2.3 Even with some Macintosh PCs, there is some lack of (advanced) > OpenGL2 support I was told by the team which develop "Processing" ( see > below ) > > 3. My observations & opinion: > 3.1 > Directx9 is standard on the Windows platform since 15 years ( works with > all AGP graphics cards and first generations of PCIExpress graphics > cards, and any non-dedicated graphics cards of notebooks ), while > DirectX 10 / 11 / 12 is just upgrade available for gamer PCs. > > Request: So if there should be DirectX for Java3D / JavaFX on Windows, > then it should be full support of DirectX9, and optional use of DirectX > 10 /11 /12. > > 3.2 > OpenGL1 is outdated ( does not make use of advanced hardware graphics > functions,.. ) but supported by almost all PCs. > OpenGL 2.0 is not available with most PCs running Windows, while running > Ubuntu Linux on the same machine offers such support in some cases even > on the same hardware. > OpenGL 2.0 is even not available to some current Macintosh PCs > > My case: > I installed > http://www.processing.org/ > http://www.github.com/processing/ > , a Java application with special OpenGL1 libraries ( Processing 1.5.1 ) > and special OpenGL2 libraries ( Processign 2.2.1 and newer ) > > 3.2.1 > Processing 1.5.1, using OpenGL1: > The 3D demo applications works fine on all my Windows computers > > 3.2.2 > Processing 2.2.1, using OpenGL2: > 3.2.1.1 > The demo applications of the folder “Camera”, “Demos” - and maybe some > others, but not all - crash by the Java error message > > “Framebuffer objects are not supported by this hardware (or driver) Read > http://wiki.processing.org/w/OpenGL_Issues for help” > > , on my > 1. “Athlon XP2400” desktop computer with NVIDIA GeForce 6600 graphics > card and webcam, with Win7 . > 2. Notebook “Dell Vostro 1000”, with Win8.1 . > 3. Notebook “ASUS Eee PC T101MT”, with Win8.1 . > > 3.2.1.2 > The demo applications work well on my > 1. Notebook “Dell Vostro 1000”, with Ubuntu Linux 14 LTE . > See above, its the same hardware, just other operating system. > > ****************** > The Processing developers gives some explanations about the use of > OpenGL .. > https://github.com/processing/processing/wiki/OpenGL-Issues > and why / that OpenGL2 is not a standard for most PCs, both > Windows-hardware and even some Macintosh-hardware. And they point to the > fact, that OpenGL2 support for "older" PCs is not available with Linux > too... > ****************** > So they just don´t support all my computers with their new Processing > 2.2.1 version, and its successors Processing 3,.. > > My statement: Java3D / JavaFX is not for gamers, but also for business > graphics, so missing "state of the art 3D power" is no reason not to > provide full 3D support - usual Java applications are not counted by > "frames / second". And JavaFX is for business menu applications too! > > 4. > Feature request: Please let check your JavaFX / Java3D API, if it uses > the OpenGL Framebuffer feature in a way, so that Java error message > “Framebuffer objects are not supported by this hardware (or driver) Read > http://wiki.processing.org/w/OpenGL_Issues for help” > might happen too. If so, please fix that. > > Find a way to support both: > > 4.1 OpenGl1 ( for legacy and business PCs, or PCs which were just > "upgraded" with a new Windows where the graphics card manufacturer > doesn´t provide specific graphics drivers and so you are stuck to > Microsoft's standard drivers ), > > 4.2 and OpenGL2 with the same library - so give full power of Java3D / > JavaFX even for OpenGL1 computers without need to adopt the software, > but give more speed or better / prettier view to those users which have > an OpenGL2 computer. > > In case of the "Processing" platform, the small team states that they > don´t have enough manpower to do that. Ok. But please Java-Developer > team, don´t use that as excuse for the "big" Java3D / JavaFX development. > > 5. Warning: > If I should ever see a message > "Java error message “Framebuffer objects are not supported by this > hardware (or driver) Read http://wiki.processing.org/w/OpenGL_Issues for > help” > with a business or technical software which by this prevents me from > using, on my PCs, as end-user of the software on a state-of-the-art > operating system ( currently Win7, Win8, Win10 ) - even if my PC is > legacy but properly running this operating system -, I would be very > dissatisfied, and this would make anger against Java definitely probably > not just with me. > > Remember that it is/was "normal" to exclude people from using software, > in the Windows world, by claiming "oh it just works on W2k / WinXp / > Win7, please buy a new computer or upgrade your operating system". > Well this urging doesn´t work with Java, the Java communmity is not in > the position to demand to buy "openGL2 compatible hardware", if it lacks > in the shops, especially with budget offers. > > From that point of view, "Processing" is dead for me, though intended > for education ( of kid, pupils, students ), who cares if the 3D graphics > doesn´t run on most computers ( owned by the kids, pupils, students,..)? > Do you want the teacher ask the parents "oh buy another new computer or > change the operating system, as the computer with which your child is > coming to the classroom, doesn´t support OpenGL2, so its a garbage and > worthless. Without another computer with OpenGL support the pupil can´t > participate in our computer course" ?! > > Yes I want to start a flame.... in the mind of Java3D / JavaFX > developers :-). > OpenGL is dead.. ist doesn´t just smell funny. > > Sincerely > Rolf Hemmerling -- Thomas Schindl, CTO BestSolution.at EDV Systemhaus GmbH Eduard-Bodem-Gasse 5-7, A-6020 Innsbruck http://www.bestsolution.at/ Reg. Nr. FN 222302s am Firmenbuchgericht Innsbruck