RFR: 8092272: [D3D 3D] Need a robust 3D states management for texture [v2]
Lukasz Kostyra
lkostyra at openjdk.org
Wed Nov 15 12:50:43 UTC 2023
On Fri, 10 Nov 2023 23:39:21 GMT, Nir Lisker <nlisker at openjdk.org> wrote:
>> Moves the filter setting of the samplers from the device parameters configuration to the use-site, allowing for dynamic changes in the sampler. This PR does internal plumbing work only to bring it close to the ES2 pipeline. A followup PR will create the public API.
>>
>> Summary of the changes:
>> * Created a new (internal for now) `TextureData` object that is intended to contain all the data of texture (map) of `PhongMaterial`, such as filters, addressing, wrapping mode, mipmaps etc. **This PR deals only with filters** as a starting point, more settings can be added later.
>> * Creates an update mechanism from the Java side material to the native D3D layer. The public API `PhoneMaterial` is *not* changed yet. The peer `NGPhongMaterial` is configured to receive update from the public `PhongMaterial` when the public API is created via new `ObjectProperty<TextureData>` properties.
>> * Small refactoring in the D3D layer with a new map types enum to control the texture settings more easily.
>>
>> The JBS issue lists some regressions in a comment, but I couldn't reproduce them. It looks like the sampler settings needed to be added anywhere, and that was the easiest to do at the time. Now they were just moved.
>
> Nir Lisker has updated the pull request incrementally with one additional commit since the last revision:
>
> Addressed review comments
Changes requested by lkostyra (Committer).
modules/javafx.graphics/src/main/native-prism-d3d/D3DMeshView.cc line 307:
> 305: if (context->state.wireframe != wireframe) {
> 306: context->state.wireframe = wireframe;
> 307: SUCCEEDED(device->SetRenderState(D3DRS_FILLMODE, wireframe ? D3DFILL_WIREFRAME : D3DFILL_SOLID));
I think this formatting change should not be a part of this PR.
-------------
PR Review: https://git.openjdk.org/jfx/pull/1281#pullrequestreview-1731852656
PR Review Comment: https://git.openjdk.org/jfx/pull/1281#discussion_r1394152305
More information about the openjfx-dev
mailing list