Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I'm getting an error when converting my FBX file. Not much information to give #23

Closed
jfelrod1960 opened this issue Sep 23, 2013 · 9 comments
Assignees

Comments

@jfelrod1960
Copy link

I'm getting an error when converting my FBX file. Not much information to give

Loading source file...
Triangulating FbxLine geometry

I get the window fbx-conv-win32.exe has stopped working dialog popping up.

The FBX file is converted from 3ds Max 2012.

I can PM the link of the file to the developer who is handling this issue.

@jfelrod1960
Copy link
Author

Let me know how I should send the FBX file to you. It is too large to attach to this issue.

@ghost ghost assigned xoppa Sep 25, 2013
@xoppa
Copy link
Member

xoppa commented Sep 25, 2013

Thanks for reporting, you can PM me the link to the model.

@xoppa
Copy link
Member

xoppa commented Sep 25, 2013

Thanks for providing the FBX file. Here's what I found:

  • The FBX file is in my experience very large (file-size), in relation to the model itself.
  • When importing the FBX file in Maya (2013) I receive the following warnings:
[WARNING] BindPose - Incomplete BindPose [link nodes] - The following Link node(s) is/are not part of the BindPose definition. R_upperFBXASC032leg Pelvis L_upperFBXASC032leg R_shoulder Spine_2 Spine_3 Spine_1 L_shoulder L_upperFBXASC032arm R_upperFBXASC032arm Neck R_hand R_ncl1_3 R_ncl1_1 R R_lowerFBXASC032arm R_ncl1_4 R_ncl1_2 L_lowerFBXASC032leg L_feet R_lowerFBXASC032leg R_feet L_toe R_toe Head L_ncl1_1 L_ncl1_2 L L_hand L_lowerFBXASC032arm L_ncl1_3 L_ncl1_4
[WARNING] BindPose - Incomplete BindPose [link nodes parents] - The following parent and/or ancestor node of the Link(s) is/are not part of the BindPose definition. Pelvis Dummy006 Rectangle001 Spine_3 Circle014 Spine_2 Circle013 Spine_1 Circle012 Circle015 R_lowerFBXASC032arm R_ncl1_2 R L_toe Bone084 L_legFBXASC032cntrollerFBXASC032main R_toe Bone077 R_legFBXASC032controllerFBXASC032main L_hand L_lowerFBXASC032arm
[WARNING] Unable to import some material(s) - The plug-in does not support the following material types:
 Material unknown will be imported as a Phong material.
  • The FBX file contains lot's of nodes which can't be converted by fbx-conv like lights, IK handles and particle cloud. You should only export the nodes that you actually want to convert (otherwise they will only bloat the file).
  • One mesh (group4, the hair) contains 22528 triangles, which would result in 67584 indices (and depending on the vertex attributes, in the worst case and equal amount of vertices). This is more than twice MAX_SHORT, which will most likely result in unpredicted behavior (libgdx's Mesh uses short indices).
  • Autodesk's FBX SDK (version 2014) has a lot of trouble parsing the FBX file, although it eventually completes, it takes a considerable amount of time which is unusual (e.g. it's stuck at 67% which is around Map#21).
  • The FBX file contains a lot of (nurbs) line shapes (probably used as animation handles?), these can't be triangulated.
  • The FBX file contains custom material (perhaps including a shader?), which can't be converted by fbx-conv (nor Maya).
  • The FBX file contains 5 nodes named "L" and 5 nodes named "R". Node names must be unique within a FBX file.

Most of the above issues can't be solved by fbx-conv. However, I think it should be nice to have at least some sort of feedback of what's going on. Therefor I changed the following:

  • Add optional FBX import progress feedback, so it doesn't look like fbx-conv is not responding.
  • Add optional mesh info (number of polygons, indices and points) feedback (it's impossible to know the actual amount of vertices up front, but that should give an indication)
  • When a mesh can't be triangulated, print warning and continue leaving all nodes with that mesh empty.
  • When a material can't be converted, print warning and replace it by a default material
  • When a node id is duplicate, print warning and skip the node

I am currently testing these changes and will commit them with the next update. However, in case of your model, it will only help you in identifying the problems (like summed up above), you'll need to resolve the problems to get an usable model.

Note that I'm not a modeler/animator, I can only identify the technical problems. I cannot help you to resolve them within your modeling application.

@jfelrod1960
Copy link
Author

Thanks Xoppa ... I will past this on to the modeler.

@xoppa
Copy link
Member

xoppa commented Sep 25, 2013

I successfully converted your model to g3dj (about 5MB) and g3db (about 2MB) and got it rendered (of course without materials and with other problems). Here's the output of the modified fbx-conv, which might help you to identify the actual nodes:

FBX to G3Dx converter, version 0.2

Loading source file...
1.02% ...
2.03% ...
3.05% ...
4.07% ...
5.08% ...
6.10% ...
7.12% ...
8.14% ...
9.15% ...
10.17% ...
11.19% ...
12.20% ...
13.22% ...
14.24% ...
15.25% ...
16.27% ...
17.29% ...
18.31% ...
19.32% ...
20.34% ...
21.36% ...
22.37% ...
23.39% Group1...
24.41% leg1...
25.42% Group003...
26.44% Group4...
27.46% Rectangle001...
28.47% R_toe...
29.49% IK Chain001...
30.51% L_toe...
31.53% IK Chain002...
32.54% R_upper leg...
33.56% L_upper leg...
34.58% Dummy004...
35.59% L_hand rot/pos controller...
36.61% Circle013...
37.63% Spine_3...
38.64% L_lower arm...
39.66% L...
40.68% L...
41.69% L...
42.71% L...
43.73% L...
44.75% R_lower arm...
45.76% R...
46.78% R...
47.80% R...
48.81% R...
49.83% R...
50.85% Head...
51.86% Both eyes...
52.88% L_shoulder controller...
53.90% L_arm_SA...
54.92% PhotometricLight001...
55.93% pants...
56.95% shoe...
57.97% eye...
58.98% Map #7...
60.00% Map #2...
61.02% Map #21...
62.03% Map #5...
63.05% Map #1...
64.07% Map #21...
65.08% ...
66.10% ...
67.12% ...
68.14% ...
69.15% ...
70.17% ...
71.19% ...
72.20% ...
73.22% misss_fast_skin_phen_Implementation...
74.24% root 2...
75.25% ...
76.27% ...
77.29% ...
78.31% ...
79.32% ...
80.34% ...
81.36% ...
82.37% ...
83.39% ...
84.41% ...
85.42% ...
86.44% ...
87.46% ...
88.47% ...
89.49% ...
90.51% ...
91.53% ...
92.54% ...
93.56% ...
94.58% ...
95.59% ...
96.61% ...
97.63% ...
98.64% ...
100.00% ...
INFO: polygons: 816 (2448 indices), control points: 431
INFO: polygons: 768 (2304 indices), control points: 402
INFO: polygons: 712 (2136 indices), control points: 366
INFO: polygons: 192 (576 indices), control points: 108
INFO: polygons: 192 (576 indices), control points: 108
INFO: polygons: 1220 (3660 indices), control points: 621
INFO: polygons: 1220 (3660 indices), control points: 621
INFO: polygons: 4812 (14436 indices), control points: 2473
INFO: polygons: 712 (2136 indices), control points: 366
INFO: polygons: 22528 (67584 indices), control points: 11361
WARNING: Mesh contains more indices (67584) than the specified maximum (32767)
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- Rectangle001
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- R_leg controller main
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- L_leg cntroller main
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- R_hand rot/pos controller
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- L_hand rot/pos controller
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- Circle012
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- Circle013
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- Circle014
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- Circle015
INFO: polygons: 960 (2880 indices), control points: 482
INFO: polygons: 960 (2880 indices), control points: 482
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- R_eye
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- L_eye
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- L_shoulder controller
Triangulating FbxLine geometry
WARNING: Skipping FbxLine geometry, because it can't be triangulated.
The geometry is used by the following node(s), consider removing them:
- R_shoulder controller
Skipping unsupported material: pants, replacing it by a red diffuse color, because:
- Material must extend FbxSurfaceLambert
Skipping unsupported material: shirt, replacing it by a red diffuse color, because:
- Material must extend FbxSurfaceLambert
Skipping unsupported material: skin main, replacing it by a red diffuse color, because:
- Material must extend FbxSurfaceLambert
Skipping unsupported material: shoe, replacing it by a red diffuse color, because:
- Material must extend FbxSurfaceLambert
Skipping unsupported material: head main, replacing it by a red diffuse color, because:
- Material must extend FbxSurfaceLambert
Skipping unsupported material: 14 - Default, replacing it by a red diffuse color, because:
- Material must extend FbxSurfaceLambert
Skipping unsupported material: eye, replacing it by a red diffuse color, because:
- Material must extend FbxSurfaceLambert

Converting source file...
WARNING: Duplicate node id: hand, skipping the node with the duplicate id and all it's child nodes
WARNING: Duplicate node id: L, skipping the node with the duplicate id and all it's child nodes
WARNING: Duplicate node id: L, skipping the node with the duplicate id and all it's child nodes
WARNING: Duplicate node id: L, skipping the node with the duplicate id and all it's child nodes
WARNING: Duplicate node id: L, skipping the node with the duplicate id and all it's child nodes
WARNING: Duplicate node id: L, skipping the node with the duplicate id and all it's child nodes
WARNING: Duplicate node id: R, skipping the node with the duplicate id and all it's child nodes
WARNING: Duplicate node id: R, skipping the node with the duplicate id and all it's child nodes
WARNING: Duplicate node id: R, skipping the node with the duplicate id and all it's child nodes
WARNING: Duplicate node id: R, skipping the node with the duplicate id and all it's child nodes
WARNING: Duplicate node id: R, skipping the node with the duplicate id and all it's child nodes
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
WARNING: Skipping unknown bone (possible duplicate node id's)
Exporting to g3dj file D:\test3.g3dj...
Press ENTER to continue...

@jfelrod1960
Copy link
Author

Thanks Xoppa! That model was converted by the artist for me to send to you. The models for the game will not have that many polys but contains the same type of information. I will look for the updates to fbx-conv and try it again.

Jeff

@jfelrod1960
Copy link
Author

Hi Xoppa,

I haven't seen any updates since your reply ... is there another branch where you applied updates?

Thanks
Jeff

@xoppa
Copy link
Member

xoppa commented Sep 27, 2013

No, it might take a while before I commit these changes. This is because I have multiple changes pending (e.g. regarding additional material attributes like reflection, converting g3dj to g3db, better logging, etc.). I need to test all these on various models before I can commit. This should not be a problem for you, with above information you should be able to fix your model to successfully convert it.

@xoppa
Copy link
Member

xoppa commented Oct 17, 2013

Added logging to the repo

@xoppa xoppa closed this as completed Oct 17, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants