I am searching for a network solution for a heavy physics based game, and It seems like uLink is perfect for this.
I got experience with both photon cloud and photon server, and while photon server would be a possible solution it would be great not to put to much time into the physics server side.
There is however a thing that i am uncertain of:
it states that âThe Server is also an instance of the Unity Engineâ on MuchDifferents homepage.
Does that mean that an instance of the âwholeâ game runs on the server for each active game? This would be a problem as our game is in a voxel world which take up a lot of memory and would limit a servers capability to host many games.
Just need to make sure i understand everything right before i put the few money we got into a solution.
I was answering what I could of your question I donât have much experience with uLink⌠but I do have experience with floating point precision problems in networking⌠which you will also have
Thatâs why you only calculate the physics on an authoritative server and send the resulting transforms to the clients, you never calculate physics on multiple devices or pass any physics information over the network, otherwise youâll get undesirable behaviour.
To answer your question, BFGames, yes, uLink runs in a Unity instance, which runs in batchmode (windowless), so no rendering is taking place on the server. Youâll have a server build, optimised to only do the physics calculations, it doensât need to have any assets (aside from collision meshes) or artwork or sounds (which will heavily affect server performance en masse).
But to get a realistic multiplayer physics simulation going you will need a master physics scene on the server, with all relevant transforms synced across all clients. Since uLink is free to try, Iâd suggest seeing what sort of performance you can get on a server.
To give you an example on our Leaseweb Dedicated Server - Intel Quad Core Xeon E3-1270 with 16GB Ram, we can run about 300 instances of Monster Truck Racing Arenas, each instance has 16 Wheel Colliders, and lots of collision meshes for the tracks and props etc. While not heavily intensive physics wise, that gives you an idea, and that is a fairly cheapish server at 58 Euros a month.
As I said, your best bet is to evaluate if uLink is for you, in my opinion, it probably is.
Melt down is right,
iâm also copying my answer from muchdifferent forums for others information
That means the game server code will run inside a unity application, using groups feature of uLink you can host multiple games within one process and instance another process whenever required. About physics simulations, it would be great if you can use physX implementation of unity but in certain game types you might have to write your own diterministic physics system which you can ask it to tell you what will happen in next x seconds and some other features. take a look at AI game engine programming book for more info. This told, uLinkâs smoothRigidbody is more than enough for many games and in many situations PhysX implementation of unity would answer your needs, even if not at least you can use itâs collision detection and raycasting capabilities and many other great features of unity would help you in server side. stuff like coroutines, gameObject management and ⌠so youâll be much more productive than using photon server, Photon cloud is out of question as you know.
Awesome! Leaseweb is what we will be using for servers as well.
We got a single capsule collider per player, and it is a 2-8 player game. We do have lots of collision meshes for our voxel world but they are extremly simpplified in larger chunks for various reason.
Yeah trust me I did a lot of research, they offer the best bang for the buck server wise. For min latency you also want to make sure you go dedicated not cloud.
From your world sounds like youâll get some good performance.
We also changed to leaseweb from amazon where i work, for our facebook game. It really is the best for the buck. Only problem is that they got no servers in asia at the moment.