We are about to switch to a new forum software. Until then we have removed the registration on this forum.
I am using a PImage to run some animation inside it. It seems I can't use Texture() in my animated PImage.
I am curious about the best way to optimize an sprite image and put it in perspective using Texture() mapping it to specific points.
Even if I think there must be a better way to do it without using a loop to get the pixels from image, I am not being able to run the sprite when scale is negative for X.
PImage sprite, animation;
boolean goRight = true;
int currentFrame;
int numFrames = 15;
int w = 182;
int h = 122;
void setup() {
  size(184, 122, P3D);
  sprite = loadImage("Muybridge.png");
  animation = new PImage(width, height);
}
void draw() {
  currentFrame = (millis()/4/(12)) % numFrames;
  if (goRight) {
    image(sprite, -w*(currentFrame%4), -h*round(currentFrame/4));
  } else {
    scale(-1, 1);
    image(sprite, -w -w*(currentFrame%4), -h*round(currentFrame/4));
  }
  loadPixels();
  for (int y = 0; y < height; y++ ) {
    for (int x = 0; x < width; x++ ) {
      int loc = x + y*width;
      animation.set(x, y, pixels[loc]);
    }
  }
  //animation.updatePixels();
  //background(0);//working only when goRight == true
  beginShape();
  texture(animation); //can't directly use "sprite" here
  vertex(10, 20, 0, 0);
  vertex(130, 5, w, 0);
  vertex(160, 90, w, h);
  vertex(40, 95, 0, h);
  endShape();
}
void keyPressed() {
  if (key == CODED) {
    if (keyCode == LEFT) {
      goRight = false;
    } else if (keyCode == RIGHT) {
      goRight = true;
    }
  }
}

Answers
I got it working now but I still wonder if this is the right way to use the texture() with this kind of animated sprite.