<p>The effect can be roughly recreated by adding 2 (or more) radial sinusoids together and than animating the resulting phase through another sine function.</p>

<p>Use www.shadertoy.com to verify.</p>

<pre><code>   void mainImage( out vec4 fragColor, in vec2 fragCoord )
   {
       vec2 uv = fragCoord.xy / iResolution.xy;
       float d = sin(length(uv - vec2(0.5)) * 35.0) + sin(length(uv - vec2(0.2,0.3)) * 45.0);
       d = sin(d * 4.0 + iGlobalTime * 4.0)*0.5+1.0;
       fragColor = vec4(d,d,d,1.0);
   }
</code></pre>

CC BY-SA 3.0
2016-07-26T08:21:40.353Z
For something more interesting you can animate the origin of radial shapes too. -> float d = sin(length(uv - vec2(0.5)) * 35.0) + sin(length(uv - vec2(0.2+sin(iGlobalTime),0.3)) * 45.0);
PaulHK
CC BY-SA 3.0
2016-07-26T06:09:08.703Z
2016-07-26T06:35:42.097Z
2016-07-26T06:35:42.097Z
PaulHK
<p>After some searching, I found out it's called Plasma. <br>
<a href="http://www.bidouille.org/prog/plasma" rel="nofollow">Plasma Effect</a></p>

CC BY-SA 3.0
2016-07-20T11:53:09.083Z
2016-07-20T11:53:09.083Z
Wfi Okly
<p>As you discovered and mentioned in your self-answer, the pattern in the background appears to be a sum of sinusoidal gradients.</p>

<p>However, the example linked to in your answer is more complicated than that used by µTorrent. The background of the About window appears to be a static pattern, rather than the animated sinusoidal pattern used in the plasma post.</p>

<p>Several sinusoidal gradients have been summed to give a single image, and the illusion of movement is given by simply cycling the colours in that one image, rather than generating a number of different images. This is most noticeable if you focus on the centre of one of the rings of colour. In the µTorrent pattern you will notice that each ring stays in one place, and has colour flowing either into it or out of it. In contrast, the rings of colour in the fully animated pattern move around, occasionally dividing or merging.</p>

<p>The simplified approach used by µTorrent is reminiscent of animations used in the past when recalculating the sinusoidal patterns each frame was not realistic.</p>

CC BY-SA 3.0
2016-07-20T12:24:45.157Z
2016-07-20T12:24:45.157Z
trichoplax is on Codidact now
<p><br>
In a recent version of uTorrent , if you open the <strong>About</strong> Window, you will see an animated background , which is kind of waves that go on forever.<br>
How can this be achieved? Is this kind of a well-known algorithm/class of algorithms?<br>
Thanks.<br>
<a href="https://i.sstatic.net/6us3F.gif" rel="noreferrer"><img src="https://i.sstatic.net/6us3F.gif" alt="enter image description here"></a></p>

CC BY-SA 3.0
2016-07-20T11:30:25.487Z
@trichoplax I removed the pic and added a GIF. Thanks.
Wfi Okly
CC BY-SA 3.0
2016-07-20T13:19:57.157Z
Looks like a palette cycling effect. The image itself is static.
PaulHK
<algorithm><shader>
What algorithm is used in the animation of the uTorrent 's "About window"?
Wfi Okly
# What algorithm is used in the animation of the uTorrent 's "About window"?

(Asked by: username_0 on 2016-07-20)

In a recent version of uTorrent , if you open the **About** Window, you will see an animated background , which is kind of waves that go on forever.  
How can this be achieved? Is this kind of a well-known algorithm/class of algorithms?  
Thanks.  
[![enter image description here](https://i.sstatic.net/6us3F.gif)](https://i.sstatic.net/6us3F.gif)

**Tags:** algorithm, shader

> **Comments:**
> **username_0**: @username_2 I removed the pic and added a GIF. Thanks.  
> **username_1**: Looks like a palette cycling effect. The image itself is static.  

---

## 3 answers

### Answer by username_2 on 2016-07-20. Score: 9 | Accepted answer

As you discovered and mentioned in your self-answer, the pattern in the background appears to be a sum of sinusoidal gradients.

However, the example linked to in your answer is more complicated than that used by µTorrent. The background of the About window appears to be a static pattern, rather than the animated sinusoidal pattern used in the plasma post.

Several sinusoidal gradients have been summed to give a single image, and the illusion of movement is given by simply cycling the colours in that one image, rather than generating a number of different images. This is most noticeable if you focus on the centre of one of the rings of colour. In the µTorrent pattern you will notice that each ring stays in one place, and has colour flowing either into it or out of it. In contrast, the rings of colour in the fully animated pattern move around, occasionally dividing or merging.

The simplified approach used by µTorrent is reminiscent of animations used in the past when recalculating the sinusoidal patterns each frame was not realistic.


---

### Answer by username_1 on 2016-07-26. Score: 2

The effect can be roughly recreated by adding 2 (or more) radial sinusoids together and than animating the resulting phase through another sine function.

Use www.shadertoy.com to verify.

```
   void mainImage( out vec4 fragColor, in vec2 fragCoord )
   {
       vec2 uv = fragCoord.xy / iResolution.xy;
       float d = sin(length(uv - vec2(0.5)) * 35.0) + sin(length(uv - vec2(0.2,0.3)) * 45.0);
       d = sin(d * 4.0 + iGlobalTime * 4.0)*0.5+1.0;
       fragColor = vec4(d,d,d,1.0);
   }

```

> **Comments:**
> **username_1**: For something more interesting you can animate the origin of radial shapes too. -> float d = sin(length(uv - vec2(0.5)) * 35.0) + sin(length(uv - vec2(0.2+sin(iGlobalTime),0.3)) * 45.0);  

---

### Answer by username_0 on 2016-07-20. Score: 2

After some searching, I found out it's called Plasma.   
[Plasma Effect](http://www.bidouille.org/prog/plasma)


---

