This is the "F**cking Import my Mesh!!!" (.FIM) format for interop of simple models between Blender and Unity.
- Dead simple vertex / normal / vertex color mesh exporter from Blender to Unity.
- File format is ASCII and dead simple to parse (see C# script).
- Supports multiple objects in the same file - just have those meshes selected when exporting.
- Automatic modifier apply and triangulate on export.
Install the Python script in Blender via the Addons menu. Then enable the "F**king Import my Mesh (.FIM) Export" addon. Have at least one mesh selected (non-meshes get ignored) and hit the export button. There are no options for export. FIM is pretty cut and dry.
Then, have the attached Unity C# script present somewhere in your project's Assets folder. That's it. Any existing .FIM files that were present prior to creating the script in the project will need to be re-loaded.
.OBJ exports from Blender include vertex color information but Unity doesn't parse it.
.PLY isn't supported by Unity neither exporter from Blender properly triangulates meshes.
.FBX is bloated.
.GLTwhatever isn't supported by Unity.
And I was tired of exporting materials and lights and cameras and whatever nonsense when I just wanted a f**cking mesh. I do a lot of procedural and minimalistic art work and don't need all the fancy Pabst Blue-Ribbon rendering.
You're probably using the default vertex color thing that stores them to face corners.
Select the group, then go to the Convert Color Attribute dialog:
Then switch "Domain" to "Vertex" and "Datatype" to "Color".
Then re-export the FIM file.
Yeah I'm still trying to figure out how Blender automatically determines hard/smooth edges. For example, this....
Turns into this:
The solution is to mark all of your edges as hard seams and use the Edge Split
modifier with the Angle
turned off, OR to simply use the Edge Split
modifier with an angle of your choice. If you want all edges to be sharp, set it to 0.
If you have any idea how Blender does 'magic' edge splitting, please let me know.
Unfortunately, Unity doesn't provide an API to do this. It gives you a single group.
Yeah it's certainly possible. I haven't needed them though. Feel free to comment here and I can probably help you out.
Yes. It's released under CC0, Unlicense, or Public Domain. Pick one that suits you best.
Me, Josh Junon.
Yep, probably. This got the job done though.