Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import processing.opengl.*;
- int aCount = 3;
- int dim = 150;
- float XYdir = 0;
- boolean matter[][][][] = new boolean[aCount][dim+1][dim+1][dim+1];
- void setup() {
- size(displayWidth,displayHeight,OPENGL);
- initUniverse();
- }
- void draw() {
- background(0);
- XYdir++;
- camera( dim*3, (dim/2)*5 + (cos(radians(XYdir)) * -dim*8), (dim/2)*5 + (sin(radians(XYdir)) * -dim*8), dim*3, (dim/2)*5, (dim/2)*5, 1, 0, 0);
- drawUniverse();
- }
- void drawUniverse() {
- for(int i = 0; i <= dim; i++) {
- for(int j = 0; j <= dim; j++) {
- for(int t = 0; t <= dim; t++) {
- if(matter[0][i][j][t] == true && matter[1][i][j][t] == true) {
- matter[1][i][j][t] = false;
- matter[0][i][j][t] = false;
- matter[2][i][j][t] = true;
- }else if(matter[1][i][j][t] == true && matter[2][i][j][t] == true) {
- matter[1][i][j][t] = false;
- matter[2][i][j][t] = false;
- matter[0][i][j][t] = true;
- }else if(matter[0][i][j][t] == true && matter[2][i][j][t] == true) {
- matter[0][i][j][t] = false;
- matter[2][i][j][t] = false;
- matter[1][i][j][t] = true;
- }
- int pos1 = (int)random(-2,2);
- int pos2 = (int)random(-2,2);
- int pos3 = (int)random(-2,2);
- if(i + pos1 < dim && j + pos2 < dim && t + pos3 < dim) {
- if(i + pos1 > -1 && j + pos2 > -1 && t + pos3 > -1) {
- matter[0][i + pos1][j + pos2][t + pos3] = matter[0][i][j][t];
- matter[1][i + pos1][j + pos2][t + pos3] = matter[1][i][j][t];
- matter[2][i + pos1][j + pos2][t + pos3] = matter[2][i][j][t];
- }
- }
- if(matter[0][i][j][t] == true) {
- fill(255,0,0);
- pushMatrix();
- translate(i*5,j*5,t*5);
- rotateX(radians(45));
- rotateX(radians(45));
- box(5);
- popMatrix();
- }
- if(matter[1][i][j][t] == true) {
- fill(0,255,0);
- pushMatrix();
- translate(i*5,j*5,t*5);
- rotateX(radians(45));
- rotateX(radians(45));
- box(5);
- popMatrix();
- }
- if(matter[2][i][j][t] == true) {
- fill(0,0,255);
- pushMatrix();
- translate(i*5,j*5,t*5);
- rotateX(radians(45));
- rotateX(radians(45));
- box(5);
- popMatrix();
- }
- }
- }
- }
- }
- void initUniverse() {
- for(int i = 0; i <= dim; i++) {
- for(int j = 0; j <= dim; j++) {
- for(int t = 0; t <= dim; t++) {
- matter[0][i][j][t] = false;
- matter[1][i][j][t] = false;
- matter[2][i][j][t] = false;
- int iii = (int)random( 1000);
- if(iii == 1) {
- matter[0][i][j][t] = true;
- }
- if(iii == 2) {
- matter[1][i][j][t] = true;
- }
- if(iii == 3) {
- matter[2][i][j][t] = true;
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement