Star Citizen: June Subscriber's Town Hall feat. Character Tech Team
The character tech team explains the body, undersuit, clothing and armor port layers and the zone-based culling system. They also cover NPC head tiers and wrinkle maps, hair and cloth simulation, planned female long hair, dresses, beards, scars and tattoos, and dyeing, plus the 3.0 pipeline work.
TL;DRWearing robes or cloaks over armor isn't planned and is doubtful, since modular armor changes size and silhouette, though some armors may include built-in hoods or capes.
So not impossible. We haven't talked about it. I'm not going to say it's something we can do. But because of the way we do our volumes and we sort of standardize everything, especially right now, all the undersuits are going through a standardization process to make sure all the armors fit on every undersuit, I wouldn't rule out the possibility that eventually we could have a standardization of armor where you could put cloaks on top of it, maybe. It's not something we're doing right now, but our system would allow it to be possible.
So that is actually built into the armor itself, so we do have armors that incorporate fabric, but our armors, since it's modular, they change shape and they change size. To have something that goes on top of that, right, because it starts with an undersuit, then you put an armor on top of that, then you put a helmet, and all these things are swappable. So they're changing size drastically, right? And we don't want all our characters to have the same silhouette. So just to throw another layer or something on top of that gets really complicated. But to add variety, we do like to incorporate. Maybe some of our armors might have a hood. Maybe some might have a little cape. Maybe some will have these drapeable aspects. But that's just an object that you just put over the whole thing, like a full robe.
I'd be doubtful, but mainly because there's also this big balance of if you standardize too much you lose variation, so you can't have a lot of cool different things and have them all work together at the same time, so you kind of have to pick your battles. The more you standardize, the more you sort of make a sameness across.
The armor sets are also very different sized, like the light to the medium to the heavy are big differences, so to try to hide your armor to that point wouldn't so much work, because if you're in a heavy and you're trying to hide it, you'd be in a tent. You'd be just walking around with a giant carport over you.
TL;DREverything starts with a body; clothing or an undersuit attaches to it, and an undersuit opens the armor ports for legs, torso and arms, while clothing has its own separate ports.
So let's divide it into two systems. We start with the body, and then even on the body, there's a couple different ports. So you have a naked body, and then on that, we attach a mobiGlas and a head, and then everything sort of grows out from there. Once you have the body, then you can attach clothing or an undersuit. An undersuit will open up the armor system for you. So on the undersuit, you have all these ports for armor, and then you have legs, torso, and arms. So those three, and then players can customize those. So we have those, and then those open up all the armor systems to you, but then if you stay on the body, let's say we have all these clothing ports. We have legs for that, shoes, hands, hats, and then currently two varieties of a torso item, which is basically going to be your undershirt and then your top shirt.
TL;DRClothing and armor can't currently be mixed; an undersuit covers the whole body and hides clothes, because it carries the oxygen and speed systems that clothing lacks.
So not with each other, but the way they work, we have this culling system that'll start culling out geo and hiding things underneath, and those are divided into basically layers 0 through 5. So you could put on clothes, but then as soon as you put on an undersuit, it'll automatically cover your whole body. So you can wear clothes technically, but they're hidden by your entire undersuit.
As far as the game system goes, to my knowledge. I know design changes quite often and that kind of stuff, but I think the functionality of the undersuit actually gives the functionality of the armor on top of it.
Because the undersuit plugs into oxygen systems, there's all these complicated things to make sure people can survive in space, and we don't have those systems on clothing because you can't just walk outside in a t-shirt.
And it plugs in oxygen and then even speed variations, because let's say all the armor is light, heavy, medium, they have their different speeds and all these other kinds of benefits and, I guess, drawbacks. So those all plug into the armors, whereas the clothing is more free and you don't have to worry about those things.
TL;DRClipping is reduced by splitting each item into body zones and marking which zones it hides, so layers can be stacked without modeling each combination or producing puffy tube-like sleeves.
So actually that'd be a great Mark McCall question because he's working on simulation. But in terms of culling, I'm not sure if this is the way other games do it, I think in a similar way. But a lot of games you basically make certain variations that are just modeled to not have stuff underneath. But because we want this intricate layering system, we've developed another thing where in CryEngine you have your top nodes and then you have your meshes under that. And normally it was just your CryEngine node and then your mesh node and that would be like a shirt. But now we've gone further and we've divided that into your CryEngine node, which is your item, and then it divides into all these zones on the body. And then we mark up on a top item which zones it should hide. So let's say you have torso 1, 2, 3, 4 and then arm 1, 2, 3, 5. You get a certain type of outfit that would maybe cover some of these and you mark up in our items which of those zones it culls. So now this one item is divided into multiple sub-items and then our system will tell it which ones to hide when a certain object is on top.
And it gives us a lot of flexibility because now instead of modeling things to only show a certain area, we can put multiple things on top of different things because we can just cull out what we need to instead of modeling it specifically for one item.
Because how you would have done it is essentially you would have put a shirt on top of another shirt, right? Which wouldn't penetrate the shirt underneath it. But then all of a sudden you have these giant cylindrical arms on almost everything, right? Every outfit, big tubes. So now if you're wearing a jacket, you can still have a tight-sleeve jacket, and you take that off and you've kind of got a shirt that's a little bit more loose fitting and stuff like that, right? So it simulates how it would work. It looks more realistic.
It frees you up artistically for sure. Because like you said with the cylinders, let's say you want to fit a bunch of stuff, you start getting this super fat puffy jacket, but we can avoid that through the volume system.
Yes, even currently. It's currently in the works. A lot of people ask about the female, but she's going through the process and a lot of it already exists. It's just we're not going to throw it in until we know it's all functional. We don't want to put half a working female in there, so she's coming in.
TL;DRLong hair with helmets is still being figured out; they're experimenting with caps and a few helmet-specific hair variations to avoid making thousands of hairs.
So we are figuring that out. Currently, I know Corey Johnson has been working with and experimenting with different types of Snoopy caps and then maybe also doing helmet hair variations and long hair variations. So we're seeing what the best solution to that would be.
That's exactly what I mean. Let's say you have 10 different styles of hair, right? If you put on a helmet, maybe you only have three different variations so you don't have to do as many types of hair variations, right? But also the hair is really difficult to see with these helmets because they're really obstructive. So that's what we have to experiment with, right? How far can we go? How much time is it going to take? And then what's the best solution for doing this that requires an appropriate amount of work? Sometimes these things could evolve into something crazy and we're trying to prevent that.
Yeah, you want to avoid making 3,000 different hairs, so you want to be efficient about it and see what matters and, artistically, what can we get away with to still maintain the look.
TL;DRTier zero heads have the most geometry, detail and blend shapes, with wrinkle-map blending decreasing through the tiers; zero and one are close, while the question's PU population numbers go unanswered.
So I guess the best way and the simplest way to break it down would be tier zero has the most amount of geometry, the most detail, and the most amount of time spent.
It comes down to fidelity. The tier zeros have a bunch of blend shapes also so you can hit tiny little nuances in the face. Whereas the lower you go, or the higher number-wise you go in the tiers, you lose fidelity. So it takes less time to make them. But the tier zeros are top notch.
Yes. And also, since we use wrinkle map blending, which is when those blend shapes are activated on the faces, they actually do wrinkles. So we have to do blood flow maps and different normal maps so that the face actually changes when different expressions are happening. So if we're doing a Tier 0 character or a Tier 1 character, they both have triple wrinkle map blending. Tier 2 characters have double wrinkle map blending. Tier 3 characters have single wrinkle map blending. So it's just blending between three images for tier zeros and ones, two for twos, and one for threes. So actually, there's really not a lot of difference between tier zero and tier one, except that tier zero has more blend shapes, like you said, higher fidelity and more topology. But the polish pass and the art pass is essentially identical from zero to one, except we spend a little bit more time on the zeros, obviously. But for them, it's more different.
It just looks more realistic, right? So when I squint my eyes or I lift up my eyebrows and stuff like that, all these different things, blood is pooling in different areas and I'm starting to get all these different folds. Most characters in games are starting to introduce that, but previously that wasn't really a thing, right? It was just the low poly geometry that was moving. And now, when you do different things with your mouth, your nose changes, blood pools in different areas of the face. So it just ends up looking way better.
It's all the little things that make Seth look real, right? All these little tiny things that he's talking about. You don't physically see them, but your brain picks up on it, right? We haven't crossed the Uncanny Valley yet, but it's much closer because of these little nuances.
TL;DRThey've been settling how torso ports are divided (undershirts, top items, then vests and gadget ports) while building a Maya tool that mirrors the in-engine loadout system for animators and artists.
Well, we've had it for a long time, but we've been finalizing how we're going to break it up. Because like I said, as the characters grow and as the S42 structure of how we make these characters changes, the process changes and how we're going to build the loadout. So actually with what I went into before about armor versus clothing and then legs, torso, all this stuff, what we solidified is sort of how we're going to divide up the ports for torso items. Because Riggs is making this automation system in Maya that'll help animators automatically put together loadouts the same way we do our in-game loadouts. I don't want to say this is the final way we're doing it right now, but basically we have our undershirts and then everything else is considered a top item. And then on top of that, we'll do another port that would then fit, I don't know how to describe it, but vests, things like that. Let's say you have a deck crew. So we have a jumpsuit and then you put a deck crew vest on top and then that opens up another port. It's really just this growing sort of hierarchy of you attach this onto this and then we open up all these gadget ports and things like that.
Yeah, we're trying to make the Maya content creation side mirror how it works in the engine also. It's getting close. So the idea is that between character art, tech art, and animation even, we can have the same exact thing working in Maya as we do in engine. So if there's ever a problem, like something looks wrong, we can check it directly with the exact loadout in Maya versus the engine. So we can see exactly what's going on. It's mainly my main focus at the moment. It came about because the animators were having some trouble seeing certain things, right? Like when he's sitting in a ship or when he's doing whatever, you can't really tell what's going on because he's in the light armor or the medium armor or whatever. This way they'll be able to put him in this shirt, those pants, that hat, whatever. So the animators will be able to see exactly what's getting in the engine in the final thing instead of just a generic character doing their animations.
No, it's custom. We have to make it because our loadout system is custom, right? Everything's custom. So the content creation side has to have custom tools to make it that way also. Very custom game.
Yeah, so we're working on that with the female and the long hair, like they brought up earlier. They're still working on the systems and fine-tuning how the simulation is going to go, like going back to resting positions and things like that, and also testing with zero-G, like hair in space. I don't think we see many games doing that. So we've got to make sure our hair, and this translates down to clothing too, like you're in gravity in a physics grid, and you leave the physics grid, and then suddenly your hair is just floating around.
TL;DRThey're locking down content pipelines and fixing bugs as systems come together, aiming for smoother, faster content flow rather than specific 3.0 features.
Make game. That is the best description of what we're doing right now. So actually, a lot of just what we talked about before, so with the loadouts, we're just locking down a lot of things and then working with John Riggs sort of solidifying this process, because going into 3.0, you don't want to do a lot of custom, I guess, non-pipeline-based actions because then it just breaks apart too easily. So he's locking down the pipeline and we're locking down the pipeline and things are going to be really fluent together. So we're solidifying that process. So after 3.0, as we make things, it'll just sort of go together and we won't have to go back and fix things. Everything's just going to be set in properly and the system will be smooth going forward, because the more we make these systems, the faster it'll be going through the pipeline.
The stuff I'm working on isn't really 3.0 specific. It's just studio efficiency. Make sure that everything works fine. The stuff that you get from Omar to me to Gaige painlessly. Speeding up the process every time. We have so much content to get through, so much clothing, so much everything to get through. We need it to be fast. If you do it in a traditional way, we wouldn't be able to get all the clothing done in time. Constantly every week we're updating the pipeline to try to make sure that things can just literally flow right through it, from one to the next to the next to the end. Very soon they're going to be able to test their stuff in engine before we even rig it, with some animations and everything. So that's part of the idea, right? So they can get their geometry in-game moving around and see, well, hey, if I change this a little bit right away before it even gets to them, then it's easier and better.
It's going to make my life so easy. I mean, I'm not so much implementing a lot of content. It's bug fixing. We're getting to this moment where we're starting to implement all the systems and every possible thing you could think of or not think of is arising. There's a lot of behind the scenes. So then we have to think, okay, well, now since we implemented this feature, now this is happening with the armor, and then how are we going to deal with this, and maybe we should change it, and that kind of stuff. So a lot of going through and a lot of fixing.
TL;DRThey hold back on specifics because later release contents are uncertain, but mention customization of clothing colors, faces, hair and hopefully armor tinting and mix-and-match armor, plus unseen armor coming.
I'm curious about how much we can talk about, because there's a lot of stuff in the works, but I'm not sure how much we're really releasing because we're not dedicated to it yet.
The issue is we don't know what's going to make 3.1, we don't know what's going to make 3.2 yet. So it's hard to talk about, because you say something like, oh, this is being worked on, but it may not come for six months, eight months, ten months.
A lot of stuff is in the works, so customization for characters is all over. All your clothing, colors, faces, we have multiple heads that are going in. People can customize hairs, a lot of it. There's a lot of stuff.
Armor, like you said, hopefully color tinting. Also, instead of going in like Star Marine, where you pick a heavy, a medium, a light, now we're going to start mixing and matching. Hopefully soon everything starts to fit together, because currently they kind of fit on different types of systems. So create a standard across the board, so when we open it up to the players they have a massive amount of options.
And there's a lot of armor that people haven't seen yet that's going to go in. 2.6 was a while ago, so there's a lot of stuff in that's probably going to drop that people are going to like.
TL;DRYes, beards are done, such as a goatee on one character, and characters and clothing are being upgraded or rebuilt for better quality and modularity.
Yes. I can't remember the exact character's name, but White has a pretty sick beard. Especially on tier zero, you can see those hairs just bristling around.
When the time comes that people see the updated Bishop Senate speech, and all the changes and improvements that have been made just to Bishop. We've made so much improvement on the character tech since that, because that first Bishop speech was released a month and a half after the data was originally solved. It was really early on in the process.
I think just like what's happening with the ships, they're all getting redone, that's happening with the characters. And I think probably within the next couple months, we would have redone every single character. We have a couple legacy characters that are still in. Those are going to get redone.
But it pays off, especially with these modular systems. You look at the old clothing and it's like, that's just not going to work. So we do it to make it more versatile and work across the board for players.
Oh, so actually, Mark has also been working on those. Dresses are in the works and recently he just skinned another character to test. We got it working, but it's one of those things you don't want to release until it's final, because simulation is such a fickle thing. We don't want to throw it out there because, like you said, clipping through asses and stuff.
TL;DRClothing simulation places rows of joints through dresses and jackets so the engine simulates collision and movement, including floating in zero G, with a Maya tool to set them up.
So imagine you have dresses or skirts, anything, long jackets. We can either do vertex animation or bone animation, but basically what we're going to do, for the sake of, I guess, the cost of processing power, we put rows of joints down these jackets or dresses and then the engine will simulate how they collide with the body, how they rotate, and then they basically just do their thing and they simulate. They'll fall around the collision meshes and then in zero G they'll interpret the lack of gravity and sort of just float in place, that kind of thing. Actually, I'm sure Riggs can go into the whole thing on simulation too.
Yeah, we use joint-based simulation at the moment. It's exactly like he says: draw basically the skirt or dress as joints and then set up a bunch of values. A lot of math, a lot of values, a lot of setting stuff up. We've also set up a tool for setting up dresses in Maya to make it a lot easier for these guys, because otherwise you have to literally place 10 joints, 20 joints around, manually place them all. So this does it all for them automatically. The next step for that tool is, Maya has the same types of simulation stuff in it, so again, to try to make the digital content side the same as the engine side, we would try to make it simulate in Maya and then export those settings to get a good baseline. And then in engine, obviously, it's always going to be a little bit different because the math that's being done behind the scenes is different. So then we would tweak it a little bit in engine to make it better.
Actually, the character artists do use Marvelous Designer, but we don't simulate through that. They do a lot of their initial wrinkles, and they'll bake their normal maps from sculpted and Marvelous Designer simulated wrinkles.
Yeah, there's no simulation in engine or Maya for that stuff. That makes the cloth look more realistic for them, then they give it to us, and then it's solid at that point.
It's a unique way that we do it too, because we have to lay it flat on a cone, so how do you sculpt wrinkles onto a cone, because it doesn't just fall naturally, right? Because we have to let these guys actually make the cloth fall. It's a unique pipeline, but it's pretty cool stuff.
I mean, with the fidelity, if you look close enough, there's a little bit of hair in there, but we're not going to have any kind of simulated flowing-in-the-wind hair.
TL;DRThe speakers say the most satisfying part is seeing how far the project and its departments have come, with characters improving, tools streamlining, and the team's quality and growth, including cloth now being tackled.
Getting to the point where we are. I've been around for a while now. Seeing where it started and how far it's come, it's stunning. I'm working on a project and I'm constantly looking at things going, wow. Because we don't deal with the spaceship stuff too much and the planet side and all that stuff. We're mainly working on characters. So to see the stuff that these guys are also putting out, it's brilliant. It's separate departments, right? So that's the idea that we really want. We really are trying to do the characters as stunning as these guys are doing the spaceships, because it's just amazing. And how hard these guys work, it's really getting there. The characters are really coming along.
For me, it's been similar to what he said. When you really just hop in a level sometimes and see what the rest of the company has been doing, it's like, holy shit, that's crazy. And you see the solar system, actually I'm not sure of the proper name, but Solid, where they basically make all the planets, the orbits and everything. When I saw that system, I was like, that's fucking cool. But when you really hop in game, it is, dude, it's fucking awesome. So when you see the systems, you hop in and then just hop in a ship, and then with the characters you made, just the whole thing coming together feels really good. And also, pipeline development is really fun. When all the tools finally come together and it just gets super easy and streamlined, it's like, oh, it's all paid off.
I'd say the growth of all the departments. I was just going to piggyback on what John said, essentially. The growth of the teams is just crazy. When we first started making them, we didn't know what the systems were. It's hard to develop art constantly, especially because we're always showing it, we're always iterating it. It's very difficult to do production and pre-production in a very similar timeline. So seeing that our team, the character team specifically, has grown ridiculously in the past couple of years, and seeing the quality of people who came in two years ago and where they are now, it has really improved. And I think you can see that with every character that comes out. Not only is it looking better, but it's also animating better and running better and being rigged better. And now with the help of the tech team, we're starting to get cloth, which is something that we were avoiding. And now when we have problems, we're able to approach it and be like, hey, this is really cool, can we do it? And then you guys are like, I think so. Or, no, no, no, go away.
It hasn't gone through us, so I don't believe so, but there is dirt and wear. So, of course, if you're on a planet, maybe there could be environmental settings that will affect the dirt and wear of your armor and clothing. But as far as I know, not specific terrain.
It's always tossed around. Because we also want to finish something first before we move on to these crazy things. We want to give something to the players.
Bionic eyeballs actually have been discussed. We haven't done it yet, but we've already implemented the back end of being able to have separate eyeballs. So if you want a robot eye, it's actually possible.
Yeah, just one. I mean, actually with the zone culling system we could also maybe give people robot arms, because we've split up the body into those zones like I said, so we literally could just hack this thing off and then boom, suddenly robot arm, maybe. We're not doing it right now, but the back end exists.
TL;DRDyeing clothes isn't in the game; they've experimented with a palette-based color system, but it would need UI support and a big multi-team commitment, so it's still only being explored.
I'm not sure, but recently they've been trying to standardize the certain color systems we use, because before you just do an art pass and you get whatever colors you get. But here they want to give players a customization ability to choose certain palettes. So it's an idea we're playing with, aside from just picking different shirts. Let's say you have a shirt and there's three varieties; they're playing with the idea of can we implement a system where the player then picks a palette and they dye it a certain color. So not in, but something we've experimented with.
Yeah, because we can do anything. But you've got to commit now to get this across the board in the game, working smoothly with everything for a modular system. That's a big commitment. So we don't want to just throw it in there. It's multiple teams, too. Code teams, character teams.
I mean, not at the moment, but we have ports that we attach guns to, and then you could hide ports, so it's not impossible, but we haven't really talked about it yet.
TL;DRVisible armor damage has been discussed but not committed, since characters use an efficient shader and extra damage UVs would sharply raise vertex counts, so it hinges on performance cost.
It's been talked about, because we have the shaders for the ships, but the characters have their own shader that makes them very efficient across the board, because it's like an MMO, lots of characters. You want to make the render passes as efficient as possible. So it's been talked about, but I think they're probably waiting on what the cost would be.
I think it might have to be different than ships because, like Gaige just said, we have a very specific shader and a very specific tech setup that makes the characters.
It's possible, but you have to think. I'm just going to dive into ships real quick. The way they do that is they have another set of UVs that allow the burning system to happen, but that also duplicates the vert count of that object. So we're already doing all this stuff for characters. Let's say we make a third UV set, because the second UV set is already made for decals, stickers, things like that. Let's say we make a third one for a burn pass, like burning away, then you're tripling the vert count of a character. So it just adds up super quick.
Do you want five characters on screen or do you want 30 characters on screen? Because games are just all give and take, right? What's the most bang for your buck?
And the craziest part is that you have all this ship efficiency going on and then you have character efficiency, and then, wait, let's get both in there at one time. We've got 30 people on 10 ships to make it happen. So you've got to make things as clean as possible.
TL;DRHeads share the same topology, so features from different scans can be blend-shaped together, which is also used to standardize heads; it's in the works with limits, internally called DNA.
Blend shaping, just throw in textures. We've even just straight up taken textures from another guy's face, put it on this guy's head, made a new man, or woman. Actually, Omar knows way more about that.
And actually, to standardize the heads, we've started taking, like, oh, that guy has a nice skull, we're just going to blend shape his skull into everyone else and, okay, standardized heads, and now all the helmets fit. And then we picked features of people and, all right, we're going to blend shape these things and make this Adam who is our ideal head. And then we blend shape features of him and then that becomes our standard. And now everything fits.
No, definitely not. But it's really cool tech. You'd be surprised at how good things look when you unwrap everything the exact same way and you just plop in some guy's face, and then also sometimes how horribly wrong it can go.
Actually, in the facial test there were some funny things that happened. But because they're all the same topo, all of our heads follow the same topology, which is why we can blend shape between them. So when a scan happens, even though the heads look different, and even for Mark Hamill, his topology is the same as the other heads. So he's a really unique face, but the scan just pushes the verts into the shape of his face, so we can blend shape other features onto other people. Give everyone Mark Hamill's chin if they want to for some reason.
So it's in the works, but it's going to go through a lot of processes to make sure it's a smooth thing. You don't want to give people half-assed faces.