如何填充顶点'形状与处理中的图像?

时间:2017-07-18 07:38:49

标签: processing

当我使用我的代码时,它说:没有与vertex()调用一起提供的uv文本坐标。 这是我使用的代码:

PImage img;

void setup() {
size(720, 360, P3D);
}

void draw() {
  beginShape();
  img = loadImage("image.png");
  texture(img);
  vertex(50, 20);
  vertex(105, 20);
  vertex(105, 75);
  vertex(50, 75);
  endShape();
}

1 个答案:

答案 0 :(得分:0)

就像你的错误和乔治的评论所说,要使用纹理,你需要将4个参数传递给vertex()函数,而不是2个参数。

来自the reference

size(100, 100, P3D);
noStroke();
PImage img = loadImage("laDefense.jpg");
beginShape();
texture(img);
vertex(10, 20, 0, 0);
vertex(80, 5, 100, 0);
vertex(95, 90, 100, 100);
vertex(40, 95, 0, 100);
endShape();

texture

另请注意,您不应将图像加载到draw()函数中,因为这会导致您每秒加载60次相同的图像。您应该从setup()函数加载一次。