Procedural Layout Tool
- Automated Procedural Tool developed due to large amount of locations and variety needed
- Key requirement was to not disturb Art Team workflow while changing things on the fly
- Building block elements, graphs and verticality control are used at the tool’s core
- This tool enables much larger variations of locations like rest stops and truck stops
- This also carries over to automatic hab customization based on themes
- Star Citizen and Squadron 42 will use 3D maps
- Moving from level to level has to be functional as viewed in the map
- A multi-team approach is necessary for this feature’s production
Sean Tracy (ST): Hello and welcome to another episode of Around the Verse. I’m Sean Tracy.
Eric Kieron Davis (ED): And I’m Eric Kieron Davis.
ST: In today’s update we’ll cause some foley mayhem with the Audio Team, check in on the new flight model as well as build a map and some structures, but first let’s see what the community has been up to.
ED: Some players rang in the new year with a PvE event that ended up becoming a massive PvP battle.
ST: Snipers engaged the enemy turning a standard attack mission into an emergency evac situation.
ED: Yes. Fighters and evac vehicles worked side by side to get the group to safety, but ultimately it .. well .. didn’t work out for them.
ST: [whispers] Spoilers .. spoilers.
ED: Alright, sorry.
ST: So, moving on to development. The Audio Team have been up to their foley shenanigans again. A recent recording session in Austin captured practical sound effects for a variety of ingame uses.
ED: Sounds were captured that will be used for physicalized interactive props, bullet impacts and things like that.
ST: They also recorded various metal objects colliding with each other to emulate the sound of metal debris for scenarios like ship parts being broken or destroyed.
ED: Yeah, and metal objects under stress and strain to be used for vibrational sound components for when ship hulls are under strain from damage or atmosphere.
ST: That’ll be cool when there’s pressure …
ED: That’s pretty cool . . yeah, yeah, yeah ...
ST: … and your creaking ...
ED: ... feel it ...
ST: That’s cool.
ED: … and hear it.
ST: So impact and mechanical sounds were recorded in a hanger size space with microphones placed at close, medium and far distances from the source.
ST: This recording process is used to add a sense of depth and ambience to the environment like Lorville.
ED: Additionally they used large impacts on this steel plate to create sounds that will be used when ships land, slide or make contact with other objects.
Devs have been digging into various aspects and features with a recent focus on combat, landing and takeoff, heat management and atmospheric flight.
ST: They’ve also been tweaking the controls based on feedback from players who got to try out the new flight model experience at CitizenCon dialing in the throttle logic and control among other aspects. So stay tuned to future updates for the continuing development of the system.
ED: And as we build out Stanton and the entire universe, we continue to improve and refine the procedural tools that allow us to create the massive environments for Star Citizen.
ST: Massive ...
ED: … massive.
ST: Under .. understatement.
ED: Yeah, yeah .. You can say it any bigger with more emphasis.
ST: Yeah, massive .. yeah.
For a look at how procedural layout tools are helping them build stations, habs and other large structures let’s go to Scott Fitzgerald, Wai Wan and Patrick Agostaro.
Procedural Layout Tool
Patrick Agostaro (PA): The reason we developed the Procedural Layout Tool is that we need a lot of locations, plenty of variation throughout the entire universe of Star Citizen and to do that we couldn’t do it manually, so we needed a smart procedural tool to achieve this goal and do the work.
Wai-Hung Wan (WW): The key requirements for this procedural tool was to insure that the Art Team didn’t have to learn a new set of rules and change drastically their workflow. We wanted to be able to control prop placement, tinting, branding. We wanted to be able to say make adjustments to an existing area. How much effort is involved in doing that? So, user experience is key, and from that we should be able to create a larger variety of environments with minimal effort, and therefore populate our universe quicker.
PA: The core of the tool relies in these building blocks that we call elements. They represent, for example, rooms of a space station and just pieces of whatever the location is to be built of. These building blocks are then connected to each other through specific attachment points that the artist or designers can define, and all of this is governed by a graph. The graph is usually used by designers ‘cause they want to control the logical flow of the location and make sure that the gameplay is suitable for the player, and this feeds information into the elements via tags, ‘cause they control which elements comes in and which doesn’t in this specific location. From these core things we develop additional features. For example, an intelligence modern way to generate routes with these elements - for example, corridors, and also some verticality control, so that we can build larger locations and larger space stations like larger truck stops and refineries that will come later in the game.
Scott Fitzgerald (SF): The design requirements for the procedural tools is to allow us to have more control over how we distribute the rooms. So this in turn towards a much larger rest stop. The idea here is we can now start blending into separate floors off one stair .. stairwell node that we run from here. So we’re using the selection of rooms that we’ve configured through the LTA set running some seed variations off of this node graph. We can start to make some very, very large rest stops.
WW: Taking everything from the truck stop, learning from all that, refining the environmental the pipeline runs along we can now roll that out to looking at habs. For the habs at the moment we can theme them so it, it tailors to the occupant, so well a weightlifter we’re going to have to have weights there. You can have your protein shakes and so on, and those will spawn in appropriately themed apartments to do that. If he is a scientist perhaps he has a little hobby on the side. Military guy, security, and so on. Maybe he’s a civilian. Well who knows. We could add any number of props there that he’ll have an interest in. So yes, it’s really powerful to be able to generate a large number of apartments and habs by just clicking a button.
Back in the Studio
ED: Didn’t you show something like that at a previous CitizenCon?
ST: Busted. Yes, you’re right. So yes we did, and we showed basically the first iteration of the Procedural Layout Tool with the Procedural Planet Tools at the same time, so I like to call it …
ST: … procedural assistance rather than procedurally generating, ...
ST: … because it definitely helps the designers along.
ST: So Scott, Wai and Patrick led by Marco been working on this for a little while. The big .. the big job though that they finished as one tons of usability improvements, but generally moving the old tool from a Python tool into C++, so properly imbedding it in the engine and the editor …
ST: … and everything - not just a Python layer on top. So it’s faster .. a little bit easier to maintain.
ED: That’s very cool. What tools that we are working on right now that you’re really excited about? That we can talk about? Or can talk about?
ST: That’s a fantastic question. Oh man. I mean. It’s going to sound like a not very interesting tool I think to people, but it’s a huge, huge deal. It’s the Basic Asset Referencing Database I would say is the one I’m most excited about.
ED: Yeah, what’s that do?
ST: Because what that’s going to give us the ability to do, and none of the community really sees this, are inclusions/exclusions, the way our streams are structured. Allows us to decouple our data from PU and Squadron 42 properly...
ST: … so that there’s no crosstalk really between them. Yes, Squadron can influence some PU stuff, but PU stuff shouldn’t be influenced by Squadron …
ST: … as our referencing database makes us ship only what we use and only what we need ....
ST: … rather than us kind of having to just take care of it manually. It’ll be a nice automated [unintelligible].
ED: That’s great. Well that’s going to be exciting.
We’ve also just started working on a new 3D map feature that will make traversal easier. Here is Simon Bursey with more.
Simon Bursey (SB): So the area we’re working right now .. It’s called the Local Area Map. So we have the Star Map in the game, so this is the equivalent for when you are walking around on foot. At the moment we’re at the end of the previsualization phase. The first thing was is it going to be 2D or 3D. Everybody wanted to do 3D. So we did a test out, and it looked pretty good.
There’s also things like do we want to see the enemy characters on there, so we did a little test for that. Also it was interesting how we work out how the player moves between floors looking at the map. So how they look at the next floor up, next floor down .. that kind of thing. It’s a case of working how to make that in the game in a functional way.
So, the UI Team itself is fairly small and there’s all these big systems in the game that this links in with, so we have to deal with the other teams. For example, the .. we have to work out how we get the map information from the level, where do we store the locations for all the items .. all that kind of thing. So there’s lots of things to talk about with the rest of the studio to get this done, and also it needs a certain level of cool. So, what about it looks good and makes it a bit different to other games? At the moment it doesn't’ have that .. quite that level of visual polish that we want, so we want it to look .. we want it to be as good as what you’d see in a Sci-Fi movie for example. So just now it’s functional and it’s fine, but we don’t want fine. We want it to look really good.
As the games got bigger obviously there’s more places to get lost now so that having a map is become more important.
ED: With a feature like that …
ED: … he says that it’s just coming to the end of the pre-vis stage, but how complicated is it to take a feature like that all the way into the game. You not only have to take this direct feature itself, but what’s the normal lifespan of a feature like that? What it’s going to take to get it in game?
ST: Sure and I mean it really of course depends on the feature and I like that we’re talking about 3D maps because it’s something that I’ve been very, very, very keen to have .. actually the first time I sort of traipsed around the outside of the .. one of the ships trying to get in …
ED: Yeah, yeah.
ST: … looking for a particular door, and I didn’t know where it was. Now, a lot of people go, “Yes, learning immersion.” I totally understand that, but sometimes I just want to know where to go.
ED: You want a map. Yeah. Sure.
ST: So I think taking a feature from just an idea all the way to ingame is already a pretty decent chunk of time, right? But the most important thing you’ve just got to get that unified objective or that intent. What’s the intent of the feature? The intent of the feature is not make a 3D map.
ST: It’s a .. I want the player to know where he is.
ST: I want the player to understand how to get to the next position or something like this.
ST: Where it’s .. to use a production term like a user story.
ST: Basically it’s some sort of unified objective to the feature, so once you get there …
ST: … you get some level of previs done, and as they were talking about they want a higher and higher visual fidelity with this and to make it look different from the other games, ‘cause yes the other games have done 3D maps like this before. You’ve got you know you’ve got Zelda: Breath of the Wild .. these kinds of games ...
ST: … that have done them before, so how do we differentiate or …
ED: … What’s our version? ...
ST: ... how do we take some great version …
ED: … our version …
ST: ... great features out of that …
ED: … Inspires you too …
ST: ... and add some more to it. So, …
ST: … he’ll get it from this concept, get the unified objective, get the nice visuals to it, and now get an ingame prototype going. And at that point you’re really going to work on your functionality, so that’s where all the iteration will come in, right. And that will take the vast majority of that feature time. So usually to get a feature just online and you’re working with it and playing with it is really fast most time.
ED: True, true.
ST: It’s maintenance and bugs after the fact that are going to come up so that bit of iteration that goes on. Also some things can add or remove complexities. One of the big pieces that he talked about was enemies. Okay, so those enemies on the map, and not being directly related to the feature I’m going to ask my own questions, are those enemies players or are those AI, because actually that might change how that feature is being developed, but it might take a little bit longer if that’s actually going to be showing players as enemies how do they know that the players are enemies? Does it have to check the reputation system? Does it have to check the crime stats? Does it have to check all those things ...
ST: … just to show a little red blip on the radar, right. So yeah, I think there’s a lot of pieces that can go into that feature, but generally to take those features all the way through you’ve got that concept phase, you’ve got the unified objective kind of user story kind of phase, iteration on the feature, you’ve got a bit of polish at the end, some feedback, maybe a little more polish and then a shipping.
ED: There you go. That’s cool, and what would be the difference on say something like that in a multiplayer environment like Star Citizen versus a single-player environment like Squadron 42?
ST: It’s a good question. It changes a lot between different features, right. Like if you have a weapon, and you’re firing the weapon in multiplayer versus single-player it’s very, very different things, so it depends on what that map is going to have to do, but yeah …
ED: Very cool.
ST: … multiplayer features are definitely harder.
ED: Yeah. Very cool. Awesome.
ST: That does it for us this week. A big thanks to all the subscribers who sponsored these shows.
ED: Yes, and of course thanks to every backer for making the development of our games possible. Strap in and get ready for a wild and fun 2949.
ED: 2019 but more .. yeah. Until next time . .
ST & ED: We’ll see you around the verse. [Hand Waves Together with an ED Thumb’s Up]