Convert a figure to a prop



  • @fbs7 said in Convert a figure to a prop:

    @mr_phoenyxx said in Convert a figure to a prop:

    @fbs7 Yeah, I think this top just isn't going to work well. It's too bad really. I was hoping to use a cloth sim to drape it over the back of a chair. Make my renders look better and more realistic.

    You can use the Fitting Room to drape any prop or figure around using the Fitting Room; it's really awesome, as you can manipulate the figure/prop to do a lot of things - like fitting closely, smoothing, or bagging or falling off, or you can just move it around as you wish. As I like to say, one of the most wonderful pieces of software engineering I ever saw.

    And the Fitting Room doesn't care for any jabberwocking non-manifold-thingies

    As far as the fitting room cares, the mesh can be manifolding, non-manifolding, in-between-folding, non-folding, super-folding, etc...



  • @raven Thank you! :)



  • @fbs7 I have not had very much luck with the fitting room, even after following multiple step-by-step tutorials. Mind you that was with conforming clothing fitted to a person.



  • @anomalaus said in Convert a figure to a prop:

    @morkonan big problem with the current Poser Python interface is the absolute inability to create a new vertex group from Python. Cannot be done directly. The best you can do is write the current geometry out to a file manually and add in a dummy 'g NewGroupName' line, before reloading the geometry. The Grouping Tool can create new groups, but it has no Python API to initiate that function. You can create HairGroups for the Hair Room from python, but they're not vertex groups and can't be used with ordinary mesh geometries in Python.

    Interesting.

    Is it Snarlygribbly that did the sub-d script? (On a diff computer atm, can't check.) IIRC, it welds everything and turns it into one group.

    Is this creating a new vertice group within an existing object or any multiple groups at all? I know there are scripts that create geometry, but confess that I don't think they create more than one group. Then, there are scripts that make "chains" by copy/pasting a stored object or create a primitive and rename each one according to the bone its assigned to. Neither actually contradict anything you've written, btw.

    I'm no pythoner, but I assume that if one wanted to get around the limitations you speak of, one could take the operation "outside" of Poser and then bring it back in, but all by running a script from Poser's interface? Or, would one have to go through a manual export/import process to do that?



  • @morkonan the Python API offers the ability to do anything you want with existing groups and vertices in an object you've loaded. None of the sample scripts included with Poser which create geometry objects from scratch by adding the vertices to a new, empty geometry do anything with vertex groups because they can't. There is no way to tell Poser to add a new, empty group to the geometry so you can assign vertices to it. New materials? Yes. New vertex groups? No.

    Yes, @Snarlygribbly 's Subdivider does exactly that. It doesn't create groups, because there is no way to do that, and it didn't serve the purpose of the subdivider to preserve existing groups anyway. With new geometry, you don't actually need groups at all. The obj format groups are optional and a single group object doesn't need to assign a name to a group that every vertex is a member of. Materials are assigned on a per-polygon basis, with each polygon only able to utilise a single material.

    The grouping operation can indeed be done outside Poser, if you're prepared to write the parsers and compose obj files directly from within Poser, as I have done. It's just a pain that you can't complete the creation of a grouped object entirely within Poser, but have to resort to creating and importing an obj file as intermediary.



  • @anomalaus said in Convert a figure to a prop:

    @morkonan the Python API offers the ability to do anything you want with existing groups and vertices in an object you've loaded. None of the sample scripts included with Poser which create geometry objects from scratch by adding the vertices to a new, empty geometry do anything with vertex groups because they can't. There is no way to tell Poser to add a new, empty group to the geometry so you can assign vertices to it. New materials? Yes. New vertex groups? No...

    Just from your expertise level, is there a reasonable technical reason this can't be done or a legal one?

    IOW - Could SM easily expand the API to provide access or to create this capability for scripters?

    Or, is it a "can't do that because the Universe hates us" sort of problem?



  • @morkonan I can imagine absolutely zero technical reasons why this was not done at the point when Poser first integrated Python scripting.

    In my uninformed opinion, it is a near certainty that the pre-divorce relationship with a major content provider who was vigorously combating piracy by developing a punitive EULA allowing them to issue and enforce international C&D writs and successfully prosecute piracy of their products, resulted in Poser being rendered "Cripple-ware" by having existing, developed features omitted from released versions of the software to avoid Poser's developers becoming co-defendants in piracy litigation, for deliberately providing the means to enable minimally modified, EULA breaching, derivative works being sold for profit. But that's just, like, my opinion ;-)



  • @anomalaus said in Convert a figure to a prop:

    ... But that's just, like, my opinion ;-)

    That sounds like a reasonable opinion. Though, if that was actually the reason, then while a nervous attorney might be able to justify it, in reality it's not justifiable. If someone could litigate based on that, they could sue any 3D content-creation program developer. Though, and this bit is important, a content developer that incorporated a proprietary product format is much more easily able to sue someone if, for instance, they purposefully develop methods to skirt around such a format.

    I'd like to add that it is within a developer's interest to allow certain sorts of workarounds that increase their product's appeal and purchase frequency if its use can be expanded to realms where it was not originally intended to be used... As long as the developer/owner doesn't say anything about recognizing such things, it's still preserving its rights "just in case."

    Still, for such a generic, useful, common sort of capability, it's a big mind-boggling why it seems to be so avoided. ("Don't press that button" mentality.)

    ;)



  • @morkonan heh, I like the "over a barrel" implication in that clip. I'm wondering if there are still NDAs in effect over how this all actually went down. Maybe some of the principals who are now at a further remove will feel more able to publish their memoirs and enlighten us. Rational and mutually profitable discourse over tea and crumpets, or attorneys at twenty paces?

    I still have vivid memories of the burning pitchforks, accompanying howls of righteous indignation and cynical barking that have pervaded the Poser forums for literal decades. Good times ;-)



  • @anomalaus

    Honestly, though I'd love to hear the testimonials, it'll never happen. There are too many poopstorms that would erupt. This is one of those things that should stay asleep, 'cause waking it up doesn't serve any productive purposes.

    Though, I have to say that if it's a "geometry" function, it should be available through the API. If it isn't, that's... stoopid. It's a program that's intimately associated with geometry, objects, materials, groups, rigging, deformers, morphs, yada yada yada. Something that shoots itself in the foot before it gets out the door isn't going to end up walking very far...



  • Back to the original topic, I'm surprised no one has mentioned Dimension3D's script which, despite Ralf's sad and untimely passing, is still available at his site:

    http://d3d.sesseler.de/index.php?software=poserpython&product=figure2prop

    This has always worked well for me.



  • @mr_phoenyxx said in Convert a figure to a prop:

    @fbs7 I have not had very much luck with the fitting room, even after following multiple step-by-step tutorials. Mind you that was with conforming clothing fitted to a person.

    Oh, that will do only for small adjustments, I fear. Conforming clothes made for one figure will typically not conform or fit well in another figure (unless it's one of the presets for conversion).

    Two approches on that - if you have small adjustments to do in the cloth to drape around, you can use Morph Toll / Tight Fit; it does a very similar function as the fitting room, but you have control of what you do.

    In order to fit a conforming cloth made for toon A in another toon what I do is first convert the conforming cloth to a prop; then I fit around toon B using the the morph tool / tight fit to have better control, then I go to Fitting Room and use its magic to transform the prop back to a conforming cloth for toon B; that will give you not only a draped cloth on toon B, but also will give you every single morph that toon B has, in the cloth; it's very amazing; and as the cloth is already fitted, the fitting room has no chance to mess its shape.



  • @fbs7 said in Convert a figure to a prop:
    ...

    In order to fit a conforming cloth made for toon A in another toon what I do is first convert the conforming cloth to a prop; then I fit around toon B using the the morph tool / tight fit to have better control,...

    Just a comment on "Tighten Fit" or whatever the tool's name is:

    One thing that bothers me about that tool is that it doesn't differentiate between raised surfaces and underlying geometry. It has no depth-perception. :) So, for instance, if you have geometry that has details, decorations, raised surfaces, entirely separate geometry, etc, it will simply flatten everything "to surface."

    That's fine for something simple, but it wreck havoc with anything that has fine geometric details, decorations, bits and pieces of non-contiguous, layered, geometry, yada yada. So, if for example, you're trying to use the tool to fit a pair of jeans to a figure and the creator has included "pockets" which are just bits of separate geometry layered on top of the main pant, those pockets will get treated the same way and smushed flat to the target geometry instead of maintaining a relative distance. That's not a problem if, for instance, the creator has given them separate material zones. In that case, you can smush them all you want and then go back and just raise those a bit.

    But, things that have "volume", like a fully modeled button? They get smushed flat and you have to restore them and move them, whole, manually. If they don't have separate mat zones so you can target them? Too bad-> smushed buttons.

    I love the Morph Tool! It's awesome, especially this particular feature! BUT, I'd really like some "depth controls" for it, so I could protect details a bit better. The Fitting Room appears to have better protections for that, but it also has some issues with tearing up geometry. (ie: The crotch areas for just about anything, which I can understand, but it's still frustrating. I'd note that trying to embed something to help it discern those areas, like "Morphing Clothes" has to help the algorithm to switch when it's working with a "skirt" or "pants" like objects would be wonderful.)



  • @morkonan said in Convert a figure to a prop:

    @fbs7 said in Convert a figure to a prop:
    ...

    In order to fit a conforming cloth made for toon A in another toon what I do is first convert the conforming cloth to a prop; then I fit around toon B using the the morph tool / tight fit to have better control,...

    Just a comment on "Tighten Fit" or whatever the tool's name is:

    One thing that bothers me about that tool is that it doesn't differentiate between raised surfaces and underlying geometry. It has no depth-perception. :) So, for instance, if you have geometry that has details, decorations, raised surfaces, entirely separate geometry, etc, it will simply flatten everything "to surface."

    That's fine for something simple, but it wreck havoc with anything that has fine geometric details, decorations, bits and pieces of non-contiguous, layered, geometry, yada yada. So, if for example, you're trying to use the tool to fit a pair of jeans to a figure and the creator has included "pockets" which are just bits of separate geometry layered on top of the main pant, those pockets will get treated the same way and smushed flat to the target geometry instead of maintaining a relative distance. That's not a problem if, for instance, the creator has given them separate material zones. In that case, you can smush them all you want and then go back and just raise those a bit.

    But, things that have "volume", like a fully modeled button? They get smushed flat and you have to restore them and move them, whole, manually. If they don't have separate mat zones so you can target them? Too bad-> smushed buttons.

    I love the Morph Tool! It's awesome, especially this particular feature! BUT, I'd really like some "depth controls" for it, so I could protect details a bit better. The Fitting Room appears to have better protections for that, but it also has some issues with tearing up geometry. (ie: The crotch areas for just about anything, which I can understand, but it's still frustrating. I'd note that trying to embed something to help it discern those areas, like "Morphing Clothes" has to help the algorithm to switch when it's working with a "skirt" or "pants" like objects would be wonderful.)

    I second that! And I wish I could understand that rotation thingie in morph tool better too. I just don't get it. As it it does seem to be more of a twisting too than a rotation too. A rotation tool implies I can select the center of rotation, but I have no idea how to do that; and if I try to get the selection a bit away to control the center of rotation, then it doesn't do anything...



  • @fbs7 said in Convert a figure to a prop:
    ...>

    I second that! And I wish I could understand that rotation thingie in morph tool better too. I just don't get it. As it it does seem to be more of a twisting too than a rotation too. A rotation tool implies I can select the center of rotation, but I have no idea how to do that; and if I try to get the selection a bit away to control the center of rotation, then it doesn't do anything...

    IIRC, it is dependent upon the camera angle. I've used it a few times and it works fine, for what it does. It's definitely of situational use for most morphing work, though. But, it has come in handy a few times, since it does something you really can't do well without it.



  • @morkonan said in Convert a figure to a prop:

    @fbs7 said in Convert a figure to a prop:
    ...>

    I second that! And I wish I could understand that rotation thingie in morph tool better too. I just don't get it. As it it does seem to be more of a twisting too than a rotation too. A rotation tool implies I can select the center of rotation, but I have no idea how to do that; and if I try to get the selection a bit away to control the center of rotation, then it doesn't do anything...

    IIRC, it is dependent upon the camera angle. I've used it a few times and it works fine, for what it does. It's definitely of situational use for most morphing work, though. But, it has come in handy a few times, since it does something you really can't do well without it.

    Camera angle? I thought it always rotated (or twisted) towards the camera, centered in the mouse so it twists stuff around the mouse position. Good to make a psychedelic mesh, though.



  • Like a mini-tornado around the mouse... or something like that