Re: Physics determinism and networking

#6
You can simply test it with couple of freefalling boxes. If it fails to give same result everytime you run then its not deterministic. Physx also is not too. Before going in floating point stuff, you can just fix the random number generator thats used by the cryphysics solvers. By feeding its seed to a defined number like a frame number. Ofc thats if the above test fails and its confirmed not deterministic.

Re: Physics determinism and networking

#7
It is deterministic if the starting conditions are the same and then timesteps are the same during the simulation (by default the physics uses the main thread's time steps, which obviously vary, so the easiest way to have the same timesteps is to use fixed timestep mode). Note that "starting conditions" might also include the order in which the entities are created (in most cases it won't matter, but in some cases it might, such as if many same-mass objects are colliding). Also, depending on how the state is reset in the editor/game, some discrepancies can happen in the starting coordinates, due to double/float conversions, Euler angles/quaternion conversions, etc.
btw there's an updated version of the system programmings docs http://docs.cryengine.com/display/CEPROG/CryPhysics

Who is online

Users browsing this forum: No registered users and 1 guest