float[][] zBuffer; Vector3D[][] normalBuffer; Vector3D[][] localCoordBuffer; Shader[][] shaderBuffer; Shader[] shaders; Solid models[]; int minZBuffer = -1024; int w=100,h=100; Vector3D light; Transform worldTransform; final int STOCHASTIC = 0; final int SEQUENTIAL = 1; //-------------------- void setup(){ worldTransform = new Transform(); light = new Vector3D(0,0,1); loadScene("dumbell.tdb"); size(w,h); // always center the scene worldTransform.translate(width/2,height/2,0); initBuffers(); noiseSeed( 19 ); } //-------------------- void initBuffers(){ shaderBuffer = new Shader[width][height]; zBuffer = new float[width][height]; normalBuffer = new Vector3D[width][height]; localCoordBuffer = new Vector3D[width][height]; for(int i=0 ; i