Author
Ahmad Moussa

Ahmad Moussa

Creative coder and Generative Artist. Creator of the Gorilla Sun Blog.

202 posts

Making Of
Making of Neo Supremus

A write-up of my fxhash project 'Neo Supremus', a generative ode to Kazimir Malevich's Suprematist compositions. In this article, we'll have a look at some of Malevich's Suprematist compositions as well as some of the techniques that I used to recreate these compositions in a generative manner.

2022 OCT 15 · 12 min read
Tutorial
An Algorithm for Polygon Intersections

In this post we'll work our way towards an algorithm that can compute convex polygon intersections. We'll also explore a method for intersections between axis-aligned rectangles, a function that can determine the intersection of two line segments, as well as a point in polygon test.

2022 SEP 30 · 25 min read
Making Of
Making of Exotic Quarpets

A detailed write-up about my most recent fxhash piece 'Exotic Quarpets' from initial inspiration, to specific implementation details all the way to last minute wrestling with a browser compatibility bug.

2022 AUG 26 · 10 min read
Tutorial
A Simple Solution for Shape Packing in 2D

Shape packing is a popular type of sketch in gen-art, but is often trickier than it might seem when you try to pack anything more complicated than a simple circle. In this post we'll have a look what goes into collision detection as well as a strategy to pack any arbitrary shape in 2D.

2022 JUL 22 · 21 min read
Feature
Delaunay Triangulation and Voronoi Diagrams

This is the first one of a two part series of blog posts on Delaunay Triangulations. In this one we have a look at artworks that have been created with Delaunay Triangulations, a little bit of it's history, possible strategies to create them, and the related Voronoi Diagram.

2022 JUN 20 · 7 min read
Tutorial
Bowyer-Watson Algorithm for Delaunay Triangulation

The Bowyer-Watson algorithm for Delaunay triangulation is maybe one of the easier methods to implement and understand for obtaining a Delaunay Triangulation.

2022 JUN 12 · 14 min read
Tutorial
Working with SVGs in P5JS

P5JS doesn't offer native SVG support, there is however a way to run P5 in an 'SVG' mode using zenozeng's SVG runtime. Running P5 in this SVG mode also requires a lot of interaction with the DOM, which we'll discuss in this post.

2022 MAY 19 · 11 min read
Guide
Migrating from Github Pages to Netlify

Github Pages and Netlify are bost fantastic solutions for hosting your first website. Switching from one to the other when you've already established your website on one of them might be a bit tricky however. But here's how you can do it!

2022 MAY 14 · 6 min read
Tutorial
9 Tips for Tsubuyaki Processing

Tsubuyaki processing has become a popular and fun little challenge on Twitter. In this post I'll be going over some character saving tricks that can come in clutch when you're out of ideas for reducing the size of your code!

2022 MAY 10 · 10 min read
Guide
How to set up a Breadfond

In this tutorial I will guide you through setting up a Breadfond on the Tezos blockchain using the TEIA and/or Versum smart contracts.

2022 MAY 05 · 11 min read
Tutorial
An Algorithm for Irregular Grids

A step by step tutorial to constructing a variety of irregular grids

2022 APR 30 · 10 min read
Making Of
Making of Behind the Canvas

An in depth look into the inner workings of my crayon codes sketch Behind the Canvas

2022 MAR 23 · 16 min read