Week 4 – Generative Text (Infinite Rain)

Concept

For this project, I chose generative text but wanted to take a unique approach. Instead of displaying standard text, I decided to present the Greek alphabet in an interactive and visually engaging way. Finding all the symbols online was surprisingly easy. The inspiration for the rain-like effect came from the current rainy weather, adding a dynamic element to the design. I also incorporated interactivity and animation while making use of arrays, classes, and loops to enhance the experience.

Code Highlights

Working on this assignment introduced me to new JavaScript features and functions, such as

splice()
splice()for managing arrays and the fourth argument in
background()
background()
, which allows for transparency effects. These discoveries helped refine the animation and improve the overall visual aesthetic. Some key blocks of code demonstrating these techniques are included below.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
// Remove symbols that reach the bottom
if (particles[i].y > height) {
particles.splice(i, 1);
// Remove symbols that reach the bottom if (particles[i].y > height) { particles.splice(i, 1);
// Remove symbols that reach the bottom
if (particles[i].y > height) {
  particles.splice(i, 1);
Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
function draw() {
background(10, 10, 30, 100);
function draw() { background(10, 10, 30, 100);
function draw() {
  background(10, 10, 30, 100);

Reflections & Future Improvements

I enjoyed working on this assignment and gained valuable insights into generative art. However, I originally wanted to explore data visualization but faced challenges in loading data effectively. Moving forward, I plan to practice more with data handling so I can confidently incorporate it into future projects. Additionally, I aim to experiment with more complex interactivity to further enhance the user experience.

PRESS C TO CHANGE COLOR, G TO INCREASE SPEED, CLICK MOUSE TO ENJOY🙂

 

Leave a Reply