Vertex coordinates of mesh imported from Blender as fbx are all equal to 0,0,0? Edit: When I use FBX ASCII export and set Normals == None in Unity's import settings it allows me to access the vertices as expected, I have no idea why this works though..

I was trying to figure out what was wrong with altering the vertices of my model and found that printing the vertices of a model imported from blender resulted in every vertex being == (0, 0, 0). Using the same script to print the vertices of a Unity created Cube worked as intended.

        GameObject go_body = GameObject.Find("tiger_body");
        Mesh mesh_body = go_body.GetComponent&lt;MeshFilter&gt;().mesh;
        Vector3[] body_verts = mesh_body.vertices;
        for (int i = 0; i &lt; body_verts.Length; i++){
            print(body_verts[i]);
        }


Does anyone have any insight into why the blender model is different? I additionally don't understand how the game engine can render it in the correct place when all of the mesh's vertices are equal to (0, 0, 0)?

Thanks in advance!






I tried exporting it in ASCII instead of binary and the vertices exist as expected in the fbx file, why is Unity not recalling them properly with mesh.vertices;?

Additionally, when I export using .OBJ the vertices work as expected as well.
I had this issue and solved it by unchecking the Scale Import option.  I think its because the model was too small so when it scales it down, everything is too close to 0.0 and gets rounded.
I imagine you were getting the same thing as most of your values are already 0.1 and then scale it down 100x it becomes 0.0.