Poser9 Weight Mapped Figures
I finally got around to using a figure I purchased a while back and discovered it doesn't work in Carrara. I'm fairly confident the issue lies in its rigging which apparently makes use of poser9 weight mapping. I hadn't realized this when I got it or I would've expected it not to work. What appears to be messed up is the upper arms and, to some extent around the torso. On checking the rigging the upper arm vertices only have a "Scaling" channel, no rotation channels at all. Unfortunately, even though Carrara has supported weight mapping and multiple channels for some time it does not allow editing them as far as I know, certainly not on purchased content.
For reference, this particular figure is Sixus' Reptilez. A real shame it doesn't work. So... I seem to recall there might have been a way to get a Poser weight mapped figure into Carrara and it work, but it required Poser -- which I don't have. Is that recollection correct? Is there any other way to get the figure to work in Carrara?
Comments
There is a plugin by Fenric to use Poser weightmapped figures in Carrara. This thread might lead to helpful information.
http://www.daz3d.com/forums/discussion/24553/
Note that some of the figures that come with Poser have a strange hierarchy in which feet are parented to the body instead of the shin. Those figures, but not all weightmapped figures, require an extra step as described in the thread.
I should say that the weightmap plugin is found on Fenric's freebie page. Thank you Fenric.
http://fenric.com/wordpress/downloads/
description
Poser Weightmap Injector (free!)
This is a .NET 4.0 utility and instructions to help you prepare weight-mapped Poser figures for use in Carrara. This also includes a Poser Pro 2012 Python script that will automatically merge all “old style” rigging zones to weightmaps. This results in far better performance when the figure is imported into Carrara.
Thanks! Unfortunately that is a windows only approach (.net) and I'm on a mac. I'll see what I can come up with from it (I also use linux and some .net apps will work using an open source implementation, though I have no experience with that)
Apparently Fenric's .net app doesn't work under mono. I got mono installed on OSX and it took a couple of minutes to launch. After it finally produced a window I was able to select the CR2, click "Go" and it instantly said it was done. However, no output file was created. Looks like .net remains cross platform, as long as all platforms are Windows :(
It used to work on Mono, but I haven't looked at it in a long while.
PrepPoserFile is really fast - even on an old computer, it shouldn't take any noticeable time to run.
Try this version:
http://www.fenric.com/download/free/InjectPoserWeighting.zip
Just a note (which you may not care): I have not been able to get the new Unicorn from RDNA to load into Carrara successfully.
Found it. Either its fenric's application or mono is really stupid. I put the CR2 to convert in the same directory as fenric's apps and ran the apps from that directory. When saving the adjusted CR2 it used a file name of current directory ('PoserWeightmapInjector'), added a '\' presumably with intention of it being a directory separator (mono may be really stupid -- its sole purpose is to be cross platform and '\' is only a directory separator on windows, but if "cross platform" really means "everything that's windows"...), and then concatenated the file name. So it did produce the file, but in the parent directory with a stupid file name.
Why the app/mono used the parent directory and tried to use the app's directory to get back in I have no idea...
In the end I ran through the whole process. The part I noticed problems with (the upper arm vertices only having scaling channel) appears to have been resolved, unfortunately there are still serious issues. Certainly, the converted model can't take poses and even the slight amount of testing I did revealed issues. Its possible it will be okay for modest manual posing.
Its also possible it would've worked better if I had PoserPro2012 to run the preparation script in, but I don't have access to that.
Thanks for getting me this far!
Thanks for the warning! I'd been tempted by that one as well. I've gotta remember to beware of any new or even recent poser figures...
That fixed the path issue which was what made it confusing. I did notice that it doesn't go with current directory past the first run, it used the previous directory.
I'm assuming there was no meaningful change to code, just adapting to cross platform directory separator? Although running diff between the two final results indicates a change in the car file, so maybe there is more change?
I guess I'll load the latest processed car file to see if there was any improvement.
No, I just changed it to use "Path.Combine" - no other difference.
And if you can't run the weightmap-conversion, then you may get ugly bending on any joints that used the Poser 8 "capsule" zones. That's the trouble with Alyson 2/GNDA - a lot of her joints aren't weightmapped, but they use the Poser 8 rigging that Carrara can't read.
Fenric, just FYI: the conversion done with the new download is broken and much worse than the previous conversion. I ran through the process twice just to be sure. It produces the same converted CR2, but injecting that CR2 into the CAR file produces different, worse results. Maybe its just this figure and maybe it would work if I had poserpro2012 to prep with.
To be clear, what I saw wasn't so much ugly bending as vertices that didn't move. In this particular case, rotating the left arm moved the arm except for the elbow. Interesting that different output results with combine paths being the only change. Peculiar. I made extra careful sure the second time around that I was selecting the correct CR2 and correct CAR for the conversion.
Ah! That implies issues in the CR2 that "PrepPoserFile" couldn't fix. You ought to see the spaghetti that comes out when I try to get the Unicorn imported.
At this point, I'm not really even sure what Carrara is objecting to in these figures. Make sure that the usual suspects are covered:
- Only one "otherActor" for each joint (and it's the parent)
- All otherActor entries use the real bone name, not the display name
- There are no references anywhere to bones that don't exist (especially the ones that are in the form jointx_BodyPart)
- Any of the joint references use the real bone name, not the display name
- The figure section is in good order (Newer SmithMicro figures, for instance, parent the feet directly to the BODY instead of the shins)
But I can't promise that will help. I've gone through the Unicorn with a fine-toothed comb, and it still doesn't work. I'm beginning to think that if a figure doesn't have at least basically acceptable rigging without the weight map, then Carrara gives up: we can import weight maps that refine and correct the bending, but not if that's the only rig there is.
(And I can't import the DUF version of the unicorn, either - that just gives "An error occurred while executing Open....")
If I get the time I'll try going through that. Which means probably never, but I appreciate the pointers nonetheless.
(And I can't import the DUF version of the unicorn, either - that just gives "An error occurred while executing Open....")
Unfortunately it seems the days of Carrara being the best app for using content are over. It'll work for the infrequent Carrara specific content and it will usually work with older poser content (but not even all of that). It has "kinda" support for genesis (there's plenty of genesis content that simply doesn't work) and none for newer poser content. It is still a good app (though with its share of weaknesses, like ineffective pose saving), it just isn't good with current content.
Hm. Ok, I reverted the entire directory and then re-fixed the path. Try this one:
http://www.fenric.com/download/free/InjectPoserWeighting_update.zip
Now I'm really puzzled. This gave a different CR2 output, but the final CAR was identical to that produced by the first version? I did it twice to make sure I was selecting the correct files.
In any case I'd meant to post examples of the differences so here goes. I've labeled them in-picture to avoid ambiguity and circled one of the examples of difference in each, though it isn't the only one. I didn't bother with a third conversion image as the final CAR file is identical with the first conversion.
That looks like it might be capsule-zone (Poser 8) rigging, not weight-mapping at all. Carrara doesn't understand anything newer than Poser 4, and a lot has been added since then.
Carrara is always weight-mapped: that's all it understands. So, when Carrara imports the CR2, it converts the angle/sphere-zone joints to a weight-map. My weightmap importer just replaces the one Carrara calculates with the one from Poser.
But there are a number of common issues with the Poser files that will confuse Carrara's CR2 importer and result in a garbage weightmap. Once that happens, there's no recovery - that's why I made the "PrepPoserFile" command. Some things are just too weird to fix automatically - like the Smith Micro feet parenting issue. Really, you should just fix that in your Runtime and leave it fixed for everything. This worked well for the old hybrid figures like V4-WM, Miki 4, Ryan, and Alyson/GNDA, but just isn't working for the newer ones.
Thanks for the information. But I'm still a bit lost on this: I was trying to figure out how to fix it. Is this one then that needs the poser pro processing? If so, then its a loss for me unless I can get someone with it to prep that and then that gets into redistribution issues... But, if I could get it fixed in my runtime I would definitely use the fixed version.
Thanks again for the help.
There weren't any significant rigging changes between 4 and 7 - so it's technically correct but rather disingenuous.
If it is capsule rigging, you can fix it with any version of Poser or DAZ Studio: you "just" have to re-work the joints with angles and sphere zones.
But is this why I get weird things happening with Michael 2 (I think)?
I mean, use the Joint Editor to set up the joints over again: re-rig the offending parts.
Really, setting up the groups and getting the bones in the proper places with the proper rotation order is the hardest part. With that done, it is boring and tedious to set up the joints, but it's really not that hard to get decent results, and doesn't take that long if you're not trying for a professional product that other people are going to make clothing for.
It really is something you should learn how to do, either in Poser or in Studio, because even "professional" products sometimes have trouble. (And because Carrara has absolutely no capacity for editing Poser style joints).
There is always the option of creating the figure/pose the way you want in Poser and exporting as an .obj file. Here is the weighmapped version of Ryan, clothed and posed in Poser, and exported for use in Carrara as an .obj.