How to add image to terrain sketch

int cols, rows;
int scl = 20;
int w = 2000;
int h = 1600;
 
float flying = 0;
 
float[][] terrain;
 
PImage img;
 
void setup() {
  size(600, 600, P3D);
  cols = w / scl;
  rows = h/ scl;
  terrain = new float[cols][rows];
  //String =  img;
  img = loadImage(  "vv.png");

  texture(img);
}
 
 
void draw() {
 
  flying -= 0.1;
 
  float yoff = flying;
  for (int y = 0; y < rows; y++) {
    float xoff = 0;
    for (int x = 0; x < cols; x++) {
      terrain[x][y] = map(noise(xoff, yoff), 0, 1, -100, 100);
      xoff += 0.2;
    }
    yoff += 0.2;
  }
 
 
 
  background(0);
  //stroke(255);
  //noFill();
 
  translate(width/2, height/2+50);
  rotateX(PI/3);
  scale(0.5);
  translate(-w/2, -h/2);
  for (int y = 0; y < rows-1; y++) {
    beginShape(TRIANGLE_STRIP);
    texture(img);
    for (int x = 0; x < cols; x++) {
      vertex(x*scl, y*scl, terrain[x][y], map(x,0,cols,0,img.width), map(y,0,rows,0,img.height) );
      vertex(x*scl, (y+1)*scl, terrain[x][y+1], map(x,0,cols,0,img.width), map(y+1,0,rows,0,img.height));
      //rect(x*scl, y*scl, scl, scl);
    }
    endShape();
  }
}

2 Likes