Project Lanai aims to create a Metal-based rendering pipeline for Java 2D and OpenJFX
Oracle and JetBrains engineers proposed to collaborate on a graphics rendering pipeline to replace that based on the now-deprecated OpenGL.
Oracle’s Phil Race has proposed the creation of a new OpenJDK project called the Lanai Project to establish a new macOS graphics rendering pipeline. Currently, both OpenJFX and the JDK use OpenGL as the rendering pipeline, however, with the release of macOS Mojave 10.14 in September 2018, Apple deprecated the APIs in the OpenGL and OpenCL frameworks, recommending that users transition to the Metal graphics API instead.
Wrote Race, “if OpenGL is not present on a macOS system, the JDK desktop APIs cannot function and will fail to start. OpenJFX is in a very similar position.” His proposal is to build a Java 2D rendering pipeline based on Metal, which is a simpler API that promises better performance than that of OpenGL. The stated goal is to be “at least as capable, robust and performant, as the current OpenGL pipeline”, with the results serving as the foundation for a Metal pipeline for OpenJFX as well.
The project already has some groundwork laid in the form of proofs of concept and prototyping undertaken by engineers from Oracle and JetBrains. Currently, however, the two teams are working separately. Formalizing the collaboration under the Lanai Project will help them work together to reach their goals. Before they can forge ahead, they must put the proposal up for a vote. Voting closes on Tuesday July 23rd, after which the fate of this proposal will be decided.
Phil Race is lead of Oracle’s Java 2D group and has spent years working on Java 2D APIs. He has also contributed significantly to OpenJFX, as well as the Swing and AWT APIs.