scene: Fix software clipping with fractional scaling

We may lose high precision bits when performing conversions between double and float in RenderGeometry::appendWindowQuad().

This can result in the geometry stored in RenderGeometry being off by one in comparison to the deviceBounds in clipQuads().

This change keeps all calculations in double until the last moment to make sure that the final results match what clipQuads() computes.

Merge request reports

Loading