How to create object in Blender 2.9, then import and rig in DS?
I have created and rigged many things in the past, but I'm doing it for the first time with Blender 2.9x, and clearly something has changed or I've forgotten something vital.
I have a dresser with three drawers that I want to rig so the drawers can open. Each part of the model has a vertex group--they are named Dresser, Top_Drawer, Middle_Drawer, and Bottom_Drawer. Each parts's geometry has been assigned to the appropriate vertex group, because in the past vertex groups were what DS treated as bones that could be parented for rigging in the Figure Setup tab.
But now I export, and the obj file contains the dresser as expected, and I can apply surfaces to it and render it an whatnot, but when I load it into the Figure Setup tab, the vertex groups don't appear as bones. There's only one group called "(null)" and no way to rig the model.
I have attached screenshots showing my Blender export and DS import options, since that's the most likely place for me to have made a mistake.
Can anyone help me figure out what step I missed or what I'm doing wrong?
Comments
Vertex groups? What you want are polygon groups.
I looked it up in the manual, and it says polygroups are created upon export based on the vertex groups. I also tried something called "face groups," but that didn't work.
I opened the .obj file with a text editor, and found only one group line, which says "g (null)"--which I think means Blender isn't exporting groups of any kind.
Is .obj the only file format I can use to import geometry for rigging? I'm wondering what I do if Blender's .obj file exporter is broken.
Yes, the g lines are the group names so it defintely sounds as if it isn't exporting. If you model isn't separate objects in Blender try unchecking the Objects as options at top-right of the exporter dialogue - perhaps that is overriding the vertex groups.
Thanks for the suggestion, Richard, but that didn't work. I prefer Blender's modeling tools, but if necessary I could get other software with which to load the .obj file and recreate the missing polygon groups. Do you think Hexagon would be fit for this purpose and run stably on Windows 10?
It sounds as if it's the export from Blender that's an issue. You could try FBX, DS will read that (it won't read rigging but that isn't an issue here) then use the Geometry Editor to check it has groups and export as OBJ fior Figure Setup.
I think you got me going!
I had to forget about groups but just leave the four parts as separate objects in Blender and export as FBX. Then I loaded the FBX into DS, where the parts showed up as four separate models. Then I exported those to an OBJ and under Write Groups, I selected Use Figure Name. That way the Top_Drawer object got saved out as a Top_Drawer group, for example. Then when I loaded that OBJ into the FIgure Setup tab, I got bones!
It's too late tonight for me to go through the steps of actually rigging it, but I'll work on that tomorrow and report back.
(Forum double-posted my reply above. Please ignore this.)
OK, that sounds encouraging.
Welp, rigging worked, but the caveat of this procedure is that when I load the objects from the FBX file, all the material surfaces are named properly--each drawer has surfaces named Drawer_Face, Drawer_Floor, and Drawer_Handle--but when I export from DS to an OBJ file, the surfaces get duplicated and renamed as necessary so that, for example, there's no longer one Drawer_Handle that works on all three drawers but three separate ones. Duplicated surfaces have their source figure names appended to them in order to make them unique. (See attachment.)
Is there a way inside DS to merge two surfaces in order to get rid of the duplicates?
You can do that with the Geometry Editor. In the Tool Settings pane find the list of surfaces and click the + next to each handle, then right-click>Assign Selected Surfaces to group. repeat for the other areas. You can rename the surfaces to get rid of the unwanted object name by clicking to select, then clicking a second tiem to edit. Finally remove the empty surfaces by right-click>Remove Selected Group(s).
Fantastic!
I also found that I can just transfer via OBJ without groups, then use the Geometry Editor to create the face groups I need for bones. Save that result out to OBJ and I get one that works perfectly for rigging.
Thanks for all your help! I'm glad I don't need to learn a new modeling program in order to get around these issues.