Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by rougedrow · Jun 02, 2014 at 11:08 PM · physicsnetworksimulation

Server runs physics, client only receives position data

I am working on a physics simulation tool prototype for use in my day job. I work in the automation industry and being able to test our automation software/designs in a virtual physical environment is very helpful. I have been able to get a working prototype that runs on a single machine but at high numbers of rigidbodies the framerate begins to drop. This is alright as the physics model remains up to date but makes the user experience less than ideal.

My thoughts are to make a server running all the physics simulations and controlling all positions etc of any objects in the scene, and clients which can view the scene. Clients would be able to move around freely to see the simulated system and interact with it in limited ways (clicking on machines to see their status, turning machines on and off) but the server would be authoritative and control behaviour of all objects and run all physics calculations.

My question is really if this is possible in Unity or not and how I could go about doing this? From research I have seen that physics in multiplayer games will vary between machines and must be corrected to a chosen master. Is it possible to make it so the server does the physics and the client doesn’t even bother with any calculations or behaviour except for example clicking on an object in the scene to bring up a menu from which the user can send a request to the server to alter some value or state of the machine in the simulation. The client would only receive positions and other display data for objects in the scene and render them for the user to view. The interactions from the user to the server do not have to be super responsive, in the order of one second of lag would be fine. My project will only ever be run over a LAN so bandwidth isn’t a main concern here. Also if this would require costly plugins it shouldn’t be an issue.

I hope to get my prototype to a point where I can show it to my boss, impress him, and be allowed to develop it properly during work hours. This started as a learning exercise for me so if unity isn’t the correct environment to do this sort of project in then at least I have learnt a lot.

Cheers

Comment
Add comment · Show 1
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Sebian · Jun 13, 2014 at 09:42 AM 0
Share

I'm not sure of the answer but I have a suggestion. You should consider client doing physics calculations as well as part of client prediction. Your server, of course, should have authority of where's what but unless your client simulates the physics you will get very choppy movement. Client-side prediction

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

22 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

I have a question for unity physics can simulate always same result with same input? 2 Answers

What would be the best approach to implement a conveyor belt? 0 Answers

Help with orbits 1 Answer

Simulating the graphics of a rolling 3D ball in a 2D game 2 Answers

Position synchronization problem in RPC Network System 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges