Star Citizen: Reverse the Verse LIVE - Performance and Optimization
Transcript — every row opens the video at that moment
- 00:00:11
greetings citizens and welcome to another edition of reverse the verse life I'm your host Content Manager for global video production Jared Huckaby on today's show we'll be sitting down with lead network programmer Clive Johnson and lead gameplay programmer Rob Johnson no relation to discuss performance and optimization and answer your questions live following yesterday's performance and optimization focused around the verse but before we get to that let's do the Week in Review last Friday we had studio director eric kieron davis and senior producer dennis crow here to discuss production practices and their work on the RSI public roadmap for 2018 it was a fun talk and a good chance to get to know a part of development that's often overlooked and misunderstood Monday brought with it another all new episode
- 00:00:58
of our weekly Q&A show calling all devs which featured answers to your questions about buying weapons without the UEC automating ship turrets the cargo space in the freelancer der underground caves and the status of the star said it's a mobile app stretch goal yeah me now if you haven't seen calling all devs it's available every Monday up on YouTube Tuesday brought with it the March episode of Laura makers guide to the galaxy this time focused on the caifa system spiritual center of the xi'an empire and a popular tourist destination to many in the UAE and when we talk about shows that only star citizen's star citizen would do and only star citizens would watch laura makers guide is a fantastic example of this each and every month on wednesday we hosted our very first subscriber only tour of the los angeles studio where subscribers not only got to see some of
- 00:01:47
the stuff we're working on ahead of time but participate in the filming of this week's around the verse it was a fun afternoon and a great opportunity to hang out with just a small fraction of the thousands of people that make all our community content possible now keep your eyes and ears open in the coming months for word on joining our next subscriber to work just like this one finally on Thursday this week's around the verse was a twofer we had a star citizen project update with some really cool looking look at the future of cockpit displays and the main feature read about the continuing work tuning performance and optimization for star citizen now when we come back we'll be joined by the Johnston's Clive and Rob to dive even deeper into this topic central to the hearts and minds of star citizens everywhere stay tuned alright well on the show this week Clive and Rob Johnson FMV 42 UK hey
- 00:02:37
guys doing pretty good Jared how are you I'm okay a little under the weather would not be a subscriber to our on on Wednesday and one of them brought plague but I'm okay tell me when somebody's like your date your date quills in the shot and I'm like okay I'll move it hide it over here and I'm like maybe if I leave in the shot I'll get a free sponsorship but so performance and optimization obviously this is this is a topic that's very close to backers hearts we star citizen is in a unique position because we are running a live game environment in the middle of our development you know but there are lots of terms in the in the in the gaming community early access stuff like that we're we're sort of like that we're not we're not we're not quite like like a pub genie and
- 00:03:25
whatnot where we are we are very very very early on I mean we started our live environment back when we had only the arena commander module we are we are we are building this game out live in front of our community and that brings a lot of challenges with it one of the things I think it was I think it was a I can't remember I can't remember who said no but usually optimization happens towards the end of the process and we are because we're running the cyber environment because we want people to be able to accurately test the stuff that we have to we have to sort of change the paradigm a bit and and optimize our performance live during development and that's what our h-e-b was focused on last yesterday if you haven't seen it that's a Bilbo up on YouTube and at the end of this show I highly recommend you to go and check it out but on the show
- 00:04:12
today we've got Robin Clive Johnson no relation and I'm going to keep hammering that dire joke because I love it I'm sorry guys let's just take a few moments now and introduce you introduce yourselves to everybody who's watching I tell who you are and what you do for starters isn't I'm Rob Johnson leaked gameplay programmer here at foundry 42 Wilms oh I'm Clive Johnson lead Network programmer also Yankee 42 no relation no relation so what does a lead programmer do run also it's really and it primarily I'm in charge of managing a team of gameplay engineers and also work with production and scheduling the work that
- 00:05:00
the team has to do and do a lot of bug fixing and trying to look at critical issues as they come down and things that might be stopping us pushing T vacati for example they often get put on elite plates first for us to assess and then assign out as needed and just generally you know a day in the office is just a busy mix of emails Skype JIRA's bug-fixing occasionally a little bit future work maybe they maybe a few meetings so it's really just a little bit of everything but really good fun you're really selling their glamorous video game developed on there Robbie yeah when is the lead network engineer
- 00:05:51
you pretty much the same thing and the the kind of fame the other part of it is the the dealing with demons are wrong Wed talking to the other leads and coming up with solutions for the kind of problems that we face it's going to work for everybody and trying to make sure that everything's tossed off in their engineer and production aware of what we need and when we need it by so that we can worry about dependencies now if there's your first time watching our TV we are live congratulations hello for those those so those of you who are here live if you're watching on YouTube after the fact thanks for watching we do take questions live in two places you can submit your questions either twitch chat where we're broadcasting on twitch.tv slash star citizen you can
- 00:06:39
preface your question with the word question in capital letters surrounded by brackets that helps us pull it out you can also submit questions live on spectrum which is our own communication platform available on Roberts space industries comm in addition to the live chat we also put up a thread last night once HG beam went live collecting questions for folks that couldn't be here live the other thing that there that does is it lets people vote on which questions they want to see answered so we do have some questions from that chat from that thread that we're gonna get to while folks in the Live Chat are coming up with what they want to ask the first question from that thread for you is the time and effort required to come up with temporary solutions that allow us backers to play each patch at this early stage interfering with the development of long-term solutions the game needs I'm a pretty good question I think for me
- 00:07:30
interference may be a bit of a strong word there and I'd say a lot of them a lot of game development you've got kind of times at which you know you've got so you might need a short-term solution medium term solution long term solution obviously with a game like this we're always aiming to try and get the best long-term solutions in which was doing things properly we're not a game where we can really take shortcuts we'd we have to we have to look at you know what he's going to work beyond the next patch with us releasing and every few months and to get a build release ready we are at times going to you know have to look at addressing issues in certain ways
- 00:08:19
that may not be relevant in a year or twos time so for me it's kind of just part and parcel of what we do you know we've you know it's not new to us as as engineers and even if we weren't doing the patches every few months and releasing them to the public you know we still need sort of short-term solutions at times to for example and allow design and other departments to actually like get on with their work you know you don't you don't just start with very close to finished product in a cycle of game development there's a lot of prototype in and try and stuff out and and sort of changing things around a little bit until you come up with a good
- 00:09:07
mix of things that actually works well so we're yeah it's for me it's just part of their of what we have to do yeah I think that affects just about every aspect of star citizen's development not just performance optimization we are always building the first iteration of something and then you know wrapping it up in a form that can actually go out to people and then building the next iteration of building the next iteration like with like with 3.1 we're putting out the first version of our character customizer it is not the it is not the fully featured version that we that we want with the DNA morphing anything but it is it is it is part and parcel of how we've chosen to develop star citizen which is live and out in front of everybody you're constantly you're working towards a long-term goal but you're also working towards these
- 00:09:55
short-term goals and having to package everything up in a and there's nice of bow as you can to give to people every couple months my next question for the thread what's the difference between SV calling in 3.1 and network buying calling it's become a serialized variable called yes okay so bond column will be the entities that are far away from you they're not present on clients at all and so they won't be taking any memory they won't be taking any CPU load serialize variable client on the other hand is that we just stopped sending the network updates for those entities those entities that are far away so far away on your client that you can't actually see them and so they're still the entities are still
- 00:10:43
there that's all present in memory and they don't require any CPU updates because they're not getting Network updates so the natural state of entities on the client or most entities on the client will be if they're not getting any network updates on the server they'll go to sleep for the next network up they decide what they need to do so I hope that explains the difference all right from the live chat how long have some performance increases or how long have some performance increasing features fixes been in development all do we start optimizing with 3.0 or have we been working on these things for longer than just 3.0 branch I'm the first time we started discussing network optimization that was
- 00:11:33
the day I joined the company about 3 years ago and we've kind of we've been working on it steadily ever since trying to unravel the pieces bit by bit so that we can we can make these changes we get in there and we yeah luckily there's a lot of there's a lot of them a lot of the work involved say for example in clive putting in the new network backend and then game co take it taking 5s api and using that in the game code to replace some of the older stuff that we originally took when we got the engine so a lot of the time it's it can just take sort of several months sometimes to convert over what may be like literally sort of hundreds of pieces of code that we've got to make
- 00:12:25
sure that they still work and and make sure that they then use the new code and which can then be more optimal because then because Christ done such a good job on it and I got a question pretty well this is from me it's not from the check backers have have taken to referring to all performance based issues as netcode issues how crazy does that drive you absolutely livid twice not no hair yes yeah long hair when I joined a company yeah he's got pictures to prove it as well I think you can we help what can we say to help dispel that
- 00:13:17
Judge Esther I mean obviously we all know that there are performance issues we see the same frame rate that our backers see when they play in whatever what can we say now to kind of educate folks that this isn't that what you're seeing is not just a blanket net code issue okay so saying that there's performance issues in multiplayer is is fine hmm to then pin it on a particular part of code and say well because it doesn't happen in single-player all the code that you can see well-known in single player must be fine there is a bit of a leap because basically there's sheer different quantities of entities that were dealing with between single-player and multiplayer mm-hmm so you'll have I'm
- 00:14:06
not entirely sure how many entities we've got purple I would say 220 odd entities per player for each client that joins and then they'll spawn a ship that could be somewhere between a hundred to I think some of them will get them so like five thousand entities and then they'll go and fill those with cargo which more entities and they'll fly off and they'll interact with pirates and TAS givers which are more entities that get spawned and they'll be debris police is fine off so yeah that the number of entities grows very rapidly with the number of clients and that's what causes the performance low so if people want to call that net code then that's fine but it's not the networking specifically it's the networking and the game code and the physics it's really just there
- 00:14:57
every every module and every engineering department really kind of has to take responsibility for their own perfect performance and that they achieve in-game I mean you know when when we've been profiling this stuff and you tend to you tend to find that sort of almost no engineering department can can ignore performance you know we get the UI guys the AI guys as well the audio guys there's you know it really is sort of shared across the board and it might be that it might be that say you I do really great optimization and then all of a sudden the next biggest hitter on the list is the audio guys and then it you know then it might be the graphics guys it's just you know and
- 00:15:45
from time to time unfortunately so things in unexpectedly crop up and you know all of a sudden we have to jump on those fix that and then get back to bring in there and bringing the average frame time down and improving things I think as weld has kind of been a bit miscommunication in for a while we were method that the bottleneck on the server was the networking code and I think that's kind of been misunderstood a little bit that it was the bottleneck everywhere so yeah maybe that's partly responsible yeah that's one of the reasons why you know we had talked about we had we had wanted to have you on happy hour at the end of this year and whatnot but as we dealt as I dug deeper into it you know everything that was going on we realized that this is far more than just you know net code
- 00:16:32
networking something that we wanted to do a much more robust feature and that's what that's what folks are hopefully seen on a TV yesterday that performance and optimization is is a task that affects almost every discipline in star citizen so it will it will be all teams working in conjunction to bring star citizen to the 60 frame heaven that we're all aspiring yeah I mean the other thing throughout as well of course it's not just engineers you know if a designer wants to drop two billion entities in life all that performance isn't gonna be great you know if an artist wants to model an apple out of like a trillion Polly's place it on the table and an outpost then again you know this there's this you know a shared
- 00:17:22
company responsibility really who know I'm trying to remember trying to remember who that was right now but somebody wants so many once told me that the original freelancer model the one that had all those crazy rivets because the rivets were were created incredibly poor to be honest that the the freelancer had a larger memory footprint than the Idris they went and and and that's definitely not network relay that's just that's just that that's just the franceour is one of the reasons we we go back and we revisit these ships and not just because we want to change them for gameplay purposes but sometimes we just need to seriously optimize the way they were built we've gotten much better at building these ships as time has gone by so yeah alright next question from the spectrum thread what network enhanced
- 00:18:11
ins beyond what is listed for three point four are needed before we can have two systems connected by a jump point so beyond three point four so three point four we've got on the on the roadmap server migration so for two systems they're always going to work all the planners for them to work like separate instances so the servers for one system and the servers run over the system will be completely disjoint and won't communicate at all with thinking maybe it's not decided yet that we could use the server migration technology to help provide a seamless transition via the jump points from system to system
- 00:18:58
mmm so potentially what we could do is someone wants to jump from one system to another their ship gets put into a server and its own little bubble and that's ever then breaks off from the the mesh in one system and then is moved over to a mesh in the other system plan is connected it and one of the difficulties that we'll have to try and solve if we do that is the reason we won't mix systems together won't connect service from different systems together is that each system has its own coordinate system and with the star being at the center zero zero zero and so we have to move from wherever you jumped from the something system to mmm whichever destination system you're
- 00:19:48
going to move the ship move that server ball across space who without colliding with anything else and there's you know over the systems so I'm yeah it's it's a little tricky but yeah we're thinking about it we have to build a server migration techfoot server meshing tech first and then we'll see if we can utilize it that way it's still a the question was still a bit far out there yeah that's right my son I am another question from a live chat what upcoming optimization are you personally most looking forward to and why and for me I think one of the biggest things this year for us is
- 00:20:36
subject contain a stream in I mean is that's that's something we're working towards and Earth 33.3 it kind of goes hand in hand really with like some of although we're a new entity component work that we've been doing so the entity component update scheduler and really the with object container stream in you know you should get optimizations on load times for example because you'll be coming into the P you only needing to load in the immediate area around you to begin with so from our point of view and as Davis we're very much looking forward
- 00:21:25
to being able to get in the PU fix some bugs in I get an absolute fraction of the time it takes us to load into the PU right now so you know it's not just going to be a benefit for you guys playing the game it's going to be something that you know that is great for us every day and work wise but to do that there's you know there's there's a lot of there's a lot of talented guys and the engine side of working it back and forth at but also sorry game code wise we again have to go through lots of old game objects convert over that code to our new entity components we have to make make the various classes thread-safe
- 00:22:15
avoid it so to avoid crashes it's so that those those new classes then shouldn't should in theory be ready to put on everything should be ready to go on the battery up data spread the load across multiple cores allow the game to scale a lot better so really it's kind of hard to pin down one specific optimization when we have kind of several or all being worked towards at the same time you know we have things back to update in now we have a lot of these classes that are now fred safe we have a lot of stuff that's being converted over this just there's just a couple more releases probably until there until we're quite there so we're yeah that that's that stuff you know this you know I saw it something I'm very much looking forward to and because
- 00:23:05
you know a lot my job for the last like three or four years has been getting rid of a load of old code and putting in this nice new shiny stuff so we we dream of the day where we just have this nice shiny code base that's that's our own and we're not we're not fixing crashes and something that got added years ago and yeah you know we can just we can just enjoy and enjoy the new code but hope you want to get to it's kind of like being asked to make a favorite child my parents had no trouble with that right while you were talking Rob one of the questions came in that says can we please dummy explain that's
- 00:23:54
their words we please dummy explain what object container streaming really is okay well an object container in its simplest form you could maybe just think of it as actually kind of like a level yeah without sort of without a few bits of stuff that's kind of specific to it that's really being a level if you like you know like an a because I let most of what a level is is it's just a list of objects so in the CryEngine and your most lumberyard you're looking mostly here and entities and brushes mm yeah okay large-scale pieces yeah like ships and
- 00:24:48
space station yeah planets they're all object containers so that's like a net so like the data is like an XML like file format which just is sort of containing a list of things and then that is so if that's an object container the idea is you sort of load into the map low load one set of objects that surround you you spawn a ship at the ship itself can be an object container it's just a set of objects popping that ship fly it fly across the galaxy you no longer need the object container that you've spawned in in in the first place a port olisar so you can remove those entities so really when we say right object
- 00:25:37
containers it is kind of just that it's a container with some objects in and the way we've got the game set up we can we can spawn those in dynamically remove and dynamically and that's that's really where you know that's really this sort of streaming process but as simply as akin there as I can get just so it's like when you load in there port olisar it doesn't have to send you it doesn't have to load up the star further that's sitting on Levski and the surface of Levski in your memory is you can't see it you can interact with it right now there's no reason for it to send that data to you and for you to load into your memory you know it basically it's it's a start affair or reclaimer an entire base they're all various object containers at different sizes and scopes
- 00:26:25
and this is just the system that determines all right we do need to send this to you we don't need to send this to you and when and where that happens okay from the thread there are massive fleet battles still feasible yes yes anything so yeah that was easy [Music] do you have any elaboration I was just joking about that um yeah okay um one of the things you've got a bear in mind is get the 3 point out the servers were running on 16 cores so the thread runs one flat-pack or so we had 16 threads available to the so um there's
- 00:27:15
servers that am I wasn't enough available to us um have up to 72 calls so obviously there's a lot more cause there's a lot more scope as to expand and run more things in parallel with the parallel and the changes that we made and make the network code one more Impala it's it stands a look yeah we could pretty much scale the numbers quite well um it's it's the lies a lot not just on the network code though it relies on as bob was saying earlier it's the mix of every one of the physics code and the gameplay code you know everything working together so that we can fill out those cause as optimally as
- 00:28:02
possible and I do believe that we've got the systems coming online and don't allow us to do that such as the entity I always get it stuck on this name the entity component update schedule we do have the best names in engineering they are catchy um so it's just a question of leveraging those to the best of our ability and then yes I think massive space battles or what will be a reality yeah I mean you can you can see what we're trying to do all the time we're really just trying to push things as much as we possibly can keep raising the bar you know Mike life says we've got the plan in place it's really just now we've just got got a continue implementing things
- 00:28:52
the way we've been doing it and we'll keep on raising the play accounts allowing allowing more ships into the PU and so hopefully we'll reach a point where people consider the amount we've cut to to be massive and so yeah with we think it's feasible we're going to keep keep going towards it another question from the live chat here why is serialized variables range culling less problematic than network bind calling because to me it sounds very similar to them yeah it is it is very similar the the only difference being that the with serialized variable calling the entities themselves are kept
- 00:29:43
around on the clients with bind calling the binding part is and effectively to create the entity on the client connecting it to the network that's the bind apart and then and letting the server know that the this entity is available for to talk to on the client and so by keeping their entity around we solve that problem we don't have to get rid of the density itself which means that then the data for that entity is loaded in on the client so what you could have is a situation where and you've got a ship and you're a port olisar you're watching a ship comes and travel away so if we've been calling that ship would be unloaded you potentially lose all the data files and
- 00:30:32
then if it comes and travel back you'd have to load those data files in again and respawn that entity on your client and that will cause a loading store at the moment so the reason that we haven't gone with bone calling for 3/1 is because we don't want players to experience additional load installs beyond what they already do and the reason it was on the 3-1 roadmap was because we thought what the hey we'll give it a try we'll see how about it actually but in the process of working towards 3-1 poets have changed a bit me because always the gamble as to say well for buying corn was actually going to improve things or make things worse so we decided but that we'd shift focus and make sure that Syria's variable calling was in and working and then assist with the develop simulations that are being
- 00:31:20
done yeah I mean by the gate from the game code perspective as well what you always tend to have in engineering is you can't help but absolute certain assumptions as to the way things they're kind of gonna the way things work and if all of a sudden we've got entities that were once they're albeit like the other side of the universe and now they're not then you can you can apply the nature the fact that we have right so many sort of tens of thousands probably hundreds of thousands of lines of game code there's going to be places where people have assumed once an entity exists it's you know it's kind it's there and it's not it's not being sort of pulled in and
- 00:32:11
out depending on whereabouts you are in the server so yeah there's there's a little bit fix up time we're gonna have to work our way through yeah next question says will sir permission be used to attempt a single worldwide server side or is ping the unbreakable barrier and will pings definitely an unbreakable barrier we are planning on attempting a single shard and what pings definitely going to be the big obstacle that we're gonna have to face so a number that I've kind of got in mind is I think it's Australia two parts of the US as something like typically like a
- 00:33:04
200 millisecond ping the EU to us something around on milliseconds or so so that they're not insignificant latency so potentially what we could do is try and find a server that's geographically in the middle of the players who are interacting at that point and try and locate all the players who are interact and so all the players were in Portales all be on the same server in the same server would be in the geographic middle somewhere of all the players are out of court also at that point in time and try and optimize the ping that way for as many people as possible and what we could do as well is we could kind of layer the servers in a sense so everyone
- 00:33:56
connects to their regional server or servers closest to them in a regional data center and then those servers then communicate with one that's geographically centered around the others that are connecting it so you can try and minimize the ping that way and some of its going to come down to and trying to find techniques to hide the latency as much as possible and it's it really depends on the gameplay situation it is obviously it's mostly going to affect fast combat and yeah it's gonna be challenging I don't I don't have any definite answers about how we're gonna tackle all that but we've got to build the tag first so that we can attempt to try and find solutions to those problems and the other thing to say is that probably arena commander and star marine
- 00:34:46
it's not fully this idea or they'll probably always be am region based so you'll always be connecting to your local server for those games so they should always have nice sharp low pings fair enough next question actually came in both the thread and the live chat is buying culling of distant objects problematic problematic for implementing optical magnification equipment like the endeavour's telescope arrays and yes yes it's going to be a bit awkward so um the way we can the cool thing is not just on a distance basis it's kind of a as observed sighs so if you imagine holding you your arm out in
- 00:35:34
front of you you thumb up and you kind of anything that appears bigger than your thumbnail to you is something that we'd want to keep in anything that's small and the size of your thumb there it would be something that would get cold and so adding the telescope on obviously means that you feel the view and it gets narrower when you're looking through a telescope so everything that appears much more magnified so that that means that you can see much smaller objects so that we have to keep in things that are much further away it's a yes it's it's going to extend the ranges a lot it could be a bit of a problem I'm sure it'd be fine but it's a it's something that I'd like that game designers to reign in police yeah I
- 00:36:25
think this or similar similar kind of issues with comes as well because obviously you know if you if you talk into if you talk into my multiple people in multiple locations you know all of a sudden it's miss Eyre the challenges students or figure out how we can like accommodate that situation without taking the load of every location that's that we want us that we want to show show and show some detail in this that is one of the probably the most challenging gameplay aspects we have to deal with yeah well luckily we've got we've got some time ahead of us that work on that stuff we'll performance and optimizations help with older pcs so
- 00:37:16
people won't have to spend more out of pocket pocket to be up to par yes and we'd like to so make it clear as we're on them that all the optimizations we're doing code wise they're not specific to any particular machine specs you know the code doesn't really really care whether it's high end or low end machine that it's going on you know if we're putting optimizations in the you know we found something oh you don't need to update this this object in this situation or you know we can you know we cut down my mounts of sort of expensive code that we that we call in and you know those those kind of
- 00:38:06
fixes will welcome apply to both low end and high end so so I think that all there it's it's probably like hard to sort of hard to judge exactly how much on each on like a high end versus a low end you save but the code is fixed for both so you should see you're saving in both the a the aim is to optimize across the board kind of applies for services as well because obviously they're super high-end pcs if you want to think of them that way so any any optimizations we do will benefit the servers as well as clients yeah triple win from the live chat here some players are getting massive CPU spikes and PU what optimizations do you think
- 00:38:55
will really impact client CPU load um well I think the thing we need to do is diagnose exactly why those spikes are occurring without that information you can't really you can't really tell what the optimizations are going to be yes yeah we need to we need to find the problems and fix them we've got plans in place to to do that those so when they'll be a year you know there's been new telemetry systems then added recently was talked about around the verse and eyeball see em in Frankfurt and so he's been putting stuff in that
- 00:39:43
all them do things like automatically capture and performance telemetry when the framerate dips below a certain threshold so whether it's in our internal playtests or potentially we we have plans to sort of take it take telemetry from people from backers playing in the game on live as well so basically we should we should be able to get to lament tree for these and drops in performance and then we can analyze it and say you know in my video it's the game code oh it's the physics oh it's network and so we've really just got it we've really just got a kitty you know
- 00:40:30
it's this bit like catching fish yeah who's we just really need to cast the line now and hopefully service that if there are any if there are any whoppers out there then you know we just we just hope into reel them in sooner rather than later gam fixed up you know we've we've got much better systems in place for free one to catch those things and also those new telemetry frameworks and the idea with them as well it's kind of to constantly pull in data as well so it's not just about the framerate drops it's about kinda like the baseline performance as well so you know we should have much more accessible ways for your average engineer in the company to look at the performance of the game
- 00:41:18
go these ten functions or the the slowest in the game oh look one of them one of them something that I know about I can fix that and so it'll be a lot more transparent as to where the issues are and then that should lead to mean fixed fixed up a lot faster and so we're kind of hopeful with the tools we're getting in place a much better and it is is a gradual process it's some days some days you can get some good wins over days you sort of scratching around and you feel like if you go to places where you'd love to be able to optimize it but it's much more tricky so we're yeah then going off on a bit of a tangent there
- 00:42:07
yeah we've got we've got plans we've got plans to get these framerate drops and get to get them so it as soon as possible yeah I got I got a suggestion for an out if we have a bunch of CPU space just turn off physics just we need physics just turn off physics if we have a whole bunch of CPU that's a free one for me to you brother friend as well like have you guys started to work on optimizing any part of squadron 42 yet or are you still figuring out the best practices for that now to apply the squadron 42 later well the way we build in the game and star citizen and squadron 42 we're sharing the code base and so really a lot of the optimizations we're applying already and will benefit
- 00:42:58
squadron 42 and anything that sort of maybe it's like sort of range based optimizations visibility based optimizations I what can you sort of turn off at rate range or when you can't see it also pointing systems to make it easier to sort of time slice update so you might only need to update certain objects once every sort of second as opposed 60 times a second or in some cases you might you might only need to update things at once every five minutes and really those kind of systems that we're putting in a PI it will apply to
- 00:43:44
both squadron 42 and star citizen this sort of the goals that Chris wants us to move towards so more more systems that kind of what we call LOD updates which we're Ladas level of detail so the idea might be you can have a AI character loaded in memory sort of very far away but for the for the client they don't need to run such a detailed update function for film in that situation as opposed to when I get closer the will be will be certain optimizations that are specific to certain squadron 42 and their star citizen for example the network
- 00:44:37
optimizations well you know just apply to star citizen they'll likely be a bunch of stuff we can optimize in squadron 42 that we maybe can't optimize in in star citizen because it's a single-player tile and so yeah with we're thinking about it we're getting optimizations in already the that will benefit it so yeah it's in our it's in our minds and we've got guys upstairs or working on it now so if the when the performance gets yeah when when the performs gets not so good in certain areas up there we know about it down here on the on the PU floor and we're there try notes we're with them and
- 00:45:27
helping briefings what are the current and forecasted blockers to be able to spawn capital ships like the javelin or the idris in the PU what needs to be added either feature performance wise for this to become feasible I think yeah not to for me I think feature wise there's issues with the sheer size of the ships and there aren't London parts big enough for them so there's some docking collars of docking technology that was required and performance wise we've had addresses in demos it's a blue it was a Gamescom last year so the technology performance technology is
- 00:46:19
there it just needs improving I don't think it's a million miles away on the network side of things I think we're we're probably okay because we don't really treat these big ships any differently than we do a player or anything else it's all all the same solder stands these stores I don't think there's any big lockers on gameplay side no I mean for us or a game code wise it's really just the push towards object container stream in I'm also the ability to stream ships on the background threads which should come in as part of the object container streaming work and that you know that that'll eliminate the stalls that you see when you spawn a few ships at a time you know we can aware of those issues QA
- 00:47:09
a tell us about those issues as engineers we just have to go it's going to be fixed 33 so yeah I mean obviously from a gameplay perspective you know the bigger the ship the bigger the store when it loads in because there's more entities that make make off the ship so whilst it's maybe not a blocker in the sense of you know we can spawn we can spawn big ships at the moment again to get them to a point where they were where it's good enough to get them actually actually in the game and for the releases and yeah we just we just need to get that sort of spawning on the background thread a few more these optimizations in and yeah we're just
- 00:47:59
building up to I mean you know we've already got ships in the game like the Star Ferry which is pretty massive and so the reclaimer in 3-1 yeah yeah so so we're going pretty big already but yeah the the addresses is pretty massive we'll get there we'll get there well Clive and Rob you did it you survived you've done your our caustic three here at three years and I haven't lost to Deb yet probably let you go is there anything you want to say to the community you you it's not that code anything anything at all you want to say to the community for me let you I'm now you just said it for BJ thank you for that yeah it's just said yeah well we're just I'm having a great time making this
- 00:48:48
gay and you know I really appreciate all the support we got just seeing a bunch of the backers that they don't so it's you know it's real pleasure to be involved in the project and yeah just hope you enjoy the work and I hope we get it bit faster for you next time all right well guys we're going to take a short break we're gonna watch the second half of that an awesome black Cutlass video and then we'll be right back with our wrap-up stay tuned well that about wraps up this week's show a special thanks to Clive and Rob Johnson no relation for allowing me to run that diehard joke right into the ground this week a couple housekeeping tasks before we let you go the ageist Vulcan concept promotion is still available through April 2nd as is the paint and library decal 2-pack for everyone even those waiting to get the
- 00:49:37
shape the ship in the game then on Monday next week to check out an all new episode of calling all Deb's where we discussed the future of outpost service a hot fixes repair enough for three point three how player 2 player interdiction will work and the future of player hangers in star citizen it's not one you're gonna want to miss for a reverse live on content manager Jared Huckaby we'll see you next week everybody thanks for watching for the latest and greatest in star citizen the squadron 42 you can subscribe to our channel or you can check out some of the other shows and you can also head to our website at www.uvu.edu/library
Transcript from YouTube’s automatic captions — punctuation and Star Citizen jargon are approximate. The video itself is hosted by CIG on the official channel.

