[OpenJDK 2D-Dev] JDK-8220154 Improve java2d rendering performance on macOS by using Metal framework
ajit.ghaisas at oracle.com
Tue May 7 18:02:08 UTC 2019
I tried building this patch with latest http://hg.openjdk.java.net/jdk/jdk/
1. Some basic copy paste errors are resulting in build failures
2. MTLTexturePool.m file is missing from the patch
Can you please check & update?
> On 30-Apr-2019, at 2:52 PM, Alexey Ushakov <alexey.ushakov at jetbrains.com> wrote:
> Here is an update on our effort to use Metal framework for java2d rendering.
> We’ve added image rendering support and some support for LinearGradient. Also, the code has been refactored.
> Please have a look:
> http://cr.openjdk.java.net/~avu/JDK-8220154/webrev.01 <http://cr.openjdk.java.net/~avu/JDK-8220154/webrev.01>
> Best Regards,
>> As far as we know Apple has deprecated OpenGL on MacOS platform (https://developer.apple.com/macos/whats-new/ <https://developer.apple.com/macos/whats-new/>).
>> Unfortunately, this decision greatly affects our products that based on Java Client technologies. So, we (here at JetBrains) decided to start a project to replace OpenGL rendering on MacOS platform with a new one based on Metal. This is a huge task, so we decided to leverage current rendering architecture that is used in OpenGL rendering pipeline on Mac.
>> That’s why we didn’t use MTKView for representing AWT windows (that probably would be a better approach in the long term). Currently we're using CAMetalLayer within AWTView. We’ve implemented flat color shape/curve rendering so far and there is a lot of work to do. So, we’re looking forward to any collaboration.
>> In the mean time I’d like to share our current work to discuss metal pipeline architecture at the early stage of work.
>> Here is the webrev with our on going development:
>> http://cr.openjdk.java.net/~avu/JDK-8220154/webrev.00 <http://cr.openjdk.java.net/~avu/JDK-8220154/webrev.00>
>> Best Regards,
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the 2d-dev