Skip to content

feat: accelerated paint#509

Closed
1zun4 wants to merge 3 commits intochromiumembedded:masterfrom
CCBlueX:upstream/feat/accelerated-paint
Closed

feat: accelerated paint#509
1zun4 wants to merge 3 commits intochromiumembedded:masterfrom
CCBlueX:upstream/feat/accelerated-paint

Conversation

@1zun4
Copy link
Copy Markdown

@1zun4 1zun4 commented Jun 26, 2025

CEF supports hardware-accelerated off-screen rendering by enabling shared_texture_enabled via WindowInfo and passing --off-screen-rendering-enabled --shared-texture-enabled as arguments.

Unfortunately, Java CEF lacks bindings for OnAcceleratedPaint, meaning we cannot make use of this feature. This pull request enables this feature when turning shared_texture_enabled to true.

The changes were tested on a forked JCEF version (on Update to CEF 135.0.20+ge7de5c3+chromium-135.0.7049.85) by converting the D3D11 shared texture handle using ImportMemoryWin32HandleEXT using OpenGL's EXT_external_objects_win32 which is supported by LWJGL3.

2025-07-10_22-31-09.mp4

Fixes #506

Please "Squash And Merge" (!!!).

@sqlerrorthing
Copy link
Copy Markdown

Please "Squash And Merge" (!!!).

why this specifically? whats wrong with other merge methods

@1zun4
Copy link
Copy Markdown
Author

1zun4 commented Jun 27, 2025

Please "Squash And Merge" (!!!).

why this specifically? whats wrong with other merge methods

It bloats up the commit history, and my changes are so small that they wouldn't benefit from a traditional merge.

@1zun4 1zun4 force-pushed the upstream/feat/accelerated-paint branch from c5d269e to cf9e06b Compare August 27, 2025 23:52
@magreenblatt
Copy link
Copy Markdown
Collaborator

@1zun4
Copy link
Copy Markdown
Author

1zun4 commented Oct 24, 2025

@1zun4
Copy link
Copy Markdown
Author

1zun4 commented Jan 29, 2026

image

@magreenblatt Could you please reopen my pull request? This will also update the diff, as additional commits have been made to my fork: https://github.com/CCBlueX/java-cef/commits/upstream/feat/accelerated-paint.

--- Comment from BitBucket regarding CCBlueX@2f54801:

With the last commit, I have extended the support to all struct-types of AcceleratedPaintInfo for each platform on CEF.

With these changes, I managed to implement Accelerated Paint support on Linux for my application:

image Windows remains supported.

I beg for this to be reviewed and merged in the near future. This will finally allow fast-rendering on CEF Java Apps. Thank you.

@magreenblatt
Copy link
Copy Markdown
Collaborator

Unfortunately I can't reopen this PR because "the upstream branch was force-pushed or recreated". Please create a new PR (you can link this PR for the description/images).

@1zun4
Copy link
Copy Markdown
Author

1zun4 commented Jan 29, 2026

I see. I will create a new one.

@1zun4 1zun4 mentioned this pull request Jan 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Hardware accelerated off-screen rendering

3 participants