Iphone opengles中的绘图问题

Iphone opengles中的绘图问题,iphone,objective-c,opengl-es,Iphone,Objective C,Opengl Es,在我的应用程序中,我在屏幕上画了一个红方块(实际上是两个三角形)。然而,如果用户轻敲屏幕或移动手指,绘图就会变得混乱,并导致正方形开始以似乎是随机的模式绘图。知道为什么会这样吗?代码: Triangle3D *triangles = malloc(sizeof(Triangle3D) * 2); triangles[0].v1 = Vertex3DMake(x, y, -3.0); triangles[0].v2 = Vertex3DMake(x+1.0, y-1.0, -3.0); tria

在我的应用程序中,我在屏幕上画了一个红方块(实际上是两个三角形)。然而,如果用户轻敲屏幕或移动手指,绘图就会变得混乱,并导致正方形开始以似乎是随机的模式绘图。知道为什么会这样吗?代码:

Triangle3D  *triangles = malloc(sizeof(Triangle3D) * 2);
triangles[0].v1 = Vertex3DMake(x, y, -3.0);
triangles[0].v2 = Vertex3DMake(x+1.0, y-1.0, -3.0);
triangles[0].v3 = Vertex3DMake(x-1.0, y-1.0, -3.0);
triangles[1].v1 = Vertex3DMake(x-1.0, y-1.0, -3.0);
triangles[1].v2 = Vertex3DMake(x+1.0, y-1.0, -3.0);
triangles[1].v3 = Vertex3DMake(x, y-2.0, -3.0);

    glLoadIdentity();

    glClearColor(0.7, 0.7, 0.7, 1.0);
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glEnableClientState(GL_VERTEX_ARRAY);
    glColor4f(1.0, 0.0, 0.0, 1.0);
    glVertexPointer(3, GL_FLOAT, 0, triangles);
    glDrawArrays(GL_TRIANGLE_STRIP, 0, 18);
    glDisableClientState(GL_VERTEX_ARRAY);
    glClearColor(0.7, 0.7, 0.7, 1.0);

三角形条的垂直方向应该像下图那样排列。

其他形式


三角形条的垂直方向应按此图排列。

其他形式


看起来你在设置
三角形[1]。v1
三次而不是设置
三角形[1]。v1、v2和v3
看起来你在设置
三角形[1]。v1
三次而不是设置
三角形[1]。v1、v2和v3
谢谢你捕捉到这一点,但奇怪的是,这并不是问题所在。我更改了它,但我的程序仍然以同样的方式运行。感谢您捕捉到这一点,但奇怪的是,这并不是问题所在。我改变了它,但我的程序仍然以同样的方式运行。就是这样!谢谢出于好奇,你如何在答案中发布图片?当你发布答案时,工具栏上有一个图标,可以插入图片url。就是这样!谢谢出于好奇,您如何在答案中发布图片?当您发布答案时,工具栏中有一个图标,可以插入图片url。