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

Make Metal the default Java 2D rendering pipeline for macOS

    XMLWordPrintable

Details

    • CSR
    • Resolution: Approved
    • P3
    • 19
    • client-libs
    • None
    • 2d
    • behavioral
    • low
    • Hide
      This should be completely transparent to applications. There is no need for them to take any actions, or even be aware of the switch.

      Yet, although the pipeline is stable and well tested, there's still potential for rendering differences, however these should be temporary as bugs are reported and subsequently fixed.
      Show
      This should be completely transparent to applications. There is no need for them to take any actions, or even be aware of the switch. Yet, although the pipeline is stable and well tested, there's still potential for rendering differences, however these should be temporary as bugs are reported and subsequently fixed.
    • System or security property
    • Implementation

    Description

      Summary

      Make Metal the default Java 2D rendering pipeline for macOS

      Problem

      Apple deprecated OpenGL in favor of the new Metal accelerated rendering API. OpenGL is still used in JDK for Java 2D rendering on macOS, even though Metal support was delivered in JDK 17.

      Solution

      JDK on macOS should default to using Metal-based rendering where it is available and supported.

      Specification

      Metal API based rendering for Java 2D will be the default where available. To revert to OpenGL specify -Dsun.java2d.opengl= "True" | "true"

      Attachments

        Issue Links

          Activity

            People

              aghaisas Ajit Ghaisas
              prr Philip Race
              Kevin Rushforth, Philip Race
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: