Question

J'écris mon premier programme OpenGL (en C en utilisant freeglut). J'ai le code suivant dans ma fonction d'affichage, qui fonctionne bien et imprime un texte de couleur gris:

glColor3f(0.5f, 0.5f, 0.5f);
glRasterPos2f(0, 0);
glutBitmapString(GLUT_BITMAP_HELVETICA_12, (unsigned char*)"some text");

Maintenant, je voudrais essayer glutStrokeString au lieu de glutBitmapString. Dans mon (humble) la compréhension de l'API, ce qui suit devrait fonctionner:

glScalef(0.003,0.003,1);
glutStrokeString(GLUT_STROKE_ROMAN, (unsigned char*)"some text");

L'exécution de mon programme avec ces deux lignes au lieu des spectacles glutBitmapString-appel le texte une fois avant qu'il ne disparaisse. De plus, de ce point sur tous mes textes affichés avec glutBitmapString ne fonctionnent pas non plus. Qu'est-ce que je manque ici?

Était-ce utile?

La solution

Je l'ai finalement résolu. Le problème est que, pour une raison glutIdleFunc a été réglé sur mon écran-fonction et j'ai oublié de réinitialiser ma matrice (alors j'ai appelé glScalef encore et encore). Il fonctionne très bien maintenant.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top