5

I recently did a graphics job in After Effects and created a globe with a kind of ripple effect that highlighted a region of the world with the ripples dying out as they get further away.

Like this:

enter image description here

Because I had to zoom in to the globe, I needed to use a subcomp that was 18,000 pixels across and also a subcomp of the radio waves effect of the same size and it was very slow to render. I've finished the job now but I'm interested in seeing if it could be done more effciiently in Blender. Making the globe in Blender using the same large image it seemed much more responsive but I can't reproduce the radio waves effect from After Effects. The wave texture gives an effect where the initial ring diameters are really thick and then getting thinner and thinner as they expand away. And this doesn't look good for what I'm doing. Really I just need circles that generate and then fade out over time but I can't really work out what to do. Blender's 2d effects options seem relatively limited in this regard. I could probably do it by rendering out a texture layer from AE but wanted to keep it as procedural as possible.

chicks
  • 504
  • 2
  • 8
  • 17
JohnMc
  • 63
  • 3

1 Answers1

8

In order to have even thickness, your waves must be some linear function of the arc-length (angular distance) from the point of origin...

enter image description here

.. which for latitudes down Z (or rotated Z) of object-space, is arccos(Z/r), where r is the radius of your sphere.

If you use that as the Z of a Wave texture, the rings will be even. You can keyframe the 'Phase Offset' to animate the waves:

enter image description here

Robin Betts
  • 76,260
  • 8
  • 77
  • 190
  • Very nice! Just out of interest: would it also be possible to create several such effects simultaneously from different points? For this you would have to simply mix it, right? – quellenform Jul 11 '22 at 12:28
  • 1
    @quellenform for simplicity, I think yes, duplicate and mix. This is just phi of spherical coordinates, so just use another rotated set of coordinates. There is an expression for [distance between arbitrary points on the surface of a sphere], but it's pretty nightmarish, IMO :) – Robin Betts Jul 11 '22 at 12:30
  • 1
    Ah, nice... I was just trying to get my own version done... glad I stopped to find yours, mine had an error in the setup :) – Gordon Brinkmann Jul 11 '22 at 12:36
  • 1
    @Gordon .. sorry about that.. I'm usually much slower than other folks... – Robin Betts Jul 11 '22 at 12:39
  • @RobinBetts Same here ;) No, that's completely fine, saves me a lot of work... – Gordon Brinkmann Jul 11 '22 at 12:46
  • Another idea for the animation: you can plug a Subtract or Add node between the Arccosine and Combine XYZ value and keyframe the second value or use #frame as driver (of course a driver can be used on the phase offset as well). – Gordon Brinkmann Jul 11 '22 at 13:08
  • @GordonBrinkmann Good point. It might be simpler to work out looping, that way. – Robin Betts Jul 11 '22 at 13:10
  • @GordonBrinkmann I can't try this right now, but sounds like a great idea! Thanks for the input! – quellenform Jul 11 '22 at 13:14
  • 1
    Wow. That's certainly answered my question perfectly. Very maths based so going to need to up my game in Blender in that regard. Will be interesting to compare it to the AE version. Many thanks, John – JohnMc Jul 11 '22 at 14:02
  • @JohnMc if answer solved your issue consider mark as accepted answer https://blender.stackexchange.com/tour Thank you keep this site organised. – vklidu Jul 11 '22 at 14:47