As you probably are aware of, I’m working on a Third Person Shooter. As you see above, that gun is a 3D modelled Makarov pistol (https://en.wikipedia.org/wiki/Makarov_pistol) that is going to be making a feature in the game as a sidearm.
The Problem
You may notice it’s way too big to fit in my character’s hand.
This is a common problem when you import models from other software packages into Unity. Each modelling software package has their own representation of units, and in Unity by default 1 unit is 1 meter. Let’s see what the Makarov properties are in real life, courtesy of Wikipedia:
Weight | 730 g (26 oz) |
---|---|
Length | 161.5 mm (6.36 in) |
Barrel length | 93.5 mm (3.68 in) |
Width | 29.4 mm (1.16 in) |
I would be expecting the gun to be imported as normal with the scale correctly set inside the FBX. It’s not. Let’s see what the File Scale is, which is what Unity can instead of using one you can specify.
So right off the bat, it seems the person who created the models didn’t think to export the FBX files with the scale factor and probably exported them as-is. I’m not fluent in 3D Modelling myself but I’m pretty sure some packages will export the scale factor as like 0.254 or something similar. In this case, the file scale size is 1 unit… no wonder the gun is so big!
In fact, it seems all models from this author, Bluesu, have this issue. I hate to name and shame, but for any modellers out there reading this, please ensure you keep to real-world scale measurements, or at least export with the correct settings.
Just another thorn in the backside of a game developer…