Recently made the plunge from 1.53 to 3.0.0, woop WHOOP. Thanks for the release Jules.
On the down side, OpenGL performance has taken a noticeable hit. In the case of my app there are several (5) opengl contexts that update in unison, which may be a rare case.
Strangely enough, CPU time is down for most relevant functions, see the attached (r082=v1.53, r083=v3).
But some of the panels update at perhaps 15fps. Using the OpenGL low-level renderer across the application didn't improve performance. setComponentPaintingEnabled is set false.
My model is essentially
// on events (Message thread) updateData() { ScopedLock sl(dataLock) ... update data } renderOpenGL() { { ScopedLock sl(dataLock); ... copy tables, vertices, etc ... } draw(); }
I wonder if there's a way to unify the rendering into a single OpenGL thread? Any other ideas? I've put a lot of effort into getting performance where it was and would be a shame to see it degraded.
Thanks!