Jump to content

applying displacement of single mesh across animated mesh cache


Recommended Posts

I have two sources, first is an animated mesh, constant topology, let's say it comes to us in a cache.

Second source is single mesh, a modified deformation of the first source at frame 1.

How could we apply that deformation across all frames of the animated cache?

As a real world example, imagine the first cache is an animated human face talking and emoting, etc.

The second source, is frame 1 of the human. In a sculpting program they have altered the ears, nose, expression, etc retaining topology. But this mesh looks like a Orc or something.

I've looked at blendshapes, ray sop, but it seems that I want to blend in pure point position + projections along normal + transform matrix to make the deformation follow the cache.

Is there some obvious solution I'm missing, or is this some vopsop magic I require?

In some workflows, people would use a displacement map if the faces were similar, but I'm looking for something more generalized and suited to more radical shape changes.

I'm attaching a hypothetical example using a torus in this file.

Thanks for any help.

Edited by motionprojects
Link to comment
Share on other sites

You can use the hscript command sopcreateedit to get a editSOP that contains the necessary edits to get to You reshaped model.

next You need a reference shape in the second edit input so houdini knows how to apply the shape during animation

have a look at the example

If You can store a orient (quaternion) attribute on You cache, tracking the orientation during deformation houdini can also apply deformation right (option -o)


cd /obj/pretend_torus_anim_is_cached
sopcreateedit edit1 deforming_torus reshaped
sopcreateedit -o edit2 deforming_torus reshaped
[/CODE]

blend.hipnc

Edited by sanostol
Link to comment
Share on other sites

Yes indeed, this works great.

Tried it on my own to see if I could build it from scratch. Trouble at first with my orient attribute remaining at 0,0,0,0 after the sopcreateedit -o

I had missed that there needed to be a 1 in the 4th float of the orient value to start it off.

Thanks for the assistance!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...