Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

n0_0ne

1x Contest-Sieger

  • »n0_0ne« ist der Autor dieses Themas
  • Private Nachricht senden

1

19.03.2009, 03:02

SFML Unicode String + wcout not declared

Hallo,
Ich versuche gerade ein einen FPS-String auf den Screen rendern zu lassen:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
m_TextFPS.SetText(L"FPS: 1");
m_TextFPS.SetFont(m_FontArial);
m_TextFPS.SetSize(20);
m_TextFPS.SetColor(sf::Color(255, 255, 255));
m_TextFPS.SetPosition(5.0f, 250.0f);
...
Schleife:
wchar_t cBuffer[100];
swprintf(cBuffer, L"FPS: %i", static_cast<int>(1.0f / m_Window.GetFrameTime()));
m_TextFPS.SetText(cBuffer);
m_Window.Draw(m_TextFPS);

Gibt nichts aus, Hintergrund bild wird gerendert, aber kein Text zu sehen...
Dann hab ich mir testweise mal cBuffer ausgeben lassen wollen, um zu sehen, was drinsteht, aber mit cout gibts nur Quark... Durch googlen hab ich wcout entdeckt, da gibt er mir aber trotz #include <iostream> und using namespace std; ein wcout not declared in this scope... jemand eine Ahnung, was schiefläuft?

K-Bal

Alter Hase

Beiträge: 703

Wohnort: Aachen

Beruf: Student (Elektrotechnik, Technische Informatik)

  • Private Nachricht senden

2

19.03.2009, 11:46

Ich habe das mit stringstreams gemacht, das ging problemlos. Ich habe aber leider den Quellcode auf meinem Desktop-PC und sitz hier grad an meinem Laptop bei meiner Freundin ;-)

3

19.03.2009, 15:20

ist UNICODE definiert? (MSVC: bei Projekteinstellugnen der zeichensatz irgendwo). dürfte zwar laut Standard nix an cout/wcout ändern, aber bei microsoft weiß man das nie ;)

n0_0ne

1x Contest-Sieger

  • »n0_0ne« ist der Autor dieses Themas
  • Private Nachricht senden

4

19.03.2009, 16:32

hmmm ich benutze Code::Blocks

Edit: immer noch niemand eine ahnung, woran es liegen könnte, dass er einfach keine Strings rendert?

n0_0ne

1x Contest-Sieger

  • »n0_0ne« ist der Autor dieses Themas
  • Private Nachricht senden

5

20.03.2009, 14:47

Also ich habe es jetzt auch mal mit stringstream versucht:

C-/C++-Quelltext

1
2
3
std::ostringstream oss;
oss << "Test";
m_TextFPS.SetText(oss.str());


<iostream> und <sstream> wurden inkludiert, m_TextFPS ist ein sf::String...
Das Programm läuft mit obigem quelltext bis zu Zeile drei, und crasht dann... was mache ich denn falsch? :(

EDIT: warum das mit den stringstreams nicht klappt, keine Ahnung...
aber meine Strings zu rendern funktioniert jetzt.... ich hab doch tatsächlich vergessen meinen Font zu laden :evil: :oops: :roll: :(

K-Bal

Alter Hase

Beiträge: 703

Wohnort: Aachen

Beruf: Student (Elektrotechnik, Technische Informatik)

  • Private Nachricht senden

6

23.03.2009, 14:24

C-/C++-Quelltext

1
2
3
4
5
6
std::stringstream debugss;
debugss << "FPS: "
              << std::fixed
              << std::setprecision(0)
              << (1.f/delta)
m_DebugString.SetText(debugss.str());


So läuft es bei mir jetzt ;)

Werbeanzeige