Provides straight-forward UDP networking. Candidates for the networking library so far are
Humblenet. It seems promising but it has a lot of dependencies (Go, Flatbuffers) and uses WebRTC/WebSockets instead of just UDP.
ENet. It's a very solid, battle-tested library that is straight-forward. It is sort of old so its featuresets is missing compared to other libraries
yojimbo. It's state of the art, but lacks a C-ABI, and incredibly obtuse C++ template API might make it difficult to adapt. There is also no documentation.
GameNetworkingSockets - Valve's networking library. It's robust, state of the art, can help make use of other Steam libraries in the future, but it has a poor API.
Support for standard Client-Server architecture is important, optionally Peer-To-Peer as well. The networking library should possibly interact with ECS in a way to help serialize/deserialize components over the network easily, and provide client-side prediction.
There should be debug controls to simulate fake lag, such as delaying received/sent packets, packet loss, and packet jitter.
Provides straight-forward UDP networking. Candidates for the networking library so far are
Humblenet. It seems promising but it has a lot of dependencies (Go, Flatbuffers) and uses WebRTC/WebSockets instead of just UDP.
ENet. It's a very solid, battle-tested library that is straight-forward. It is sort of old so its featuresets is missing compared to other libraries
yojimbo. It's state of the art, but lacks a C-ABI, and incredibly obtuse C++ template API might make it difficult to adapt. There is also no documentation.
GameNetworkingSockets - Valve's networking library. It's robust, state of the art, can help make use of other Steam libraries in the future, but it has a poor API.
Support for standard Client-Server architecture is important, optionally Peer-To-Peer as well. The networking library should possibly interact with ECS in a way to help serialize/deserialize components over the network easily, and provide client-side prediction.
There should be debug controls to simulate fake lag, such as delaying received/sent packets, packet loss, and packet jitter.