# Twirl node
Applies a twirl warping effect similar to a black hole to the value of input UV. Very similar to [Swirl node](/documentation/Nodes/UV/Swirl.md), key difference is it uses the length of a vector.
Default value for uv input will be vec2(0, 0) for shader modes PARTICLES, SKY and FOG to avoid errors becouse UV variable is not available for these modes.
**Inputs**
|Name|Type|Binding|Description|
|---|---|---|---|
|uv|vec2|UV|Input UV value|
|center|vec2|none|Center reference point|
|strength|float|none|Strength of the effect|
|offset|vec2|none|Individual channel offsets|
**Outputs**
|Name|Type|Binding|Description|
|---|---|---|---|
|uv|vec2|None|Output UV value|
**ShaderInc location**
`res://addons/ShaderLib/UV/TwirlUV.gdshaderinc`
**Method signature**
`vec2 twirl_uv(vec2 uv, vec2 center, float strength, vec2 offset)`
**Parameters**
|Name|Type|Description|
|---|---|---|
|uv|vec2|Input uv|
|center|vec2|Center reference point|
|strength|float|Strength of the effect|
|offset|vec2|Individual channel offsets|
___