Poser Content Developers



  • Is there some sort of online community for Poser Content Developers? I've tried various search engines and can't find anything useful. An index lists of how-to's so as to not bother people with question that have been asked and answered. Forums for communication.

    In developing something good (stuff for others to use rather than something for me for a single image), I come across questions that have to have been encountered (for decades) by others.

    Is there no way to reverse a morph onto a mirrored body part? For instance, all the JCMs for rShldr would work just find on lShldr. There is the mirror (not reverse) which is not quite there. Plus, it only works on a single actor. I don't know how to reverse AND apply to mirrored other part.



  • One way to reverse, on a single part (ie: hip), is to split Morph (M) into ML and MR (isolating L and R), then mirror each of those (mML and mMR). Then recombine those mML and mMR into a single morph, yielding a mirrored Morph (mM). No? Possible in scripting?



  • Uhg. Winter rain. Pups un-walked. Brain hurts...

    Can make Poser crash, instantly, every time by trying to split one of the JCMs at the body level. Segfault 11 EXC_BAD_ACCESS. Grrrrrr.


  • Poser Ambassadors

    If the figure's mesh is symmetrical then mirroring the morph via the morphing brush tool's menu should work. But the mesh has to be 100% symmetrical for it to work perfectly - which is rarely the case.
    Also, I believe there was a bug that prevented mirroring some things from right to left, but it worked fine left to right. I'm not sure if that bug was ever resolved as I've been working left to right for so long that it's just become nature for me. And I create all my morphs in zbrush so I rarely ever fight with the morphing brush inside Poser.

    As for a creator's forum, unfortunately I don't know of any - at least none that aren't by invite only. Creators tend to like to keep their secrets and share with a chosen few. I've noticed that's been a running theme for as long as I've been Posering. So the rest of us who aren't in the cliques just have to figure it out ourselves via trial and error and pick up bits of info along the way when we can.


  • Poser Ambassadors

    @thoennes Several vendors pops in to the Poser Lounge chat on more or less a daily basis. Might wanna check it out.



  • @thoennes Admittedly, it's not really one of the categories in my directory, so I never really thought to look. I will say though that generally, I've found that those types of forums do exist for the type of modeling software you're using, like Blender, Sculptris and Maya. I will add though, that from what I've read in the past, Poser and Studio aren't considered in high regard when mentioned by name. That may have changed over the years, I don't keep up with them, except for Blender.


  • Poser Ambassadors

    As far as I know, there is no db for tips and tricks in Poser or Poser related procedures.
    There is a lot of information out there, but always "hidden" in forums or chat rooms.

    Forums have a certain "search possibility", but chat rooms go with the flow.
    Before you know it, your question and answer is pages down the road, "over written" by the mandatory "hi's" and "how are you doing today's".

    Example:
    BB is a walking Material room specialist who gives tons of examples and "how to do"s", in all forums he participates in. And if you are not fast enough for taking the required screengrabs, you miss half of them.
    And that's just the material room.

    Mirroring:
    Ach, that's an issue.
    Not so much because of Poser, but many figures have "mirror" issues, and not only in the mesh but also in the magnets, the JCM's, but also in the order of rotation of some bones. (Many figures have internally rotation order issues that prevent proper transfer from one side to the other)

    The obj file mesh AND the complete cr2 structure have to be symmetrical for mirroring to work properly.

    Single and multiple actors.
    If the obj and cr2 are completely symmetrical JCM's can span multiple actors without problems.
    But in most cases, (if it is to improve the rigging) it is far better to repaint the Weight and BOTH Bulge maps.
    The possibilities and capabilities of Bulge maps are mostly forgotten.

    Best regards all, and have a nice day.


  • Poser Ambassadors

    See here how to create a biceps movement when bending the forearm by repainting the bulge map.


    And yes, these mirror over with Figure => Rig Symmetry
    Best regards, Tony



  • @thoennes apart from the existing suggestions in this thread, mirroring morphs has been addressed quite a few times. Here's an example I based on one of Ockham's python scripts:

    # MirrorMorphs.py
    # Based on MorphMirror2 by Ockham (David G Drumright)
    #
    # v1.0	20171013	Mirror the morphs whose chiral prefix is listed in pNames ( with suffix 'R' or 'L' ) and whose actors'
    #					master/slave pairs are defined in the dict dest = { master : slave }
    ########################################################################################################################
    
    version = '1.0'
    epsilon = 0.0001
    
    import poser
    
    scene = poser.Scene()
    her = scene.CurrentFigure()
    rThigh = her.Actor( 'rThigh' )
    rShin = her.Actor( 'rShin' )
    lThigh = her.Actor( 'lThigh' )
    lShin = her.Actor( 'lShin' )
    pNames = [ 'JCMKneeCreaseOuter', 'JCMKneeBulgeOuter' ]
    dest = { rThigh : lThigh, rShin : lShin }
    for sActor in dest.keys():
    	sGeom = sActor.Geometry()
    	dActor = dest[ sActor ]
    	dGeom = dActor.Geometry()
    	for pName in pNames:
    		spName = pName + 'R'
    		dpName = pName + 'L'
    		sParm = sActor.Parameter( spName )
    		dParm = dActor.Parameter( dpName )
    		if dParm is None: # Did not exist
    			dActor.SpawnTargetFromGeometry( dGeom, dpName )
    			dParm = dActor.Parameter( dpName )
    		for vIdx in xrange( sGeom.NumVertices() ):
    			sVert = sGeom.Vertex( vIdx )
    			dx = dy = dz = None
    			try:
    				( dx, dy, dz ) = sParm.MorphTargetDelta( vIdx )
    			except:
    				pass
    			if dx or dy or dz:
    				for dvIdx in xrange( dGeom.NumVertices() ):
    					dVert = dGeom.Vertex( dvIdx )
    					sx = sVert.X()
    					sy = sVert.Y()
    					sz = sVert.Z()
    					dvx = dVert.X()
    					dvy = dVert.Y()
    					dvz = dVert.Z()
    					if abs( dvx+sx ) < epsilon:
    						if abs( dvy-sy ) < epsilon:
    							if abs( dvz-sz ) < epsilon:
    								dParm.SetMorphTargetDelta( dvIdx, -dx, dy, dz )
    else:
    	scene.DrawAll()
    

    Its important feature is that it uses a definable proximity sensor "epsilon" for how closely mirrored vertices must be to be correctly identified. This can overcome some mesh problems where opposite sides are close but not perfectly mirrored. Increasing epsilon might allow mirroring on imperfect figures.

    Please note that the script is not at all generic, and should be modified to suit your specific morph/body-part requirements.



  • There is ONE Poser creator's website I can direct you to. Nerd 3D, aka Chuck Taylor. Actually I'm surprised it's still up as I discovered it some years ago. He covers quite a few subjects.
    http://www.nerd3d.com/