What drives the developers of Unity?
Steffen Toksvig, Unity's VP of engineering, used to be the CTO at Hitman developer IO Interactive -- but now about half of the employees at the engine company report into him.
"I used to be one of the best," says Toksvig of his programming skills. But when he landed at Unity and began to code again, he realized he "was kind of rusty, and it seemed like actually what was needed in the company was not necessarily more programmers, but somebody who can kind of make them go in the same direction, and also somebody to focus on new people, of course, which I do a lot of."
"I try to change our process to fit the growth of the company," says Toksvig, who spoke to Gamasutra at Unity's biggest office in Copenhagen, Denmark, where the majority of its programming team works.
"It just changed from being like an indie, or small startup, where everybody knows everything, and has no friends outside the company, to being a more mature company like we are now."
Toksvig oversees developers at 13 different locations -- though most of them consist of only one or two individuals outside of the office in Denmark.
He believes that the company's culture is what leads it to continue to innovate with its engine product.
"I basically try to push as much responsibility down, I would say, to have the people to know what they are doing, make decisions, and influence the roadmap," he says.
The company also does week-long coding "ninja camps" where all the developers gather and bang out new ideas for features -- "kind of like a game jam."
"This has really no limits -- except, of course, it should be, normally, something with Unity."
According to Toksvig "so many" of these have influenced the engine product -- big and small features and fixes in current and upcoming versions. Developers get to flex their muscle on pet projects or revamp old, unwieldy systems.
The company is split "fifty-fifty," he says, between driving a vision for the product and trying to ride the wave of experimentation.
"If something's strategic for the company, then we do it," says Toksvig. "It's not like we are afraid of saying, 'We want to do this, and we want to make this team,' so it's kind of a mix -- whenever it makes sense to make a decision on the high level, or when we have to be more organic."
"The main thing is doing a cool product, but doing that requires enthusiastic and smart developers who are really invested in it, and so it's that philosophy of having people impact the company and making decisions," he says.
So, too, has the company been balancing additions for its core community of smartphone indies while coming up with new features that will make Unity more appealing to developers who want to make console-style games.
Sometimes these motives dovetail. "It's just we always try to take these complicated external technologies and then try to make them as easy as possible," says Toksvig.
"We try to make it as easy as possible, but of course it also has to be deep if we want to have more experienced developers work with it. So accessible and then with some deeper options," he says, is the philosophy for Unity moving forward.
Nicholas Francis, the company's CCO, can be a roadblock to complicating the engine. "He's the guy you have to get past if you want to add a new button," says Toksvig.
But that has a positive effect, Toksvig concedes: "Even if there are quite a lot of menu options, it is more clean than a lot of other engines, because it's very difficult to just add a new menu point or a new aspect to a lot of properties."
Unity, after all, is "supposed to work out of the box. If you drag in a character it will work when you put it into the scene. If you do like a light map, it works with the settings," says Toksvig. And that also goes for the any of the "complicated triple-A kind of features" that the team is adding in now. Any of these "normally requires expensive middleware" but his team's goal is to implement these "in a way where it's easy to use."
"It's not like you have to buy a ton of other middleware that you didn't know you needed," says Toksvig.
Development of Unity has been "a process of trying, and failing, and trying, and failing, and getting something right, and improving." He puts that down to the company's culture, too: "We are pretty agile, very easy to move to something new."