如何将viewPort原点设置为(x = 0,y = 0)?

时间:2019-10-05 11:36:32

标签: ios metal metalkit

我有一个想要绘制矩形的MTKView。屏幕的尺寸为750 * 1294,视图覆盖了我的所有屏幕。我执行以下命令:

[RenderCommand setViewport: (MTLViewport){ 0.0, 0.0, 750, 1294, 0.0, 1.0 }];

然后,当我尝试绘制包含像素坐标的缓冲区时:

var Vertices = [
  Vertex(x: 0,   y: 0,   z: 0, r: 1, g: 0, b: 0, a: 1),
  Vertex(x: 375, y: 0,   z: 0, r: 1, g: 0, b: 0, a: 1),
  Vertex(x: 375, y: 647, z: 0, r: 1, g: 0, b: 0, a: 1),
  Vertex(x: 0,   y: 647, z: 0, r: 1, g: 0, b: 0, a: 1),
 ]

使用此着色器:

out.pos = float4(in.pos.x, in.pos.y, 0, 1);

就像下面的图片一样,它不是从左上方绘制的,而是从顶部/中间绘制的!为什么?

enter image description here

0 个答案:

没有答案