Back to search

There are many challenges to making Star Citizen. What's one challenge you're working on now, and how are you able to overcome it?

TL;DRA current challenge is mangled joint IDs on skeleton extensions, while the wider answer says feature teams, animation previs and realistic schedules for bugs and R&D help overcome cross-department and cross-studio problems.

Sean TracyTechnical Director of Content

Every day is chock full of challenges. The difficulty, I think, in talking about a couple of them is, I don't know that we're going to overcome it, or I don't know that I'm going to solve it in a particular way or whatever. But actually, skeleton extensions are messing up right now. That's a pretty fun thing. This is pretty frustrating, actually. We talked a lot in the character customization stuff that we showed in terms of the port setups and attaching different armors and the helpers moving and all this kind of stuff. It works fairly well, except we've run into a tiny bit of an issue with similarly named joints, and the joint ID is getting mangled, basically. So a joint thinks it's in one place in the animation, but actually it's in a different place in the character. So I've got an awesome video just from one of my senior tech artists this morning, with a guy that we've reattached a torso piece to, and all of a sudden his head detached, so his head is now on his knuckle, because the ID, like, it's on the middle finger, but that's his root now for his head. It's cool, because he can still talk. But you've got the legs, the chest is over here, and I don't know if we'll share the video, it looks pretty awful. But you've got the legs, the chest is right beside it, and then the head is out on the hand. And then we play animation on it and it kind of looks pretty reasonable. The chest does the thing, the legs do the thing, but they're all kind of weirdly attached and separate. So that's an issue we run into right now, and working with Paul Reindel and trying to work that out, and Ivo Herzeg back in Frankfurt.

Steve BenderAnimation Director

Well, I think the answer from my side would be that a lot of the stuff that we're doing, because it involves multiple departments and multiple different people's expectations, is that, I use this example from time to time, pick an object, let's say a cup, right? And I say to you, I need a cup. Likely, you're not going to model this exact cup. You're going to give me something else. But that's not what I'm expecting. I'm expecting this cup. So setting the expectations, being able to say, okay, we're going to work on breathing and stamina, and not only the final result that the player should be able to feel or play within the product. The way that we tend to solve this is by removing as much sort of outside requirements as we can. So we take code out of the equation at first. We take animators, we put them together, obviously, with the goal team, where the programmers are, the designers are, the animators are. We talk about what we're trying to achieve. And we create the animations as a previs, basically, to say this is ultimately what this needs to look like, what this needs to feel like. Then we're able to take that result and we're able to put it in front of people and say, this is what we're trying to achieve. How do we get there? It's a hell of a lot easier for me to get a model of this mug if I send you the picture of the mug, and then you guys go, okay, well, we have to model this and look at the specularity of that, and oh, this is kind of a matte finish here, than it is for me to go, give me a mug. Not that mug. Not that either. Can you make it black, but not that black? So I think that's super, super important for things being successful, communicating between different departments and also within the goal team, and being able to, you don't want to get deep into these things and then someone go, oh, yeah, that's not what I meant.

Jake RossProducer

And these two things that we just mentioned here, you were talking about struggles, or you have bugs that are introduced that you have to work through and solve, and these R&D-type phases of these features that we do, are huge things you have to take into consideration when you're creating schedules. Because you don't know what bugs are going to come up. You don't know how long certain R&D tasks are going to take. So these are things in production that we have to take into account. And sometimes we're extremely accurate, depending on how much experience you have with the thing you're working on. But sometimes we're way off, just because we don't know what we don't know. And so when we're creating schedules that we're putting out to you guys, that's something that we're absolutely keeping in mind: okay, what kind of bug-fixing time do we need to allot for this? And what kind of R&D time do we need to allot for this as well?

Sean TracyTechnical Director of Content

Sure. And a lot of times, another thing that comes up too is reviews of particular assets or particular things that we've done, or particular features even. A lot of times, in the past anyways, the schedule had been such that we didn't allot for a lot of review time. So at the end of it, the feature came in, whatever was online, and maybe I reviewed it or Steve would have reviewed it. Let's say it's an animation, for example, and actually Steve's not fully happy with that, but in such a way that actually we're out of time. So sorry, Steve, I know you don't like it, but guess what? It has to go. So a lot of that just comes out of, I think, organizational maturity, in terms of the organization maturing and producers getting better.

Steve BenderAnimation Director

Yeah, so we created those feature teams and things like that. We said, well, we want to have characters going in, let's say, a mess hall. We want to have characters going in, sitting down, having a proper AI schedule where they go through their days. They get up, they go, they sit down, they eat something, they go to the bathroom, they do X, Y, and Z. So we could create animations for it. They could create code for it, whatnot and whatnot. But when those things were split apart, what you were getting is you were getting animations and you were getting code, but the two things didn't always mesh. So what we did is we said, okay, stop. We're going to create, as we talked about, this simple delta and put together an animator, a coder, a designer, a tech guy, and said, this is what we're trying to achieve. And we would start, let's say, on a Monday. And two Fridays after, we have an official review. So every two weeks, they're putting out, in a way, a little bit of a mini product, where we can say, great, show us that in the game. Show us that in the level. And during that time period, I'm able to talk with the animators involved or the leads involved with that and say, let's keep this in mind. Let's adjust this. I like what you're doing here. Let's do more of this. Let's do more of that. But what it also does is it gets the animators to work with the designers. And together, they come up with solutions to things that we may not have foreseen from the get-go. They're like, oh, wait a minute. If we have all the cups sitting on the table, right, and we say the character goes and just reaches for that cup, the guy next to him has the cup in the same spot. Okay, so what if they both go to reach the cup at the same time, right? Now, you've got five or six doing that, it looks like the Rockettes, right? So instead, they said, well, what if we just did something simple like this? And then this one's over here. Okay. So now what they're doing is, within the goal and the vision for what it's supposed to look like, they're actually going in and driving the feature themselves as well. Making decisions that head towards that goal. And because they're doing that on a daily basis, we're able to head off a lot of these issues that we may have had previously, where, say, something would fester for a couple weeks, or someone would do what was on the task list, but not necessarily what was fully intended, right? And because those people are now working together as a group, they're like, hey, this works, but that thing doesn't. Oh, okay, I didn't realize that was a secondary portion of this. Hold on, let me work on this for a little bit. I can get back to you with it, right? And it makes it more exciting, and more where the teams are able to almost self-manage themselves, and we're able to actually direct in a more efficient way.

Sean TracyTechnical Director of Content

Yeah, it's so much more efficient. And a lot of this might have been obvious to some people, but the company again has matured and grown in a pretty organic way. So we have to make these things very clear, and like, this is something that needs to happen this way. This is more efficient. And just like we iterate on technology, we have to iterate on our production process. And that's really what we're doing. And even right now, we're sort of half and half, basically. We've got very linear pipelines, like the ship art pipeline, for example. That is like an assembly line right now. That is perfect. And you're not going to make a feature team or a goal team for the ship art pipeline, because things are very, very solid.

Steve BenderAnimation Director

But they are in their own goal team in a way. Like, for instance, the animators in ATX worked very closely with the ship art team to create a system that would allow the ship art team to have a lot of flexibility in the visual look of the ships. But for instance, if I put a stair here, and then on the other ship I put a stair here, did you notice the difference? If we can keep the places that the player connects to a ship in similar metrics, I think there's something like 29 separate metrics for just entering at the moment, right? We are able to spend time creating solid animations for those. And the ship team is able to go and create as many ships as they want. They utilize portions of those templates. And it enables us to be able to get ships out sooner to you guys than we did before. And now that team moves like this. They know how to do this stuff inside and out. And it's like, hey, we got a new ship coming in. Cool. Which metrics do you want to use? We're going to use this for the enter. We're going to use that for the exit. We're going to use this cockpit thing. Not a problem. We can set this up. And it's so much smoother, and it's a perfect example of a team that initially had all these disparate parts that, as they started working through this process, now they've got a solid process.

Sean TracyTechnical Director of Content

And don't forget, this is all people in different studios, too.

Steve BenderAnimation Director

Yeah, absolutely. Across different time zones, so it's incredibly complex. LA, Austin, and UK.

Happy Hour›Interview: Sean Tracy, Steve Bender, & Jake Ross·
Published on this date.10 Mar 2017