Protect Vertices from morphing

timlemitimlemi Posts: 0
edited December 1969 in Carrara Discussion

Hi, all except unwillings,

I wonder if there is a way in Carrara to exclude vertices or polygons from being effected by a morph?

Trying to explain: I have a morph that covers large parts of a body, in fact creating the target shape I want to achieve. Yet there are specific areas I want to remain in the base shape, not being changed by the morph. I could propably do an export-orgy and replace vertices in a more or less messy workflow in modo, re-export to an obj, hope to be able to reimport the obj as a morph target ... but just being able to select or hide a couple of polygons, edges or vertices from being affected by a morph shouldn't be all to difficult.

But how?

Thanks for your advice, as always!

Gust

Comments

  • 3DAGE3DAGE Posts: 3,311
    edited December 1969

    HI Timlemi :)

    Essentially, any morph target is,. the existing base geometry,.. in a different position,. so, to achieve that it's necessary to move the geometry of vertices edges and polygons,. so it's really up to you to move what parts of the geometry you want to move,. and not move anything else.

    it's also hard to guess at what you're building, working with, and trying to do ..and in some situations,. moving geometry may depend on what you're "not" trying to move, and how it's connected to the geometry you "do" want to move.

    You can work with selections in carrara,. and you can name these selections for easy recall,..
    you can also select and "hide" geometry to allow you to work on specific areas.
    you can select by mesh (part) name,. or shading domain name, or by "saved selection" names.

    select an area,. go to VIEW / Hide selection,.. VIEW / reveal hidden

    you also have "Soft Selection" options which allows you to control the selection strength and fall-off area, which can help restrict the area of mesh being moved.

    The magnet tool in the vertex modeller is also handy for smoothly moving large mesh areas, but has a different area of influence, and working method. (experiment with those tools on a test object) to get feel for how they work.

    If you take a model into an editor, then Delete or Add anything,.. you're usually heading for trouble,. as this will usually re-order the vertices, and any morphs only work when the vertices match.

    any more information about what you're trying to do, may make it easier for people to help.

    :)

  • timlemitimlemi Posts: 0
    edited December 1969

    Hi,

    sorry, obviously my English isn't good enough to explain the (simple, in my eyes) task at hands:

    - load a figure (dog, elephant, kitchen sink, doesn't matter)
    - dial up a morph that has been created for this figure
    - ALL vertices that have delta values in the morph "channel" are changed according to the morph deltas

    This is what happens. This is what should happen. All fine.

    Now what I need is this:

    - load a figure
    - select areas/vertices/polygons (you name it) of the figure that should NOT BE changed by the next step
    - dial up a morph that has been created for this figure
    - ALL vertices EXCEPT the ones "protected" are changed according to the morph deltas, "protected" vertices remain unchanged

    Sample situation:

    I have a figure (a dog, naturally, since my last job got me a second, better paid) that I have made a morph for (it's an advertisement stand in again). Unfortunately the morph includes areas that should not have been morphed. I can not "manually morph them back", so I would like to be able to exclude these areas from being morphed at all. Imagine the full body morph including the legs. I want the legs to be excluded from the full body morph, only apply the rest of the morph.

    Gust

  • GarstorGarstor Posts: 1,411
    edited December 1969

    timlemi said:
    Now what I need is this:

    - load a figure
    - select areas/vertices/polygons (you name it) of the figure that should NOT BE changed by the next step
    - dial up a morph that has been created for this figure
    - ALL vertices EXCEPT the ones "protected" are changed according to the morph deltas, "protected" vertices remain unchanged

    If I follow you and your sample correctly, then the answer is "No." As 3DAGE hinted at, the morph you created should not move vertices that you do not want moved to begin with.

    If such a "vertex lock" feature existed, it would break any morphs created for the model (assuming this is a store purchased model).

  • 3DAGE3DAGE Posts: 3,311
    edited December 1969

    Hi Timlemi ;)

    No,. your English is fine,. and thanks to your explanation I now have a better idea of what you're doing, so,.. thanks for that.

    The first issue is that when you load a figure and select a morph to adjust,. you're not in a modelling environment where individual vertices, edges, or polygons can be selected. you're simply adjusting the models shape by setting a value for a pre-set shape morph.

    If,. this is a Full body morph,. then the morph creator has made it to work that way, not for fun, but for specific reasons.
    EG: change breed of dog.

    Since morph targets are "hidden" geometry,. there's not a great ability to select "parts" of a preset morph, and disable the effect on some selected parts of the mesh.

    normally each body part has a Partial morph, and the morph control, will actually change multiple parts of the figure,.. with one slider controller,..

    the Morph (slider control) will change all the vertices affected by the morph area, and change them to the positions set in the morph target.. and that's the way it's been built to work.

    If this is for a Still shot,. then you do have some options in Carrara, since it is a 3D modeller,. and can make or adjust morphs.

    What you should be able to do is select the FBM (full body morph) and then edit that morph to adjust the shape manually to reduce the effect in parts of the mesh.

    Try selecting the dog,. in the Assembly room,.. then go to Edit / Smooth.

    This will break the protection, and reveal the PBM (Partial Body Morphs) in the figure,.. the drawback is that the main "parameters" morphs sliders may not function,. but you will be able to select the individual partial morphs for each body part, and adjust the,(Carrara morph sliders) , to adjust the shape on the parts you need adjusted.. or edit the morph targets in th vertex modeller to suit what you need.

    hope it helps :)

  • 3DAGE3DAGE Posts: 3,311
    edited December 1969

    One further thought on this issue..

    If you have the dog, posed (for a single shot) and it's shape is "almost" what you want,. then you can export that model as and OBJ, and make sure that the option to "Export with morphs and skinning" is enabled,... this will export the model (in it's current pose), it will also remove all of the morphs and bones, to leave you with a base Object,.. but this would allow you to Import that posed OBJ back into carrara, then work with it's shape by using the modelling tools directly, or creating a morph in carrara which you can adjust.

    The texture maps and UV mapping, should still be able to work with that model,. but if you want to change the textures you'll need to do that in the shader room by loading the texture maps manually, since poser Mat's will probably not work.

  • timlemitimlemi Posts: 0
    edited December 1969

    Hi,

    > If such a “vertex lock” feature existed, it would break any morphs created for the model (assuming this is a store purchased model).

    I am sorry that you think so. But since you do not break anything by not doing anything (and not applying a morph resembles not doing anything quite well) I would not have the problem you describe. All I want to do is NOT apply a morph to specific vertices, more precisely to faces, but do apply the rest of the morph to the unprotected areas.

    Morphs are just lists of vertices or faces that differ from their original versions. That's how a morph-export (obj) works. That's how the GoZ bridge works (it sends back only those vertices that have been changed, a list of values, that are then substracted from their original values, the deltas being stored as what we call a "morph").

    To proof my point I have made a simple sample: I created a vertex ball, created a material area (to be able to find that area in the vertex list) and created a "full body morph", that includes the specific "test area" (blue in the screen shot), image 1.
    I then exported both the original vertex ball AND the morph target including the morphed area that I do not want to be morphed.
    Next step was to create a new morph file (an obj file, which is a simple text list of vertices) and replaced the vertices in the area I want "protected" by their original values from the original export, image 2 ("morphed").
    Last step was to load back in the manually created "protected morph" file in place of the "full body morph". Note that this (manually text-file adjusted) morph now included the original "full body morph" with those vertices replaced by their original versions that I wanted "protected" (that's what I used the material definition for: To actually FIND the vertices I wanted to protect), image 3.

    It works. Nothing broken. Protecting faces from being morphed seems to work exactly the way I would expect it to work when doing it "the hard way" (by manipulating morph files).
    Now this is easy to do with a face made of four vertices, four normals and four texture indizes. It would be a PITA to do it for a complex morph with thousands of vertices! Yes, sure, I could write a program to do that, but since it works I was thinking Carrara could do it.

    modo can (although through a completely different workflow) - that's where I solved my problem for the moment. I am posting this sermon just to explain my question better: I was not asking to BREAK anything, just for a rather simple function. It's ok if Carrara (or DAZ studio, I don't care where to solve a problem) cannot do it, I just do not like statements like "the world would explode if you would do that" (no, I know that noone actually said that).

    Gust

    3-protected-morph.jpg
    1186 x 903 - 162K
    2-full-morph.jpg
    1186 x 903 - 164K
    1-base-situation.jpg
    1186 x 903 - 170K
  • RoguePilotRoguePilot Posts: 239
    edited December 1969

    Isn't that just using a really convoluted method to produce a second morph? Which you then use to replace the original morph?

    Anything can be done by hand editing the files. What you have just described there is not what you were asking.

  • evilproducerevilproducer Posts: 9,050
    edited December 1969

    timlemi said:
    Hi,

    > If such a “vertex lock” feature existed, it would break any morphs created for the model (assuming this is a store purchased model).

    I am sorry that you think so. But since you do not break anything by not doing anything (and not applying a morph resembles not doing anything quite well) I would not have the problem you describe. All I want to do is NOT apply a morph to specific vertices, more precisely to faces, but do apply the rest of the morph to the unprotected areas.

    Morphs are just lists of vertices or faces that differ from their original versions. That's how a morph-export (obj) works. That's how the GoZ bridge works (it sends back only those vertices that have been changed, a list of values, that are then substracted from their original values, the deltas being stored as what we call a "morph").

    To proof my point I have made a simple sample: I created a vertex ball, created a material area (to be able to find that area in the vertex list) and created a "full body morph", that includes the specific "test area" (blue in the screen shot), image 1.
    I then exported both the original vertex ball AND the morph target including the morphed area that I do not want to be morphed.
    Next step was to create a new morph file (an obj file, which is a simple text list of vertices) and replaced the vertices in the area I want "protected" by their original values from the original export, image 2 ("morphed").
    Last step was to load back in the manually created "protected morph" file in place of the "full body morph". Note that this (manually text-file adjusted) morph now included the original "full body morph" with those vertices replaced by their original versions that I wanted "protected" (that's what I used the material definition for: To actually FIND the vertices I wanted to protect), image 3.

    It works. Nothing broken. Protecting faces from being morphed seems to work exactly the way I would expect it to work when doing it "the hard way" (by manipulating morph files).
    Now this is easy to do with a face made of four vertices, four normals and four texture indizes. It would be a PITA to do it for a complex morph with thousands of vertices! Yes, sure, I could write a program to do that, but since it works I was thinking Carrara could do it.

    modo can (although through a completely different workflow) - that's where I solved my problem for the moment. I am posting this sermon just to explain my question better: I was not asking to BREAK anything, just for a rather simple function. It's ok if Carrara (or DAZ studio, I don't care where to solve a problem) cannot do it, I just do not like statements like "the world would explode if you would do that" (no, I know that noone actually said that).

    Gust


    I think you're mis-interpreting 3Dages term, "Break." He was using it in reference to DAZ's rigged poser style figures. They're locked after a fashion to prevent novice users from doing things that could "break" the functionality of the figure- Such as rigging, pre-made morphs, shading domains, etc. He was saying, to get in and actually edit what you're talking about editing, you'd need to "break" the lock that prevents it, which is what he was talking about with going to the Edit Menu-->Smooth. It's also the method used to detach a Poser rig for the figure. He was also warning you about the what would happen to existing full body morphs. Re-read it and you will see.

  • timlemitimlemi Posts: 0
    edited May 2013

    Hi,

    maybe Carrara people are not really interested in this, but since a friend of mine discussed this issue with me a couple of days ago (she had exactly the same problem I had, only that she wanted to protect the EYES of Genesis from being warped by FaceGen), I thought I drop a note here (if nothing else).

    DAZ seems to have the same problems that I have with their tools. So DAZ is, according to a Youtube video (see http://www.youtube.com/watch?v=O-SKYTOkVo4), simply using MODO to solve the problem of protecting areas of a figure from being morphed by a morph target (it has nothing to do with breaking in any sense of the word, it is just a standard issue with working with morphs in 3d). DAZ imports a morphed figure from DAZ studio into MODO to clear out those shape areas that have been wrongly morphed. This way they create a "cleaned up" morph target, import that back into DAZ studio and have what I call "morph protected vertices".
    I tried the way they presented in the video with Carrara - and it works like a charm. A workflow of a couple of seconds! You don't even have to use the named areas they were using, just mark the polygons you want to be excluded from the morph, clean them out and send the morph target back to Carrara. You get a "cleaned up" morph that leaves thoses areas untouched (literally) that you want to have un-morphed.

    This workflow is a nearly perfect solution for me, now if Carrara could have a "clean morph area" function as well I could do the quick proof-of-concept stuff I use Carrara for even faster!

    Gust

    Post edited by timlemi on
  • 3DAGE3DAGE Posts: 3,311
    edited December 1969

    Timlemi

    you seem to be talking about selectively sending only that parts of the mesh which you want to edit, to the modeller. EG: head without eyes.

    That can also be done,. within carrara, by selecting only the part you want to edit,. and hiding everything else

    you can select parts by name,. you can Invert a selection,. and you can Hide the parts you don't want to work on,. but, while this is fine for eyes,.. which are separate parts of the model ( individual poly mesh objects, separate from the main figure mesh)

    The process will not work on the same way with a single continuous mesh with different morphs within the mesh.

    ...which is the question you asked originally.


    Since you seem to be stuck on this term,.( Breaking ) let me try to explain what was meant..

    Breaking: ... as someone tried to explain to you earlier,. is meant to "help you" ,.. It's not meant as a "challenge" to your personal freedom,. and you can choose to ignore the advice if you feel it's not a problem if you break the functionality of your purchased model.

    Since people here don't know what level of modelling, or rigging skills you have,. then we have to offer you the same advice which we would give to anyone else asking the questions your asking.

    The "product" which you bought,. may become unusable,. if you "unlock" the protected figure.

    Removing the protection from the product means that you can edit all areas of that model.
    but if you're an newbie,. that may NOT be what you wanted to do,. and would be BAD advice to give someone with little experience of modelling, rigging etc.,

    The products sold here, are built to be used in Daz Studio, and Poser,. both of these programs have limited mesh editing,. so it's not really possible, or easy to break the functionality of the model.

    Carrara is a 3D modeller and can easily change the topology of a model,. and doing that would cause all of the morphs to "Stop functioning" (broken) ..
    it would also effect the Rigging, and the UV Mapping,.. (broken)

    So,. in practical,. and simplistic terms,. you would "Break" the functionality of the model,. and it would no longer Pose or animate in the way it should,. and you, as a customer,. would be unhappy that the model you paid for,., is now,.. not working as expected.

    Hopefully that clarifies why people here would add a note of "Caution" to their replies to your "original" question about editing morphs.

    it's NOT intended to stop you from doing whatever you want to do,..
    It's advice offered freely,. to help you.

    If I had answered you initial question with,... go edit the object file in a text editor,.

    Some people would be confused by that reply,. and some would feel it's not valid,. since the original question was,. (how to do this in Carrara)

  • timlemitimlemi Posts: 0
    edited December 1969

    3dage,

    I seem to have stepped on your toes. I am sorry that I obviously have offended you, that was never my intention.
    Yet, I do not understand what you want from me. Surely your comment isn't HELPING me in solving my problem(s), nor is it of any help to anyone experiencing the same, so what is it meant for?
    If you had a look at the video I linked, you could understand that DAZ solved the problem I described by using MODO - not Carrara. The answer to my question was and is, seemingly: Carrara cannot do it. Period.
    That's fine, as I have pointed out before. All I wanted to add here was a SOLUTION that works nicely, because I KNOW for sure that more human beings have the same problem I had.

    My problem never was to hide eyes, that was the task my friend had to solve. She pointed me to the video and I tried the way DAZ solves the every-day problem of protecting vertices from being morphed by a "larger morph", or, trying to be more precise, protecting areas of a mesh from being morphed by some automatically created morph or by some third party morph that includes TOO MUCH.

    > you seem to be talking about selectively sending only that parts of the mesh which you want to edit, to the modeller. EG: head without eyes.

    Absolutely not, not the faintest. I was seeking for what I described: Protecting areas from being morphed (or, as an alternative, removing the morph from areas that had been morphed).

    What you describe does not work in Carrara:

    > while this is fine for eyes,.. which are separate parts of the model

    Since the morph target created by Facegen does INCLUDE the eyes, NOT exclude them, your solution does not work. I just tried it to not tell a lie here: Hiding the eyes and then applying the morph still affects the (hidden) eyes, they are being morphed.
    Again: This was my friend's problem. She uses Carrara a lot, so I am sure she has explored most paths to solve the problem. She uses the "DAZ solution", which is: Use a third party program.

    > ...which is the question you asked originally.

    I would really welcome a serious discussion about solutions to given problems, not about "you do not know what you have asked".
    To me it seems that you are not at all interested in WHAT I want to achieve, but to simply stick to the part you picked up (like "protecting a customer from accidently 'breaking' a commercial product he bought").

    > Since you seem to be stuck on this term,.( Breaking ) let me try to explain what was meant..

    Better stick to the problem, as the discussion about "meanings of the word BREAK" does not help anyone who wants to protect parts of a mesh from being morphed :-)

    > Since people here don’t know what level of modelling, or rigging skills you have,. then we have to offer you the same advice which we would give to anyone else asking the questions your asking.

    It does not matter what skills I have, if I simply ask how to do a certain job. If the solution is beyond my capabilities, I can ask further. If it is not beyond me, everyone's happy.
    Editing text files is not beyond me. Editing text files when a program can do the job in 1/fantastillion of the time I would agree on my wife's paradigma "he's nuts".
    I don't.

    > The “product” which you bought,. may become unusable,. if you “unlock” the protected figure.

    That was not the question.

    > If I had answered you initial question with,... go edit the object file in a text editor,.

    If you would be so kind to care for what I have been trying to explain, this paragraph would not have been needed.
    I clearly explained that editing a text file (obj) works fine for a handful of vertices, hell, I have done that in the 80s of last century for nights!
    But computers are there to help you doing boring jobs. Manually protecting vertices from being morphed - NO MATTER if that "breaks" anything at all - today should be a task for a "dumb machine", as long as machines are dumb enough not to ask for a salary increase.

    > since the original question was,. (how to do this in Carrara)

    Why would you even consider replying "do it in a text file", if the task described excluded that solution mearly due to the amount of data to be edited? That's not a question of "are you capable of doing it the hard way", but a question of "how much fun can I make of you before you recognice you are being fooled?".

    I apologize for the long text. I apologize for seeming more stubborn than I usually am. I apologize for trying to get a job done. I apologize for asking for help.
    I really apologize for trying to help others here by posting a solution to a VERY COMMON problem in working with 3d data.

    I deeply, sadly and myself-unforgivingly apologize for existing. :-)

    Gust.

  • evilproducerevilproducer Posts: 9,050
    edited December 1969

    timlemi said:

    I apologize for the long text. I apologize for seeming more stubborn than I usually am. I apologize for trying to get a job done. I apologize for asking for help.
    I really apologize for trying to help others here by posting a solution to a VERY COMMON problem in working with 3d data.

    I deeply, sadly and myself-unforgivingly apologize for existing. :-)

    Gust.

    3dage is one of the most helpful people here. And I might add one of the most patient. Perhaps you need to recognize that it's just not your written english skills that aren't great, but your comprehension as well. That's honestly not meant as an insult. Neither was 3dages' response to you. I might add that other responders to this thread also have had a hard time figuring out the issue as you originally stated it. I don't know why you seem to feel the need single out 3dage.


    As for the last paragraph, if you want help, or need help there are plenty of people here that are willing to try. That's the operative word: Try. Sometimes it works, sometimes not. Posting that last bit because you didn't get a successful resolution from people volunteering their time and knowledge- is extremely rude. Maybe you should apologize sincerely for the sarcastic "apologies." :-/

  • 3DAGE3DAGE Posts: 3,311
    edited December 1969

    HI Timlemi :)

    Rest assured that you're not offending me,. but it' is getting harder to answer your a question about carrara when it's mixed with examples of how this task can be achieved using Modo, or another 3D modeller,
    and jumping to the assumption that therefore, Daz software isn't capable of the task.

    There's a subtle but immense difference between using a figure in Carrara, and editing a model Modo.

    In modo,. you're loading an OBJ model.
    This type of 3D model, is a "Base" model,. it has no rigging, and none of the complex list of features which you can find when you loads a Figure into Poser, Daz Studio, or Carrara.

    In Carrara,. you're opening up a complex figure, with bones, weight mapping, UV mapping, joint constraints, and links from this figure to a series of Morphs,. normally loaded from a folder. (not contained within the model)

    So,. the difference is that one has a simplified, base model,. and one uses the Fully articulated model.

    If you want to compare achieving any modelling task using Carrara and Modo,
    you would have to use the same item, to have a fair comparison.

    So to prevent the novice user from themselves,. some advanced modelling tasks are initially not available within Carrara, on a "purchased content figure"

    To allow Carrara, to do the 3D editing which you're seeing, using modo,. it would have to remove the connections between the 3D model and it's Rigging,. weight mapping etc... and that would break the existing functionality of the figure.

    (Purchased Content is initially protected)

    This isn't my rule,. or a restriction of Daz Software. ..
    the protection is there because Carrara is actually capable of modelling your figure. and doing that, while the model is in it's rigged,. weight-mapped, and UV-mapped state,. could cause the figure to "not work as expected" since changing the shape, or structure of the model would effect the rigging, weight painting, UV mapping, etc...

    So,. the "protected" status is there to protect the user (while learning) from their own errors in judgement.
    Not to prevent any advanced modelling task from being possible,.

    If you're an experienced user,. and you feel capable, ..then you can Unlock that figure protection,. and edit the figure.


    As for why Daz3D used Modo in an example video,...

    probably because that's what that Staff member uses, and is familiar with. and feels comfortable using to demonstrate.
    Not al Daz Staff are 3D modellers, technicians, or even use 3D software. but that has no bearing on the functionality and usability of Daz Software products. .


    I hope that makes sense to you.


    If the advice i gave about hiding the figures eyes before sending to faceshop didn't work, then I apologise for that error,..
    I don't have the latest version,. and was answering from my experience of using previous versions.

Sign In or Register to comment.