So, in SFML 2.0 text drawing function will be like this:
Maybe it help others who have trouble with this )
...
setlocale(LC_ALL, "Russian");
...
wchar_t* MultiCharToUniChar(char* mbString)
{
int len = 0;
len = (int)strlen(mbString) + 1;
wchar_t *ucString = new wchar_t[len];
mbstowcs(ucString, mbString, len);
return ucString;
}
void DrawText ( int x, int y, char *format, ... )
{
char buffer[512];
wchar_t *wbuffer = NULL;
va_list msg;
va_start(msg, format);
vsnprintf(buffer, 512, format, msg);
va_end(msg);
wbuffer = MultiCharToUniChar ( buffer );
sf::Text text ( wbuffer, YOUR_FONT, YOUR_FONT_SIZE );
text.setPosition ( x, y );
sfRenderWindow.pushGLStates();
sfRenderWindow.draw ( text );
sfRenderWindow.popGLStates();
delete []wbuffer;
}
After that you can call it like this:
DrawText ( 10, 10, "SDL, давай, до свидания! also current fps: %0.f", MyGameFPSCounterFloat );
Still, its probably more harder than in 1.6 ver, because in 1.6 there is no need in wchar, thanx to "handmade" charsets.