Claker-Loop

This sketch contains a lot of values that need to be drawn, so give it a minute or two to load (it takes a while! )

loop

For this assignment, I wanted to experiment with drawing 3D models in p5js. My first step was acquiring a 3d model. Since there is are shortage of nude female figures online, I figured I’d grab one.

screen-shot-2016-09-23-at-6-14-40-am obj pre edit screen-shot-2016-09-23-at-6-14-50-am model points pre edit

I then reduced the number of vertices (also I got rid of the hair because it was 2 much) and explored the points as a .xyz file. This kind of file can be opened in a text editor, and is a csv list containing the x,y and z coordinates for each point in a model.

screen-shot-2016-09-23-at-6-15-21-am .xyz file in textedit

 

I copied that info over into an array in my sketch and drew the model from that info. In retrospect, I should have further reduced the number of verts. I tried this with 3D models made using photogrammetry, but the organization of points was not nearly as conducive to this method of drawing models.

Catlu – Interruptions

The artwork is square
There are short lines
More of the lines are vertical or horizontal than at an extreme angle
There’s a certain flow to the piece
There are patches of white, interruptions, in the lines that seem to random and taper off
The lines are sort of in a grid
The lines form vague polygonal shapes
There’s a white background

PLEASE CLICK IN WHITE SPACE TO GENERATE
catluinterruptions

This copy code I had a really hard time with. I fiddled around a lot with the lines to get them as close as I could to Molnar’s work. I wasn’t able to get the actual gaps in the lines working, so I left them out. For some reason, even though I know how to use arrays, no matter how I did them, they would just crash P5, and I couldn’t think of any other ways to loop through the lines and subtract patches. I really want to figure out why my arrays aren’t working with this code, and I intend to know eventually. I think it might have been weird nesting with loops.

Github code:
https://github.com/catlu4416/60-212/blob/master/interruptions

Catlu – Reading03

blues-scale

1a:
Something I like that exhibits effective complexity is improvisational jazz. Jazz was a huge part of my hometown, being home to a Grammy Award winning college jazz band. I’d go to jazz events several times a year, and listen to my friends practice their skills and eventually go on to pursue music in college. What I learned from them is that improv jazz is a mix between exactly what the question asks about, chaos and order. Improv jazz is based on the skill, style, and mood of the musician, but it is also usually a variation on a blues scale, or the main melody or harmony of the song which the improv solo resides within. Some musicians just go completely improv, but most are relying on some knowledge of the music they are playing, music they know, music standards, and the mood they want to achieve. Despite this underlying foundation though, no 2 musicians sound the same when improvising the same scale or song, which I think lends jazz such energetic dynamism.

1b:
The Problem of Dynamics
The problem of dynamics is very interesting to me because I have found exceptional beauty in both things that are still, and things that move. There are advantages to each, and often when thinking about projects, I find myself thinking about this. A still frame from a generative code can be beautiful, as seen in Molnar’s Interruptions, but imagining her piece as not a print, but on a screen or projection constantly morphing, is just as beautiful. While static artifacts are not as continuously generative, they come from an algorithm that has the potential to be continuously generative. Static artifacts give you time to look over them and soak in the details, while changing exhibits grab your attention and sweep you away in motion. Especially in society today where everything is always moving and hurried, I wonder what suits us more? Continually generative art to keep up with us, or static generative artifacts to make us slow down? I think in the end, it depends on each specific piece and situation, and neither is better than the other.

Written by Comments Off on Catlu – Reading03 Posted in Reading03

Catlu – LookingOutwards03

The Movement of Air: A New Dance Performance Incorporating Interactive Digital Projection from Adrien M & Claire B

RESIDENCE CREATION CIE AM-CBADRIEN MONDOT / CLAIRE BARDAINNELE MOUVEMENT DE L AIRTHEATRE DE L ARCHIPEL / SCENE NATIONALEPERPIGNAN 01/02 OCTBORE 2015. RESIDENCE CREATION CIE AM-CBADRIEN MONDOT / CLAIRE BARDAINNELE MOUVEMENT DE L AIRTHEATRE DE L ARCHIPEL / SCENE NATIONALEPERPIGNAN 01/02 OCTBORE 2015.

movement-of-air

Link to work:
http://www.thisiscolossal.com/2015/11/movement-of-air-dance/

This work, The Movement of Air, I found fascinating. Whenever I’ve thought of computer art in the past, or generative art, it’s always been of a screen, or some sort of plant. I don’t think of computer art being mixed with performance art. I admire the simple beauty of the piece. The code makes tantalizing images that dancers/artists react to. Essentially, the computer and code are the dance partners of the people. The dance is ever-changing because of its generative nature, and so the people must always be prepared. The black background of the room grounds the light projections beautifully, while the small chaos of human and machine somehow create balance working together. The music is also gorgeous. In a coding sense, I must admit I have no idea how they randomly generate such diverse, changing imagery. I can imagine maybe doing one of them, but all the different scenes together seems incredible to me.

kander – AnimatedLoop

I had a heck of a time trying to get my program to output frames, and when I finally got it to, I couldn’t figure out how to get it to output png or jpg — it would only output a generic “file” type. So I’ve just embedded my code the old-fashioned way. This assignment didn’t go amazingly — I eventually decided that I wanted to actually make a non-abstract composition, but the one I came out with is kind of simplistic. I think the faces communicate tone nicely, but they could be vastly improved with more attention. And the whole gif thing is a bummer.

sketch

 

img_1515

img_1517

img_1518

Keali-LookingOutwards03

tree
tree2
tree3

These are select projects of Kajima Sawako and Michalatos Panagiotis: interactive flash samples a_garden, plant_growth, and fishes, all of whose nature-inspired, stylized linework, and smooth motions are characteristics I admire. When it comes to generative artwork, I instinctively focus on the user experience and outwards aesthetic of the piece before observing closer, and as such the execution of mark-making in these mini projects are quite seamless and impressive. The algorithms that generated the work seem to reflect some sort of fractal, or similarly-based structure, to effectively grow the trees and branches. The fishes are reminiscent of some sprite or object-oriented type spawn to track and follow the user’s cursor. I originally found Sawako and Panagiotis on the AKT-UK website through scriptedbypurpose, which focuses on utilizing geometrical templates to design architecture, and I could connect the algorithm-based tendencies in both their digital and architectural works, which all seem inspired by some seamless, mathematical visualization. These samples represent some balance of effective complexity by generating growth and movement in a more ordered, controlled manner (expected fractal branches, path of fish movement), but not limiting such action to some boundary: this provides some randomness and unexpectedness in where new plants generate, and the constant respawn of new forms in the flash present some disorganized sense of space.

flash projects link//
scriptedbypurpose profile//
architectural designs//

Kelc-Reading03

Question 1A. Effective complexity is defined as a measure of complexity– in this context– in terms of generative art. Galanter classifies generative art as being a rejection of simple description and easy prediction, and as lying somewhere on a spectrum between highly-ordered and highly-disordered. The concept works to quantify the level of randomness vs. instructed nature of some sort of event. A good example of a system that lies somewhere in the middle of the spectrum is the stock market. There are a lot of factors that influence it–overseas markets, general economic data –making a controlled instructed system; however a lot of stock market analysts work with prediction and random outside occurrences, so much of stock-trading boils down to chance and randomness.

Question 1B. The biggest issue I take with generative art is, as most art should do, its expansion and challenging of the definition of art as whole. Art seemed for the longest time to be limited to human-made materials, objects, and ideas come to fruition. Yet generative art, as this article touches on, relies on a human-made or human-controlled robot/mechanism following a set of instructions in order to create the art itself. This in the article is addressed under the section The Problem of Authenticity. At the same time, I think many generative artworks, such as Harvey Moon’s drawing machines, force the audience to ponder on topics and consider possibilities they once may have not, which are characteristics of a successful art piece.

Written by Comments Off on Kelc-Reading03 Posted in Reading03

Catlu – AnimatedLoop

ANIMATED GIF OF CODE:

This particular GIF is very slow because I had to optimize it to be able to upload it to WordPress. A live code version is below too.

output_tjmnuu

LIVE EMBEDED CODE:
catluloopinggif

14466343_1292002557478951_1466845774_o

With this GIF project, I wanted to create something relatively clean and simple to look at. At first, I toyed with the idea of wind blowing cloth, and did a few sketches of the frames of that idea. I thought it would create a nice sense of movement in the confines of the GIF. Later, I remembered a video I watched in my concept studio about origami, and then started thinking about that. I thought about the folding of paper in half and how it always transforms into itself. I also thought about the circular arc square paper makes as it folds forward. I decided to go with this idea because I thought the simplicity would make it intriguing. As I played with the idea in code, I started out just having the paper fold. Then, curious about its path, I removed the background redraw and found myself liking the trails that the paper/box left as it folded each time. The interesting shape it created was almost painterly, and reminded me of some sort of one-eyed cartoon character. Overall I’m happy with the GIF. It was fun to make and pleasing to my eye. One thing I couldn’t do was get the code to start with the trail marks already behind it. Therefore, after the first rotation it endlessly loops.

Github code link:
https://github.com/catlu4416/60-212/blob/master/catluloopinggif.js

Zarard-Interruptions

  • The artwork is square.
  • The artwork consists of many short black lines, on a white background.
  • The lines all have the same length.
  • There are certain regions where lines are not generated from
  • Those regions do not appear to have any certain polygonal shape
  • Sometimes the gaps in the pictures can go off the page
  • All the lines start and stop within the boundary
  • Each line is only intersected at most once
  • There are a lot of triangular and diamond shapes
  • It looks like the gaps can sometimes coincide with eachother
  • The lines almost strike me as if they were randomly drawn in a grid
  • Because the lines are almost evenly spaced apart
  • No line is 0,90,180,or 270 degrees
  • Or even within 10 degrees of those numbers
  • Most of the lines tend to be more vertically oriented
  • Click the drawing to see it animate. Sometimes it creates the interruptions, sometimes it doesn’t, it’s random. Upon reflection maybe if the lines were smaller

    This piece was really hard to create only because it is a subtractive work intuitively. The first thing it thought to do was to draw the lines and then randomly erase them but when I looked closer at her works, the erasure was clustered. Also it became clear to me that her lines weren’t random and that they had randomized structure. The article on effective complexity really helped me look closer. My process was essentially creating, seeing, and revising multiple times until it looked closer and closer to the piece Interruptions. I’m still facing difficulty seeing the actual shape of the interruptions but overall i think it is a good representation.

    clock

    Keali-Reading03

    rain1
    rain2rain4

    1A. The particular frames were from the animated film Kotonoha no Niwa, which I specifically selected for its applauded visuals and realistic, beautiful rendering of nature on an illustrative media. Relevant to the overall backdrop and atmosphere of the movie, as well as particularly these selected scenes are what I perceive as dynamic intersections of order and randomness on the effective complexity curve: the randomness from the excessive motion of uncontrolled, unpredictable rainfall, and their interaction with the ordered, immobile existence of buildings and other rooted structures in both nature, and from human infrastructure.

    1B. While growing up both as an amateur and as an artist, I’ve been exposed to The Problem of Meaning multiple times, more often in recent years as I have almost been trained to think that, in a professional setting, most works I am to output are instinctively met with the question of purpose. Why did you make this? What does this mean? How does this affect yourself or society? As per my stance, I grew to realize that ultimately, these introspective questions are perhaps cursory food for thought for myself as I prioritize and solidify my own artistic intent. As Galanter applies this to generative art saying how a generative system may just be pragmatic and create products without intrinsic meaning, I too accept this viewpoint–and arguably, this may be one of the charms of generative art after all, that it can have no explicit meaning.

    Written by Comments Off on Keali-Reading03 Posted in Reading03

    takos-interruptions

    veramolnar

    Observations:
    1)a square
    2)center points of all lines match up to an invisible grid pattern
    3)there exists a general trend as to the direction of the lines (generally up or down)
    4)when lines are invisible, they are invisible in clumps,
    5)line are all the same length,
    6)black on white
    7) the line length is bigger than the distance between the center points

    The first not super obvious thing I realized was that the center points of the lines all matched up to the grid. I used this as my starting point and coded a generator that made all the lines at different angles. Then I went back and realized there was generally a trend for which direction most of the lines are going, so i coded that into a random variable. Then started playing around with different ways to add in empty spaces. I originally was it all random, but then I went in and made it so that once the initial empty lines where declared, the area of empty lines would be expanded upon, to create bigger empty spaces, and i tried to remove lines stranded in empty space. The hardest part for me was the empty space.

    https://github.com/tatyanade/Vera

    cambu-AnimatedLoop

    Animated Loop [github]

    cambu-AnimatedLoop

     

    When looking through the examples on the deliverables 03 page, I was particularly impressed by the simple bees and bombs dot explorations. I began by sketching dots flying onto and then off of the canvas and also explored colour and gradient notions. To create interesting motion, I used a combination of mapping, pattern functions, and sin() waves, but was was again frustrated at my inability to easily visualize all of the pieces going into the animation in my head. This made it hard to troubleshoot small inconsistencies in the motion, because too many compound operations were forming it up. One idea I have for a project later this semester is a graphing module that makes it easier to see all of these various operations while coding, I think this would greatly reduce the need to constantly pepper my program with print statements.

    img_5233

    Krawleb-AnimatedLoop

    Updated with ~real~ gifs:

    krawleb_1 krawleb_2

    So originally I had some grand ideas about importing OBJ files and doing some nifty glitch-aesthetic distortion of the 3d models and being all trendy like that but after some technical hullabaloo with anchor points and textures and processing not being able to calculate things fast enough I decided to drop that and make some hard and fast limitations so I could get something out quickly and without over-complicating things.

    My self-imposed limitations were:

    400x400px

    2 seconds per loop @ 60fps = 120 frames.

    Only black and white

    Only use one type of shape (rectangle, circle, etc.)

    Only a single for() loop. No object arrays, no particle systems, etc.

    From there, my only direction was a general gist of “there’s going to be a lot of squares and they will spin”

    So I just played with iterations for a while, letting ideas emerge from happy accidents and a lot of trial and error. I made a million iterations, some more rainbow and wacky than others, but found two that I particularly liked.

    Overall, I think my approach was a bit of a cop-out, and I was disappointed in myself for not trying to learn a new algorithm or technique that I wasn’t familiar with. While the results I came up with are visually compelling to a degree, they don’t have the mind-bending wow factor of that bees&bombs quality stuff.

    No pen and paper sketches this time, this was really a ‘code as sketch’ kind of experience. In retrospect, shoulda taken some screenshots along the way as there were many iterations.

     

    Code here:

     

    import peasy.*;
    import peasy.org.apache.commons.math.*;
    import peasy.org.apache.commons.math.geometry.*;
    import peasy.test.*;
    
    PeasyCam cam;
    
    float count = 4000;
    ////////////////////////SETUP//////////////////////
    void setup() {
      //Settings Things
      size(400, 400, P3D);
      smooth(64);
      frameRate(60);
      colorMode(HSB,120,120,120);
      rectMode(CENTER);
      sphereDetail(3);
      float cameraZ = ((height/2.0) / tan(PI*60.0/360.0));
      perspective(PI/5, width/height, cameraZ/10.0, cameraZ*10.0);
      //camera things
      cam = new PeasyCam(this, 100);
      cam.setMinimumDistance(0);
      cam.setMaximumDistance(1);
    }
    /////////////////////////DRAW//////////////////////
    void draw() {
      //Refresh stuff
      //background(255);
      fill(0);
      pushMatrix();
      translate(0,0,-3000);
      rect(0,0,100000000,100000000);
      popMatrix();
      lights();
      
      noFill();
      strokeWeight(1);
    
      for (int i = 0; i < count; i++){
        //float h = abs((((frameCount+i+00)%120)-60)*2);
        float h = abs((((frameCount+(i*sin(abs((((frameCount+i+00)%120)-60)*2)/100.0)+1))%120)-60)*2);
        float s = abs((((frameCount+(i*sin(abs((((frameCount+i+40)%120)-60)*2)/200.0)+1))%120)-60)*2);
        float b = abs((((frameCount+(i*sin(abs((((frameCount+i+80)%120)-60)*2)/300.0)+1))%120)-60)*2);
        stroke(0,0,h);
        //stroke(100);
        pushMatrix();
        //(i*sin(abs((((frameCount+i+00)%120)-60)*2)/100.0)+1)
        rotateZ(-radians(i+frameCount%240.0*360.0/240.0));
        //rotateZ((i/10.0*sin(abs((((frameCount+i+00)%120.0)-60)*2.0)/700.0)+1.0));
        translate(0,0,-i/3.0);
        //translate((i/10.0*sin(abs((((frameCount+i+00)%120.0)-60)*2.0)/800.0)+1.0),0,0);
        //rotateY((i/10.0*sin(abs((((frameCount+i+00)%120.0)-60)*2.0)/800.0)+1.0));
        
        //rotateX(-radians(i+frameCount%40.0*360.0/40.0));
        rect(0,0,50-(i+1)*0.02,50-(i+1)*0.02);
        popMatrix();
      }
      
      //if (frameCount < 121){
      //saveFrame("gif-3/######.png");
      //}
      //else{
      //exit();
      //}//end saveframe stuff
    }//end draw
    

    Commented out code is some of what I used for the different iterations.

    Drewch – AnimatedLoop

    sketch

    This is, unfortunately, not the plan I had in mind. I want to learn 3D coding so badly but as of now I can’t figure it out on my own. The original plan was to have a cube drop into a “liquid” and have it disappear in a ripple. I really do like how this animation came out though. It was a bit of an accident while experimenting with ortho() camera settings in WEBGL, but then I refined it into this. Since this was spontaneous, I never made sketches for it. As for critiquing, it isn’t very complex, code-wise, and I could probably do more with the cube movement. I really want to learn how to make fluids and objects and physics work. It calls to me, but I can’t answer.

    imag0183drewch-loop-0000

    Krawleb-LookingOutwards03

    timknowles_3

    For this looking outwards, I was interested in generative art that predated or didn’t use digital technology, inspired by how the reading positioned generative art as the revealing of existing principles or processes. Looking for this kind of work I stumbled on Tim Knowles project Tree Drawings in which he attaches markers to trees and allows the breeze moving the branches to create sparse, elegant, and natural patterns. I appreciate the simplicity of the project, how both the process that created it and the materials are straightforward, but the output is complex and varies with each unique tree and day. Knowles doesn’t create an algorithm, but captures an existent phenomenon in a way that reveals both the tree and the wind and their interaction. However, that is not to say he does not play a role in creation; where to mount pens, how many, what tree to pick, what size paper, how much wind, etc. were all parameters that I’m sure were carefully considered to perfect the outcome. Interestingly, while the capture technique is so simple, the pieces exhibit high effective complexity, to the point where different trees have identifiable styles, far from random but certainly not deterministic either.

    More examples of the work:

    knowles_himalayanpine1-1170x571

    Xastol – AnimatedLoop

    xastol-loudduck-gif

     

    I actually really enjoyed creating this piece. Initially, I was having a hard time coming up with a concept. However, after working on the “Interruptions” re-code, I accidentally came across having all the lines point in one random direction. This eventually got me thinking about the potential of having different shapes point in a singular direction.

    While thinking of different ways to further this concept, I was listening to a jazz musician by the name of Trombone Shorty (http://www.tromboneshorty.com/) and was kind of thinking how wide he allows his mouth to open in order to get new and interesting tones regarding his voice and instruments. One thing led to another and I decided to create a creature that was constantly talking, or “quaking” in this case, and that didn’t really have control over how wide it allowed its aperture to open.

    animated-loop_xa

    I really wanted to create something cute and kind of funny looking in this project, which I think I achieved very well. I think I fell short on how expressive the creature (duck) could be in regards to other parts of its body, even though my intent was to focus on the aperture and face of the creature. If I were to continue working on this piece, I think I would create a body for it and also have that flail around.

    GitHub Link: https://github.com/xapostol/60-212/tree/master/Deliverables%203%20-%20xastol/Animated_Loop

    xastol-p5-loopinganimation

    hizlik-Interruptions

    sketch (link on GitHub)

    This was an interesting project to work on- upon quick observation I knew the tactic I would use to recreate the lines (having a grid of center points that lines of certain length would randomly pivot on) and place them within a padded canvas (to prevent lines from going off-screen). The challenging part for me was the missing lines, and how to achieve them. My approach was to use multiple levels of randomGaussian() and random() functions. I would have a random amount of “blank spots” that had a random amount of “spread” (size of spot), which had a random number of lines within that spread hide or remain showing. While it looks similar to the original artworks, my rendering doesn’t have the same sense of “closeness” some of the original artworks portray in their blank spots. Like tight “tubes” of white, mine are more like soft areas/circles of blank.

    takos-Reading03

    1A : Romanesco broccoli: it’s pretty structured and follows a fractal pattern with a lot of order. I think it’s super cool that what looks like an abstract geometric sculpture is just a piece of broccoli that you can eat, and that fractals can appear so obviously in the real world.

    1B : The Problem of Uniqueness

    I think ultimately I agree that the mass-production in terms of generative art does diminish its value, but only if they are separated into different units. The reproduction of something is of course not as valuable as the original simply because it is the original. The copies are therefore just imitations of the original, but in terms of mass-produced and similar art everything is both a copy and an original. If you look at something that is presented as a set on the other hand, i think it does not loose its value in having multiples, but could in fact gain value, but if you mass produce something as attempt to present each mass-produced item, even if they are technically unique, as uniques, they lose their value because they are all the same in concept and in that sense there is no differentiation between them.

    Written by Comments Off on takos-Reading03 Posted in Reading03

    Jaqaur – AnimatedLoop

    Here is the code running in p5.js (the actual gif is below):
    jaqaur_animated_loop

    I didn’t have any really great ideas for this project. I thought I could do something about my love of math, like something with a Klein bottle, or something infinite that shows the set representation of all natural numbers. But I didn’t know how to implement either of those in a realistic, interesting way. When I started sketching things, one of the first simple geometric ideas I had was the one I ended up going with: “Ladder Squares.” It’s the fourth sketch on the sheet below. I thought little lines could climb down horizontal “rungs,” forming squares as they go. It’s one of my simpler ideas, but I really like how it turned out. It’s easier to look at without getting a headache than I’m sure some of my others would have been. I decided to add a slight pause when the lines are forming squares and when they are forming horizontal lines, as those are the most interesting positions to me. I added the blue-green gradient last minute to make it a little more interesting.

    jaqaur loop sketches

    Here is the gif itself. Sometimes it runs really slowly; I don’t know why:
    Jaqaur - Loop

    It also looks interesting when you modify the code a little bit so some lines climb backwards, although I didn’t like this version quite as much. I wanted the squares.
    jaqaur_animated_loop-backwards

    Here’s a link to the code on Github.

    kander – Interruptions

    1. The border size is varied (I think that’s a feature of the printing, rather than an intentional concept of the artwork, but it is nonetheless a feature of the work)
    2. The lines are all the same length
    3. The lines are about 1/25 the length of one of the sides of the square
    4. The lines are black
    5. The background is white
    6. The artwork is square
    7. There are spaces where lines do not generate
    8. The number of these spaces varies
    9. Lines do not get cut off by the borders of the page (there are no little amputated lines)
    10. A similar number of lines is generated each time the program runs
    11. The lines are not cut off by the spaces. Rather, they simply do not generate there
    12. Line density is similar in areas where there are not the spaces
    13. It’s almost as though there are spaces where line density is lower, rather than spaces where they specifically don’t generate from
    14. There doesn’t seem to be a specification for the angle at which the lines generate, but they tend to generate to the same angle
    15. The date is written in the bottom
    16. Sometimes the movement in the picture is horizontal, and sometimes it is more vertical
    17. Lines do not necessarily have to intersect with each other

    Click in the white space below to start my program!

    sketch-60.js

    Github Repository Link

    I initially noticed that the line placement seems to be based off of distribution, so I went through the p5.js function library looking for functions that could help me with distribution. I eventually decided I should try using random() and randomGaussian() and spent a long time trying to create the gaps by editing the distribution of the first x-coord of the lines. I tried using randomGaussian() to control the value the x-coord increments by each time, and I even tried messing with the angles of the segments. Eventually, I realized editing the properties of the lines wasn’t working well, so I instead defined the white spaces and simply didn’t render any segment whose first point was in that space.

    Overall, I think this final strategy worked pretty well. The margins look a little odd, and I feel as though the nature of my white spaces and Molnar’s white spaces are slightly dissimilar. I now appreciate the complex thinking required to make an algorithm behave in a way that implies random accident. It would have been so much easier to simply render the lines to the screen, but that work would be so much more lifeless than Interruptions.

    hizlik-Reading03

    A-  I don’t mean to be repetitive here, but my LookingOutwards03 assignment is very relevant to this situation. Tom Beddard’s Aurullia is I think a very good example of effective complexity- it was generated from an algorithm (a fractal formula) which is a very ordered method, but the final product is way more difficult to establish a category for (in terms of complexity as a random or ordered state). I would argue it is closer to ordered (you can expect a great many of things from the unknown parts of this “world”, such as there are no floating objects, buildings will be gray, there is a certain maximum height and minimum height, etc. The reason why I say it is not complete order, is because it is not repetitive and entirely predictable, in terms of anything from shapes of buildings to patterns amongst the “streets” and cracks.

    B- “Problem of Intent”  I personally find myself using random or generative procedures as a sort of computer-self-exploration, where the computer tests, experiences, and explores designs and patterns and I benefit from it’s findings. Or i use random factors for times when I don’t want to control it, or don’t have any idea how to control it, and would rather have the computer do it for me. Often I am pleased with the results and work off of it rather than leave it as the artwork itself. However I do believe an artist should have a meaning for using random factors, and a purpose like mine (don’t know what to do if it weren’t random) doesn’t seem like a good enough reason.

    cambu-Interruptions

    Interruptions [github]
    cambu-intersections

    Observations

    • The work has a white border all the way around the edge.
    • The canvas is a square.
    • Most of the lines face up-ish and down-ish
    • The holes are quite small.
    • The holes don’t often occur close to each other.
    • Sometimes the holes are more nuanced and don’t even form “complete holes” in the fabric.
    • The background is off-white, not white-white.
    • Near the holes, the lines become somewhat magnatized and get kinda ‘messed up.’

    Reflection

    I really enjoyed executing this project, the mix of programming and math was fun and I’m glad I got to practice more modularization techniques. With regard to the math, the ‘shaping of randomness’ via a function to have most of the lines face up or face down instead of to the sides, was particularly interesting.* I believe my final result is quite close, save for a few deficiencies, here are two big problems:

    • The lines near the edges occasionally stick out awkwardly, which doesn’t happen in the provided examples.
    • The lines do not seem to ‘barely touch’ each other as nicely as they do in these [1, 2] examples.

    ** == Golan programmed this in office hours as an illustration for random-shaping.

    Krawleb-Reading03

    1a: The kind of effective complexity that I’m most interested in comes from emergent systems, for example the flocking patterns of birds, which I believe sits squarely in the middle of Galanter’s spectrum. While the forms that emerge are certainly recognizable, they are unpredictably dynamic and evolving in dramatic ways that are far from random.  They are clearly not fractal or L-systems, but express a clarity or sense of intention that masks the complexity of the whole. Additionally, the rules that guide each agent (in this case bird) are remarkably simple relative to the pattern that emerges.

     

    1B: The Problem of Postmodernity

    This section I found extremely compelling and inspiring to read. As someone who in many ways subscribes to the poststructuralist idea of the death of the author (as discussed in ‘the problem of authorship’) I think generative art walks a delicate balance between authorial intent and an act of revealing of an existing system. I think the role of the generative artist / designer is far more editorial than expressive. The act of creating generative art is similar to found / street photography in the sense that the artist is by no means the sole artificer of the content, but frames and then presents that which already exists. Just as we do with photography, we still credit the artist as an aesthetician, appreciating their eye—not their hand—in the work.

    I particularly love the passage:

    Generative art can establish beauty as something that is not man’s arbitrary creation, but rather an expression of universal forces. Second, artists on that basis can demonstrate, by compelling example, reasons to maintain faith in our ability to understand our world. They can remind us that the universe itself is a generative system, and generative art can restore our sense of place and participation in that universe.

    In this way, generative art is both deeply artificial (that is to say, made by human hands) but elegantly natural, eroding the philosophical barrier between ‘man’ and ‘nature’ in a way that makes the dichotomy seem contrived. While much of contemporary generative art is strikingly technological, it is simultaneously eerily primordial, which is what I believe makes it so compelling.