Graphic Processing Updates
Potential RPG May 10th. 2007, 11:16amGraphic processing in general has been radically improved. In addition, client memory footprint was
reduced by about 50% (then I enlarged the rendering area, bringing memory use back up). Here’s a lesson for Java image manipulation: use BufferedImage.TYPE_INT_RGB rather than BufferedImage.TYPE_INT_ARGB_PRE when possible (one variable increased world rendering performance by roughly 90%).
The client deadlock bug has been mitigated (read: not fixed yet, but less likely). The cause, for those who enjoy fables of thread contention, is the AWT thread holding the Content lock and awaiting the Render lock, whilst the rendering Engine held the Render lock and awaited the Content lock. The render process still needs the content lock on occasion. The real fix will involve changing the content update process to not hold its lock on event notification… but I digress.
For the player, you’ll notice a major improvement during the world shift (when you get near the edge of the minimap). This used to freeze the client for a few seconds (usually while you’re being pummeled by Ogres). There’s still a delay, but it’s more like 300ms. Also, there shouldn’t be any edge garbage on the minimap during the shift — you should immediately see new terrain to explore (as the edge terrain is now pre-rendered and ready for the shift).





