Closed jazzvaz closed 6 years ago
@jazzvaz It is a very complicated task and requires complex analysis.
For example, after the freeze is gone, the dog, which was away from actor before, can be already next to player and bite him...
It may be not a threading problem. Logic updates use a delta time, so after a freeze, the delta is bigger than usual and you can see that strange behavior.
@Im-dex might be true. Another question: is it known what is causes freezing? Spawning? Scripts?
@jazzvaz I don't know exactly, but I think the issue is complex: the engine has complicated client-server synchronization logic, heavy alife online/offline switch, bad world streaming implementation and much more.
@Im-dex thinking the create own engine :)
I don't know what was the idea behind having two threads, but i think it is better to combine them into one main loop. If I get it right, one thread is used for rendering, and I think that there is one specific annoying moment in game because of this: when game freezes, player cannot do anything, but the world around and creatures move. For example, after the freeze is gone, the dog, which was away from actor before, can be already next to player and bite him...