Feature #1764
Updated by skyjake over 10 years ago
Take advantage of DMU calls to generate network world state deltas. The core idea is that because all changes done to map data happen via DMU, it has sufficient information to generate all deltas for clients.
Instead of polling the map for changes several times per second, generate a delta from each change done via DMU. This will take significantly less CPU time than polling.
This is basically DMU v2: the implementation needs to be refactored as C++ while retaining the old C API for existing game logic.
h2. Considerations
* Map objects will need to be included somehow into the delta processing. How to do this without causing significant changes in existing game logic?
* The common serialization mechanism in libdeng2 should be utilized in transferring the deltas.
Instead of polling the map for changes several times per second, generate a delta from each change done via DMU. This will take significantly less CPU time than polling.
This is basically DMU v2: the implementation needs to be refactored as C++ while retaining the old C API for existing game logic.
h2. Considerations
* Map objects will need to be included somehow into the delta processing. How to do this without causing significant changes in existing game logic?
* The common serialization mechanism in libdeng2 should be utilized in transferring the deltas.