git: openjdk/jfx-sandbox: direct3d12: 2 new changesets

duke duke at openjdk.org
Tue Sep 30 12:54:42 UTC 2025


Changeset: d612da2a
Branch: direct3d12
Author:    Lukasz Kostyra <lukasz.kostyra at oracle.com>
Date:      2025-09-25 16:12:10 +0000
URL:       https://git.openjdk.org/jfx-sandbox/commit/d612da2aca689ae1f10d68b0d49229072fb023f5

Rework RingContainer code for future optimizations

- RingContainer now assumes only one alignment requirement, which
  simplifies Reserve() calls and can be used to further simplify some
  logic
- Added DeclareRequired() call which informs RingContainer how much
  space we will need to fully perform an upcoming call. This lets
  Ring Containers flush the Command List early and increase CPU-GPU
  parallelism a bit.

! modules/javafx.graphics/src/main/native-prism-d3d12/D3D12NativeDevice.cpp
! modules/javafx.graphics/src/main/native-prism-d3d12/Internal/D3D12RenderingContext.cpp
! modules/javafx.graphics/src/main/native-prism-d3d12/Internal/D3D12RenderingContext.hpp
! modules/javafx.graphics/src/main/native-prism-d3d12/Internal/D3D12ResourceManager.cpp
! modules/javafx.graphics/src/main/native-prism-d3d12/Internal/D3D12ResourceManager.hpp
! modules/javafx.graphics/src/main/native-prism-d3d12/Internal/D3D12RingBuffer.cpp
! modules/javafx.graphics/src/main/native-prism-d3d12/Internal/D3D12RingBuffer.hpp
! modules/javafx.graphics/src/main/native-prism-d3d12/Internal/D3D12RingContainer.cpp
! modules/javafx.graphics/src/main/native-prism-d3d12/Internal/D3D12RingContainer.hpp
! modules/javafx.graphics/src/main/native-prism-d3d12/Internal/D3D12RingDescriptorHeap.cpp

Changeset: 511b323d
Branch: direct3d12
Author:    Lukasz Kostyra <lukasz.kostyra at oracle.com>
Date:      2025-09-25 16:59:13 +0000
URL:       https://git.openjdk.org/jfx-sandbox/commit/511b323dc544decf37401ef71340cfec3515a1aa

Reduce 2D footprint on Ring Buffer

This change collects all 2D vertices into a new VertexBatch which
sub-allocates vertices for quad rendering inside a larger RingBuffer
region.

With this change the 64K alignment requirement for Buffers is overcome,
which should speed up 2D rendering.

! modules/javafx.graphics/src/main/java/com/sun/prism/d3d12/D3D12Texture.java
! modules/javafx.graphics/src/main/native-prism-d3d12/D3D12Constants.hpp
! modules/javafx.graphics/src/main/native-prism-d3d12/D3D12NativeDevice.cpp
! modules/javafx.graphics/src/main/native-prism-d3d12/D3D12NativeDevice.hpp
! modules/javafx.graphics/src/main/native-prism-d3d12/Internal/D3D12Config.cpp



More information about the openjfx-changes mailing list