Wed, Feb 26, 3:56 PM CST

Renderosity Forums / Poser - OFFICIAL



Welcome to the Poser - OFFICIAL Forum

Forum Moderators: RedPhantom

Poser - OFFICIAL F.A.Q (Last Updated: 2025 Feb 24 11:54 pm)



Subject: conforming morphs


ice-boy ( ) posted Tue, 16 November 2010 at 5:05 AM · edited Wed, 26 February 2025 at 3:55 PM

i would like to add some folding when i move my conforming pants.i read somewhere that this is called conforming morphs. so for example when i bend the leg an extra morph would move.i would like to make the folds by hand.

 

so my question now is if there are any detailed tutorials on this?

 

thanks


kyhighlander59 ( ) posted Tue, 16 November 2010 at 5:29 AM

I believe that would be called Joint controlled Morph rather than conforming morph. I may be wrong though.


colorcurvature ( ) posted Tue, 16 November 2010 at 5:44 AM

yes, i think so too. the conforming morphs are morphs in the cloth that correspond to a morph in the figure that is wearing the cloth. if the figure is morphed, the morph of the cloth would follow. i think there were certain changes in P8 regarding this. maybe browse the forums :)


kyhighlander59 ( ) posted Tue, 16 November 2010 at 5:54 AM

I believe the way you control it is by placing the morph in thecr2 under the joint that controls it. That way when you bend the joint the JCM moves as well.


ice-boy ( ) posted Tue, 16 November 2010 at 6:40 AM

pjz  i read through this days hours ago and i dont understand english enough to make it work.

 

is there a more simple tutorial?


ice-boy ( ) posted Tue, 16 November 2010 at 6:59 AM · edited Tue, 16 November 2010 at 7:01 AM

is this the same thing?

http://webcache.googleusercontent.com/search?q=cache:z144doy10LsJ:artzone.daz3d.com/wiki/doku.php/pub/tutorials/models/models-gen49+Joint+Controlled+Morphs&cd=1&hl=sl&ct=clnk&gl=si&client=firefox-a


pjz99 ( ) posted Tue, 16 November 2010 at 7:15 AM

Yes that's the same technique.  Worth noting that this is pretty much automated, if you use Morphing Clothes, if you want to set up a JCM in a conforming figure (like the pants you were working on).  Doing it by hand is possible, but very difficult and easy to mess up.

I didn't even know English was not your native language, what is your original language?

My Freebies


PhilC ( ) posted Tue, 16 November 2010 at 7:24 AM

Here is the same thing written a different way.

http://www.philc.net/forum/viewtopic.php?t=3392


lesbentley ( ) posted Tue, 16 November 2010 at 2:33 PM

Quote - i would like to add some folding when i move my conforming pants.i read somewhere that this is called conforming morphs. so for example when i bend the leg an extra morph would move.i would like to make the folds by hand.

When morphs in a conforming figure react automatically to some channel in the character figure it is called "super-conforming". Let's work through it step by step. Say you want a morph in the conformer to be expressed when the left thigh is lifted up (xRotated). Let's also assume that you want the morph to be expressed at a value of 1.0 when the lThigh is xRotated by a value of -90.0°.

First some terminology. The code that you need to add to the morph (targetGeom) channel is called the "slaving code" (or just "slaving"). The channel that is to be controlled is called the "slave channel". The channel that is to do the controlling is called the "master channel".

Open the conformer cr2 in a text editor, find the relevant targetGeom (morph) channel. Now scroll down until you find the line that reads "interpStyleLocked 0". Under that line insert the following code:

                   valueOpDeltaAdd
                                Figure 
                                lThigh
                                xrot
                        deltaAddDelta -0.011111

In the above code "lThigh" is the name of the actor (body part) where master channel lives, and "xrot" is the name of the master channel. The value in the "deltaAddDelta" line determines the strength with which the slave channel will respond to the master channel. To arrive at the value for that line, divide 1 by the number of degrees the actor should rotate for the morph to be expressed at a value of 1.0. If we wanted the morph fully expressed when the master channel had a value of 1.0 (degree of rotation), we would use 1.0 in the deltaAddDelta line. If we wanted the morph fully expressed when the master channel had a value of 10.0, we would use 0.1 in the deltaAddDelta line. If we wanted the morph fully expressed when the master channel had a value of 75.0, we would use 0.013333 in the deltaAddDelta line. If we wanted the morph fully expressed when the master channel had a value of 90.0, we would use 0.011111 in the deltaAddDelta line, 1/90=0.011111... Because we want the morph to be fully expressed when the the value of the master channel (xrot) had a value of -90.0, we use a value of -0.011111 in the deltaAddDelta line. The "-" means that the value of the morph will go positive when the value of the master channel goes negative.

One more thing we need to do, is to force and set the limits for the morph. Usually a Joint Controlled Morph (JCM) should have the limits forced to between 0 and 1.

Below is a complete (except for the deltas) targetGeom (morph) channel, with the code you need to change or add in green.

           targetGeom Morph1
                        {
                        name Morph1
                        initValue 0
                        hidden 0
                        forceLimits <span style="color:#00ff00;">1</span>
                        min <span style="color:#00ff00;">0.0
</span>                 max <span style="color:#00ff00;">1.0
</span>                 trackingScale 0.02
                        keys
                                {
                                static  0
                                k  0  0
                                }
                        interpStyleLocked 0
<span style="color:#00ff00;">                  valueOpDeltaAdd
                                Figure
                                lThigh
                                xrot
                        deltaAddDelta -0.011111
</span>                 indexes 486
                        numbDeltas 486
                        deltas 
                                { 
                                [deltas]
                                } 
                        blendType 0
                        }

The difference between normal ERC slaving and a super-conformer is that you leave the figure number out of the slaving code. I will say more about that later. Another important point with a super-conformer is that part of the character that it is to be conformed to should be selected before loading the super-conformer. Failure to do that may result in the morphs being slaved to the wrong figure.


ice-boy ( ) posted Wed, 17 November 2010 at 4:19 AM · edited Wed, 17 November 2010 at 4:22 AM

i noticed that when i move the leg the morph is moving. but when i comfort the pants to M4 then its not moving.

 

so do i need to writte Michael 4 where it says ''Figure?


colorcurvature ( ) posted Wed, 17 November 2010 at 4:59 AM

les, was it you who posted somewhere how one can slave one morph to multiple bends (like both bend and side-side) in a way that the morphs appliance would be bend * side-side rather than bend + sideside? (erc value = dial A mult dial B)

i thought I read that somewhere but maybe my memories are playing tricks.


pjz99 ( ) posted Wed, 17 November 2010 at 6:43 AM · edited Wed, 17 November 2010 at 6:44 AM

To get this kind of thing working for a conformer you have to use the "crosstalk" concept, which Poser still only partly supports.  There are a few ways to implement it, but what Morphing Clothes does is create a parameter dial on the BODY actor of the conformer with code like this:

valueParm JCMThumbBulgeL
{
 name JCMThumbBulgeL
 initValue 0
 hidden 0
 forceLimits 0
 min -100000
 max 100000
 trackingScale 0.02
 keys
 {
  static 0
  k 0 0
 }
 interpStyleLocked 0
 valueOpDeltaAdd
 Figure 1
 lHand:2
 JCMThumbBulgeL
 deltaAddDelta 1
}

When you load the conformer, if you make certain that the conform target is selected, Poser links the "Figure 1" in the above to the conform target (in your case it'd be M4).  So, when the "JCMThumbBulgeL" parameter on M4's lHand actor changes, then the value of the conformer's BODY dial is changed just the same way.  By itself, that doesn't do anything, but then in the conformer's lHand (and as many other body parts as needed, but I'll just show one here), there is this targetGeom parameter (a channel that represents a morph target):

targetGeom JCMThumbBulgeL
{
 name JCMThumbBulgeL
 initValue 0
 hidden 0
 forceLimits 0
 min -100000
 max 100000
 trackingScale 0.02
 keys
 {
  static 0
  k 0 0
 }
 interpStyleLocked 0
 valueOpDeltaAdd
 Figure 1
 BODY:1
 JCMThumbBulgeL
 deltaAddDelta 1
 indexes 201
 numbDeltas 1290
 deltas
 {
  ((MORPH DATA GOES HERE))
 }
 blendType 0
}

...which causes the targetGeom dial on the conformer's lHand to be driven by the parameter dial on the conformer's BODY.  Even though both entries in the conformer list "Figure 1" as their master parameter, the dial on the conformer's BODY is actually driven by the conform target's (M4's) lHand; so when the M4's lHand JCMThumbBulgeL dial changes (however it gets changed, presumably by bending the thumb) this causes the conformer's BODY JCMThumbBulgeL dial to change, which causes the conformer's lHand JCMThumbBulgeL dial (and other body parts with the same code) to change.

This doesn't make a lot of sense, and it originally was not intended behavior and wasn't supported at all by e-Frontier/Smith Micro, but it works pretty consistently.  For many years this kind of thing was called "crosstalk" or "ERC".  All those other articles explain it much more clearly, take your time with reading them and you'll get it.

My Freebies


pjz99 ( ) posted Wed, 17 November 2010 at 6:49 AM · edited Wed, 17 November 2010 at 6:49 AM

Important note:  If you have this kind of "crosstalk" code in a figure, and you load the figure into Poser, and then re-save the figure to the library, it breaks.  All this stuff has to be added outside of Poser, and once it's configured correctly, you have to be careful not to re-save your figure and trash it.  This is one of the things that makes Poser content creation extremely tedious and very very hard.

My Freebies


lesbentley ( ) posted Wed, 17 November 2010 at 7:16 PM · edited Wed, 17 November 2010 at 7:19 PM

I just got home after a long session in the pub, so am probaly not talking sense, but the main point that people seem to miss in super conforming is the figure number.

                   valueOpDeltaAdd
                                Figure
                                SomeActor
                                SomeChannel
                        deltaAddDelta 1.000000

The above is super conforming. valueOpDeltaAdd Figure 1 SomeActor:1 SomeChannel deltaAddDelta 1.000000

The above is not super conforming. The point is that, if you specify the figure number as "SomeActor:1", Poser respects the ":1", and slaves to the figure that uses that number! For super conforming you need to leave the figure number out of the code. If you do that, Poser will use the figure number of the figure that is selected at the time you load the conformer. "SomeActor:1" is absolute, and Poser respects the figure number, but you don't want that in a super conformer. It may work some times, but not all the time. You need to drop the figure number, so that Poser will use the figure number of the figure that is selected at the time you load the conformer.

The same applies when you are using a pose (pz2) file. You should always leave the fiure number out of the slaving code.


pjz99 ( ) posted Wed, 17 November 2010 at 7:38 PM

Hmm, I dunno what to tell you, I have put out a few dozen conformers (free and commercial) written that way for superconforming and JCM, with Figure 1/SomeActor:1, and as long as the conform target is selected before the conformer is loaded, it has always worked.  Nobody has ever reported a problem to me or to my brokerages either.  This is through a period of a couple of years of open use now.

My Freebies


pjz99 ( ) posted Wed, 17 November 2010 at 9:06 PM

file_461763.jpg

Hmm nope, I dunno what to tell you, this worked in P8... (stock, unmodified V4.2, the second-loaded one on the right)...

My Freebies


pjz99 ( ) posted Wed, 17 November 2010 at 9:07 PM

file_461764.jpg

and P7 too.

My Freebies


kyhighlander59 ( ) posted Wed, 17 November 2010 at 9:09 PM

P7 and P8 solved the crosstalk problem, so you will have it in P6 but not any later version.


pjz99 ( ) posted Wed, 17 November 2010 at 9:14 PM

Ah that must be what's different.  I gave up on trying to support versions of Poser I don't even have, I just worry about P7 and later (and really I'd just as soon quit worrying about P7 too).

My Freebies


kyhighlander59 ( ) posted Wed, 17 November 2010 at 9:24 PM

Yeah, my first products went back to P4, you had to include RSR, or whatever they are called, images as well as PNG thumbnails. Lot of other pains as well. Had a customer service problem with a lady using my tongue morphs with two V4's, the poses were crosstalking and she couldn't figure it out. I hit my head against the wall until I remembered Crosstalk was fixed in P7 or P8 and all I had installed was P8 and PP2010. She was using P5. That is about 15 year old tech. 


ice-boy ( ) posted Thu, 18 November 2010 at 3:44 AM

Quote - Ah that must be what's different.  I gave up on trying to support versions of Poser I don't even have, I just worry about P7 and later (and really I'd just as soon quit worrying about P7 too).

it makes me so angry when i upload some simple low poly conforming clothes for M4 and then for 1 week i get mails how it doesnt work in poser 4 or 6.  

WTF is this ? a joke? in 2010 someone wants me to support a 10 year old software? this is an insult.

 


kyhighlander59 ( ) posted Thu, 18 November 2010 at 5:04 AM

P5 was a free download a couple years ago so you'll get a lot of call for support for P5.


lesbentley ( ) posted Thu, 18 November 2010 at 9:38 AM

Quote - Hmm, I dunno what to tell you, I have put out a few dozen conformers (free and commercial) written that way for superconforming and JCM, with Figure 1/SomeActor:1, and as long as the conform target is selected before the conformer is loaded, it has always worked.

pjz99, perhaps I was wrong. I just did some experiments in P6. Using a figure number of ":2" for figure, but using ":1" in the slaving code, it did indeed seem to work fine for super-conforming in P6. I figured out how to do super-conforming in my P4 days, and as it always worked the way I did it, I just stuck with that method. If I remember correctly, Nerd of Nerd3D was the first person to discover super-conforming. If you look in the BODY actor of his free "Ribbon Dress V4.cr2" you will see that the super-conforming channels do not use a figure number, eg:

                   valueOpDeltaAdd
                        ConformingTarget
                        BODY
                        FBMAmazon
                        deltaAddDelta 1.000000

In that case, it is a valueParm channel in the conformer that is being slaved to a channel in the character, but the principle is the same.

I don't know how your method works in earlier versions of Poser, I suspect it might fall down in P4 under some circumstances, but it seems to work OK in P6 and above, so I see no reason for you to change, and it looks like I was mistaken to say that you cold not use a figure number in the slaving code. Personally I shall continue to drop the figure number, as it is what I am used to, and that also works.


lesbentley ( ) posted Thu, 18 November 2010 at 10:02 AM

Quote - P7 and P8 solved the crosstalk problem, so you will have it in P6 but not any later version.

If I remember correctly, the crosstalk problem was solved in P5. P6 made some improvements on the way slaving works, specifically there used to be refresh problems when the master channel was more that one step below the slave channel in the hierarchy. This seems to have been fixed in P6, though you may still need to move the cursor into the document window for the refresh to happen.


pjz99 ( ) posted Thu, 18 November 2010 at 12:36 PM

Content Advisory! This message contains profanity

The stuff is so much work to put in by hand that I'd just as soon let automation do it anyway.  I've done it enough to get a grip on how it behaves, but holy crap it's painful, especially with a plain text editor.  You can't safely search/replace if you have a problem, that might trash up your conformer's body part names everywhere.  Really kind of a huge pain in the ass.

My Freebies


kyhighlander59 ( ) posted Thu, 18 November 2010 at 5:30 PM

No there is still crosstalk in P6, when I did the CS call from the lady with P5 I then went back and checked it in P6 which I still have and was able to duplicate her problem.


lesbentley ( ) posted Thu, 18 November 2010 at 7:12 PM

Quote - No there is still crosstalk in P6, when I did the CS call from the lady with P5 I then went back and checked it in P6 which I still have and was able to duplicate her problem.

Don't mean to be rude or disrespectful, but I will need a bit more convincing before I accept the above statement as true. As far as I am aware crosstalk was cured in P5, and I have never seen any evidence to the contrary.

Could you give more details, or provide an example where this happens?


kyhighlander59 ( ) posted Thu, 18 November 2010 at 7:20 PM

I loaded 2 Vickys, put the tongues in both and when using the poses both tongues posed, not just the selected one. in P8 it didn't do this.

I don't have a horse in the race so believe what you like.


lesbentley ( ) posted Thu, 18 November 2010 at 7:45 PM

OK, you have got me scratching my head, but if that is what happened, then it's what happened.


Terrymcg ( ) posted Thu, 18 November 2010 at 9:46 PM

 Thank you so much for this info. I've been searching for info on JCM's and been trying hard  to understand them, so all of this is very  much appreciated.

 

D'oh! Why do things that happen to stupid people keep happening to me?


lesbentley ( ) posted Fri, 19 November 2010 at 2:20 PM

file_461865.TXT

To get back to ice-boy's original question.

Quote - i would like to add some folding when i move my conforming pants.i read somewhere that this is called conforming morphs. so for example when i bend the leg an extra morph would move.i would like to make the folds by hand.

so my question now is if there are any detailed tutorials on this?

Attached above is a zip containing simple figures that demonstrate the way I do super conforming. You will need to loose the ".TXT" part of the file extension in order to use the file.

The "Conformer_A.cr2" file uses normal super-conforming, with a morph in the conformer slaved to a morph in the character. In the "Conformer_B.cr2" the morphs are slaved to rotations of the character's lThigh actor.

Full instructions are contained in the zip.


amy_aimei ( ) posted Sat, 20 November 2010 at 8:50 PM

lesbentley is really good at JCM!

Quote - i noticed that when i move the leg the morph is moving. but when i comfort the pants to M4 then its not moving.

 

so do i need to writte Michael 4 where it says ''Figure?

ice-boy, show us your JCM code, we will be able to figure it out.


Privacy Notice

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.