문제

간단하게 쓰고 있어요 OpenGL 사용하는 응용 프로그램 GLUT.나는 내 자신의 글꼴 렌더링 코드를 롤링하고 싶지 않고 대신에 함께 제공되는 간단한 비트맵 글꼴을 사용하고 싶습니다. GLUT.그들이 일하게 하려면 어떤 단계를 거쳐야 합니까?

도움이 되었습니까?

해결책

GLUT 비트맵 글꼴을 사용하면 OpenGL에서 간단한 텍스트 표시를 쉽게 수행할 수 있습니다.이는 간단한 2D 글꼴이며 ~ 아니다 디스플레이에 적합 내부에 귀하의 3D 환경.그러나 디스플레이 창에 오버레이되어야 하는 텍스트에는 적합합니다.

다음은 Eric Cartman이 가장 좋아하는 인용문을 GLUT 창에 녹색으로 표시하는 샘플 단계입니다.

화면 좌표에서 래스터 위치를 설정하겠습니다.따라서 2D 렌더링을 위한 투영 및 모델 뷰 행렬을 설정하십시오.

glMatrixMode(GL_PROJECTION);
glPushMatrix();
glLoadIdentity();
gluOrtho2D(0.0, WIN_WIDTH, 0.0, WIN_HEIGHT);

glMatrixMode(GL_MODELVIEW);
glPushMatrix();
glLoadIdentity();

글꼴 색상을 설정합니다.(나중에 설정하지 말고 지금 설정하세요.)

glColor3f(0.0, 1.0, 0.0); // Green

텍스트가 표시될 창 위치를 설정합니다.이는 화면 좌표에서 래스터 위치를 설정하여 수행됩니다.창의 왼쪽 하단은 (0, 0)입니다.

glRasterPos2i(10, 10);

글꼴을 설정하고 다음을 사용하여 문자열 문자를 표시합니다. 글루비트맵문자.

string s = "Respect mah authoritah!";
void * font = GLUT_BITMAP_9_BY_15;
for (string::iterator i = s.begin(); i != s.end(); ++i)
{
    char c = *i;
    glutBitmapCharacter(font, c);
}

행렬을 다시 복원합니다.

glMatrixMode(GL_MODELVIEW);
glPopMatrix();

glMatrixMode(GL_PROJECTION);
glPopMatrix();
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top