Tue, Nov 26, 12:33 AM CST

Renderosity Forums / Poser - OFFICIAL



Welcome to the Poser - OFFICIAL Forum

Forum Coordinators: RedPhantom

Poser - OFFICIAL F.A.Q (Last Updated: 2024 Nov 25 12:38 pm)



Subject: Packaging Morph Targets: INJ/REM Poses v. PMD Files - Pros And Cons?


3dcheapskate ( ) posted Sun, 19 October 2014 at 10:18 PM · edited Sun, 10 November 2024 at 11:29 AM

I've been playing with the DAZ Milllennium Big Cat's head in Blender trying to create a "Proper Tiger Snarl" morph, and I've been getting some promising results. I've also read up a bit on two ways of packaging Morph Targets:

**1) Nerd3D's "**Poser 6 PMD Injection" - http://www.nerd3d.com/modules.php?name=Content&pa=showpage&pid=13

(I haven't yet tried this method since there's a lot of information to digest. It may actually answer many of the questions that are slowly forming in my head)

2) "How to Make INJ & REM Poses for Poser Custom Character Face Morphs" - http://www.acrionx.com/3d_modelling_poser_tutorials/?pg=how_to_make_INJ_REM_Pose_files_for_Poser_custom_character_face_morphs

This method's very straightforward - I had working V4 INJ/REM pose files within about 15 minutes of finding these instructions. The example uses V4 and plugs the morph into the first "Community INJection Channel" (PBMCC_01).


As far as I know DAZ Studio can't use PMD files, whereas the second option works in both Poser and DAZ Studio (and I'm aware that in Poser 6 the figures need to be in the default Poser 6 runtime for any ExP INJ/REM stuff to work).

Nerd3D's instructions mention that PMD is much faster than ExP (and from Poser 8/9 onwards far more reliable than it used to be!), and is quite enlightening (see the bit entitled "Popular misconceptions about PMD")

What about other pros and cons for the two methods?

~~~~~~~~~~~~~~~

Regarding the second method:

- what if you want to load several different 'community' morphs and they all use the same PBMCC_01 channel?

 

TIA,

Pete

 

 

 


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate ( ) posted Sun, 19 October 2014 at 10:37 PM

(Just spotted Anthony Appleyard's "INJ and REM poses" query posted yesterday - http://www.renderosity.com/mod/forumpro/showthread.php?thread_id=2885571 )


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate ( ) posted Sun, 19 October 2014 at 11:39 PM · edited Sun, 19 October 2014 at 11:48 PM

The Nerd3D method is even simpler! You only need to enable "external binary morph targets" long enough to create a PMD file with your morph data, then you can turn external binary morph targets back off. the PMD+/PMD- pose files don't need it on to work.

PMD+.pz2

{
version
{
number 6
}
injectPMDFileMorphs "Whatever Morph.pmd"
}

PMD-.pz2

{
      version
     {
          number 6
     }
     removePMDFileMorphs "Whatever Morph.pmd"
     actor head:1
     {
          channels
          {
               valueParm Whatever Morph
               {
                    hidden 1
               }
          }
     }
}

Two things I noticed that were different from a user's point of view:

  1. After applying the PMD+.pz2 pose the morph is there but it's set to zero and you have to manually set it to 1.

  2. With ExP style INJ/REM poses you can inject, remove, inject, remove, etc the same morph and it appears and disappears. With this method you do PMD+, PMD-, and if you do PMD+ again the morph dial doesn't reappear. I guess that's because it was never actually deleted, just hidden? So I tried just unhiding it from the PMD+.pz2 but it didn't seem to have any effect?

This version of PMD+.pz2 didn't make any difference

{
    version
    {
    number 6
    }
    injectPMDFileMorphs "Whatever Morph.pmd"
     actor head:1
     {
          channels
          {
               valueParm Whatever Morph
               {
                    hidden 0
               }
          }
     }
}


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



Jaager ( ) posted Mon, 20 October 2014 at 2:12 AM · edited Mon, 20 October 2014 at 2:13 AM

The method is not the reason a morph comes in at ZERO.

The reason that a PMD INJ.pz2 would load a morph set to zero is that either

No key data is defined in the pose and the Poser fill in default is= k 0 0

or

the key data is = k 0 0 in the pose.

If you want it to come in ON, then  have the INJ.pz2 set it = k 0 1

Doing this can have unintended consequences. If the INJ.pz2 is providing several morphs that are not related  and they are all set to

k 0 1 - the result could be "interesting".

On the other hand, for Poser characters that use INJ/REM (which is essentially all of them) I spawn the dial values into a single morph for each group and a master in BODY.  Save just the new character morphs into their own PMD, and have an INJ/REM pose to insert them set to 1.0 using the master dial. 

The way I know to do this is to use Binary Morph Editor by D3D.  It allows control of just what is in a PMD file and will write an INJ pz2 (and REM pz2).  With options selected, it will write for a master in BODY or where you choose, set the initial value to your choice,  and assign it to a group (but not a group tree as far as I know).  I just text edit in whatever else I want.


3dcheapskate ( ) posted Mon, 20 October 2014 at 3:31 AM · edited Mon, 20 October 2014 at 3:34 AM

Thanks - I should have spotted that! Since I'm only applying a single independent morph just setting the key is okay:

This version of PMD+.pz2 loads my single morph set to 1.0:

{
    version
    {
        number 6
    }
    injectPMDFileMorphs "Whatever Morph.pmd"
    actor head:1
    {
        channels
        {
            valueParm Whatever Morph
            {
                keys
                {
                    k 0 1
                }
            }
        }
    }
}

 

But the other problem (running PMD+.pz2, PMD-.pz2, and then PMD+.pz2 again) still occurs - I know it's not something many people are likely to do, but I do it!

When I run PMD+.pz2 the second time the morph is correctly applied but no dial appears. However, a load of other working morphs appear - and they all disappear when I run PMD-.pz2 a second time. (I'm using a V4 head morph for testing, and my morph is in the "Morphs" group. When I rerun PMD+.pz2 the second time the morphs that appear in this group include FHMJohn/Paul/George/Ringo, etc - checking my PMD file in a binary editor I can see that I've accidentally included a load of these morphs)


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



3dcheapskate ( ) posted Mon, 20 October 2014 at 4:30 AM · edited Mon, 20 October 2014 at 4:35 AM

Clearing out the PMD file (or rather recreating it properly) seems to resolve the problem of the PMD+.pz2 not working when run a second time.

I needed to start from a genuine V4 Blank CR2. Found brief easy-to-follow video instructions from DarkEdgeDesign here BlankCR2.mp4 http://www.youtube.com/watch?v=MBYugBlmVQw - basically load your figure into Poser, turn off IK, zero rotations (Joint Editor), save figure as 'XYZ Blank', open the CR2 in Morph Manager, delete all morphs, resave over 'XYZ Blank.cr2', edit the CR2 to remove the 'inkychain' sections and resave over 'XYZ Blank.cr2'. That's it.

Then use Nerd3D's instructions to create the PMD file and the PMD+/PMD-.pz2 files.


The procedure (at least for a single independent morph) seems to be so simple that there's no point in pondering which is better. In the time it would take to come to a decision you can create both the INJ/REM.pz2 and PMD+/PMD-.pz2 versions and let the user decide.


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



Jaager ( ) posted Mon, 20 October 2014 at 4:13 PM

This is for preparing your own PMD INJ pose sets:

If it is V4, 

  1. there is at least one BlankV4 freeby out there.

  2. You can start with the Victoria 4.2.cr2 in the original DAZ product. In a Poser file editor:

Delete out the readscript lines

all magnets,  the bodyMorphs section,  any JCM channels

For most characters, shapes, and morphs an easier to manage CR2 =  remove the geometry calls and actor sections for the fingers and tongue.  That is 37 fewer actors to deal with that most vendors do not deal with.


3dcheapskate ( ) posted Tue, 21 October 2014 at 12:49 AM

Thanks again.

  1. I found DavidGBs Blank V4/M4 CR2s via this "M4 Blank CR2 for Content Development working link?" DAZ forum thread -  http://www.daz3d.com/forums/viewthread/13093/#190170

  2. Using the DarkEdgeDesign procedure leaves 'actor bodyMorphs', many 'magnetDeformerProp' (plus loads of 'baseProp'and 'sphereZoneProp'), and loads of 'parmNode JCM...' lines in. None of these are in DavidGB's blank (neither is the goalCenterOfMass stuff).

Removing unnecessary body parts also seems a sensible move. If I'm just doing V4 head morphs I guess the arms and legs can go too - just keep the BODY, hip, head, and bits in between (abdomen and chest).

 

Out of interest I tried Nerd3D's PMD file creation using three different V4 blanks as a starting point (DavidGBs blank, my DIY blank from DarkEdgeDesign's procedure, and DavidGB's blank with hands, arms, and legs stripped out) and compared the resulting PMDs using Winmerge.

All three are identical.


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



Jaager ( ) posted Tue, 21 October 2014 at 2:00 AM

As far as I can tell, actor bodyMorphs is a DS component. I can't see that Poser uses it at all.  I don't mess with DS, so I remove it.

The linkParm - I at first thought that it was DS, but in making up a Dawn Function CR2 (= movement,  expression, fix  - no shape morphs - a target for spawned character INJ.)

  I found master dials in BODY that did not have -valueOpDeltaAdd- data in the their slave targetGeom channels, so I think that linkParm are another way to do it.  Not sure what the advantages are over ERC code.

NetherWorks product Spawn 2014 (new version) is an excellent tool for consolidating a nest of shape morphs into one morph per group.  Not having fingers and tongue allows easier navigation in that program too.


RHaseltine ( ) posted Tue, 21 October 2014 at 8:20 AM

The bodyMorphs actor was added so that poser would correctly save FBMs - at the time (Poser 6, as I recall) settings on the Body were ignored in Poser-saved poses. linkParms are a simple 1:1 form of ERC, without the ability to add scaling or offsets that ERC offers. Bloodsong says, in Secrets of Figure Creation with Poser 5, that they are bi-directional, any change to either property affects the other, of which I wasn't aware; she also says that they can be unreliable.


3dcheapskate ( ) posted Wed, 22 October 2014 at 2:33 AM

Thanks again Jaager/Richard. I've got the Secrets of Figure Creation with Poser 5 book (good recommendation - even though it's old I've learnt a lot from it already) so I'll check that.

The last question in my OP was about multiple morphs using the same community injection channel, eg PBMCC_01. Yesterday I found http://www.rbtwhiz.com/rbtwhiz_deltaInjection.html   via the resources section on the book's CD and Rob mentions that it's the most recently injected morph that's 'remembered'. But if any of them use ERC you get into problems...


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



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.