It sound hysterical today but in 2013, GIFs were all the rage. Yes, I mean short videos. But at the time, they were real animated GIFs. Not MP4s pretending to be them.
We had no money to market our first game, The Vanishing of Ethan Carter. But we knew we had something better: phenomenally looking visuals. No other indie studio was using photogrammetry, and only a handful of AAA studios was. Our game looked quite shocking considering the team size and the budget. Some things don’t change, I guess…
But wait, photogrammetry?
In short and in layman’s terms, you take hundreds of photos of an object, like a lighter or a car, then feed a special software with them, then you give what it spits out to a graphic artist for corrections and voila, you have a game-ready object that is looking incredibly natural and life-like and is usually made in much less time than the good regular 3D works.
This image explains the concept well:
Magic? Magic. Today our jaws drop seeing what AI can do, but a decade earlier this was the hot stuff.
So… Good looking game, no marketing budget, GIFs are becoming popular… You see where I’m going with this. We’ve made three GIFs from Ethan Carter – again: actual, real, old school animated GIFs, each 16-20MB large – and send it to all the gaming press.
It worked. Some of the biggest websites published the GIFs.
It worked so well that a bit later, our blog post about the details of photogrammetry was the most popular thing on our website for years to come. Literally millions of views. It’s broken today, most links do not work anymore, but in case you’re curious, the post is still here.
We figured, let’s revisit the topic and let the people know how we evolved the way we use photogrammetry in Witchfire.
I asked Adam, our Art Director, and Andrew, our Principal Artist and Principal Technical Artist and co-founder of The Astronauts, to write a couple of words on the subject. Here’s what they have to share with us all…
Adam: I took my first steps in photogrammetry just before the formation of the Astro crew. The first days in the newly formed company were unforgettable. Immediately, we started to rub shoulders and exchange our knowledge and experiences. I showed the boys my findings, and Joseph (nickname of Michał Kosieradzki, our Principal VFX Artist – Adrian) pulled out his own files and said he was also investigating the topic. I think I was the only one who owned an SLR camera, but Andrew picked up on the idea very quickly; he saw the potential of using scans even as references in terms of detail and fidelity of the final assets. It was Andrew who quickly became the mastermind of our scan team, surpassing me in my amateur photo-taking.
Of course, our first attempts were significantly different in quality from today’s standards. The size of the project files was also terrifyingly heavy for those times. We calculated them on our NVIDIA GeForce GTX 690, which took a lot of time. In some cases, it took even several days, and then we edited and optimized the assets manually. We didn’t even know if our investment would pay off. Ultimately, we spent more time on the scans than if we had made the models by hand. Which was the opposite to what it should be.
During the development, we had to make many technical concessions. Even though we saw their full potential, Ethan Carter was an Unreal 3 game (the original release, we’ve then redone the game in UE4 – Adrian), so we could only use the scans to a very limited extent. Luckily, the effort paid off, and the use of technology gave Ethan an unforgettable aura. We were also rewarded with a BAFTA award in the category of Innovation in video games.
A lot has changed since then, and scans have become a widely used standard in digital production and video games. Ten years have passed since Ethan Carter, and now we have way more great tools to our disposal. The software allows for procedural processing, and the hardware does not crash every time we incorrectly estimate the size of the asset. Currently, we are able to prepare assets much faster, and with greater fidelity.
It may seem like free assets, then, but nothing could be further from the truth. It is still a long road from the first photo to the 3D model you see in a game.
For example, the location scouting process itself, i.e., initially finding the location we are interested in, can take quite a long time. Meticulous planning of trips, often tens of kilometers apart, is another important ingredient. And, last but not least, the expedition itself is not only about taking photos; they also help to imagine the context in which the scan was originally located. That, in return, stimulates the imagination and builds our understanding of this context.
Sometimes we can be surprised by external factors, e.g., the weather. To find perfect conditions, we have to aim for a cloudy sky and often balance on the verge of rain.
But excluding the external factors, even the pure tech itself is still a lot of work. Basically, as hardware advanced, we cranked the numbers up. Andrew?
Andrew: Ethan Carter was the first video game ever to use photogrammetry at such large scale for open environments, from small rocks to mountain ranges. All that was captured using 18 megapixel cameras from the ground level (or slightly above, desperately balancing the cameras on a monopod stick). We probably did more than a hundred scans up to around 200 photos each.
That worked well enough for slow burner adventure game. In Witchfire player can run at crazy speeds and a 4m high double jump. We knew we’d need to step up our game. So we did.
Our cameras ‘grew’ from 18 to 42 megapixels. We switched from photosticks to drones…
We upgraded the workstation RAM from 32GB to 128GB. And then went BIG. Our largest scan grew from over 200 to over 5000 photos. That’s about 200,000 megapixels of data. Number of individual scans? Easily over 10 times more than for Ethan Carter, and we’re not even done yet.
We’ve also expanded our reach. Large scans were captured as far as 2000 km from home, with some smaller stuff captured 17,684 km away in a straight line, if you could actually get from Poland to New Zealand by travelling in a straight line. You can’t.
More bigger scans means more triangles to render, right? Well, right, but also wrong. For a dynamic game like Witchfire smooth 60+ FPS and overall experience trumps microdetail porn, so we pulled some serious GFX witchcraft to distill the 2.6 BILLION triangle scans down to their essence. From 2 600 000 000 triangles down to numbers that run smooth and don’t kill your hard drive. But optimization is a story for another day.
Adam: Yeah, of course, we must be very aware of the memory pool. We are processing the files a lot but trying to retain their spirit. And this is crucial. Here is a short list of what photogrammetry gives us and what we try to keep in the processed scans and assets:
Nature is subtle. Natural dirt and damage result from many external factors, such as weather, lighting, wind, or humidity. For a small team like us, it would be impossible to obtain such detail manually.
Our brain is sensitive to patterns, even complex ones. Things like color repetition make the uncanny valley even larger. Scans help prevent this.
Another aspect is object grounding, which is building context for the object.
Unique composition. When building levels and models in 3D, we often do not have the same limits as people who build those pieces by themselves. They made decisions based on factors that are nonexistent for the 3D artists, like material availability or manpower.
Adrian: Cheers. All right, and now for some cool visuals… I asked the guys for some photos and whatnot and here’s an example of what it takes for this asset to appear in the game. A story in five photos.
First, after locating an interesting piece, drive… And drive… And drive…
Eat in local taverns with animal skulls hanging from the walls…
Arrive in the middle of nowhere.
Locate the object.
Take trillion of photos.
Now work with the software to turn the photos into a 3D object. An example of how such objects looks like before it becomes the proper one (you might recognize both from the Witchfire 2017 Game Awards teaser):
Here’s how that small shrine from the photos looks like in its final iteration:
As you can see, the core of the object is left intact but we did remove the grating and the cross. As a bonus, here’s the visuals representation of the number of polygons in the original versus the game ready asset:
A few more objects we’ve done for the new levels:
Oh, you want to see how a photogrammetry asset looks like in 3D? Here’s a few that Andrew has made:
I hope this was interesting. We keep using photogrammetry because it gives us bang for the buck and makes the impossible visuals possible. We could not be making Witchfire without manually made assets too (props to Grzegorz, the main force behind all hand made assets) but photogrammetry is a big fat chunk of our menu. Compared to Ethan Carter, we’ve basically went one level higher, with way bigger scans, more advanced tools, and, most importantly, the experience we’ve gained in the past.
Next week, back to the regular programming and a GGU update.
Question(s) of the Week
Two questions this week, because why not?
Out philosophy is to never delete your progress unless it’s the end of the world and we really have to. So far, nothing points to such a calamity (hehe). So we will be trying to make sure the introduction of classes does not affect your current save.
But — we will be adding multiple save slots, and we highly suggest you start a new adventure on a separate slot to taste the new Witchfire.
There are two reasons why you need to hold the button to cast a Heavy Spell.
One, to keep it fair towards the gamepad players. We ran out of buttons and had to put spells on a single one: tap for a Light Spell, hold for a Heavy Spell.
Two, and this is more way important – because it’s a single player game, so who cares about the gamepad parity, right?  – because Heavy Spells are so powerful, the casting time is a part of the strategy and the core gameplay loop. We don’t want them to be panic buttons. We want them to be a tactical device in your hands, and their use: deliberate.
In other words, the casting time is a design decision.