temporary performance issues when prism.dirtyopts set to false

Jonathan Giles jonathan.giles at oracle.com
Wed Jun 6 21:04:28 PDT 2012

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