Object container streaming has been pushed back several times now. With Hurston scheduled for Alpha 3.3, does that mean that object container streaming is a must-have for that patch?
TL;DRChris Roberts says object container streaming is a must-have for the Hurston-based 3.3 content because of memory limits, so other things may move out of 3.3 to deliver it.
It is a must have. So we will not be able to deliver Hurston and the content without object container streaming, because unless everybody's got 32 gigs on their machines, we don't have enough physical memory on the smaller memory machines to have all that data there. So it is a must have. It's something that we've made a massive focus, which means that some other things may move out of 3.3 so we can deliver object container streaming. But for us, we won't be able to deliver, because 3.3 is going to have Hurston and Lorville and some truck stops, space stations, there's a whole bunch of extra stuff that goes into it. So it's a big content... and four moons. So it's a big content expansion for us and it needs the object container streaming. So we're making a big focus. It's the biggest priority on the tech side. It has our top people on it, so to speak. So it is our most senior of the engine folks. This is what we're focusing on. So there's quite a lot of stuff that's still out there to be done, but we're making very good progress. But the nice thing about that is that once it's all working, hopefully that kind of stall when new ships load in won't be there, because it'll all be asynchronous, happening in the background. And that's actually the biggest issue with the streaming: we have to make all the code thread safe, because we have to asynchronously load everything in the background and then just turn it on when it's there. And so that means that there's years and years and years of code that wasn't written to be on other threads that need to be converted across. So it's as big of an endeavor, which we've been working on for quite a while since last year, as moving to 64 bit. We have to change vast amounts of game systems to work in the new sort of component thread safe manner that the old CryEngine stuff didn't used to.