Creating Generative NFTs

What is Generative Art?

Generative art, as defined by Datash in their article, is artwork that has "gone through a generation process by a system" that is set into motion with some degree of autonomy contributing to or resulting in a completed work of art.
In layman terms, it means art that has been created by an artist, but combined by a machine or system. NFTs have become popular mediums for generative art as generative art can now be created and owned via smart contracts.

How Generative NFTs are Created

Generative NFT artworks are created by layering PNG images on top of one another. This is commonly done with a solid-colored background, followed by multiple layers with a transparent background that represents each trait of the NFT
A sample generative art with 4 traits: Background Color, Face Color, Eyes, and Mouth
Moving from left to right, if you layer each image on top of each other, you will generate the 5th image. Notice that:
  1. 1.
    Each image has the same size
  2. 2.
    All other traits except the background have a transparent background
  3. 3.
    The images must be layered in the correct order
  4. 4.
    The position of each layer is drawn so that they combine into a sensible image
  5. 5.
    You can change any trait to another of the same category as seen in the image below:
The Face Color and Mouth traits have been changed, creating a new generative image
To calculate how many variations of a trait you will need, use the following formula:
Using the above example with 4 traits, If you wanted to generate 10,000 unique NFTs (No two NFT would look alike), you would need 10 variations of each trait. the calculations are as follows:
Our example project, the Ejomis, contain 4 traits: Background Color, Face Color, Eyes, Mouth
Each Trait contains 5 Variations:
You can calculate the number of unique generative NFTs you can produce using the following formula
Based on this formula, we know we can produce 625 unique Ejomis: