_NetworkSynchronizationServer
Inherits: Node
Synchronizes properties over the network
Description
Handles synchronization of rollback and state properties ( RollbackSynchronizer and StateSynchronizer ), while respecting visibility filters and schemas for serialization.
Packets are sent per tick, instead of per object. So for every simulated rollback tick, a packet is sent with states, and for every recorded input, a packet is sent with the inputs.
Optionally, diff states can be used, sending only the property values that have changed, saving on bandwidth.
Methods
| Return Type | Name |
|---|---|
| void | register_rollback_state(Node node, NodePath property) |
| void | deregister_rollback_state(Node node, NodePath property) |
| void | register_rollback_input(Node node, NodePath property) |
| void | deregister_rollback_input(Node node, NodePath property) |
| void | register_sync_state(Node node, NodePath property) |
| void | deregister_sync_state(Node node, NodePath property) |
| void | register_schema(Node node, NodePath property, NetworkSchemaSerializer serializer) |
| void | deregister_schema(Node node, NodePath property) |
| void | deregister_schema_for(Node node) |
| void | register_visibility_filter(Node node, PeerVisibilityFilter filter) |
| void | deregister_visibility_filter(Node node) |
| void | deregister(Node node) |
| void | erase_peer(int peer) |
| void | reset() |
Method Descriptions
void register_rollback_state ( Node node, NodePath property )
Register a property of node to be synchronized as rollback state
void deregister_rollback_state ( Node node, NodePath property )
Deregister a property of node from being synchronized as rollback state
void register_rollback_input ( Node node, NodePath property )
Register a property of node to be synchronized as rollback input
void deregister_rollback_input ( Node node, NodePath property )
Deregister a property of node from being synchronized as rollback input
void register_sync_state ( Node node, NodePath property )
Register a property of node to be synchronized as synchronized state
void deregister_sync_state ( Node node, NodePath property )
Deregister a property of node from being synchronized as synchronized state
void register_schema ( Node node, NodePath property, NetworkSchemaSerializer serializer )
Register a serializer to use when transmitting property param of node over the network
void deregister_schema ( Node node, NodePath property )
Deregister any serializers used for property on node when transmitting over the network
void deregister_schema_for ( Node node )
Deregister all serializers registered for any properties of node
void register_visibility_filter ( Node node, PeerVisibilityFilter filter )
Register a visibility filter for use with node
void deregister_visibility_filter ( Node node )
Deregister the visibility filter used for node
void deregister ( Node node )
Deregister any and all settings associated with node
void erase_peer ( int peer )
Erase all data kept about peer.
Called by default when a peer leaves
void reset ( )
Forget what was sent to other peers, while keeping the registered properties
Sent states are the reference for diff states, and are indexed by tick, so they must not carry over to the next session. Called by _NetworkTime.stop().