//Render the text for(i = 0; i < 10; i++){ if(g_pszConsoleLines[i] != NULL){ LPSTR pszSubstr; glColor4f(1.0f, 1.0f, 1.0f, 1.0f); //Move to the desired location glLoadIdentity(); glTranslated(10, 20 + i*15, 0.999); glRasterPos2f(0.0f, 0.0f); pszSubstr = strstr(g_pszConsoleLines[i], "\\c"); if(pszSubstr != NULL){ pszSubstr = g_pszConsoleLines[i]; while(*pszSubstr != 0){ if(*pszSubstr != '\\'){ glCallLists(1, GL_UNSIGNED_BYTE, pszSubstr); pszSubstr++; }else{ glColor4f(1.0f, 0.0f, 0.0f, 1.0f); glRasterPos2f(0.0f, 0.0f); pszSubstr++; } } }else{ glCallLists((GLsizei)strlen(g_pszConsoleLines[i]), GL_UNSIGNED_BYTE, g_pszConsoleLines[i]); } } }