1
\$\begingroup\$

I am looking into reducing load in client server games for a uni project and am looking at physics. The idea is that if a very low powered device tries to carry out some physics heavy action that it will be very slow, therefore the power of the server can be used.

So using the power of the server, in Unity, an RPC can be sent to the server, the server carries out the physics (say throwing a box into the air) and then transmits the position of the box as it moves back to the client. But this seems to me to be putting alot of pressure on the network.

What I am getting at is, is there a way to have a server carry out physics reactions and send the results of those back (such as a jumping box) in a way that doesn't pressure the network?

All I can think of is that when the box is moving on the server that the position code is sent to the client, and then when there is a new position that is sent to the client again. If an object is moving alot this seems to be alot of position updates sent across the network, taking up bandwidth.

So is there another method instead of constantly sending position updates?

\$\endgroup\$
  • \$\begingroup\$ you should not worry about syncing 1 vector3 each frame udate. It is much less network traffic that you can think. In my game I use state sync with 5 vector3 and a bunch of booleans. it is still as fluid as a river \$\endgroup\$ – Leggy7 Aug 20 '15 at 15:59
  • \$\begingroup\$ @Leggy7 thanks! Will look into State Sync \$\endgroup\$ – CH99 Aug 21 '15 at 11:37
  • \$\begingroup\$ Maybe consider precomputing the whole movement path and speed values for each frame on the server and then sending only that to the client? \$\endgroup\$ – Machinarius Jan 27 '17 at 2:49
-1
\$\begingroup\$

Per a comment to the above question State Syncing seems to be the way to go. Saves me updating every frame.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.