4
$\begingroup$

To see if it's possible, I'm trying to make pulsating veins on a heart in blender render. This step isn't too difficult, you can use a simple normal geometry of a veroni crackle texture and change the normals over time, or bake that texture into an image and use a displacement modifier and keyframe the strength over time.

But, the next step is to make this pulsating effect move like a wave through something like an actual heartbeat would, wherein one part on one end of the vein network starts the deformation, then the wave travels through gradually deforming only the vein texture onto the mesh over time.

Can this be done?

There is the wave modifier but this is a very outdated modifier that lacks a lot of precision in its control, it's pretty much only useful for large oceans.

I guess you can think something along the lines of this https://www.youtube.com/watch?v=9tcR81BfiVY

$\endgroup$
  • 3
    $\begingroup$ Could you add some pictures of what you are starting from? Eventually, upload your current file. $\endgroup$ – lemon Mar 14 at 8:58
  • $\begingroup$ If I knew how to make a model to take a picture of it, then I wouldn't need to post the question. $\endgroup$ – Bangarang Mar 14 at 9:06
  • 2
    $\begingroup$ I meant about your setting before the wave effect. $\endgroup$ – lemon Mar 14 at 9:09
  • $\begingroup$ Something like this? blender.stackexchange.com/questions/70151/… $\endgroup$ – lemon Mar 14 at 9:51
  • 1
    $\begingroup$ Have you seen that the blend file of the indicated video can be downloaded? $\endgroup$ – lemon Mar 14 at 10:04
6
$\begingroup$

Another 'In Principle' option...

Animate a 'pulse' mesh along a curve derived from, or used to construct, your blood vessel, using a Curve deform modifier, keying the location of the pulse mesh along its deformation axis:

enter image description here

Give the blood vessel a Vertex Group for displacement, set to 0. (Vertices outside the group altogether will not be affected) Assign a Vertex Weight Proximity modifier, using the vertex group, targeted on the pulse mesh:

enter image description here

Assign a Displace modifier to the blood vessel, aimed at the vertex group.

enter image description here

'In principle', because, to say the least, you probably want the shape of your deformer, weight influence, timing, everything to be tweaked differently. :D But all the adjustments are available.

The pulse mesh could itself be shape-keyed on its journey, to modulate the expansion.

| improve this answer | |
$\endgroup$
6
$\begingroup$

A way do it from a curve and a wave modifier:

enter image description here

Make some network, with just segments:

enter image description here

Convert it to a curve, set the curve type to Bezier and the handle type to automatic and give it some bevel and a better resolution:

enter image description here

Now add a wave modifier, and activate "Normals" then tune the other parameters as you want:

enter image description here

From that, I wanted to have the effect on a surface:

enter image description here

The subdivided plane is shrinkwraped to the veins.

As we can't shrinkwrap to a curve, this last image uses a skin modifier instead of a curve, but the principle is the same.

| improve this answer | |
$\endgroup$
  • $\begingroup$ This is impressive, it's a good example of something I remember running into a while ago. It looks very smooth, but again the wave modifier is very limited in its precision and adaptability to the surface of other meshes, there must be some way to combine this notion with one of the others. The warp modifier is nice because you can adapt it to any surface of any mesh, whereas this is specifically for a plane, due to the limitations of the wave modifier. $\endgroup$ – Bangarang Mar 14 at 20:34
  • 1
    $\begingroup$ Can you use custom UV coordinates as the input to the wave texture, to get better control of the timing? $\endgroup$ – John Dvorak Mar 15 at 14:55
  • 1
    $\begingroup$ @JohnDvorak, that could be an idea. Have though about it, though doing it for "any mesh" should mean you know how to organize this UV map accordingly. So, that seems more complicated (or I don't know how to make it simple) but... that could be a way. $\endgroup$ – lemon Mar 15 at 15:29
5
$\begingroup$

You can simulate pulse using the Warp modifier.
It can be adjusted to your heart's content (sorry... I'll see myself out...)

  1. Create your vein and subdivide it
  2. Add two objects to drive the deformation (two circles in my case)
  3. Animate all the properties you need.

It has adjustable strength, radius, falloff, texture and a custom falloff profile...

enter image description here

| improve this answer | |
$\endgroup$
  • $\begingroup$ That looks like a nice modifier, thanks. How...detailed can it be? Cause the veins I'm using are generated from a procedural texture. $\endgroup$ – Bangarang Mar 14 at 8:55
  • $\begingroup$ Hello :). Well, if your veins are procedural, perhaps a displacement map could be a better solution. Would you mind adding more details into your original question? $\endgroup$ – Jachym Michal Mar 14 at 9:15
  • $\begingroup$ Well displacement modifier is what I mentioned in my question. $\endgroup$ – Bangarang Mar 14 at 9:41
  • $\begingroup$ This warp modifier seems to work on any mesh, and it includes texture, so far this is the best. I can make a semi-circle to emulate veins on a surface of a mesh. Now using a series of follow paths I can think of a very complicated setup to accomplish this, I'm wondering if there is a more efficient way to do it. Why does it anti-deform an object as I move it away from a mesh? That is counterintuitive $\endgroup$ – Bangarang Mar 14 at 9:56
5
$\begingroup$

A pressure 'wave' travelling through a vein...

...Is a Curve-Path extended for length with CTL-LMB and bevelled with a Curve-> Circle.

The Circle is scaled down to size the Path's diameter. (vein)

A cast modifier could be used to produce a bulge travelling along the path. A large and enlarged section of vein was also tried in order to overwrite the original with masking as it slides along the vein but neither trials improved what is seen above.

Curves (the vein) can be textured also.

Hooks or shapekeys can be used to animate the path's control points and produce nicely formed biological curves. Hooks were used for their convenience here.

(See attched Blend file - vers 2.77a)

| improve this answer | |
$\endgroup$
  • $\begingroup$ No this is worse, do you see how the wave is lopsided? It needs to travel along the length of the vein but you clearly have a point source that emanates in all directions. This is along the lines of the first attempt I was talking about. If you have a mostly linear vein that would work, but not for a generic one. $\endgroup$ – Bangarang Mar 14 at 9:07
  • $\begingroup$ Sorry, my medical knowledge is somewhat lacking. It was an attempt to steer you towards what I thought you were after. $\endgroup$ – Edgel3D Mar 14 at 9:10
  • $\begingroup$ Well I'm in the same boat, I started with something like that and quickly realized the limitations. $\endgroup$ – Bangarang Mar 14 at 9:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.