GLPaint 예제 프로젝트는 브러시를 움직일 때 GL_POINT_SPRITE를 사용하여 브러쉬 텍스처의 복사본을 그립니다. iPhone에서는 glPointSize가 64x64 픽셀로 제한됩니다. 이것은 하드웨어 제한 사항이며 시뮬레이터에서는 더 크게 만들 수 있다고 생각합니다.
배경 이미지를 그릴 때 GL_POINT_SPRITE 메서드를 사용하는 것처럼 들리지만, 실제로 원하는 것은 아닙니다. 대신 화면을 채우는 평평하고 질감이있는 상자를 그려보십시오.
는 여기에 2D 상자 정점과 texcoords을 설정 OpenGL을 코드의 비트의 다음을 그립니다
const GLfloat verticies[] = {
0.0f, 0.0f,
1.0f, 0.0f,
0.0f, 1.0f,
1.0f, 1.0f,
};
const GLfloat texcoords[] = {
0, 0,
1, 0,
0, 1,
1, 1,
};
glVertexPointer(2, GL_FLOAT, 0, verticies);
glEnableClientState(GL_VERTEX_ARRAY);
glTexCoordPointer(2, GL_FLOAT, 0, texcoords);
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, texture);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
희망하는 데 도움이! 카메라 투영법 설정 방법에 따라 정점을 다르게 지정해야합니다. 내 경우, 아래 코드를 사용하여 GL_MODELVIEW를 설정합니다. GLPaint 예제가 어떻게 작동하는지 잘 모르겠습니다.
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glOrtho(0, 1.0, 0, 1.0, -1, 1);