Hive Galaxy Video On NFT Showroom

in GEMS4 years ago

video frame image

HIVE Galaxy Video

2 Editions: 200 SWAP.HIVE
Full HD (1920x1080px) video available to download for the buyers
Check out video here: NFT Showroom


Creation Process

For Hive Galaxy I've used Processing 3 code language, this background made in Photoshop and Hive Logo
hivegalaxybackgroud.png

Here is the code made for this video

Feel free to copy, change and experiment yourself

import com.hamoid.*;
VideoExport videoExport;

PImage hive;  
PImage bg;  
int TotalLogos = 350;
float partSize = 30;
PVector positions[];
float grau;
int fcount, lastm;
float frmrate;
int fint = 3;

void setup() {
  fullScreen(P3D);
  frameRate(60);
  videoExport = new VideoExport(this);
  videoExport.startMovie();
  hive = loadImage("[email protected]");
  
  initPositions();
  bg = loadImage("hivegalaxybackgroud.png");
  hint(DISABLE_DEPTH_MASK);
} 

void draw () {
   
  background(bg);
  translate(width/2, height/2);
  grau = frameCount * 0.01;
  rotateY(-grau);
 
  for (int f = 0; f < TotalLogos; f++) {
  
    drawLogo(positions[f]);
  }
    videoExport.saveFrame();
  fcount += 1;
  int m = millis();
  if (m - lastm > 1000 * fint) {
    frmrate = float(fcount) / fint;
    fcount = 0;
    lastm = m;
  } 
  if (grau >= PI*2) {
    videoExport.endMovie();
    exit();
    
  }
}

void drawLogo(PVector center) {
  
  beginShape(QUAD);
  noStroke();
    

  tint(#E31337);
  texture(hive);
  normal(0, 0, 1);
  vertex(center.x - partSize/2, center.y - partSize/2, center.z, 0, 0);
  vertex(center.x + partSize/2, center.y - partSize/2, center.z, hive.width, 0);
  vertex(center.x + partSize/2, center.y + partSize/2, center.z, hive.width, hive.height);
  vertex(center.x - partSize/2, center.y + partSize/2, center.z, 0, hive.height);                
  endShape();  
}

void initPositions() {
  positions = new PVector[TotalLogos];
  for (int n = 0; n < positions.length; n++) {
    positions[n] = new PVector(random(-600, +600), random(-120, +120), random(-600, +600));
  }  
}
void keyPressed() {
  if (key == 'x') {
    videoExport.endMovie();
    exit();
    
  }
}
}

Video Export Library have to be imported to Processing 3 to be able to export video directly from Processing.


Disclamer: Yes I can code lol, BUT! don't ask me to code! No way!
I already gave 15 years for code, now just for fun and for my self!)

Check out all my NFTs here: https://nftshowroom.com/doze/gallery

1588511876842.png

Thanks for following me and support my artwork!

Be Hive Be Happy!

This post will be shared in Twitter with the hastag #hive to promote Hive