Many people ask about exporting and then importing their models into Unity; it’s always a good idea to follow the FBX Export page in the documentation, but here are some of the most Frequently Asked Questions:
Which file type should I use?
Native (.Max, .MB .Blender etc) or proprietary 3D application files can be faster to iterate with saved files, but may contain un-necessary data / assets and can make it harder to verify your models and textures. Additionally project containing these files are not portable to machines without the corresponding 3D package.
FBX allows a more modular approach to exporting your assets and enables embedded textures as well as many other exporter options to simplify the transition of your model into Unity.
More information is available on the Import Object page in the documentation
What type of meshes can I export?
Triangulated Polygons. Anything else -e.g. Multi-Res Meshes, Sub-Div Surfaces, Nurbs etc. should be converted to an editable polygon mesh in the application first, where possible - or Unity will either not import mesh or the exporter may convert it for you with unexpected results (unnecessarily high polygon count, unexpected appearance)
How many polygons/vertices does Unity Support?
There is no hard limit per se, some older hardware will only support 64,000 verts per mesh (so less polygons, depending on configuration) but mostly Unity can handle a range of polygon counts and handles meshes with greater than 64,000 verts breaking them up behind the scenes.
So this depends heavily on your target platform and the rest of your assets, but as a general rule, you should use only what your player will see. The more polygons you use in one mesh, the less meshes you can render in total, or less polygons in your environments or FX, so optimise your meshes where possible, e.g. use polygons cleverly to describe curved shapes where it counts, but sparingly where not noticeable. Make use of automated polygon optimisation/reduction tools in your package.
Why is my model too big/small?
Unity is set to import assets at 0.01 scale by default, to match centimetres which is the Maya default for example. So when you export a cube of 100 units in your package (length width and height) - you get a 100 cm cube in Unity (1 metre). If your units are set to metres and your cube is 1 unit in your 3D package, then you will need to adjust the Scale Factor in unity to 1.0 and your cube will be one metre in Unity. So for metres:
Project Pane > Select Object > Inspector > Scale Factor > 1.0 > Apply
Why is my model grey in Unity?
Your textures are likely missing, from the Unity project to remedy this follow the Material Texture FAQ but crucially these steps:
- Use a compatible format, or bake your textures if they are procedural or an unsupported format.
- Copy them into your project, inside a folder called \textures within the folder where your model is exported to (and re-path them from your 3D application if iterating)
- Or embed them, by checking the option in the FBX exporter
Why does my mesh appear inside out?
There can be a few reasons why normals are flipped or your model appears inside out one inside Unity - check your source model:
- Reset and transforms left over from mirroring/duplicating geometry
- Weld verts within a threshold to create a contiguous mesh where applicable
- Collapse your object to a polygon mesh in your source package
- Use normal (face direction) tools to check your faces are not flipped or hide backfaces
- Fix your mesh and flip any relevant faces
- Verify your export (re-import in to 3D package before Unity)
- Check Project > Select mesh > Inspector > Model > Normals & Tangents > import/calculate settings
- Check your shader/material combo in Unity, it may adjust your normals