9
$\begingroup$

I'm new to Blender.

Is there some way to animate a deformation of a hole on a torus by expanding it?

Like in this video. (until 2.5 second, I don't need to completely shrink it)

I tried to use shape keys and manually sliding edges, but that would be a long process, as I can't merge vertices, so with every slide I need to move more and more copies of edges:

enter image description here

I've also tried using parts of Nurbs Circles with Screw modifier to reverse animate it using angle, but I would still need too change curve points' positions for better animation, it would be easier if curve had something like 2 angles, one around axis and one capturing part of used curve. Moreover, curves are not connected.

enter image description here

enter image description here

enter image description here

$\endgroup$
1
15
$\begingroup$

This can be done by building the torus from 8 different vertex objects, each with 2 Screw modifiers.

One Screw modifier for making a circular section of the torus, and another one to rotate or loop this circle around a center (with an offset) thus creating a torus. The torus turning into 2 rings, and the 4 corners of the hole, warrants the total number of vertex objects and modifiers.

enter image description here

Linking the Screw modifier Angle values with drivers allows a single Angle value to deform the torus.

Making the inverse of this was my starting point so all the drivers are linked to a modifier on the initial vertex I used to make this. In hindsight a bit of a weird place but it works just the same. (So changing the Angle value of the top modifier on the "Vert" object makes it all move.)

I intent to elaborate on this solution a bit when i have more time (especially if you are new to Blender, drivers might take some explaining), but in the meantime...

...Here is the file:

And here is another file utilizing Mirror modifiers on only (and reducing the number to) 2 vertex objects:

$\endgroup$
4
  • 2
    $\begingroup$ Wow, that's heroic. Can't be sure, I haven't dug deep into your .blend, but could this be simplified with some mirroring? When I tried, I had problems with normals, but those could be tricked away.. $\endgroup$ – Robin Betts Jul 22 '20 at 7:08
  • 3
    $\begingroup$ Oh, I'm so stupid! Figuring it out I never considered using Mirror modifiers. : ) You are right. It considerably simplifies thing, and reduces the needed vertex objects to 2. I'll update my file/answer. I must say, your answers are both very nice as well: 2x +1. I especially think your geometric option is an elegant solution. $\endgroup$ – Fjoersteller Jul 22 '20 at 11:47
  • $\begingroup$ @Fjoersteller How can I contact you? Unfortunately, I couldn't find any private messages here. Thank you. $\endgroup$ – geomEssence Sep 25 '20 at 21:19
  • $\begingroup$ @geomEssence No thanks needed; happy i could help, and i had fun figuring it out. (and just in case you need contact otherwise, check my profile info) : ) $\endgroup$ – Fjoersteller Sep 25 '20 at 22:55
9
$\begingroup$

Here's a shader-only option, using Blender's default UV unwrap of a torus, and keyframing the threshold Less Than values in the following tree:

enter image description here

enter image description here

$\endgroup$
6
$\begingroup$

Another geometric option:

Start in the flat, giving a plane a couple of shape-keys, expanding the size of a deleted inset face.

enter image description here

Using a Subdivision > Simple, and 2 Simple Deform > Bend modifiers, bend the plane into a torus.

enter image description here

Now, sliding between the shape-keys will increase the size of the rectangular window.

enter image description here

$\endgroup$
3
  • $\begingroup$ ..which, looking at the vertices in your reference, must be something like the way the original was done. $\endgroup$ – Robin Betts Jul 22 '20 at 9:00
  • $\begingroup$ Nice and simple solution, I only have few questions: 1) What is being recorded in the shape key? As I understood, I need to create a plane, press "I" to create inset faces and then delete middle face. After that you scale hole by selecting 4 edges and pressing "S"? 2) Subdivision surface modifier is used to automatically create new faces for bending, so I don't need to create faces manually using loop cut? $\endgroup$ – geomEssence Jul 23 '20 at 7:35
  • $\begingroup$ @geomEssence 1. That's right. The Base key is with as small a hole as you like, the 'Key 1' is with the hole expanded.. it's not a uniform scale, it's SX and SY, each, because of the stretching.. the proportions of borders depend on major and minor radii of the torus, to get nice even bands at the end. Tell the truth, I just faffed it. You could Alt-D make an instance of the plane, without mods, and adjust that, while looking at the one with mods, to make it a bit easier to see. 2. No need for extra cutting, Subdiv > Simple does it.. not ideal topo, but the same as your ref. I think. $\endgroup$ – Robin Betts Jul 23 '20 at 9:45

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.