The future of Poser is the Fitting Room



  • @erogenesis said in The future of Poser is the Fitting Room:

    But what about these groupings? This discussion of groupings and unimesh figures aside (because these groupings do need to go anyway), the only reason that these groupings are of any importance are because once you change them, the morphs die.

    Actually it goes deeper than that at present and is the single greatest barrier to creating refits in the Fitting Room.

    Here's a set of capris pants that I converted from V4 to a reshaped Pauline (don't mind her bends they are still being worked on, I just whipped this up quick to show you something):

    0_1502560751040_converted.png

    Looks good on the surface, right? So far so good, this is easy! 8-)
    Well, until you look under the hood. The original V4 object is shown at the bottom. The converted object is shown at the top. Notice the different vertex count. If all Poser did was regroup the OBJ it MIGHT be a different story. But you'll notice that the converted OBJ has more vertices.

    And the highlighted polygons show why. In the original OBJ, everything but the waistband was welded together. Because if you double-click the OBJ in Modo, everything but the waistband gets selected.

    However, if you double-click a portion of the leg in the CONVERTED object, the only polygons that get selected are those that belong to the group that you clicked on. This means that the groups aren't welded, which is why you have the extra verts in the converted OBJ. And when you start trying to morph that OBJ in an external program you'll get splits at the group seams.

    0_1502561042864_compare.png

    So there are a couple ways to fix this. Either fix the way that the Setup Room and Fitting Room save the object (keep original vertex count and vertex order), or do away with grouping requirements entirely. The question is, how will the latter solution work with existing/legacy content?

    Again I want to stress I am NOT trying to deride your ideas. Quite the opposite. I totally get what you're saying.



  • @Deecey AHA! Now we're talking! I understand this issue and yep once you start welding you change the vertex order and count and... basically just mayhem. ThHis presents challenges yes. But there are still ways forward.

    Challenges would be what to weld. You wouldn't wanna weld buttons to the cloth for example, or perhaps particular seams. So there needs to be some pre-definition going on.

    Morphs can still be kept, but that would either involve a phone call to Color curvature, or changes to Poser's core application. Instead of calling morphs from the level of the rig and split up bdyparts, call it from before the rig: the welded base mesh. I can load morphs into the base mesh in a scene in poser and fart around with the groupings, but the morph will still work. The trouble is when that vertex count dies, like you show.

    Is that what you mean?


  • Poser Ambassadors

    @erogenesis
    Question : did you use the autogroup function in your demo?



  • @erogenesis said in The future of Poser is the Fitting Room:

    @Deecey AHA! Now we're talking! I understand this issue and yep once you start welding you change the vertex order and count and... basically just mayhem. ThHis presents challenges yes. But there are still ways forward.

    Challenges would be what to weld. You wouldn't wanna weld buttons to the cloth for example, or perhaps particular seams. So there needs to be some pre-definition going on.

    Morphs can still be kept, but that would either involve a phone call to Color curvature, or changes to Poser's core application. Instead of calling morphs from the level of the rig and split up bdyparts, call it from before the rig: the welded base mesh. I can load morphs into the base mesh in a scene in poser and fart around with the groupings, but the morph will still work. The trouble is when that vertex count dies, like you show.

    Is that what you mean?

    Nope, what I am saying is that when Poser saves the new CR2 it saves a new OBJ that has a different vertex count because it is split apart by groups. and that presents challenges when trying to work with the new OBJ in other modeling software.



  • @vilters said in The future of Poser is the Fitting Room:

    @erogenesis
    Question : did you use the autogroup function in your demo?

    Both yes! Otherwise the WM and JCMs won't transfer properly.

    @Deecey said in The future of Poser is the Fitting Room:

    Is that what you mean?

    Nope, what I am saying is that when Poser saves the new CR2 it saves a new OBJ that has a different vertex count because it is split apart by groups. and that presents challenges when trying to work with the new OBJ in other modeling software.

    That that's kind of what I meant. The moment you start farting around with the vertex count, it causes all sorts of problems. Like Vilters is probably hinting above, JCMs and WM need to be re-interpreted. This needs sorting out somehow because its a pain in the a**. Either find a way to maintain the morphs and WM despite this re-organization, or don't split up the mesh yet again.


  • Poser Ambassadors

    @Deecey

    Correct Dee.

    The fitting (and setup room) have 2 main problems.

    • Tha autogroup function tries to weld rThigh and lThigh together. An absolute NO-NO just like rCollar and lCollar can not be welded together. RESULT = a weld crack between rTigh, hip, lThigh.
      Using the current autogroup function is a No-Go.
      This has been reported over and over to SM.

    • When saved, the obj file is split into individual vertex groups. => You always have to replace the Fitting room saved obj with a properly grouped and welded one.

    Poser, up to and INCLUDING Poser 11 is UNABLE to save a rigged, properly grouped and welded obj file.

    My mouse needs replacement. That's how many times I wrote the above already.

    • FORGET the AUTOGROUP function as if it did not exist. Period.
    • Always replace the Setup/fitting room saved obj files with properly grouped and welded obj files


  • @vilters autogroup only exists because poser rigs needs those groups to work like the host mesh was designed. If they could drop that, then they will be one complexity down. But for now, autogroup is a godsend for me. Its not perfect, sure, not recommended for professional vendors, but it does give some results for quick fixes. Not professional but I can work with it mostly. Yes you need to adjust the hips and thighs groups like you say, but it saves me several minutes of doing it manually. But still, ideally, groupings need to go, at least their importance. They can still serve as handles and placeholders (to parent props on). My Comic figure has boxer shorts for hips and never had the thigh group problem, I regret not adhering to that to be honest...!

    And yep I also sometimes replace the fitting room OBJ with my own welded version. That is useful sometimes.


  • Poser Ambassadors

    @erogenesis
    Tja, I asked my question because the crack between rThigh and lThigh was clearly visible.

    The autogroup "as is", is only good enough for quick and home alone results.

    Of course the Poser exported obj has more vertices.

    Each vertex group is saved as an individual and complete group.
    All verts at all welds have a double. It is as simple as that.
    And even then it messes up the "weld" trying to weld rThigh to lThigh.
    A technical impossibility.



  • @vilters

    There is a way around it, kinda sorta.

    You can use the Fitting Room to create the fit. But then, INSTEAD of pressing the "Create Figure" button in the Fitting Room, press the "Spawn Prop" button.

    When you return to the Pose Room, you will have a refitted OBJ file that has NO GROUPS, and which will have the same vertex count and vertex order as the original OBJ file. Export this prop from Poser, and add the groups externally. Then import that new regrouped OBJ into Poser and use the Setup Room or Fitting Room to rig the CR2 as normal.

    BUT ... when you rig this time, DO NOT choose Auto Group. Only copy skeleton and weights to the new OBJ file. Save to the Library. Edit the CR2 that Poser creates to use your good welded OBJ.

    Then load that edited CR2 into Poser and copy the morphs over.

    Yeah it's a pain, but it works.

    (EDIT: I might have spoken too soon. Vertex order might be hosed. Same vertex count, vertex order might be off. DANG!)


  • Poser Ambassadors

    @Deecey
    Yes Dee, that's what I have been doing since filing report 31615 (and related) starting some years ago.
    I even had a complete tutorial about that procedure at RDNA.

    Use the "fit" part, to fit an obj to a figure. (example pants)

    Then you can export a "fitted" still groupless obj from Poser.

    Then you could add the vertex groups, pockets, belts, buttons and all the rest to that "fitted obj".

    Then chase this upgraded obj through the fitting room, to only get the rig and save.
    Delete the Poser saved obj file, (as in my video4 in the Poser2Blender2Poser series on my YouTube channel.)

    Then edit that cr2 to the good obj file.

    Lots of work and a good workaround the Poser bugs.



  • @vilters said in The future of Poser is the Fitting Room:

    @Deecey
    Yes Dee, that's what I have been doing since filing report 31615 (and related) starting some years ago.
    I even had a complete tutorial about that procedure at RDNA.

    Use the "fit" part, to fit an obj to a figure. (example pants)

    Then you can export a "fitted" still groupless obj from Poser.

    Then you could add the vertex groups, pockets, belts, buttons and all the rest to that "fitted obj".

    Then chase this upgraded obj through the fitting room, to only get the rig and save.
    Delete the Poser saved obj file, (as in my video4 in the Poser2Blender2Poser series on my YouTube channel.)

    Then edit that cr2 to the good obj file.

    Lots of work and a good workaround the Poser bugs.

    I have to jump through 2 or 3 programs to recover vertex order. I have a method down but it's not something that will be easily accessible to the average user because it involves 2 or 3 programs that most don't have, unfortunately. But yeah, this vertex count thing is the biggest challenge with Poser content dev, and I will be a very happy camper if it is addressed in some way.



  • I think there could be a way out of this for Poser, but it might involve some serious alterations to Poser's internal infrastructure. I have changed the base shape of figures millions of times using the base mesh, inside of Poser! I've also changed the grouping in the base mesh a few times and still alternative shapes of that same mesh will still work as morphs, also inside of Poser. Groupings in a mesh can be anything, and the shape too, as long as the vertex order is not changed. All these issues come in when Poser starts chopping the mesh up into pieces and doubling vertices at the border. This is why I propose that Poser stats working with the base mesh as is, and the PMD addresses only the base mesh. All morphs become pre-transform by default. The rig start working on the mesh after all that, and if it needs to split it up, sure whatever, but that won't work either because if you want to make a morph, you'd have to go back to the base shape, and that won't work for JCMs.



  • @erogenesis said in The future of Poser is the Fitting Room:

    I think there could be a way out of this for Poser, but it might involve some serious alterations to Poser's internal infrastructure. I have changed the base shape of figures millions of times using the base mesh. I've also changed the grouping in the base mesh a few times and still alternative shapes of that same mesh will still work as morphs. Groupings in a mesh can be anything, and the shape too, as long as the vertex order is not changed. All these issues come in when Poser starts chopping the mesh up into pieces and doubling vertices at the border. This is why I propose that Poser stats working with the base mesh as is, and the PMD addresses only the base mesh. All morphs become pre-transform by default. The rig start working on the mesh after all that, and if it needs to split it up, sure whatever, but that won't work either because if you want to make a morph, you'd have to go back to the base shape, and that won't work for JCMs.

    Probably true, and I agree. The key will be how to implement it while maintaining compatibility with legacy content. As I've said before I'm not a programmer but I suspect if that were an easy fix it would have been done long ago.


  • Poser Ambassadors

    @Deecey
    It is easy => Step by step:

    Build or convert a new or existing clothing obj to single vertex group prop. (hip)

    Open fitting room, load prop and load figure.

    Do the "fit". => ONLY the fit. use the "fit" as some sort of controllable schrinkwrap.
    Export as a fitted obj prop.

    RESULT => A single group clothing prop that "fits" over your figure.

    Load that prop in Blender.
    Add pockets, add belt, and gunholster or whatever you desire. Don't worry about vertex order. Just add what you need.
    Now cut up your prop into vertex groups. (Use colored mat zones to do so, then transfer them to vertex groups with polygons selection.)

    Now your pants are finished and vertex grouped. => Save as Pants-GOLD.obj

    Open Poser, and load Pants-Gold and your figure and do the fitting room session.
    Select the bones to transfer, DO NOT DO A FITTING , it is not required any more, do NOT use autogroup, and save out your pants as : Pants-Finished.

    Poser will save a Pants-Finished cr2 and a Pants-Finished obj file.

    DELETE the Pants-Finished obj file that Poser just saved for you=> It is unwelded.
    RENAME Pants-GOLD.obj to Pants-Finished.obj.

    load and conform to your figure. DONE ! ! ! ! ! !



  • @Deecey said in The future of Poser is the Fitting Room:

    Probably true, and I agree. The key will be how to implement it while maintaining compatibility with legacy content. As I've said before I'm not a programmer but I suspect if that were an easy fix it would have been done long ago.

    Yeah keeping legacy content working, particularly the unwelded stuff will be a challenge and that will require some serious interpretation algorithms.


  • Poser Ambassadors

    @erogenesis

    Simple : Follow the instruction set I just posted above.

    OK, one of these days , I"ll make a video tutorial. i have been doing this for years.



  • @vilters
    Yes but I am talking about fixing Poser so that these external fixes are no longer required. That, I suspect, is not a straightforward fix (but again, I am not a programmer, I don't know what would be involved). But I'll be glad to document it when it's fixed

    And I'll even bring the beer to the party. LMAO



  • @Deecey said in The future of Poser is the Fitting Room:

    But I'll be glad to document it when it's fixed LMAO

    And we all know you can! :D


  • Poser Ambassadors

    @Deecey

    Well, poser uses that internal "rewelding" of vertx groups at import thing. I think it comes originally from MAX some 20-25 years ago.
    That is what I call old tech, but Poser is build around that.

    Correcting that weld, unweld, and reweld code in Poser would take about a year.
    Both confirmed at the time by Steve and Charles and Larry, because that "system" is inside the core of the code. All else is build around it.

    Example : Yes, you can grow hair directly on the head or skin of a figure. But then what does Poser do when you save the figure/hair combination?
    Right, it cuts it up into vertex groups, breaking most of the rest with it. See how deep this goes?



  • @vilters said in The future of Poser is the Fitting Room:

    @Deecey

    Well, poser uses that internal "rewelding" of vertx groups at import thing. I think it comes originally from MAX some 20-25 years ago.
    That is what I call old tech, but Poser is build around that.

    Correcting that weld, unweld, and reweld code in Poser would take about a year.
    Both confirmed at the time by Steve and Charles and Larry, because that "system" is inside the core of the code. All else is build around it.

    Example : Yes, you can grow hair directly on the head or skin of a figure. But then what does Poser do when you save the figure/hair combination?
    Right, it cuts it up into vertex groups, breaking most of the rest with it. See how deep this goes?

    Yes exactly. A very hairy walk through the code will be necessary (no pun intended LOL). But so, so, so needed.

    Like I said I'll bring the beer to the party when it's fixed. 8-D