[OpenJDK Rasterizer] RFR: Marlin renderer #2
Laurent Bourgès
bourges.laurent at gmail.com
Wed May 13 16:59:08 UTC 2015
Jim,
Do you have time soon to review the second marlin patch ?
Any other remaining comment on the first one ?
Did you have news from the SQE team?
FYI I will try using the DDA approach in the Renderer...
Improving Stroker seems to me too much tricky and risky for the moment (to
avoid intermediate segments for joins & caps)
Laurent
Le 29 avr. 2015 22:27, "Laurent Bourgès" <bourges.laurent at gmail.com> a
écrit :
> Jim,
>
> Here is a new webrev for the second step on the marlin renderer:
> http://cr.openjdk.java.net/~lbourges/marlin/marlin-s2.0/
>
> Changes:
> - ArrayCache: cleanup in the growth algorithm + fixed TODO
> - Float/Int ArrayCache: added putDirtyArray() methods
> - RendererContext: added dirtyInt/Float array cache and related methods
> - RendererStats: added statistics on cached array sizes
> - CollinearSimplifier: optimized condition evaluation order
> - FloatMath: removed once condition using bit masking to add +/- 1
>
> - Curve: fixed numeric constants + BreakPtrIterator deals with primitive
> integer (no more Interator<Integer>)
> - Dasher: fixed numeric constants + firstSegmentsBuffer uses the dirty
> float cache
> - Helpers: fixed numeric constants + removed widenArray methods (use
> directly RendererContext instead)
> - MarlinCache: added stats for rowAAChunk + fixed doc
> - MarlinRenderingEngine: fixed numeric constants + newDashes uses the
> dirty float cache + RendererContext uses now Weak reference by default
> (instead of Soft)
> - Renderer:
> - keep used range for edgeBuckets / edgeBucketCounts in endRendering()
> used then in dispose() to avoid FloatMath.ceil() calls
> - crossings / aux_crossings & edgePtrs / aux_edgePtrs use dirty int
> array caches
> - Stroker: fixed numeric constants + use explicit emitLineToRev() /
> emitQuadToRev() / emitCurveToRev() as short cuts + use local variables for
> readability and minor performance gain
> - Stroker.PolyStack: curveTypes / curves use the dirty byte / float array
> caches + optimized popAll() loop
>
> Cheers,
> Laurent
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/graphics-rasterizer-dev/attachments/20150513/ea3be226/attachment.html>
More information about the graphics-rasterizer-dev
mailing list