Forum Coordinators: RedPhantom
Poser - OFFICIAL F.A.Q (Last Updated: 2025 Jan 03 8:14 am)
Further information: The dials do not stack. For example, if you create a grid for [-90,-45,0,45,90]x[-30,0,30], the [45x30] dial will be zero if the actors are bent to [90x30]. But of course you could start by creating a JCM for [45x30], and slave this to both the [45x30] and [90x30] parameters. If [90x30] needs an additional correction, you can develop a further JCM and also slave this to [90x30]. The JCMs that you create, should ideally have their own naming schema and individual master parameter. That makes the reuse and the decoupling easier. I have not really tested these JCMs grids, its hard to predict if they work in other applications, lower versions of poser, if poser saves the setup properly in scene files or libraries, ... bla bla bla....
This is great. I hope I'm smart enough to learn to run it.
edit: Not so difficult, actually. I can get started experimenting with this tomorrow. Thanks for this new tool.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
I assume its a bit difficult to get started. My brain works very low level. And communicating the main points is sometimes more difficult than one assumes. I am not as gifted as Cage when it comes to break down technicals. But lets try and discuss all issues by mail or in the thread ;) To clarify it a bit. You have to think of positions of the parameters that you want to optimize. If you have a SideSide that you want to optimize for [-50,0,50] and you have a bend you want to optimize for [-75,0,75], then you have to specify these values and create JCMs for -75/-50, -75/0, -75/50 0/-50, 0/0, 0/50 75/-50 75/0, 75/50 If the parameters a dialed to an intermediate value (e.g. -35/60) then multiple Fx diales will become active, but none of them at 1.0, rather each one a bit. Then you CANNOT teach it. You have to specify the key values at the positions you are going to make a JCM for. Only if you have a Fx dial that maxes out to 1.0 at the desired position you can create a JCM for this.
Quote - I also wonder if there is a trick to arrange parameters into groups with python. Did not find it yet ;(
The only thing I can think of would involve using Python to edit a cr2 or pz3, or possibly creating a custom pose and loading it. I know a pose which loads a pmd morph set can overwrite existing parameter dial groupings, but I'm not sure whether a pose alone can do that, minus the pmd-loading part of the process. Either way, since loading groupings through a pose would fully overwrite all existing parameter groupings for an affected actor, the pose would need to be carefully tailored for each case by the Python script.
(Also, you explain this stuff better than I could! :lol: You're working with more complicated matters than I tend to tackle. JCMs and their ERC settings have always confused and frustrated me terribly. :scared:)
===========================sigline======================================================
Cage can be an opinionated jerk who posts without thinking. He apologizes for this. He's honestly not trying to be a turkeyhead.
Cage had some freebies, compatible with Poser 11 and below. His Python scripts were saved at archive.org, along with the rest of the Morphography site, where they were hosted.
That looks good. Let us know when it's ready.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
I have a question. Do the JCMs of the grid need to be at consistent intervals? I mean, for example, lShldrSw -60,-30,0,30,60 or can you put the JCMs anywhere you like as in lShldrSw -60,-20,0,30,50?
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
Well, I’ve managed to set up a grid for the rShldr. It comprises Sw(swing) –90,-60,-30,0,30,50,70,90 x (up and down)Ud 0,30,50,70,82. So far, I’ve created only one FBM to be controlled by the Sw30Ud30 “fix” dial. Once I learned that the fix dial is already wired in and needs no teaching, I was able to link the FBM to it through the script UI. It's a mild correction morph, the true magic will be apparent further down the grid where the distortions are extreme. So far, so good, though.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
@ colorcurvature: a big thank you to you. You know what Poser users need. PML has allways been so essential to me and this tool is going to be the next step. Those typical Poser joints have allways bothered me so much. Lots of times I was about to kick off all that Poser crap. To have a tool that can fix all those bending issues of Poser Characters keeps the fun alive. So go on, can't wait purchasing it.
Yes, the dials that the script creates have their ERC already in place and do not need any further teaching. One has to link the self-made JCMs in a 1:1 relation to the generated fix dials, thats all. They will automatically dial once linked. The 1:1 link can be done with the script UI. You made an extensive grid. I hope it all works as expected. Thats 40! fix parameters. I am not sure if you want to create so many JCMs :) Furthermore, you can also link any kind of parameters to the generated dials. For example, if you notice that your JCM for 50x30 works just as good on 50x50, for example, you can link this JCM to both fix dials. Or, for example, if 50x50 looks nice by dialing your JCM for 50x30 just a bit more, maybe to 1.5, you can also teach it this way. This is however currently not possibly with my UI, but with the teaching tool it is.
Thats 40! fix parameters. I am not sure if you want to create so many JCMs :)
*I've completed 11 so far. It's just nice to finally be able to do this. It's like I've been training for the last year. JCM creation is quick and easy at this point. I could get away with less though. I'll be more strategic in the future.
There will be no fix morphs for any part of the grid with a 0 parameter since there are already JCMs to handle that.
Thanks so much for making this script! I'm not sure how many people realize what a breakthrough for Poser rigging this is.
I was meaning to ask, can this be used if you wanted to make a fix dial for a morph powered by the swing of both the left and the right arm or leg. Also, can you create fix morphs with more than two actors?
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
You can define a grid on any two parameters, I think the script should eat it. You could make a grid [head.bend]x[rFoot.twist], although that would not be very useful :) The implementation I had sent can only take 2 parameters for a grid, but I had made an implementation that can take 3 of em. The problem is that the number of dials is exploding. I thought it would work in general, though. E.g. a 3x3x3 Grid comes to 27 dials. 4x4x3 or so would be 48. I thought its a lot. And I wasnt sure if Poser can eat all the ERC without difficulties. You are pioneering :) The legs have the problems that they come very close together. There is a zone were the bends interfere. I guess its because of the smoothing zone. That makes it difficult to create really independent JCMs for each leg.
The legs have the problems that they come very close together. There is a zone were the bends interfere. I guess its because of the smoothing zone. That makes it difficult to create really independent JCMs for each leg.
To deal with this sort of thing one must abandon strict symmetry and true independence. There will be morph overlap and the quality will need to hold up when both limb JCMs are at 1.
When I'm working on JCMS for limbs, I pose both sides of the Poser figure symmetrically, export with CO_Exporter_2012_UV and load this into Zbrush where the JCM is created. Then I open the morphed figure in Modo and load a default-posed export in another layer. I use the Zbrush sculpt as a background morph. Then I split the morph by selecting half of the figure and activating the background morph to the respective sides in turn. The end result is tested by activating the two new morphs at the same time. If the JCM is extreme, there may be unacceptible distortions near the center of the mesh. I use Modo's sculpt tools to smooth the problem areas when both morphs are active, and also in the seperate morphs. Eventually, something will be produced that works adequately both in the seperate and the combined states.
Perfect symmetry at this point is a distant memory, but it's close enough and looks adequate.
It will be interesting to test this cr2 on another system once the work is done. I’m using a poor man’s 64-bit "supercomputer" and things are working flawlessly but will there be lag on an older system? Time will tell.
There may be a few drawbacks to this JCM-heavy approach. One, of course, is the large cr2 or PDM load. Another issue may be clothing creation since it will not strictly conform to the morphed surface, but I am of the opinion that a sparer grid of correction morphs may be used in this instance. Then there is the issue of IK. Using IK overrides JCMs. I’m not sure why this need be the case, but it’s the way it is. It could prove too laborious to create clothing that will perform adequately in both the IK and the JCM versions of the figure, (too laborious for others, and not for me, of course. “Laborious” is my middle name.)
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
I’ve been working with this script extensively, to good effect, but at last, it seems, I’ve stumbled upon an anomaly. To allow for good arm movement, I needed JCMs to cover Shldr Swing Collar Twist rotations. I set up a grid for this, consisting of rShldr.swing -90,-45,0,45,90 rCollar.Twist -90,-45,0,45,90. The first JCM was for rShldr swing 45, rCollar Twist -45. Strangely, when I linked this to the Fix dial for rShldrSw45CollarTwst-45, things didn’t work. A closer review of the Fix dials revealed that the dial being activated to 1 when the shoulder swing is at 45 and the collar twist is at -45 is the Fix for rShldrSw45CollarTwst0. When I linked the morph to this dial, things worked properly. I’m not sure why this is happening. It can make things a little confusing and I don’t know what the results will be as I advance through the grid. In any case, I thought I should bring this to your attention.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
FixAXSw_45 and FixAXTwist 0 are at 1.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
I used the setup on Andy and it works.
Neither Collar-Twist or Shldr Swing change the dial values beyond the rShldrSw45CollarTwst0 parameter on my figure.
I'm going to revert to an earier save and try again.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
Ok, this is strange. For some reason my figure’s Collar twist is not being acknowledged by the script, regardless of whether the second value is in the shoulder or in the collar. There is no obvious reason for why. The spelling and case in the script entries match the figure’s parameters and there should be a linkage.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
I found the problem in the cr2. For some reason, the AX channels refer to the Collar's twist as "twistx." When I manually changed this to "xrot", in keeping with my figure's format, the Collar twists in Poser showed proper response in the AX dials.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
Ah. Maybe it has to do with internal or external names of the rotation dial. Poser parameters have two names, unfortunately, and if you ask poser for a parameter by name it can give you this or that one, in case there is a name collision. At least I think that might be problem. I have to clarify. Is this a selfmade figure or something from the DAZ? Would make it easier to check things out.
This is a selfmade figure. However, in theory, the results might be tested in any figure with internal rotation names xrot, yrot, zrot, and with the Collar x rotation UI parameter name as Twist.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
I finally got around to testing the 2d JCM system in Poser 8, 7 and 5. The test wasn’t ideal in that the test figure was weight mapped. Since weight maps were added in version 9/Pro, older version of Poser do not show the correct mesh deformations; However, it is still possible to check dials to see if they are activating the morphs in the proper manner. Your script seems to work in Poser 8. In Poser 7, I can see the dials, but the mesh explodes upon loading. At first I thought there was a display issue because the screen went white, but I was able to back out the camera until it became clear that the white was the result of the exploded mesh. In Poser 5, there was a similar issue, except that Poser froze and eventually crashed to desktop.
I didn’t have the patience to track down the cause of the explosion, but I suspect it has something to do with JCMs not being constrained to low increments. I don’t know if this is because the script isn’t supported or because of the other multiplied JCM data that I had coded manually with valueOpTimes controlling things. It could be something else entirely.
As for the script in Poser Pro 2012, it is working really well. I think the results in setting up this figure are better than anything I’ve managed to do without the script. My efforts have only been hampered by the limits of my mesh. Thanks for bringing this script into the world. I hope that others will get a chance to work with it.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
Thanks for your feedback. I guess one would have to inspect the parameter values in the older poser versions. I am not sure, maybe key-value parameters were not supported earlier, do not apply limits, or it has to do with the ERC operators themselves. I would guess that the parameters get seriously over-dialed and the JCMs applied in excess, causing the mesh to explode.
Hello,
Just to inform you that many of my freestuff items with Dependent Parameters settings also "Explode" when running in Poser 7 but not in Poser 8 or PoserPro2012. Even if Poser 7 is supposed to support the new ValueOpKey operator, there is something different between Poser versions in the processing of codes.
Colorcurvature: Hope to have time to test the script soon. I am just finishing my V4 Hip motion that appears in the freestuff section.
Allstereo
Very likely some things are different. Without key values I think it cannot work, or if it can, it needs a lot lot lot more helper dials to do the same. The good thing about this key value pair thing is that you can basically approximate any kind of curve and model that by a list of corresponding keys and values.
Hello colorcurvature,
Yes, we can approximately fit any function. It is what I have done in my ERC trajectory prop here in the Freestuff. I have coded the sin, cos and tan function to orientate the prop and calculate tangential velocity. The thing that I would like to know is the best number of keys and placement to approximate the function. There is surely some rules (ex: the peak and valley should be coded and the sampling frequency of point should be function of the degree of the funtion) but my search on the net did not result in clear responses. Perharps I should also look at the animation forum.
Allstereo
Another issue I encountered is that sometimes you need to go into a conforming clothing cr2 and change the AX dials to superconforming to get the morphs to work properly. It's a mystery to me why this just happens sometimes.
Download my free stuff here: http://www.renderosity.com/homepage.php?page=2&userid=323368
Ah. Well I never tried it in a cloth before. The AX are slaved to rotations. For a conforming cloth, the rotations are inheriteded from the conform target. The price question is whether further ERC-slaved parameters do react on this inherited values or not. You might find out in the dependency editor. Inspect if the AX have proper master parameters
Hello Paloth and Colorcurvature,
I am not familiar with all abreviations and acronyms used in Poser threads. So, AX stands for what?
Allstereo
Colorcurvature: Now, I am testing your script (The last time, I stalled on setting up scripts to insert ERC operator in Poser file). Hope to see issues and help you for your script, but I am not the best person to evaluate that because I never did so complex morphing application.
This site uses cookies to deliver the best experience. Our own cookies make user accounts and other features possible. Third-party cookies are used to display relevant ads and to analyze how Renderosity is used. By using our site, you acknowledge that you have read and understood our Terms of Service, including our Cookie Policy and our Privacy Policy.
I am just hacking the script for multi-jcms again. Before posting it, testing help welcome. You can email me. I cannot do a UI at the moment, I'll have to be run through python shell so its a bit hack-ish but I hope its still ok.