Demoscene tunnel from polar coordinates
In your harnessGodot shaderMIT
Fly down an endless tunnel: screen positions become an angle and an inverse distance, which index a procedural checker or stripe wall pattern that scrolls toward the viewer and darkens with depth.

What it takes and gives
- Shader type
- canvas_item
- Parameters
- color_a (vec4 = 0.95, 0.4, 0.2, 1), color_b (vec4 = 0.15, 0.1, 0.35, 1), speed (float = 1.2), twist (float = 0.3), segments (int = 12), depth_rings (float = 6), fog (float = 1.4), center_x (float = 0) and 1 more
- Use it on
- A ColorRect (or any CanvasItem) sized to the area to fill; UVs span 0 to 1 across it.
- Result
- An orange and purple checkered tunnel rushing toward the viewer into darkness.
- Renderers
- compatibility: compiled and rendered, forward plus: not verified, mobile: not verified
- Placement
- res://baltor/godot_shaders/tunnel_polar_2d/
Limits. The pattern pinches at the vanishing point; the fade hides it. Checkers alias near the centre without mipmapped textures.
Details
- Kind
- Godot shader
- Engine
- Godot 4.3 or later
- Files
- 11 files, 76.0 KB
- Licence
- MIT
- Declared effects
- reads files, runs commands
- Checked with
- Godot 4.7.2, opengl3 compatibility (Mesa llvmpipe, Xvfb)
- Checks
- contract static, engine run, engine log clean, shader in scene, capture written, render not uniform, shader changes pixels
- Techniques
- Polar to tunnel mapping (angle and inverse radius), Scrolling checker texture coordinates
- Tags
- godot shader, canvas item, tunnel, demoscene, polar coordinates, retro, procedural
- Identity
library.supply.creative_originals.3c06c690bea67d7c76a4452d.70099bd6e0b83d38- Version
70099bd6e0b83d38ca52761ed4b1c59e72c1b2d0e0c65fe76411e23dbaf7c4e3
The version is the SHA-256 of the item your harness downloads; every file in it names its own checksum.
Something wrong with this item, its rights or its safety? Report it on the support page, or from your harness after a download.

