I have a basic virtual environment (VE) made out of opengl. It has many movable cubes. It has a user controlled sphere which can collide and change position of the movable cubes in the VE.
I want to extend the VE to multi-user controlled. For consistency amongst movable objects position across the VE copies at different user, I need to create a P2P group between the users. I have created the application on windows using visual studio. Which simple P2P, c++ libraries exist which support formation of P2P groups and UDP messaging between peers?
Also I wish to reduce the communication between peers and form areas by partitioning the VE into small areas and thus create many separate P2P groups, where a user who for e.g. on border of an area can belong to 2 p2p groups.
I would propose to profit from ZeroMQ. It is lightweight but very powerful and reliable, the community is big. On their web-site you can also find many examples of implementing different kinds of client-server applications.