temporary performance issues when prism.dirtyopts set to false

Jose Martinez jmartine_1026 at yahoo.com
Wed Jun 6 21:21:55 PDT 2012

Thanks for the response.  Please note that the poor performance is only temporary, during the first minute of game play.  So I suspect there is hope to obtain good performance for the whole time.

 From: Jonathan Giles <jonathan.giles at oracle.com>
To: Jose Martinez <jmartine_1026 at yahoo.com> 
Cc: openjfx mailing list <openjfx-dev at openjdk.java.net> 
Sent: Thursday, June 7, 2012 12:04 AM
Subject: Re: temporary performance issues when prism.dirtyopts set to false
I am not in the graphics team, but given the present state of timezones I thought I'd reply to try to give some clarity. Hopefully someone will follow this up at a more suitable hour with a correct answer :-)

Dirty opts in JavaFX is synonymous with the concept known as dirty rectangles, I believe. You can learn more about dirty rectangles at [1]. Basically it is an optimisation designed to limit the amount of drawing on the screen to only the areas that have changed since the last update. If dirty opts are disabled, as you are doing, you are basically telling JavaFX to redraw the whole screen on every pulse. This is clearly a far more expensive operation than just drawing the 'dirty' areas.

So, in short, yes, this is a known issue with disabling dirty opts. Except it really isn't an issue - it is just the nature of things. The reason why Kevin asked for you to disable dirty opts was to try to trouble shoot the other issues you raised. You shouldn't go without dirty opts if at all possible.

[1] http://c2.com/cgi/wiki?DirtyRectangles

-- Jonathan

On 7/06/2012 3:56 p.m., Jose Martinez wrote:
> Hello,
> I notice performance issues when prism.dirtyopts is set to false.  But it only happens during the first minute or so of game play.  The animation is not smooth, it looks as if it has a low frame rate.  But after a minute the animations becomes smooth for the rest of the program execution.  The poor animation performance returns if I restart the application.
> Is this a known issue?
>   thanks
> jose

More information about the openjfx-dev mailing list