public void calculateBoundingBox(){
    int S32_NUM_VERTS = parent_surface.S32_NUM_VERTS;
    for(int i = 0; i < S32_NUM_VERTS; i++){
      float[] xyz = xyz_normals[i].F32_3_XYZ;
      if( bb_minXYZ[0] > xyz[0]) bb_minXYZ[0] = xyz[0];
      if( bb_minXYZ[1] > xyz[1]) bb_minXYZ[1] = xyz[1];
      if( bb_minXYZ[2] > xyz[2]) bb_minXYZ[2] = xyz[2];
                                 
      if( bb_maxXYZ[0] < xyz[0]) bb_maxXYZ[0] = xyz[0];
      if( bb_maxXYZ[1] < xyz[1]) bb_maxXYZ[1] = xyz[1];
      if( bb_maxXYZ[2] < xyz[2]) bb_maxXYZ[2] = xyz[2];
    }
    
    bb_size[0] = bb_maxXYZ[0] - bb_minXYZ[0];
    bb_size[1] = bb_maxXYZ[1] - bb_minXYZ[1];
    bb_size[2] = bb_maxXYZ[2] - bb_minXYZ[2];
  }