I have used coding to create an original skateboard graphic. This design was created by using a mousepress function where triangles are generated when the mouse is pressed in relation to where the mouse is on the page. The two sides represent the constant battle one faces while skateboarding . One side being pain (injuries, falling, hurting oneself) and one side being pleasure (landing a trick). This design shows how fierce the battle can be by using sharp shapes and strong colours. The sharp shapes relate to the pain one can feel while bailing and the strong colours show how stubborn the mind can be in not giving up when trying to land a trick.
Sunday, 12 October 2014
Sunday, 5 October 2014
Idea visualisation
I like the idea of using this piece of code on the bottom of a skateboard because the colours and shapes in this design remind me a lot of energy and intensity. Two aspects which are very crucial to skateboarding.
Sunday, 21 September 2014
Entourage examples
This colour and line direction represents the speed of the scooter.
T-shirt example
Drink bottle example
Lampshade example
First print output
This is my first print output. I like the very busy look and the more you look the more you see nature of this image. It will attempt to differ the colours a little more so each triangle is more visible.
Trying different colour
In these examples I am experimenting with colour and the direction of the triangles. These images are starting to look like nightclub lighting.
Processing examples
These are examples are experimenting with processing and seeing what the triangle generator can produce. I have also experimented with another piece of code which generates circles.
Further experiments with triangle generator.
I like the fire like colours in all of these outputs. As I stated before I like the idea that these outputs would be very time consuming and tedious to create in photoshop or illustrator but with code they can be created within a matter of seconds.
float med_mouseX=mouseX;
float med_mouseY=mouseY;
float old_mouseX=0;
float old_mouseY=0;
float red=random(0,255);
void setup() {
size(1000,1200);
background(255);
}
void draw(){
noStroke();
med_mouseX=(mouseX+pmouseX)*0.5+random(-400.0,400.0);
med_mouseY=(mouseY+pmouseY)*0.5+random(-400.0,400.0);
if(mousePressed){
if(old_mouseX==0){
old_mouseX=mouseX;
}
if(old_mouseY==0){
old_mouseY=mouseY;
}
fill(random(0,255),0,0,random(0,255));
beginShape();
vertex(mouseX,mouseY);
vertex(med_mouseX,med_mouseY);
vertex(pmouseX,pmouseY);
endShape();
fill(random(0,255),0,0,random(0,255));
beginShape();
vertex(med_mouseX,med_mouseY);
vertex(pmouseX,pmouseY);
vertex(old_mouseX,old_mouseY);
endShape();
old_mouseX=med_mouseX;
old_mouseY=med_mouseY;
}
}
void mouseClicked() {
med_mouseX=mouseX;
med_mouseY=mouseY;
old_mouseX=mouseX;
old_mouseY=mouseY;
}
void keyPressed(){
if(key=='s'){
saveImage();
}
if(key=='x'){
background(255);
}
if(key=='e'){
filter(ERODE);
filter(ERODE);
filter(ERODE);
}
if(key=='d'){
filter(DILATE);
filter(DILATE);
filter(DILATE);
}
}
void saveImage() {
String fileName = timeStamp()+".tiff";
PImage imageSave = get(0,0,width,height);
imageSave.save(fileName);
}
String timeStamp() {
String timestamp = year()+"_"+month()+"_"+day()+"_"+minute()+"_"+second()+"_"+millis();
return timestamp;
}
Experimenting with processing triangle generator
In this screen recording I am playing around with code i have manipulated from open processing.
I have changed the direction the triangles point, the size and colour. I am not sure what this could be yet but I really like the idea of creating something that could not be easily created in illustrator or photoshop.
Sunday, 14 September 2014
Successful import into 123make
Tried again and I successful in importing a file into 123make. 123make is an exciting program because it breaks reasonable complicated shapes into smaller pieces which can then be assembled to create the shape. This program really makes 3d shapes more accessible because there is no need for a 3d printer.
Experimenting with Rhinoceros + Grasshopper
"For designers who are exploring new shapes using generative algorithms,Grasshopper® is a graphical algorithm editor tightly integrated with Rhino’s 3-D modeling tools. Unlike RhinoScript, Grasshopper requires no knowledge of programming or scripting, but still allows designers to build form generators from the simple to the awe-inspiring."
These programs together create a great resource to produce interesting abstract 3d shapes. These shapes could potentially be very interesting to 3d print or even use in a 2d environment. The shapes created remind me a lot of architectural structures and places like art galleries.
iGeo example
Toxiclibs experiments
"Toxiclibs is an independent, open source library collection for computational design tasks with Java & Processing developed by Karsten “toxi” Schmidt (thus far). The classes are purposefully kept fairly generic in order to maximize re-use in different contexts ranging from generative design, animation, interaction/interface design, data visualization to architecture and digital fabrication, use as teaching tool and more" Toxiclibs seems more similar to previous things I have used in processing. It was really fun playing with the attracting functions and the number of balls. I found the idea of controlling a lot of particles using mouse functions exciting.
Trying out HE_Mesh
"Hemesh is an implementation of a half-edge datastructure for manipulating 3D meshes in Processing. Basically it’s a toolset to extend my Processing sandbox to a proper playground." Hemesh reminds me a lot of Web GL in the way that it works with 3d shapes and is reasonable interactive.
Monday, 8 September 2014
Key Terms
Generative design: is a design method in which the output – image, sound, architectural models, animation – is generated by a set of rules or an Algorithm, normally by using a computer program.
Parametric design is a process based on algorithmic thinking that enables the expression of parameters and rules that, together, define, encode and clarify the relationship between design intent and design response
Data visualisation is viewed by many disciplines as a modern equivalent of visual communication. It is not owned by any one field, but rather finds interpretation across many. It involves the creation and study of the visual representation of data.
Digital fabrication is a process that joins design with the Construction / Production through the use of 3D modeling software and additive and subtractive manufacturing processes.

Sunday, 7 September 2014
Sunday, 17 August 2014
Unity final: abstract world explorer
This is my final from unity. I attempted to create a game like scenario where a controlled character is dropped into an abstract world. The world I created has been made from exploring the with the terrain editor tools. I experimented with things such as making mountains and hills. I also used the mass tree generator to make many palm trees. The world is created from half abstract brightly coloured texture and half normal grass texture. I played around with the 3rd person controller settings and speed up the persons sprint speed and jump height. One thing I enjoyed about this composition was exploring the terrain and trying to climb to the top of the mountain without slipping down.
Dropbox Link: https://www.dropbox.com/s/f2bbvnlrq9nv06x/unity%20thing.app
Lightning storm
This is my final for quartz composer. I used a patch i found on the internet which somewhat looked like lightening. I used the math functions to speed things up and altered the colour to make it look more like lightening. I used the audio input to control the frequency of the movement of the 'lightening'. I placed an image of a haunted house in the background to try and great an eerie feel. I attempted to create a horror scene which i feel turned out somewhat unsuccessful due to sharp edges of the lightning. It may have looked better if i could have created some sort of outer glow.
Dropbox link: https://www.dropbox.com/s/6eqbauoyhpcrd0b/Blue%20%281%29~~~.qtz
Final 2: Fireworks worm
This is my final for processing. I experimented with the mousex and mousey functions to make the ellipse follow my mouse around. I have included the easing function so there is some delay after the mouse moves. I have included multiple ellipses to follow my mouse all with an increased amount of ease to create a trail behind the first ellipse. I have experimented with randomising colours and opacities. Unfortunately I had aimed to include the mousePressed function to create a new ellipse to join the trail every time I pressed the mouse. I spent many hours trying to achieve this but was never successful. I was also unsuccessful in creating a for loop for the ellipses so i had to type the code out manually. I like this composition because it is satisfying to watch the ellipse morph into one another when the mouse is kept still after movement.
Dropbox link: https://www.dropbox.com/s/xvl3zij6pvc51tu/This_is_da_final.pde
Code:
float x;
float y;
float easing = 0.4;
float x2;
float y2;
float easing2 = 0.2;
float x3;
float y3;
float easing3 = 0.16;
float x4;
float y4;
float easing4 = 0.12;
float x5;
float y5;
float easing5 = 0.08;
float x6;
float y6;
float easing6 = 0.06;
float x7;
float y7;
float easing7 = 0.05;
float x8;
float y8;
float easing8 = 0.45;
float x9;
float y9;
float easing9 = 0.40;
float x10;
float y10;
float easing10 = 0.35;
float x11;
float y11;
float easing11 = 0.30;
float x12;
float y12;
float easing12 = 0.25;
void setup() {
size(840, 860);
noStroke();
noCursor();
}
void draw() {
background(0);
float r = random(255);
fill(12*r,7+r,22-r);
x += (mouseX - x)*easing;
y += (mouseY - y)*easing;
x2 += (mouseX - x2)*easing2;
y2 += (mouseY - y2)*easing2;
x3 += (mouseX - x3)*easing3;
y3 += (mouseY - y3)*easing3;
x4 += (mouseX - x4)*easing4;
y4 += (mouseY - y4)*easing4;
x5 += (mouseX - x5)*easing5;
y5 += (mouseY - y5)*easing5;
x6 += (mouseX - x6)*easing6;
y6 += (mouseY - y6)*easing6;
x7 += (mouseX - x7)*easing7;
y7 += (mouseY - y7)*easing7;
x8 += (mouseX - x8)*easing8;
y8 += (mouseY - y8)*easing8;
x9 += (mouseX - x9)*easing9;
y9 += (mouseY - y9)*easing9;
x10 += (mouseX - x10)*easing10;
y10 += (mouseY - y10)*easing10;
x11 += (mouseX - x11)*easing11;
y11 += (mouseY - y11)*easing11;
x12 += (mouseX - x12)*easing12;
y12 += (mouseY - y12)*easing12;
float targetX = mouseX;
float dx = targetX - x;
if(abs(dx) > 0) {
x += dx * easing;
}
float targetY = mouseY;
float dy = targetY - y;
if(abs(dy) > 0) {
y += dy * easing;
}
ellipse(x, y, 30, 30);
ellipse(x2, y2, 30, 30);
ellipse(x3, y3, 30, 30);
ellipse(x4, y4, 30, 30);
ellipse(x5, y5, 30, 30);
ellipse(x6, y6, 30, 30);
ellipse(x7, y7, 30, 30);
ellipse(x8, y8, 30, 30);
ellipse(x9, y9, 30, 30);
ellipse(x10, y10, 30, 30);
ellipse(x11, y11, 30, 30);
ellipse(x12, y12, 30, 30);
}
Final 1: Tunnel Creator
This is my final for threejsplaygnd. I started off by making an interesting shape using the torus knot. I experimented with the swinging camera and mesh position. I have attempted to make the torus knot look like it is coming out at you. I experimented with also making the knot rotate but decided against it because if felt like to much was going on. I like this composition because it looks as if the torus knot is creating a curved tunnel.
Code:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
body {
background-color: #ffffff;
margin: 0;
overflow: hidden;
}
</style>
</head>
<body>
<script src="http://brangerbriz.net/labs/threejs_playGnd/js/three.min.js"></script>
<script src="http://brangerbriz.net/labs/threejs_playGnd/js/Detector.js"></script>
<script>
if ( ! Detector.webgl ) Detector.addGetWebGLMessage();
var camera, scene, renderer;
var geometry, material, mesh;
function setup() {
var W = window.innerWidth, H = window.innerHeight;
renderer = new THREE.WebGLRenderer( { preserveDrawingBuffer: true } );
renderer.autoClearColor = false;
renderer.setSize( W, H );
document.body.appendChild( renderer.domElement );
camera = new THREE.PerspectiveCamera( 50, W/H, 1, 10000 );
camera.position.z = 500;
scene = new THREE.Scene();
// paste your code from the geometryGUI here
geometry = new THREE.TorusKnotGeometry(171.39, 11.78, 100, 100, 11.01, 15, 1);
material = new THREE.MeshNormalMaterial({shading: THREE.FlatShading});
mesh = new THREE.Mesh(geometry, material);
scene.add(mesh);
}
function draw() {
requestAnimationFrame( draw );
// experiment with code from the snippets menu here
mesh.position.x = Math.sin( Date.now() * 0.01 ) * 50;
mesh.rotation.z = Date.now() * 0.000;
//swinging camera
mesh.position.z = Math.sin( Date.now() * 0.003 ) * 600;
renderer.render( scene, camera );
}
setup();
draw();
</script>
</body>
</html>
Monday, 11 August 2014
Research
http://vimeo.com/24445851
I find this work very interesting due to the touch input and which creates exciting output along with audio output. I like the realtime aspect and this work creates a very exciting aspect to creating music.
It could almost be turned into a game.
I find this work very interesting due to the touch input and which creates exciting output along with audio output. I like the realtime aspect and this work creates a very exciting aspect to creating music.
It could almost be turned into a game.
Sunday, 10 August 2014
Experimenting with 3rd person control perameters
Experimenting with 3rd person control perameters such as walk/run speed, jump height, gravity etc
I find the game / simulation to be more fun when the walk and run speeds are high.
Experimenting with Unity
Experimenting with Unity. I have made a terrain added trees and used a 3rd person controller to be able to walk/run around the terrain.
Creating terrain in Unity
Creating terrain in unity. So far unity has been the hardest program for me to grasp. I using tools in the terrain editor window. This is an example of terrain with a grass texture on it.
Audio input + particle generator + sunbeams+ wave generator
Audio input + particle generator + sunbeams+ wave generator.
Seems to create a bubbly 3D look where the particles look like they are going to jump out at you.
Seems to create a bubbly 3D look where the particles look like they are going to jump out at you.
Audio + lathe
Subscribe to:
Posts (Atom)





































