On Thu, 18 Jan 2024 15:33:49 GMT, Lukasz Kostyra <lkost...@openjdk.org> wrote:

>> Originally this issue showed the problem of Node being incorrectly rendered 
>> (clipped) when snapshotting, compared to a snapshot of the whole Scene. 
>> Later on there was another problem added - lights not being taken into 
>> account if they are added to a SubScene.
>> 
>> As it later turned out, the original problem from this bug report is a 
>> problem with ParallelCamera incorrectly estimating near/far clipping planes, 
>> which just happened to reveal itself while snapshotting a Node. During 
>> testing I found out you can make the Node clip regardless of snapshot 
>> mechanism. Clipping issue was moved to a separate bug report and this PR 
>> only fixes the inconsistency in lights being gathered for a snapshot.
>> 
>> `Scene.doSnapshot()` was expanded to also check if SubScene provided to it 
>> is non-null and to fetch lights assigned to it. Scenario was tested with 
>> added SnapshotLightsTest.
>> 
>> Rest of the tests were checked and don't produce any noticeable regressions.
>
> Lukasz Kostyra has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   doSnapshot: Replace light accumulation code
>   
>   Uses suggested simpler implementation using Java's Streams.
>   
>   Needed an additional check in NGShape3D, otherwise IndexOutOfBounds was
>   thrown

Corrected the behavior and added a test as well

-------------

PR Comment: https://git.openjdk.org/jfx/pull/1332#issuecomment-1912104317

Reply via email to