The Mecha Sagittarius

HeraHera Posts: 1,958

Where can I find poses for this product? Mecha Sagittarius | Daz 3D

 

 

Comments

  • Matt_CastleMatt_Castle Posts: 2,632
    edited January 20
    I don't know of any. It's a niche standalone figure; it's hardly rare for things like that to have no add-ons.
    Post edited by Matt_Castle on
  • Can I make a suggestion?

    Take a look at the names of the bones in the figure. If they match the names of a more popular figure (eg V4 or G1 or Gx), then applying a pose to the figure part of the mecha saggitarius will still work, however, you may have to adjust some of the limbs afterwards if the zero bend positions are different. Also check the bone names of the horse section to see if they match an equine you have. If the names match, you could save some posing time there too by applying the equine pose to the mecha saggitarius.

    I accidentally found all this out when I selected the wrong figure and applied a V3 pose to G8F while intending to pose G8F to match some old V3 poses applied to a V3 character, and discovered that the G8F bones with the same name as V3 bones had pretty much the correct pose, and the ones that had different names were unaffected. (Then came the light bulb moment and I realised it was possible to transfer poses from one generation to the next with different bone names. A while later another happened, and I realised you can with a script transfer horse poses to a centaur as well as human poses - slow is what I am.)

    Regards,

    Richard

  • Matt_CastleMatt_Castle Posts: 2,632

    richardandtracy said:

    (I realised you can with a script transfer horse poses to a centaur as well as human poses - slow is what I am.)

    If you have a script for that, I certainly wouldn't mind having better access to the Horse poses on the centaurs.

  • richardandtracyrichardandtracy Posts: 5,803
    edited January 21
    Error
    Post edited by richardandtracy on
  • Will confess I don't. The reason being that I have the DAZ millenium horse & no other - my characters are even worse riders than I am.

    I've done a number of pose transfer scripts, and creating the script to do the job is not very hard, but it is a slog. I'll use my freebie V4 to G8F pose transfer script as an example. The script can be downloaded here: https://www.daz3d.com/forums/discussion/448391/v4-a4-pose-transfer-to-g8f

    Just a definition: Source character - the original character for the pose. Destination Character: The one you want to transfer the pose to. In the example I'm using the source is V4, the destination is G8F. To operate the script you need two characters. Apply the pose to the source character. Then run the script & select the source & destination characters. The destination will move to match the source character.

    To get the pose to be transferred, in effect you need to move the destination character into the source character's zero pose, then add the source pose onto that. There is a little complication in that with some generations there seems to be a little linkage between the feet & the shin (eg G2F) and the size of a degree of bend is slightly different between the generations (once again G2F is an oddity here). The destination figure has an offset value to get to the source zero, and then a source angular scale factor. This can be summarised as:

    Destination limb angle = Zero offset + Pose angle * scale factor.

    Sometimes the scale factor is -1 (eg V4 to G8F eyes) and sometimes the limb names are different. So, here is the script code for converting G8F's hip position to match V4's hip position:

    		//Hip
            //Set V4 skeleton to look at V4 Hip. Note the text case MUST be correct for every letter.
    		oNodeV4 = oSkeletonV4.findBoneByLabel("hip");
            //Set G8F skeleton to G8F's Hip. Note text case MUST be right
    		oNodeG8F = oSkeletonG8F.findBoneByLabel("Hip");
            //First, the whole hip translate (Translate is not needed for most bones)
            //Note the V4 name for the X Translate Label
    		oZRotCtrlV4 = oNodeV4.findPropertyByLabel("xTranslate");
    		nZRotV4 = oZRotCtrlV4.getValue();
            //Now set the correct destination property. The label is different between generations
    		oZRotCtrlG8F = oNodeG8F.findPropertyByLabel("X Translate");
            //Now set the G8F's translation value
    		oZRotCtrlG8F.setValue(nZRotV4);
            //That's the X Translate complete. Now to start on the Y Translate followed by Z Translate
    		oZRotCtrlV4 = oNodeV4.findPropertyByLabel("yTranslate");
    		nZRotV4 = oZRotCtrlV4.getValue();
    		oZRotCtrlG8F = oNodeG8F.findPropertyByLabel("Y Translate");
    		oZRotCtrlG8F.setValue(nZRotV4);
    		oZRotCtrlV4 = oNodeV4.findPropertyByLabel("zTranslate");
    		nZRotV4 = oZRotCtrlV4.getValue();
    		oZRotCtrlG8F = oNodeG8F.findPropertyByLabel("Z Translate");
    		oZRotCtrlG8F.setValue(nZRotV4);
    		oZRotCtrlV4 = oNodeV4.findPropertyByLabel("xRotate");
    		nZRotV4 = oZRotCtrlV4.getValue();
    		oZRotCtrlG8F = oNodeG8F.findPropertyByLabel("X Rotate");
    		oZRotCtrlG8F.setValue(nZRotV4);
    		oZRotCtrlV4 = oNodeV4.findPropertyByLabel("yRotate");
    		nZRotV4 = oZRotCtrlV4.getValue();
    		oZRotCtrlG8F = oNodeG8F.findPropertyByLabel("Y Rotate");
    		oZRotCtrlG8F.setValue(nZRotV4);
    		oZRotCtrlV4 = oNodeV4.findPropertyByLabel("zRotate");
    		nZRotV4 = oZRotCtrlV4.getValue();
    		oZRotCtrlG8F = oNodeG8F.findPropertyByLabel("Z Rotate");
    		oZRotCtrlG8F.setValue(nZRotV4);
    		oZRotCtrlV4 = oNodeV4.findPropertyByLabel("Scale (xyz)");
    		nZRotV4 = oZRotCtrlV4.getValue();
    		oZRotCtrlG8F = oNodeG8F.findPropertyByLabel("Scale");
    		oZRotCtrlG8F.setValue(nZRotV4);
    		oZRotCtrlV4 = oNodeV4.findPropertyByLabel("xScale");
    		nZRotV4 = oZRotCtrlV4.getValue();
    		oZRotCtrlG8F = oNodeG8F.findPropertyByLabel("X Scale");
    		oZRotCtrlG8F.setValue(nZRotV4);
    		oZRotCtrlV4 = oNodeV4.findPropertyByLabel("yScale");
    		nZRotV4 = oZRotCtrlV4.getValue();
    		oZRotCtrlG8F = oNodeG8F.findPropertyByLabel("Y Scale");
    		oZRotCtrlG8F.setValue(nZRotV4);
    		oZRotCtrlV4 = oNodeV4.findPropertyByLabel("zScale");
    		nZRotV4 = oZRotCtrlV4.getValue();
    		oZRotCtrlG8F = oNodeG8F.findPropertyByLabel("Z Scale");
    		oZRotCtrlG8F.setValue(nZRotV4);
    

    This is very simple, start at the hip, find all the properties that can be affected by the pose and step by step and build on it. This goes on in a similar manner for 2000 lines...

    OK, it's the brute ignorance & force method of programming, but it can work. To make it work for a Centaur, you'd have the appropriate equine as the source, and the centaur as the destination. If I had any idea of how many scripts I was going to do when I started, I'd have spent a bit extra thinking time to work out an ASCII text file of the source names & destination names and gone for it that way.

    In the case of V3 where there are some buttocks as well as a thigh, you need to add split out some of the buttock bent into the G8F pelvis and put the remainder on the thigh. Also, where 1 source bone maps onto two destination bones, (eg V4 abdomen onto G8F's Abdomen Lower and Abdomen Upper) then I tend to use half the destination bend on each, and that matches quite well.

    Hope this helps if you want to DIY.

    Regards,

    Richard

  • pwiecekpwiecek Posts: 1,582
    edited January 21

    This looks very similar to Hailey's Comet

    https://www.daz3d.com/hailey-s-comet

    Post edited by pwiecek on
  • pwiecekpwiecek Posts: 1,582

    Even more similar kitbash

    Cometaur.png
    480 x 640 - 177K
  • carrie58carrie58 Posts: 3,996

    Matt_Castle said:

    richardandtracy said:

    (I realised you can with a script transfer horse poses to a centaur as well as human poses - slow is what I am.)

    If you have a script for that, I certainly wouldn't mind having better access to the Horse poses on the centaurs.

     If you select the "Centuar Body" before applying the pose you can use any of the Horse 2 poses ,then you just apply human poses to the upper body......

Sign In or Register to comment.