• Register

Mr Hack Jack: robot detective is a light-hearted take on detective stories set in a jazzy robot world.

Post news RSS How we ditched Diffuse maps in our VR game Mr.Hack Jack

How we shifted our texturing approach to better suit the constraints of low spec VR devices and to speed up our production process and craft Mr.Hack Jack: Robot Detective in less than four months.

Posted by on


I'm Timothé 3d artist on Mr.Hack Jack: Robot Detective.

In this article I want share how we approached texturing for a VR game. If you'd like to know more about Mr.Hack Jack: Robot Detective, please wishlist the game on Steam <3

Since the beginning of the project, the plan was to nail a more strongly defined Art Direction than we did before on our game “The Last Letter”, while speeding up our texturing process and saving as much memory as possible.
It meant getting away from the usual realistic texturing pipeline and aiming for a more plastic/cartoony rendering, that would fit the comical setup more.

The Last Letter realstic texturing
The Last Letter featured a more realistic texturing style

Mr.Hack Jack texturing style is more cartoony
Mr.Hack Jack's texturing style is deliberately more cartoony

Really early the excellent document of Andrew Maximov led us in the direction of a custom shader with a Gradient map instead of the usual diffuse map.

The article of Andrew explain the why and how way better than I would, but to make it short; most of the objects seen in a video game don't need a wide range of hues. We can simply recolor a gray scale texture using a gradient.

Andrew Maximov

The gradient map workflow allows you to pack your diffuse information in one Black and White map only, that can itself be repacked with other information.

Since we prioritized the cartoony/unified look, we gave up on the Roughness and Metalness map to replace it with a pure value setup in Unreal engine. Each texture contains our gradient, a Mask that allows us to pick between 2 different gradients and an emissive map since we used a lot of this last one in our robotic world.

An additional technical detail: we kept the gradient map in the Green channel since it is compressed on 6bits rather than 5bits for the 2 other channels.

Mr.Hack Jack

On top of that Colorization we add a subtitle black and white noise for the simple reason that gradients look much worse in VR than on a normal monitor! Doing so also helped us to unitize even more our objects!

Mr.Hack Jack

In the end, re-using the same parameters (colors / roughness / metalness) between our objects is a fast and easy way to unitize materials.

Mr.Hack Jack

The texturing workflow itself became extremely fast; from a High Poly made in Maya (Simple smooth with support edges) we add some marks and texture through a fast pass in ZBrush, bake everything in Substance Painter and let the magic happen!

Mr.Hack Jack

Just need to assign that Smart Material, a mix of custom mask and baked lighting with a heavy dose of curvature as an overlay, paint the emissive, the Red channel mask, export, and voila!

Mr.Hack Jack

Of course, despite its good points, that workflow didn’t work for every object we had, so we ended up with a mix of traditional and Gradient mapping (For example the Robots use a more traditional Diffuse map) but it still saved us time and performances, while helping to unitize our Art Direction.

Mr.Hack Jack

To recap:


  • Unify the art direction
  • Optimize the texture weight
  • Fast texturing in Painter


  • Less control on complex objects textures
  • Details difficult in texture

That's it! Thank for your reading, feel free to ask any questions and if you're interested in Mr.Hack Jack: Robot Detective, take a look at the Steam page and wishlist it! Cheers!

Mr.Hack Jack

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.