Shader #1
After reading the article “how does is make it feel generative art?” by Amy Goodchild’s blog, I noticed that most of the times the end result of the code is usually through happy little accidents so I made sure that this time I approached working with Inspiration.

For the first shader, I took this painting by Piet Mondrian made in 1930, composition with red, blue and yellow as an inspiration and wanted to try to re-create this in the colours I find soothing.
I worked my way through the class exercise with making the squares, adding the mix() and utime.

I experimented with with how the code be organized better and made some silly mistakes, while coding the drawMultiplerect function, I couldn’t figure out for a few minutes why the code suddenly stopped working and understood my silly mistake that I didn’t return the result.

I ended up this work for the composition, I preferred less square and added some of my favourite colours than the ones in the painting, this can be considered my adaption version of the work. I experimented with the colours and the background specifically.
Shader #2

While working for shader 2 I took Inspiration from Angela Johan’s Vibrant Geometry work shown above, I started working through the grid shared from class, I thought It will a good idea to experiment in making the opposite work from the inspiration.

I started first with grid function and experiment with the number of grids in the code to see how it impacts the all over work and had colours totally opposite from the composition, similar with orientation the rectangles were placed horizontally.

After some experimentation with the grid lines, I started working different colour values.

I ended up having happy little accident in this work as I experimented with the if statements
if( true ){ // the results with false and true were very different and resulted in this amazing grid
// skew the canvas a bit on the y axis
st = st0;
st.y += st.x* 2.854;
// do the drop step pattern:
// shift every odd colum a half-step
if( mod(index.x, 1.896)==-1.328){
st.y += 0.148;
}
// recalculate the grid
// after the drop pattern
st = st * vec2(2., 2.); // 1.
index = floor(st); // 2.
st = fract(st); // 3.
The utime added a loop animation which changes colours starting from blue, pink and light off white on the right and gradually becomes darker. It was a great learning point that the Boolean – true/false can influence the end result a lot.
