Hi, I think we should wait for OpenJFX9 Jigsaw build patch that is coming and rebase / test again the proposed patch Marlin for JavaFX.
Maybe jdk.internal.Cleaner or Unsafe.allocateDirect methods will be then available to the javafx.graphics module or that may be acceptable to export such jdk API to OpenJFX. Finally I will have a look at the native prism sw code to see if I can fix the forementioned method by adding 1 integer to give the output_minx coordinate and only process pixels where the alpha coverage != 0. Please give me your opinions. Cheers, Laurent Le 7 nov. 2016 23:55, "Laurent Bourgès" <bourges.laur...@gmail.com> a écrit : > Jim, > > Here is the new patch: > http://cr.openjdk.java.net/~lbourges/marlinFX/marlinFX-s02-ofx9.3/ > > Changes: > - cleanup wrt OpenJDK9 (Unsafe is OK but I switch to the standard Cleaner) > - modified PrismSettings as recommended and renamed all Marlin properties > to use the prefix 'prism.marlin' > - SWContext: added Marlin SW support: I had to tweak the processed > range[x; pix_to[ instead of [pix_from; pix_to[ as the PiscesRenderer does > not handle properly the bbox so it processes many extra pixels on the left > side (empty coverage) = to be discussed as it can be fixed in the native > prism-sw code ... See my comment in the code: > > + @Override+ public void > setAndClearRelativeAlphas(final int[] alphaDeltas, final int pix_y,+ > final int pix_from, final int > pix_to)+ {+ // use x instead of pix_from as it > cause artefacts:+ // note: it would be more efficient to skip > all those empty pixels [x to pix_from[+ // but the native > implementation must be fixed too.+// > pr.emitAndClearAlphaRow(alpha_map, alphaDeltas, pix_y, pix_from, pix_to, > rowNum);+ pr.emitAndClearAlphaRow(alpha_map, alphaDeltas, > pix_y, x, pix_to, rowNum); > > I successfully built OpenJFX9 (gradle) and tested OK with OpenJDK9 b143 > (xpatch.args) with Ensemble8 + DemoFX. > > Maybe it is time to start the review for the FX enhancement ? > https://bugs.openjdk.java.net/browse/JDK-8169270 > > Cheers, > Laurent > > > 2016-11-04 19:55 GMT+01:00 Jim Graham <james.gra...@oracle.com>: > >> On 11/4/2016 11:33 AM, Laurent Bourgès wrote: >> >>> For SWContext, I figured out that only openpisces.* classes were used >>> directly via imports (hardcoded) so I left it unchanged. So you propose >>> to generalize use of marlin or native pisces ? >>> >> >> I didn't notice that, I was just searching on the use of >> "doNativePisces". We can look at that separately, and Kevin would know how >> frequently we end up in the SW pipeline these days... > >