Sunday, November 20, 2016

AbiathRPC - Live updating

Today I implemented the "tiles changed" notification receiver in the AbiathRPC client. It runs mostly in an Invoke call on the main form to prevent threading headaches. While processing the tile updates, it sets a variable that signals the watchdog notification receivers that render plane updates shouldn't be treated as real local changes. Then it just updates the level data appropriately, marks the tiles dirty on the render planes, and causes a screen repaint.

I tested this with two clients connected to the same server, and changes from one client are indeed replicated in real time to the others. Now I need to detect and replicate full-plane and level metadata updates.

No comments:

Post a Comment