JavaFX graphics performance and suitability for advanced animations
Richard Bair
richard.bair at oracle.com
Thu May 30 21:36:24 PDT 2013
Thanks for the issues! As mentioned in RT-30830 and RT-30827, the jittery text and fuzzy lines are two manifestations of the same thing. When animating, you have two choices. Do you draw everything on pixel boundaries, or do you draw "in the cracks" between the pixels? Of course the only way to draw between pixels is to draw antialiased on the pixels on both sides of the "crack", leaving things blurry.
By default all Text is drawn pixel aligned in order to be crisp (more or less -- Windows & Mac may have different answers on this point). So when it is animated, it looks like it is jiggling (it is) because each glyph is figuring out whether it ought to go left or right. Text nodes are supposed to allow you to break out of this behavior for the sake of animation (there are a few issues related: RT-23580, RT-6475), but it looks like the way I would have tried (cache=true, cacheHint=SPEED) doesn't draw anything in this case, and we need to figure out why.
However expect that you will need to do *something* to Text to tell it whether you care about animation smoothness or static crispness with the text, so that we can be sure to layout the glyphs optimally for your use case.
The fuzzy lines on the other hand are perfectly normal and expected. You could of course write your app to pixel-snap the animated rectangles, and then see if it looks jittery or not (likely, yes).
The Canvas bug is very interesting, and we'll get to the bottom of it.
Thanks
Richard
On May 30, 2013, at 8:09 PM, Daniel Zwolenski <zonski at gmail.com> wrote:
> A little bit more esoteric, but some "not very nice looking" rendering when animating a very lightly styled Node: https://javafx-jira.kenai.com/browse/RT-30830
>
>
> On Fri, May 31, 2013 at 12:07 PM, Daniel Zwolenski <zonski at gmail.com> wrote:
> Jittery text when scaling in an animation: https://javafx-jira.kenai.com/browse/RT-30827
>
>
> On Fri, May 31, 2013 at 12:01 PM, Richard Bair <richard.bair at oracle.com> wrote:
> Wow. Thanks!
>
> On May 30, 2013, at 6:48 PM, Daniel Zwolenski <zonski at gmail.com> wrote:
>
>> I have replicated the z-order problem with the Tower Defender game and the Canvas: https://javafx-jira.kenai.com/browse/RT-30826
>>
>>
>> On Fri, May 31, 2013 at 1:26 AM, Richard Bair <richard.bair at oracle.com> wrote:
>> Note this is only for Mac.
>>
>> On May 30, 2013, at 7:54 AM, Richard Bair <richard.bair at oracle.com> wrote:
>>
>> > Anybody interested in jitter ought to look at https://javafx-jira.kenai.com/browse/RT-26702
>> >
>> > Richard
>>
>>
>
>
>
More information about the openjfx-dev
mailing list