Home Website Youtube GitHub

Madrid Noir using mGear

Thanks to @tomflav for the mGear plug in the making of. It is very much appreciated!!

Madrid Noir is a 45 minute mystery adventure that unfolds across two acts in this VR film.
Created by https://www.noghost.co.uk/


Thanks Miguel!

On this project I decided to get my hands dirty and rig everything as well as model all of the characters apart from the big bad who was done by Valentin Tournibize.

We really tried to push the acting and performance on this project. Was a definite learning curve as both bone count and vertex weight limits are something that can kill your performance on mobile VR. Everything in the end was 100% bones.

These forums definitely saved my arse a few times, I especially want to shout out @Miquel for his tutorial series which I referred back to alot as well @chrislesage who’s code snippets I’ve used everywhere in my post build.

I want to say a HUGE thanks to the whole mGear team for allowing indie companies like ours to go straight in to having a rigging pipeline with such a feature complete toolset.

A few things I learnt on the project-

  • Use the UE4 guides! They didn’t exist when we started but this would have helped us alot for some of the procedural animation (like eye darts) to keep the axis’s consistent. This is gonna be a no brainer for anyone working in UE5 and the control rig going forward.
  • RBFs and springs are a massive animation time saver.
  • Work in classes/dictionaries, I got a bit too used to staying safe and using the post scripts to just batch through a ton of pymel cmds.
  • Remove all shear from your bones as that type of matrix transform just doesn’t work in engines and will lead to discrepancies in any squash and stretch.
  • Animators love the right click menu, what a feature!

Any questions let me know!


It looks absolutely stunning! I’m from Madrid, so I could be a bit bias about it, though! 8-D

Gutted I only having VR on Playstation 4, but surely I will get the game as soon as I’m upgrading to Oculus.

I’d like to know a bit more about how you developed the rigs, especially the facial rigging approaching.


1 Like

Thanks @Milio!

I’d like to know a bit more about how you developed the rigs, especially the facial rigging approaching.

As the output was a single bone chain FBX I had to make sure everything stayed within that scope so I couldn’t rely on local rigs for extra deformation. I didn’t bother to make or amend any components for mGear, for times sake I would just rip out/restructure bones or controls in the post build if I thought it was too superfluous or had too much complexity.

Little scripts like this were great to use as a base for some extra bits (like a simplified head/neck system, didn’t the full mGear setup with IKs)

It was a balance of never having too many joints in the rig, the main offender for that was always going to be the face and I had to find what we could get away with in terms of detail of the joints and geometry.

I used the stock facial rigger that mGear comes with and I amended some of the functionality, mainly to limit how much influence the controls had over the wires and making it a bit more localised so that they could sculpt poses a bit simpler with the low amount of bones we had.

It was lucky enough to have a lot of pre-prod back and forth with our animation director Aziz Kocanaogullari. He really helped me get the rigs over the line and he did great notes on all the rigs.


Thanks, Tom!

I was the animation director on Invisible hours VR game/experience, sort of similar to Madrid Noir.
https://youtu.be/ltKmj_1XRuY. We went through a lot of optimizations for skeletal meshes, kept joints only but I was allowed to use a fairly good amount of them!!. The whole animation playback relied on an in-house custom buffer feature we developed and allowed to have 8 characters, over 140 props and around an hour and a half of animation footage in memory. You can see some of the technical solutions I came up with, cloth baked in bones and some skinning decomposition plugins in this video: https://vimeo.com/280784967#t=2m48s

Hope the game does well and see more of you guys soon.


1 Like

Wow that looks brilliant. Will give it a try. Very impressive you were able to keep so much animation in memory!

I’ve done something similar with nCloth but I never figured out the best way to weight or arrange the bones though other than an autoskin and a grid. Might have to pick your brains if I ever have to do it again!

Our lowest target was the Quest 1 and with it being mobile we couldn’t go too overboard on the bones. :frowning_face:

Our lead dev had to rework alot of the Unreal Engine vulkan render pipeline to get things to perform well, that’s a whole bunch of work you’d never know was done.



Great stuff!

And glad to help! Thanks for the reminder to try out the UE guides. I still haven’t taken the time, and I have a few Unreal projects, including film projects that are rendering in-engine.


mGear4 release will have some updates in the Epic guides and more biped guides variations :slight_smile: