View unanswered posts | View active topics It is currently Mon Jul 06, 2020 11:07 am

Reply to topic  [ 3 posts ] 
[Question to arthur] Sector loading and simulation 
Author Message
User avatar

Joined: Sun Apr 12, 2015 3:13 am
Posts: 283
Reply with quote
Currently, there is a issue ingame when you move. I you use a ship travelling faster than couple of km/h, you get micro freeze related to sector loading and unloading.
For those with good computer and fast ship, you get 0.2 sec freeze every seconds!

So, I have a question:
Is it possible to let the game continue it simulation while loading sector? This could allow a smoother flight (I think).

On unrelated topics:
Why does it takes 30 sec to delete a save for the game, and only 0.5 for windows? O.o
(There is also a minor bug when you choose your faction, you can see the names of the others in the background) (Too lazy to post it in the bug section XD)

(To the mod => I was really not sure of where to post all that XD)

Using Beta, always! (Well, for Reassembly)
(Also known as GATC on Steam)

Mon Aug 17, 2015 3:41 am

Joined: Mon May 04, 2015 10:08 am
Posts: 97
Reply with quote
Cornebre, I'm glad to see it's not just me! I've been fighting the sector loading freeze with everything's really EVERY TIME you cross one of the boundaries it unloads a sector and caches a new one so if you happen to be flying back and forth over the same line you'll experience the freeze over and over as it loads and unloads the same sectors!

Mon Aug 17, 2015 3:31 pm

Joined: Tue Jun 23, 2015 2:51 pm
Posts: 62
Reply with quote
I'm not arthur, but the right answer here is lazy loading and unloading.

If the sectors were marked for unloading, where the unloading happened in a separate thread, you would not observe a freeze. If you then tried to load a sector that is loaded but was marked as unloaded, you would simply unmark and call it a day. This would also not freeze.

Loading's a bit more interesting, since you kinda have to load sectors in order to go to them. You would have two radii, one for lazy loading and one for priority loading. Once an unloaded sector got within lazy distance of you, it would be marked for lazy loading. If an unloaded sector marked for lazy loading then moved outside of that distance, it would simply be unmarked. If an unloaded sector got within priority loading distance of you, it would be loaded immediately (@arthur: I'm thinking std::futures with threads spawned for each sector to lazily load. The disk/RAM cost will overwhelm the cost of spawning a new thread, and this way you can just wait() on the sector. If you're really conserned about thread startup cost, you could build yorself a thread pool.), because you're apparently going there now, and you would like space to be loaded before you get there.

Sat Aug 22, 2015 5:15 pm
Display posts from previous:  Sort by  
Reply to topic   [ 3 posts ] 

Who is online

Users browsing this forum: No registered users and 3 guests

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software