FAQ
Cover
This is the archive Discourse for the Processing (ALPHA) software.
Please visit the new Processing forum for current information.

   Processing 1.0 _ALPHA_
   Bugs
   Software Bugs
(Moderator: fry)
   drawing order and alpha
« Previous topic | Next topic »

Pages: 1 
   Author  Topic: drawing order and alpha  (Read 525 times)
aileron


drawing order and alpha
« on: Feb 13th, 2004, 9:21am »

Noticed that alpha transperancy of an object only wants to work correctly on objects drawn before it.
 
Code:

int camX = 300;
int camY = 200;
int camZ = 0;
int camrotX = 0;
int camrotY = 0;
int camrotZ = 0;
 
int rotate1 = 0;
 
void setup() {
  size(600, 400);
  rectMode(CENTER_DIAMETER);
}
 
void loop() {
  background(100);
  stroke(200);
  
  if(keyPressed){
    if(key == UP)
      camrotX+=2;
    if(key == DOWN)
      camrotX-=2;
    if(key == RIGHT)
      camrotY-=2;
    if(key == LEFT)
      camrotY+=2;
  }
  
  translate(camX, camY, camZ);
  rotateX(camrotX*(PI/180));
  rotateY(camrotY*(PI/180));
  rotateZ(camrotZ*(PI/180));
  
  rotate1++;
  if(rotate1 > 359)
    rotate1 = 0;
  
  fill(100,105,60, 150);
  box(0,0,0, rotate1,rotate1,rotate1, 50);
  fill(100,60,60, 150);
  box(100,0,0, 0,0,0, 50);
  box(-100,0,0, 0,0,0, 50);
}
 
void box(int x, int y, int z, int rotX, int rotY, int rotZ, int size){
  push();
    translate(x,y,z);
    rotateX(rotX*(PI/180));
    rotateY(rotY*(PI/180));
    rotateZ(rotZ*(PI/180));
    box(size);
  pop();
}
 

 
And it seems to me that a 3d object should alpha its own rear edges, does it not do that on purpose?
« Last Edit: Feb 13th, 2004, 9:24am by aileron »  
fry


WWW
Re: drawing order and alpha
« Reply #1 on: Feb 13th, 2004, 7:23pm »

yeah, that's an artifact of most 3D renderers (opengl has the same problem). we may switch to actually sorting all the polygons back to front first, but that would only be if/when we move to the new graphics engine.
 
(edit) actually, we'll prolly just offer it as an option. it's a speed hit to enable it, but i know that it's often worth it.
« Last Edit: Feb 13th, 2004, 7:25pm by fry »  
Pages: 1 

« Previous topic | Next topic »