mac online apple blackjack http://www.euro-online.org

Thinking after the Consciousness Cube Exhibition

How to find the centre coordinate of the cube can be counted as the difficult aspect – the coordinate changes. Why the coordinate so important? Because it needs using that coordinate as reference when doing the explosion and spanning. But there’s also a simple way, to define the centre point’s coordinate in centre of the screen at the start.

For the future Consciousness shapes creation, may make the shape more randomly. Not only the colours of the shape changing randomly, but the shape itself. With that, it is expected to create a consciousness conception by the 3D computer graphic more vivid.

Codes with comments from Consciousness Cube

import processing.opengl.*;
float [][][][] pointList;
int cubeLength=600;
int num = 40;
float distance = cubeLength / num;
float cubeRotate=0;

void setup() {
size(800, 800, OPENGL);
//create a cube made by points, use array
pointList = new float [num][num][num][3];
frameRate(30);
pointList[0][0][0][0] = -300;
pointList[0][0][0][1] = -300;
pointList[0][0][0][2] = -800;

for (int i=0; i<num; i++) {
for (int j=0; j<num; j++) {
for (int t=0; t<num; t++) {
pointList[i][j][t][0] = pointList[0][0][0][0] + i * distance;
pointList[i][j][t][1] = pointList[0][0][0][1] + j * distance;
pointList[i][j][t][2] = pointList[0][0][0][2] + t * distance;
}
}
}
}

void draw() {
translate(width/2, height/2, 0);

//translate point of rotation on the z axis
//then we can rotate
translate(0,0,-500);
// rotateX(0.1*PI);
rotateY(cubeRotate);
//then here we translate back to the same point
translate(0,0,500);

background(0);
//make the colours of this cube changed, and control the speed of changing colours
if(frameCount%60==0){
stroke(random(255), random(255), random(255));
}
for (int i=0; i<num; i++) {
for (int j=0; j<num; j++) {
for (int t=0; t<num; t++) {
point(pointList[i][j][t][0], pointList[i][j][t][1], pointList[i][j][t][2]);
}
}
}

//this is a trigger use mousePressed, when press mouse button, points spill out with the explosion effect
if (mousePressed) {
for (int i=0; i<num; i++) {
for (int j=0; j<num; j++) {
for (int t=0; t<num; t++) {
//here instead of adding a speed lerp between this position and the position you want to go to (the centre of the screen for example) write over this position with the new position
pointList[i][j][t][0] = lerp(pointList[i][j][t][0], pointList[i][j][t][0] + i * distance * 10 – 3000, 0.05);
pointList[i][j][t][1] = lerp(pointList[i][j][t][1], pointList[i][j][t][1] + j * distance * 10 – 3000, 0.05);
pointList[i][j][t][2] = lerp(pointList[i][j][t][2], pointList[i][j][t][2] + t * distance * 10 – 3000, 0.05);
}
}
}
}
// release mouse button, cube back to normal, here re-draw the cube
else {
pointList[0][0][0][0] = -300;
pointList[0][0][0][1] = -300;
pointList[0][0][0][2] = -800;
for (int i=0; i<num; i++) {
for (int j=0; j<num; j++) {
for (int t=0; t<num; t++) {
pointList[i][j][t][0] = pointList[0][0][0][0] + i * distance;
pointList[i][j][t][1] = pointList[0][0][0][1] + j * distance;
pointList[i][j][t][2] = pointList[0][0][0][2] + t * distance;
}
}
}
}
//make cube spanning
cubeRotate+=0.01;
}

Spanning Sphere – Before the Consciousness Cube

Spanning sphere is the first idea of the exhibition before I changed my idea to the consciousness cube. Thought details between these two changed some but basic spanning idea and the idea of trigger effect kept.

This spanning sphere use blender to create a 3D model and loaded into processing with the form of *.OBJ. The following sketches are from the blender and processing. The texture effect looks changed a bit from the blender to processing, however the texture showed on blender is the texture effect that I wanted.

from Blender:

from Processing:

Consciousness Cube

This is a spanning cube made up by thousands of small points. The colour of this cube changed randomly per 60 frames. By mouse press on the showing area, all of these points will diffuse into a larger and further space.

The idea is around the theme of “Consciousness” and basically created a “consciousness shaped” 3D computer graphic. The conception of consciousness could be abstract and bodiless. That’s the reason using thousands of points to build up the cube instead of one single solid cube – as points group could be abstract and bodiless. In this case, each point symbolized one’s simple idea or feeling, and thousands coming together built up the consciousness system of individual. Cube spanned and changed colour all the time symbolized consciousness’s form varied. And the action of mouse press symbolized there’s no boundary of consciousness, and a small trigger can lead to the consciousness’s changing.

The sketch of this consciousness cube used array and “for” loop.

THE CONSCIOUSNESS CUBE

by mouse press…