From Spring 2018 - Fall 2018, I created a game for the Oculus Rift in Unity with five others. I was responsible for all the design work, 3D models, rigging, look development, and 3D optimization of the game.
 In the game, you play as one of many Grim Reapers, your goal is to earn the title "grim-ployee of the month." You must kill NPCs, but not all of them: you need to eliminate your assigned targets as quickly as possible, and in specific ways. The game is set on a remote floating village in the the clouds, and our goal is to make players feel immersed in the landscape.
Meshes were modeled and UV mapped in either Maya or ZBrush. Some specific objects are textured using Substance painter, but most use tileable textures to save on performance. I use painted vertex colors to vary the color of objects in the scene.
Below is a mini-blog to showcase the progress made on this project, from initial iterations to the final product. 
The Final Product & Environment Design #3
Below you can see some of the finalized assets I made for the game. 

A screenshot of the environment in Unity. 

Above is an interactable version the lightweight environment I made for the game. For the final iteration, I decided to go for a much smaller version of the environment, so I could really spend time on making it both look good and run at a decent frame rate. At around 13k polygons, it runs at 90fps in Unity, meaning players won't get nauseous and will be able to fully enjoy the game.

Note: some zooming in might be required to place the camera in the scene. Press 5 to view the wireframe!

Our game was demoed at the final VR showcase for the various project teams in the Virtual Reality DeCal. Here is a short video showing some of the gameplay (using a banana to trip NPCs, and using a scythe to kill them)

Above is the scythe model I made for the Grim to weild. I modeled it in Maya and textured in Substance Painter. It has about 1k polygons.

Environment Design #2
Since our game is multiplayer game, we needed to optimize its performance as much as possible. Our game using the initial environment was extremely slow, thanks to a copious amount of draw calls per frame. 
I then redesigned environment using a new low-poly approach, and combined groups of local static objects to reduce the number of draw calls. I also implemented a culling system to keep Unity from rendering hidden objects. The look of the environment was also changed to more closely match my initial concept. Below are some screenshots of the new environment (click to enlarge) :
Creating The Characters
I modeled and UV mapped both the Grim character and the NPC characters in ZBrush, and textured them using Substance Painter. I took a fairly low-poly/stylized approach when making both. The intention was to have the Grim's cloak be simulated, so the screenshot below shows it pre-simulation. The godly police and NPC are the same mesh, with different textures/shaders. Once modeled/UV mapped/textured, I used Mixamo to Rig, skin and animate the characters. 
We ended up scrapping the Grim character, as we decided to move the game to a VR platform with a first-person setup.

Above is a screenshot of the game's title screen. I used the far-away town view and added a bunch of fog and post-processing, along with the UI elements. 

A very sped-up demonstration of laying out environment assets in Unity. It was a time-consuming process! 

I took a modular approach to the modeling of the environment - buildings were modeled in a small number of sections, which could be reconfigured and duplicated for added variability. I used vertex colors with the Unity add-on Polybrush to give the environment pieces unique colors, as opposed to separate textures. The environment pieces were modeled in Maya, and greenery was modeled using Maya's paint effects. 

Early design of the environment (with post-processing in Unity)

Environment Design #1
Early on, I created a low-poly mockup version of the environment, to be shown rotating from far away in an intro menu. I used ZBrush for the base rock and used Maya to model the houses and castle/walls - I used Maya's geometry painting tool to procedurally reproduce a single house mesh across the whole surface. I then used Substance Painter to create textures.
Back to Top