On Sat, 18 Jul 2020 22:07:59 GMT, Kevin Rushforth <k...@openjdk.org> wrote:
>> That's the case, michael. >> In SWContext, the Marlin renderer is called to rasterize any shape. >> >> See >> https://github.com/openjdk/jfx/pull/268/files#diff-28f93b00dc9cba7197f0a6c2fef022ed > > I think you are conflating the rasterization step with the rendering step. In > Prism the rasterization mainly includes > clipping the shape and generating the mask data for the filled and/or stroked > shape (the latter possibly being a wide > and/or dashed stroke). The rasterized shape is then sent to the Prism > GraphicsPipeline for drawing into the render > target. This latter step is either done using shaders + D3D or OpenGL, or via > the SW pipeline (or the J2D pipeline for > printing). In the case of the SW pipeline, the renderer is based on code that > was originally derived from Pisces, but > it is distinct from the rasterization step that OpenPisces used to perform > and Marlin now does perform. Take a look at > the [SW > pipeline](https://github.com/openjdk/jfx/tree/master/modules/javafx.graphics/src/main/java/com/sun/prism/sw) > classes, the [Java > PiscesRendering](https://github.com/openjdk/jfx/tree/master/modules/javafx.graphics/src/main/java/com/sun/pisces) > classes, and the > [prism-sw](https://github.com/openjdk/jfx/tree/master/modules/javafx.graphics/src/main/native-prism-sw) > native code. @kevinrushforth I asked skara JBS to associate my github account with my openjdk role... I will approve your PR once I have proper credentials. Good job, 10k LOC removed. I wonder if I should also deprecate the Float-precision Marlin renderer to remove 10k lines too. The Double-precision Marlin renderer was enabled as the default renderer since JDK10, so it is doing the job properly, no reason to have 2 variants anymore and it will ease the maintenance. Laurent ------------- PR: https://git.openjdk.java.net/jfx/pull/268