https://github.com/altunenes/rusty_art

Creative coding and optical illusions in Rust.

https://github.com/altunenes/rusty_art

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.4%) to scientific vocabulary

Keywords

algorithms art creative-coding generative-art illusion illusions nannou optical-illusion psychology rust rust-lang shaders vision webgpu wgpu wgsl
Last synced: 5 months ago · JSON representation

Repository

Creative coding and optical illusions in Rust.

Basic Info
  • Host: GitHub
  • Owner: altunenes
  • License: other
  • Language: Rust
  • Default Branch: master
  • Homepage:
  • Size: 78.5 MB
Statistics
  • Stars: 139
  • Watchers: 1
  • Forks: 7
  • Open Issues: 3
  • Releases: 9
Topics
algorithms art creative-coding generative-art illusion illusions nannou optical-illusion psychology rust rust-lang shaders vision webgpu wgpu wgsl
Created about 3 years ago · Last pushed almost 2 years ago
Metadata Files
Readme Funding License

README.md

Rusty_Art 🌈 🎨 🦀

Rust Build & Release banner

I migrated to my own shader engine cuneus

reason: I liked Nannou a lot, I learned Rust thanks to Nannou and awesome devs, but unfortunately it's not being developed anymore. That's why I don't want to stay in very old versions of wgpu so that I can follow recent updates more easily and get more comfortable exports, use atomics, set multi-pass, wasm, hot reload etc... :-)

Creative coding with Rust! 🦀

In this repository, I will create animations and optical illusions that allow for the generation of various patterns in my spare time. So, this repo is consistently updated and current 🙂

Most of my files feature a graphical user interface (GUI), enabling real-time adjustments to the animations and opening up the possibility of creating thousands of unique patterns. With egui, you can also include your own textures or images without needing to hard-code changes.

I hope you enjoy it!

🚀 Usage/Installation:

Easy Setup with Precompiled Binaries

  1. Go to the Releases.
  2. Download the binary for your operating system (Windows, macOS, or Linux) under the Assets section & Unzip the downloaded file.
  3. Run the executable corresponding to the animation you want to enjoy!

This is the simplest way to run animations without any setup or compilation. 🙂

Compiling from Source

```
    git clone https://github.com/altunenes/rusty_art.git
    cd rusty_art
    cargo run --release --bin <filename>
```

That's it! If you encounter any issues while opening/running files, feel free to contact me. 🙂

Shortcuts 🚀

  • Spacebar: Hold down to save each frame as a PNG image into the "frames" folder automatically created in your current directory. These can be used later to create high-resolution videos. (for now, only works from source)
  • F: Toggle fullscreen mode.
  • H: Hide or show the user interface.
  • Mouse Wheel: Zoom in and out. Note: This feature is not available for all animations.

Warning ⚠️

I only tested these codes on my notebook with the following specs:

Windows & Ubuntu: - CPU: Ryzen 7 6800h - Ram: DDR5 16GB - GPU: Nvidia RTX 3060 mobile

Apple M3 Air 16GB - (in full screen, some expensive animations could be laggy)

And I must say that some of the files are very computationally intensive. So, if you have a relatively "low-end" computer, you may not be able to run some of the scripts smoothly. And please don't run the files on your computer if you don't have a good cooling system. I don't want to be responsible for any damage to your computer. 😅

Always open if you have any suggestions or "cheap" tricks (in terms of reducing computational complexity) to improve the performance of the animations. 😊

🖼️ Some Examples:

Click on the images to open the videos 😊

| Attractors | Expensive Mandelbrot | Ernst Chladni's Plate Experiments | |:---:|:---:|:---:| | Attractors Code|mandelbrot Code| Erns Chladni's Plate Experiments Code |

| Draw something with Fourier Cycloid | Fake Fluid Dynamics | Hilbert Curve Image | |:---:|:---:|:---:| | Draw something with Fourier Cycloid Code | Fake Fluid Dynamics Code | Hilbert Curve Image Code |

| Ray Marching Neuron| Munker Illusion | Neuron Simulation | |:---:|:---:|:---:| | 3D Neuron Code | Munker Illusion Clock Code | Neuron Simulation Code |

| Snowflake | Voronoi Image | Galaxy | |:---:|:---:|:---:| | Snowflake Code | Voronoi Image Code | Galaxy Code |

| Reverse Phi Motion | 🌈 Gabor Patch | Asahi illusion | |:---:|:---:|:---:| | Reverse Phi Code | Gabor Patch Code | Asahi illusion Code |

| Love WGPU | Lorenz System | Neural Net | |:---:|:---:|:---:| | Love WGPU Code | Lorenz Code | Neural Net Code |

| Pinna illusion| oscillation | lensing | |:---:|:---:|:---:| | Pinna Code | oscillation Code | imlens Code |

| fourier | sinh | tree | |:---:|:---:|:---:| | fourier Code | sinh Code | tree Code |

| Cafewall Illusion | lilac chaser illusion | Peace | |:---:|:---:|:---:| | Cafewall Illusion Code | lilac Code | tree Code |

| imgblob | Leviant's Optical Illusion | ULAM Spiral | |:---:|:---:|:---:| | imblob Code | Leviant Code | ULAM Code |

| alien brain | mandelbulb | Signed Distance Field psychology Ψ | |:---:|:---:|:---:| | darkclouds Code | mandelbulb Code | blobs Code |

| Gaussian Splats: SLIC superpixels Guide.| sin julia | psychedelic tunnel | |:---:|:---:|:---:| | splats Code | nebula Code | tunnel Code |

| Smooth voronoi | Gabor Lines illusion | Fake tunnel | |:---:|:---:|:---:| | svoro Code | nebula Code | faketunnelCode |

| Wrapper | Galaxy2 | GPU attractors | |:---:|:---:|:---:| | wrapper Code | galaxy2 Code | GPUattractorCode |

| Adelson's 3D Illusion | Orbit Traps | Golf | |:---:|:---:|:---:| | adelson Code | orbits Code | GolfCode |

| 🎄2025🎄 | ❄️winterflake❄️ | sdrect | |:---:|:---:|:---:| | 2025tree Code | winterflake Code | sdrectCode |

Owner

  • Name: Enes
  • Login: altunenes
  • Kind: user

I like science, computers, and budgies :-)

GitHub Events

Total
  • Release event: 2
  • Watch event: 30
  • Delete event: 2
  • Issue comment event: 1
  • Push event: 28
  • Pull request review event: 1
  • Pull request event: 4
  • Fork event: 1
  • Create event: 4
Last Year
  • Release event: 2
  • Watch event: 30
  • Delete event: 2
  • Issue comment event: 1
  • Push event: 28
  • Pull request review event: 1
  • Pull request event: 4
  • Fork event: 1
  • Create event: 4

Issues and Pull Requests

Last synced: about 1 year ago

All Time
  • Total issues: 4
  • Total pull requests: 11
  • Average time to close issues: about 1 hour
  • Average time to close pull requests: about 7 hours
  • Total issue authors: 2
  • Total pull request authors: 1
  • Average comments per issue: 0.75
  • Average comments per pull request: 0.0
  • Merged pull requests: 9
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 2
  • Pull requests: 10
  • Average time to close issues: N/A
  • Average time to close pull requests: about 8 hours
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 8
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • altunenes (4)
  • davehorner (1)
Pull Request Authors
  • altunenes (19)
  • davehorner (1)
Top Labels
Issue Labels
enhancement (1)
Pull Request Labels
enhancement (2) documentation (1)