Ubuntu 11.04, G ++, freeglut и GLUT.
Я совсем не понимаю этого. Вот ошибка, которую я получаю:
whatever.cc:315:59: error: cannot convert ‘std::string’ to ‘const unsigned char*’ for argument ‘2’ to ‘void glutStrokeString(void*, const unsigned char*)’
и если я попробую glutBitmapString:
whatever.cc:315:59: error: cannot convert ‘std::string’ to ‘const unsigned char*’ for argument ‘2’ to ‘void glutBitmapString(void*, const unsigned char*)’
Вот соответствующий код (я думаю).
scoreStream << "Score: " << score << "\0";
scoreString = scoreStream.str();
// ...in another method:
glRasterPos2i(0, 0);
glColor4f(0.0f, 0.0f, 0.0f, 1.0f);
glutBitmapString(GLUT_BITMAP_HELVETICA_18, scoreString);
Этот ответ говорит мне, что это должно работать, но это просто не так.
Цитата для тех, кто не хочет прыгать:
// Draw blue text at screen coordinates (100, 120), where (0, 0) is the top-left of the
// screen in an 18-point Helvetica font
glRasterPos2i(100, 120);
glColor4f(0.0f, 0.0f, 1.0f, 1.0f);
glutBitmapString(GLUT_BITMAP_HELVETICA_18, "text to render");
(Кроме того, я попытался оставить там прямую строку, например «текст для рендеринга». Никаких кубиков.)
whatever.cc:315:64: error: invalid conversion from ‘const char*’ to ‘const unsigned char*’
Я в замешательстве. Насколько я помню, это мой первый вопрос о SO, поэтому прошу прощения, если он не слишком хорошо составлен. Я предоставлю любую дополнительную информацию, которую смогу.