가로 모드로만 실행되는 앱을 만들고 있습니다. 아직 질감에 대해 걱정할 것은 없지만 텍스쳐 쿼드를 사용하여 배경을 만들려고합니다. 나는 GL_DEPTH_TEST가 비활성화 된 상태에서 drawOverlay (GL10 gl)의 화면을 채우는 쿼드를 그리려고했지만 쿼드가 화면을 완전히 채우지 않을 때마다 아래쪽과 위쪽의 glClearColor 막대를 볼 수 있습니다. 화면.Android OpenGL ES 1 : 쿼드로 디스플레이 채우기
다른 모든 개체에 사용했던 modelview 행렬을 사용하여 그릴 수 없습니다. gluOrtho2D 및 glOrthof를 사용하여 그려 보았지만 그 중 어느 것도 작동하지 않았습니다. 근사 및 원거리 클리핑면이 직각 도형을 사용하는 방식을 실제로 이해하지 못합니다. glOrtho2D 또는 glOrthof를 사용하여 그릴 때마다 쿼드는 전혀 그려지지 않았습니다 (나머지 장면은 여전히 렌더링되었지만). 여기
public void onDrawFrame(GL10 gl) {
drawOverlay(gl);
gl.glLoadIdentity
//...
}
방법 "배경"입니다 : 그려지는 아무것도 전에 - 여기
는private void drawOverlay(GL10 gl) {
gl.glDisable(GL10.GL_DEPTH_TEST);
gl.glMatrixMode(GL10.GL_PROJECTION);
gl.glPushMatrix();
gl.glLoadIdentity();
GLU.gluOrtho2D(gl, 0f, 1f, 1f, 0f);
gl.glMatrixMode(GL10.GL_MODELVIEW);
gl.glLoadIdentity();
background.draw(gl, 1.0f, 1.0f, 1.0f, 1.0f);
gl.glEnable(GL10.GL_DEPTH_TEST);
gl.glMatrixMode(GL10.GL_PROJECTION);
gl.glPopMatrix();
gl.glMatrixMode(GL10.GL_MODELVIEW);
}
내가 onDrawFrame의 시작 부분에서 해당 함수를 호출 직교 행렬을 사용하여 도면에서 내 시도 만들어 짐 :
background = new ShapePostcard(1f, 1f);
나는 꽤 확신 할 수 없다. 일반 modelview 매트릭스를 사용하여 화면을 덮을 쿼드이지만 기본적으로 깊이 테스트를 사용하지 않는 모든 기능을 사용하기 전에 onDrawFrame에서 "배경"을 그리는 것뿐이었습니다.
지원해 주셔서 감사합니다.