I’ve been active in the VR community for a while, being one of the original kickstarters for the Oculus DK1 VR headset. I was totally sold on the tech since E3 2012, thanks to John Carmack’s DOOM 3 ski goggles tech demo. I’ve owned about every Oculus headset and dev kit since then.
This eventually led to a contract with HTC, the Taiwanese electronics giant behind the popular VR headset HTC Vive. In collaboration with a Taiwanese filmmaker, we built a small VR game to raise awareness of the Air Quality Index (AQI) and Taiwan’s pollution problem, an issue ironically tied to the country’s massive electronics manufacturing.
The game was set-up in containers during an awareness campaign in Taipei, Taiwan.
In the VR game, you slowly move through districts of a dark and polluted city. Each area is shrouded in thick smog; armed with a special device, you vacuum chunks of the smog away with a satisfying thump. Clear an entire district and you’re rewarded with different videos that play on a projector screen inside the VR space.
It’s sort of an interactive museum piece, really.
Both young and old came to experience the VR game.
Teleporting between points of interest instead of walking prevents motion sickness.
I then traveled to Taiwan, visiting HTC’s headquarters to demo the project. Once the project received approval, the VR experience was exhibited to the public during an awareness campaign, with hundreds of people trying the VR game every day.
The HTC office had a Vive logo made from old VR hardware, neat!
One of the biggest challenges was not knowing the final hardware target before I came to Taiwan. VR games render the scene twice, once per eye, so a lot of effort went into pre-optimisation. Stuttering and low frame rate are the primary causes of motion sickness, especially for first time users.
Taipei at night is a photography heaven, if you’re into that kind of thing.
On the optimisation side, occlusion culling did the heavy lifting. I set up occluders and portals for the city blocks so the game only rendered what the camera could actually see, and used LOD groups + static batching/instancing to keep draw calls down.
It’s the sort of project I look back on and mostly see what I’d improve. Still, I’m proud of what we accomplished.
Taiwan is still beautiful and warm during december, not nearly as dark as the game.
One last Yakult & grapefruit bubble tea, before flying back home to Belgium.