Skyscape Collection by Metamorphed

Metamorphed
8 min readNov 8, 2022

--

Skyscape is a generative art project that includes 150 unique pieces created by solely coding with Python using py5 (“py5 is a new version of Processing for Python 3.8+. It makes the Java Processing jars available to the CPython interpreter using JPype.”)

From the perspective of art, they are generated artworks of an abstract view that includes planets, moons, stars, and the horizon mostly located behind the terrestrial objects on an imaginary planet. The collection has some hints of minimalism which may easily be felt with the complexity levels of the shapes and with the effort to use less while bringing all the needed elements together to create an actual “Skyscape”. But also, the details in the elements influenced by the linear hatching technique were added to the composition to create a nice balance and a unique touch. Some of the traditional artworks that I also influenced while I was shaping my own hybrid style to use in this collection.

Influenced artworks while shaping the abstract technique. (Van Gogh — Klimt)

Main Elements of the Skyscapes

Star/Cloud Stripes in the Sky

Star/cloud stripes are abstract elements that add texture and a different look into the sky while still preserving the minimalism of the whole composition. With the light theme, they mostly look like a cloud or a ring of the planet. And in the dark theme, they look like stripes of millions of stars like an abstract take of how the Milky Way looks from our planet.

While shaping this element from scratch into the code, I started with creating a variable for the algorithm to set the sky/land area ratio in the canvas to add a bit more variety and to support the possibly different feelings they evoke with the help of the balance of colors on the land and also on BG (color of the sky). So the thickness of the stripe and the number of them are also loosely related to the sky/land ratio. That means it tends to have a thick and higher number of stripes if the sky/land ratio is bigger although not necessarily with %100 probability.

Stripes are formed by creating a curve starting from a position on the left border and ending on the right border. The whole curve is actually built by connecting hundreds of tiny curves to be able to edit the thickness along the way for a more natural look and to be able to add the hatching effect using the derivated form of the same algorithm. And all the other curves below the main one are just formed by using the same curve except for changing the y value with a nice amount of spacing. And finally, the stripe ends with a continuous curve with the same thickness as the main curve to obtain a stripe with a hatching-like effect inside it, at the end.

Randomly generated stripes and zoomed-in version to show details

Planets

Planets and moons are created with the influence of vintage astronomical objects which is adding some more minimalism to the whole composition with the simplistic impression of the planets and orbits/moons around them. The planets, and mostly the bigger ones, are mostly the focal point of the image. Planets are set to be generated just behind the hills (Like a sunrise, or sunset scenery) or above the hills with a %50 chance to occur. There are 2 types of planets generator with a slight difference in the Skyscape. 1 of them is the main planet generator and generates only 1 with a radius between [0.07*w, 0.2*w] (w = width of the canvas)

Min and max radius of the bigger planet

The other one sets the number of additional planets after that between [0,2] and it goes on to generate the additional planets with a radius between [0.04*w, 0.09*w]. So the maximum number of planets in Skyscape Collection is 3 while the minimum is 1. The colors of them are randomly selected from the color palette for each planet.

The outer boundary of the planets is formed by drawing curves using the changing R values (Processing’s noise algorithm) by dividing 2*pi into the predefined number of pieces to form a closed circular shape. Since it’s actually formed by connecting many little pieces tied end to end with this method, I changed the thickness of the curve along the line, again using noise to create a natural hand-drawn texture on the boundary curve.

In the hatching algorithm of the circular shapes, I wanted to acquire the effect I’m looking for by creating inner rings directly proportional to the radius of the shape while keeping the space fixed along the way to the core. For each ring, there is less chance to be drawn for the pieces of the curve. Thus, it becomes more dashed along the way until no pieces are drawn (in the core of the circular shape.) For smaller planets, the thickness of the curve pieces is higher when it is compared with the radius of the shape. I chose to keep it that way to make them look darker (because they reflect less light) than the bigger celestial objects.

Hatching technique on smaller planets to compare with the bigger ones.

Landscape

The area below the sky starts with the horizon (which is directly related to the sky/land area ratio that was explained in the “Star/Cloud Stripes in the Sky” section) and extends to the bottom of the canvas. This area (Land) was composed to be the abstract form of the landscape, often hills and mountains and sometimes like waves of the ocean, changing with the impact of the color and the viewer. It’s also a kind of derivated form of the stripe algorithm that I programmed to create the stars/clouds. They’re drawn on the canvas layer by layer. But the hatching effect on the layers changes a bit. The top layer has an increased chance to connect the curves for the hatching, resulting in darker shadows. The chance of the connected curves decreases with each drawn layer on top of another.

There are 3 “Steepness” levels in the collection that changes how the curves are generated. Higher Steepness means more spiky curves while lower steepness produces smoother curves. In the example below, I also generated some hills with an extra high steepness value of 8(which is not actually exist in the collection) in addition to the 3 settings, to help you see the difference.

Colors

There are 10 main color palettes in the Skyscape NFT collection. 4 of them were also used in Metamorph Collection.

- Neon Lights (Metamorph)
- Vineyard Valley (Metamorph)
- Clouds Of Nostalgia (Metamorph)
- Milky Way (Metamorph)
- Petals
- Coastline
- Oasis
- Candy Land
- Aftermath
- Spring Mist

Although color palettes determine the main colors, the color picker function has been programmed to do some slight changes in hue value. Dashed curves and borders are always darker than the selected color to draw an element. So they can be much more visible to the viewer for the desired effect.

There is also a very important attribute that affects the colors, especially the BG. It is called “Theme” in the metadata of the collection. There are 3 types of themes: Dark, Light and Glow. At the very beginning of the Skyscape algorithm, the program chooses a random theme to begin to paint the BG.

If the chosen theme is Light, the HSB (Hue, Saturation, Brightness) values of the randomly chosen color from the color palette are changed by lowering the saturation and increasing the brightness to obtain a light color for the background (BG). And all the other colors of the palette are used with the rules written above (just with some slight hue adjustments to increase the variety).

If the chosen theme is Dark, the brightness value of the randomly chosen color of the color palette is lowered to be used as a BG color. While in the light theme, stripes might have another BG color behind them to add some abstract cloud-like texture to the light sky, in the dark theme stripes have no different bg color to make them look more like clusters of stars.

The dark theme function also handles the colors in the color palette to adjust them to be in harmony with the dark settings of the environment. These adjustments include changing the brightness and the saturation of the colors if it is needed.

The glow theme has very similar dynamics to the dark theme except it adds a glow effect to the biggest generated planet. The glow effect is created by placing some random circle-like shapes(same algorithm with the planets) getting smaller each time and the hue and brightness change slowly, each time a step between the hue/brightness of the sky and the hue/brightness of the planet. Therefore, it creates a soft transaction of colors like watercolor.

Example to show how colors change with different themes

Printing

Skyscapes look great printed on fine art paper. I tested it by printing on a Hahnemühle Matt Fibre with 50cmx50cm dimensions. You can see how it looks in the photos and the tweets below.

Some close-up photos of the print(Hahnemühle Matt Fibre) — 1
Some close-up photos of the print(Hahnemühle Matt Fibre) — 2

https://twitter.com/metamorphed_art/status/1576608513555501058

Some close-up shots to show details on the giclee print of a Glow themed piece:

Some close-up photos of the print of a Glow-themed piece (Hahnemühle Matt Fibre) — 1
Some close-up photos of the print of a Glow-themed piece (Hahnemühle Matt Fibre) — 2

Release Details

The collection was minted on Kalao UI without using any launchpad/minting page options. All the pieces were minted and listed on marketplaces at a fixed price: 2.5 AVAX to give collectors a chance to buy just the ones they like, without having to buy random pieces.

Skyscapes were released in rounds of 50 pieces in 3 Sale Rounds.

Round 1 -> #1-#50 -> Released on Sep-14–2022

Round 2 -> #51-#100 -> Released on Sep-17–2022

Round 3 -> #101-#150 -> Released on Dec-29–2022

Contract Address: 0x80d48ad10a6bd1f429b6ae8896ca74deba5b9664

The collection is verified and listed on 5 marketplaces: Kalao, Joepegs, Campfire, Opensea, and Salvor.

Skyscape Sets and Complete Sets

Skyscape set holders who built their sets before the snapshot were eligible for airdrops from the Ties That Bind Collection.

  • Dark + Light = 1 Airdrop
  • Dark + Light + Glow = 2 Airdrop
  • Dark + Light + Metamorph = 2 Airdrop
  • Dark + Light + Glow + Metamorph = 3 Airdrop

*Important note: All pieces in a set must have the same color palette.

Social Links:

Collection’s Twitter, My own Twitter, Discord

--

--

Metamorphed

Creating generative artworks with algorithms // Art NFT collector