Developers discuss procedural planets (oceans, biomes, depleted mining sites, navigation), the item port system, and female character model delays. They also cover localized physics grids, beam weapons, formation flying via IFCS, the Vanguard's shields, multicrew engines, overclocking, salvage, and repair gameplay.
TL;DRPlanets come from a shared seed so all players see the same thing, and mining would likely change a separate object on top, which probably won't regenerate in place but would reappear elsewhere, with design controlling the economy.
Well this is an awesome question. First things first, I just wanted to explain, I tend to end up answering a lot of questions related to the procedural planet stuff. The big brains that are really working on the procedural planet technology are all within Frankfurt. Guys like Marco Corbetta, Carsten Wensel, Sascha Hoba, Pascal Müller. They're all working pretty much full time on the procedural planets.We get a lot of oversight on them, we gotta blend them into the game where they're working on the tech. Just consider that when I answer any questions regarding it, is that yeah I'm trying to represent as best as I can.
That's right. They're driving everything that it goes through. To get to the actual question, it's a really good question because, yes, the planets are generated from a seed but consider that our game is multiplayer. We can't generate a different seed for every single player that goes down to the planet. Me and Forrest can't be flying toward a planet. He sees a mountain. I don't see a mountain. I end up flying through it...
Or whatever. That's going to already be kind of set in stone. So when we generate this planet originally, as a developer, yes we will have a seed. Once you seed as a player, you're always going to see the same thing. Now when it comes down to actually permanently altering the surface of it... what's likely to happen is that when we do mining, it's going to be another object on top of the planet.
It's not going to be the planet itself. No, you probably won't alter the actual planet geometry itself, or any of the seeds related to it. You'll alter a different object that's placed on top of the planet. Just to give a really out there example, you've got a big block of ice, right? That big block of ice is sitting there on the planet. You fly down. You're mining water out of the ice, let's say. That ice disappears.Now the question is, will that ice then regenerate? Well it's a design question. It's going to be up to the designers. There's no technical reason why it can't, but likely what's gonna be happening is that we've got an area of ice, right?
So it's gonna be a certain number of minerals within a certain, pretty large, area. You're not gonna get the exact same ice block in the exact same position.
You get the initial planet generated, but then the objects on the planet that you're mining and stuff maybe they'll have multiple seeds. So when it regenerates itself, if it regenerates itself, which I don't see why not.
Exactly. That's kind of a long answer to whether it regenerates or not. I would say no, it doesn't actually regenerate, but it will be somewhere else. The seeds are all shared, so everybody will see the same thing.
TL;DRThe team is working on moving between animated character and driven ragdoll in zero-G and across physics grids, and on extending the skeleton for new item ports, which is costly on the CPU and must sync to players.
It's a system that is completely interwoven. Evo Hertzig does a lot of work on this particular system, as well as a gentleman by the name of Chris Rahm. What we've been working on constantly is the zero G driven ragdoll kind of technology. This is pretty unique to our game and the driven ragdoll itself isn't unique but the transition between animated character to driven ragdoll back and forth, back and forth and going within physics grids and things like this. There's a lot of problems, and a lot of challenges that that brings. It might not be super obvious to the players, that we are working on things within there.
From what they see, "Oh, yeah it all works." There's little things that we want to fix within that. So, the other sort of portion of this, that's been very tricky actually to be working on, is the skeleton extension portion of this; has a little bit to do with the new item port system. What happens with the new item port system? You start as a base skeleton, then you add let's say a head or helmet. That skeleton actually extends.
So we have a skeleton within the head that has a shared root. That actually extends as the base skeleton. We then deal with that as a normal character. So, what's tricky about that is that we've got to figure out a way, we've worked on it quite a bit last week before Evo went on holidays, to rebuild that physics skeleton without completely rebuilding it...
So yeah, that's kinda what we're working on within there. We want that driven ragdoll to be affected. We want, as we add different skeleton extensions on, to extend the skeleton physically as well.
You're in one physics environment then when you enter a ship, you enter another physics environment, right? Then what happens if you're ragdolling from one physics environment into the next physics environment. Then have you turning back into your regular animation.
The relative space of that moves so often. We have a World Space, the Local Grid Space, the Zone Space. So yeah, there's a lot of transitioning between different, we call them partitioning grids.
TL;DRA beam weapon would be done by raycasting every few milliseconds and stretching the effect's vertices to the ray length, not a continuous rate of fire; the game code is nearly done and only the visual effect is still needed.
This is actually a really really good question. This comes up a lot in games where you're gonna have a pulsed laser that's really just a glorified machine gun or if you have a beam laser weapon and as everyone knows we don't have a beam weapon within Star Citizen yet. We solved this problem on an earlier project that I had worked on, a little modding project called Mechwarrior: Living Legends. They weren't continuous beams but they were there for quite some times so the problem you've got to solve is not necessarily having a long beam because we have different levels of ray casting we can do.
Exactly. That's right because we've gotta show it somehow. We've gotta be able to one off the geometry so it looks good and second we've got to be able to change the length of that geometry. Now does it make sense to have one piece of geometry...
That's two kilometers long well think of the bounding box of something like this right? So that's gonna cut out when you look away so that doesn't work really well. So what we did on the Mech Warrior project is we had segments of lasers that would just be[Draws lines with his hands that stack on top of each other]
That just kept stacking on top throughout and then leaving and stoppedST: Stacked on top, but then you've got other problems with that, that comes to do with draw calls so you've got one object, two draw calls, another object, two draw calls.
Exactly. So the best way to do something like this is not necessarily to have a continuous rate of fire, is to do that raycast, you do that ray check every couple seconds, every couple milliseconds, not every frame because there's no reason to do it every frame, but to actually extend those verts you control the verts on the effect itself so it does the exact same length of that ray and then you grab those few verts and if you move it back, move it forward, move it back, move it forward.
Just kind of already how our projectile system works currently. For those that don't know, in the original trailer I made a bunch of particle effects and then I gave them damage and physics and all that stuff, but once we actually came out with Arena Commander and needed a more sophisticated solution to support networking and all this stuff right. We decided to switch from just a particle effect over to a cylinder, a capsule and then that capsule that would draw and shrink depending on its velocity and all these effects and then we would attach a particle effect on top of that including with an additional glow shader. So we rendered the capsules as type of glow which we have all these shader effects on it, then we can also attach a particle effect on top of that for additional effects and then the verts actually can move and stuff.That's gonna be a super fun gameplay trick, I'm really looking forward to that.
It's gonna be a neat effect yeah and actually what's really cool is we already got all the actual weapon fire, weapon type, we've got that all in place, all the code in place and it's really a matter of having the visuals that come alongside it. There'll be cool things like when we have scrap or when you're trying to pull out minerals and things like that from a ship.
We're gonna need some sort of beam for repair. We're gonna need some sort of beam for mining, so we need this beams anyways and again the game code is pretty much done for that, we just need a nice effect so that's kind of next up for some of the VFX guys.
TL;DRPlanets will have varied biomes, but moving weather is not something they are ready to solve yet and may come later; they believe procedural tech can match the fidelity of the rest of the game.
So the first one that I want to deal with is, "Will planets have variant biomes?" Of course! We have to. Otherwise you're gonna end up with planets that all looked rocky.
We've got... I don't know how much we're talking about this yet, but we've solved all kinds of lighting challenges, let's say. Thing like GI on the planets. There's some good solutions already in place. I don't see any reason why we wouldn't have variant biomes. Now if he's talking about variant biomes within the planet itself. You've got a planet, up north is going to be the polar icecap...
Absolutely! There's no reason we can't do this. Weather regions is a bit of a different story. That's a lot harder, because sure we can do all levels of code. We know where you are on the planet, we know what sector you're in, what's around you. But how do we communicate that over to the player?
To give you guys an idea, these are the things that we're thinking about. The fidelity of our planets are gonna be such that you've not seen this before. There's no question.
Now whether you have moving weather and things like that on it? That's a problem that we're not yet ready to solve. They're already taking a look at it, things like volumetric clouds and all this kind of stuff, to have moving weather patterns and things like that within the planet?
I think it would be amazing. So the second piece of this question is, do I think that the current procedural tech will be capable of generating the flora and fauna...
Yeah. Because the art is still making the assets. So the fidelity will be there, right? It's just a matter of this procedural tech deciding where to populate the plants and the animals. Right?
Our goal with this whole system is to be able to make an entire world at that same level of fidelity. We want to have trees that look like Crysis. We want to have...
Just have to be smart about how you author your art. As long as you go for a very technical, practical approach and optimized approach. I think that's really quite possible.
No, and that's it. To be honest too, the other thing with it is generating forests, trees, even animals and things like that. Getting them all placed on the planet is difficult yes, but there's harder types of planets to do.
One of the more difficult, and you've worked on things around this, is like procedural city-type planet. What then do we do and how do we keep it at that fidelity for a planet that's covered in an entire city?
TL;DRThey have experimented internally with oddly oriented gravity and plan to put magnetic boots back in, but planets use their own independent gravity rather than being giant localized physics grids.
Alright so these guys are always sneaking two questions in aren't they? There's like a main one, but oh by the way,Forrest Stephan: 20 for the Developers.
You can have a lot of fun with the physics grid. Doing a circular space station is very much possible so that way you can have a localized direction of gravity all throughout the localized physics grid which is quite cool. The other thing, again this is something Chris Reign had worked a lot on is that we've got a sparse voxel representation of the physics grid meaning we can shape it how we want. We give the system a model and it gets as close as possible to this particular piece of geometry. Now the higher poly the geometry is, the more expensive, the more difficult that check is to make, but absolutely we've done this kind of stuff internally.
We'll be putting those right back in. So not only will you have the localized physics of say, just like he's talking about like a circular space station or something like this, but you'll also be able to magnetically connect yourself via your magboots or whatever.
I mean it's a neat thing to mess around with, just like he says somebody is going about their day to day business and they're hanging upside down from you or something like this.
But yeah that technology lets us do all this kind of work. Speaking of circular gravities, are planets going to be based basically enormous localized physics grids or is there something more to them. There's a lot more to the planets. One of the tricky parts again and I think I talked about this in another 10 for the Developers is that we can't possibly store every single piece of physics collision on the server all the time, right?
So this is something that we've gotta generate on the client side at runtime somehow. So there not big physics grids essentially. They have their own gravity, it's completely implemented independently of a physics grid. Uses the same concept I suppose, but it's not a physics grid entirely. It would be far too large and it's not even close to a granular as what we even need.
Exactly, it's very, very different. Again if you think about it right? You've got a very different shape, you've got a sphere and everything's gotta be a local gravity.
And then everything is going in that direction, but yeah it's a little more difficult to do on a planetary scale, but it's not a big physics grid, it's... not to be condescending at all it's a lot more complicated unfortunately than that. I wish it was easy enough as making a big physics grid, but that wouldn't really work for what we need.
TL;DRThey expect maps, GPS and beacons, including quantum travel beacons to shorten landings, but this follows ongoing internal gameplay work and they can't say when players will see it.
Yeah, we're going to need all of the above. Like, I consider maps and GPS to be kind of the same things. GPS is just a function within a map... Right, so it's just telling where you are within these maps. Beacons, absolutely. So, you guys get an idea, we are working on all the gameplay related to this. The first step of that gameplay, it's something I showed in the procedural planet tech demo. Is the approach. I mean, if landing is going to take you thirty, thirty-five minutes. We looked up how long an actual transition for earth landings... How long atmosphere to ground really takes. It takes a long time. If we make it take that exact same amount of time. You're going to land one time, and you'll never do it again.
So that won't really work out. So one of the things we're working on is the Quantum Travel Beacons. Where you end up close to the planet enough that you can land within a reasonable amount of time. How many beacons we put on, whether that's automatic... Whether you manually do this all yourself, since it's all completely seamless, of course we want it to be manual. We also don't want it to take so long to do that you'll never want to do it.
Right, so we're gonna need all these.We've talked a lot about this. Really, what it's going to come down to, is our first gameplay implementation of all of it.
This is something that we're working on internally. I don't know when you're going to see it. We're basically solving all these problems right now. As simple as, you're in zero G in your ship and you transition into gravity. Where the planet has local gravity. You've got physics and everything. So how does the ship flight change? How does it feel? Is it fun? That's really what matters. Once we get there, then you will be getting your maps, GPS, beacons. Things like this. I expect that you'll have that...
TL;DRBesides the item system, which they say is the biggest headache, Sean Tracy thinks full-scale solar systems combined with a planet will be the hardest, and says players should see it sooner rather than later.
Well I'm just gonna go ahead and do it. It's the Item Port system and we can go into other things, but I'm gonna talk about it anyways because it is the biggest headache so far because we're working on it all the time and you're working on it constantly.
So the biggest thing that we're dealing with right is all the characters for example are going through a major transitional phase. They're going from what, CryTek uses CDF's which is a type of XML where you tie all your items together, into a sophisticated item port system.
And you've currently been working with Engineers on building this tool and so now we're going to be able to build characters as items with this new item port system which is super helpful, but at the same time it's difficult because you're trying to support everything that's previously existed because you don't want to break everything for design.
Which seems to make no sense. So visually right and Forrest hits the nail on the head with this one. Again the CDF setup was great for Crytek, it's really hard to maintain hundreds of characters with that sort of system. The other thing that didn't work for us on a coding... programming side is every independent piece of the character, actually needs some component code to go with it.
And it needs persistence, exactly. So because of the new item layout we can actually have different code running, different functions running on different pieces of the character itself rather than you being one character as a whole, you're actually a collection of a lot of different gameplay components that are being updated differently than other things. We kind of didn't really answer is question except the new item system.
Beyond the new item system, what else hurts us? Like the character one is a hard one.I would honestly say just the full scale because we're' doing the full scale solar systems now and that's something that I really think is gonna end up out to the community sooner rather than later, is the full size solar system itself. I think that's gonna be the hardest nut to crack. We've already got all the support in it, but it's all the extraneous stuff that we haven't thought of yet or haven't even seen. So we've got QA starting to run it through these full scale tests and then not only will we have full scale, but likely at some... I don't know if it's gonna be at the same time, I'd like to see this happen all to together, is we put one of the "procedural" planets within there.
Now I call it "Procedural", it's gonna be the designer controlled planet. So we put one of the planets into the full solar system scale and then we see all the problem that, that brings.
And this is what brings it together right? It takes all these things we've been working on these past couple years and finally puts these final pieces together.
It's super exciting, but like anything we know it won't be easy, it will be a headache and it will be difficult, but we will achieve it and it will be conquered and it will be awesome, but you know there will be problems.
TL;DRFemale models are held back until male animation work such as mantling, vaulting and cover is finished, so the female can reuse it; they say she's coming very soon, with no date.
So, I can blame all kinds of departments... I mean Steve will be super happy... so Steve Bender right now is in Frankfurt, you know my partner in crime there. We all have an office that is also shared so I'm going to blame Steve on this one. Would I say animations is behind, no and that's not really the problem actually, we've had...
A couple different things on the mesh that I'll let Forrest answer on the animation technology side. What we really want is a completely finished male. That doesn't mean mesh, that doesn't mean necessarily like outfits and things like that, what it means is everything to do with animation. So, we've got most of it, right. We've got a lot of first person stuff, holding weapons, we've got cover, we finally now got mantling and vaulting. So basically once mantling,vaulting, cover, locomotion, ships, what else am I missing, I'm missing something and AI sort of interactions anyways.Once those are all done for now, then we can basically just plunk a female into it. There's a technical implementation side of this where we actually have to plug a whole bunch of stuff within ManneQuin, if any of the asset names are different between the male and the female, and sometimes we've done this, that's going to cause some problems within ManneQuin. We actually want to use the exact same logic that a male does to the female cause we don't want to be fixing two different bugs first of all...
The one thing we are doing is we're figuring out every single thing that goes right and goes wrong and figuring out our complete process and then taking the female character and having a much smoother transition and making sure that everything works properly with everything we've learned from the male character.
Exactly. Then that way a female implementation is easy, it doesn't take us nearly as much time because a lot of it is, 'oh, how did we do the male. Ok, let's do it the same'. So, that's what's going to solve all our problems for that. The other thing that this gives us a huge benefit for is the Vanduul, it's going to be the exact same process. So, once that male is completely locked down for the Squadron 42 aspect of it, vaulting, mantling and all the animation... then females, you know, it's not done but we got all the assets, it's just a matter of plugging it in.
Then there's obviously the rigs and everything you've got to solve but the female model is coming along and I'm personally very excited to have it. We've already had some clothing made for it, we want to get that and I think that's going to fall under the customization too. We had to figure out how the players are going to be able to customize themselves with all their items and stuff, and the male had a series of clothes already so we were able to tackle that challenge and figure it out and now we can move onto the female. So, super excited that is coming very soon.
Right, and just to give you a full, sort of, look on this...the females we've already got them locomoting around, we've got a bunch within Squadron 42 that are specific to Squadron 42 so they all work. It's just a matter of you not having seen them within the persistent universe yet because when we give them to you, we want to have customization as you said, we want to have all the same outfits as the male. We basically don't want to take anything away from the female, right.
Then there's the whole, we have all our heads, right. So we've been solving, you have your body then you have these head scans, how do the head scans fit on the body, match it with the topology, the skin tone...
Which is a whole...which is a challenge. So, there's just a lot of things we got to do one step at a time to make sure we don't make the same mistake twice. It's as efficient as possible.
TL;DRThe speakers don't know if barbershops will exist (a design question), but say you'll probably change your face and hair at a medical facility, while hair tech and varying head sizes remain unsolved problems.
I think there will be... We've been working a lot on hair recently, that's been a big topic because no matter how great your head scans look, you still need hair.
And that's our biggest problem right? The current hair that we had worked on and even some of the tech we're fighting with a bit is that's what's bringing, not down, lowering the quality, bringing down the heads a little bit. You take a look at the head, you take a look at the face texture and we've got the crazy winkles, we've got pore mapping, we've got all this crazy stuff and then you've got a current gen looking hairFS: Hair which has some alpha test on it.
RightFS: To get it done and further down the roadmap you can always try to stay on top of what everybody else is doing and keep to the same technical standards that the rest of the games have.
Yeah, right, and same visual standards really right? I mean we've gotta be one of the best games out there and we don't want to give you any old technologies kind've the thing and we don't want to make the faces we spent so long on look worse.
So the actual question is: Are there gonna be barbershops? That's a design question, I have no idea about barbershops. What I do know is that you'll be modifying your face in a medical facility of some sort.
Pretty normal. There's a lot of problems to solve with the hair like Forrest was saying. Even down to just having different head sizes. I mean all the heads are a different size so how do you stop yourself from making every single haircut for every single head.
So if I have one haircut made for one head, but obviously when you're customizing your character you're gonna want to have access to all the different hairs.
Or even if you controlled it through a modifier or something or blend shape whatever we're gonna end up doing. How do you make sure that the hair stays attached to the head when the head changes size?
That's the thing and those are problems that we're solving and they give you an idea of that particular one. How we want to do this is that we have an actual scalp map, we hold all the morph targets for every single head within the scalp map, or we keep offsets of every single joint that we need to offset when we're customizing the face so we only make one model that contains all the morph targets for every single head and then the hair cards on top of that, those are going to have to move around.
Oh that's a good oneFS: You make eyelashes and then you're like "Wait a minute, everyone has a slightly different size socket in the head", so how do you make... You can't just make.. We have 120 different heads, you can just make one set of eyelashes to fit all the eye shapes right so all of a sudden you have to figure out, that's where our technical animators come in.
Yeah the technical art team, we've got a really awesome technical art team and one of the things that our team is the best at and I say this and I'm super proud of the guys for being able to always do this is these massive script updates that will affect all the assets together. So one of the hardest things about this game is the sheer scope of it right? Like "How many heads we've got?" "We've got over 100 heads. "How many character bodies do we got?", we've got hundreds of these. You can't go in "manually open up my tweak one, close it, save, manually open up my, close it, save". It would take you all year, but we've got like Mark Mccall, John Rigs, Gauge, Matt Intrieri writing these scripts that are a batch process to it.So to give you an example, Mark Mccall made the eyelashes right? So one thing we don't get delivered eyelashes with the face is, it's a problem because they look pretty funny with eyelashes, especially females right? So what he's done is he actually has a script that builds the eyelash geometry. Not only does it build the eyelash geometry, but it checks the head that's it's working on, builds the geometry, skins it on, exports the process; puts it into a CDF and it's done.
Because that's how you manage it right because you want to have your artists spend your time on eyelashes because if you could have them spend time on one eyelash, they're gonna look really good. If they have to spend their time on 120 eyelashes, you're gonna have a very low quality set of eyelashes.
And we have this visual bar, yeah totally. So you want to have artists concentrate on single elements and then you have your technical artist populate those single elements in a very smart approach to save the labour time so we can concentrate on the visual fidelity and not the art labour.
The actual labour of it, Sure. This is where bugs come from. So to give you guys an idea, asset bugs, this is usually what happens. So you'll do a batch process like this, you have to spot check a whole bunch of them, maybe have QA check every single one of them, but you'll spot check a couple and then there'll be one that didn't one correctly or one that somebody's PC lagged out for a half a second or whatever, I mean this is where the asset bugs come from. It's not like somebody was sitting there, they looked at it, it's whatever the face is exploded and they're like "Yeah that's good" and they go an export it. It's usually something that somebody hasn't actually physically touched.
TL;DROceans are shader-driven and the speakers think they can be done without killing performance, expecting good fidelity; underwater ships are a design debate, and space whales are likely supported but not committed.
Absolutely and again, Carsten Wenzel is one of the... He's unsung, he's very quiet unless he's very angry, but he's written white papers for the engine, he's been there from the get go and he's actually working within this. He's actually training one of our junior programmers to do this particular implementation. So him and a gentleman by the name of Tiago who went ID software I believe and worked on Doom, worked on our oceans originally within the CryEngine. I think I can go out on a limb and say the oceans within the CryEngine were one of the best features within the engine.
Exactly. So I think you can expect at least that level of fidelity, but what's tricky again about water is how, first of all the highlight changes at a distance. So when you're approaching a planet, the planet has got to react very differently, specularity wise to the surface first of all.
Exactly. Then when you get up close, you want to see waves, but you don't want to see it tiling everywhere, so we've got this real big scale problem that we're going to have to deal with, dynamic tessellation on this stuff, being able to have displaced waves and things like this and then additionally if we want to go underwater, which a ship to design should be able to do, right? Lets hope the design says ships are submarines also. To me, if a ship can go into outer space, it can go underwater right? I think it should be able to go underwater, but whatever, we'll see how that goes with the design in terms of that design thing. I think that's should happen.
Oh! That's a good point, right. What a Pandora's box right, cause you get under, you open the back of the Cutlass and what happens, right. Shouldn't the water flow in, right, but with the local physics grid like pushing water out, I don't know. There's all sorts of crazy...
A submarine though is built to withstand the extreme weight and pressure that the water puts on it and I don't think a ship needs to withstand the same amount of pressure in outer space.
Yeah right and again this will be a design debate and as you see there's a couple different mindsets. I'm sure all the players are gonna go "Ya, Absolutely they need to go underwater" because that will be more fun.
We talked a little bit earlier in a question about Fauna anyways so space whales, megafauna, I think we're gonna have to support something like this. Whether it's whales or big big things on the ground, walking around.. Yeah sure, space whales, let's do it. You heard it here.
So a space whale walks into a bar and he sits down next to another space whale and the space whale goes [Whale noises] [Whale noise intensifies] and then the space whale looks over and goes... You are wasted...