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!

Suchergebnisse

Suchergebnisse 1-17 von insgesamt 17.

Werbeanzeige

24.04.2012, 17:18

Forenbeitrag von: »Maddin«

SFML - Gelöschter Code wird immer noch ausgeführt!

Hallo, das sollte zwar eigentlich nicht passieren, aber manchmal verstolpert sich der Compiler, so dass ein Modul nicht neu erstellt wird, obwohl es müsste. Ich würde dir empfehlen, das gesamte Projekt einmal neu zu erstellen. Den Befehl dazu müsste es unter Debuggen -> Neu erstellen geben. Dann wird das gesamte Kompilat gelöscht und neu aufgebaut. Gruß

03.03.2011, 20:41

Forenbeitrag von: »Maddin«

Probleme mit SFML und Draw()

Hallo! Wie hast du das denn umgesetzt? Kann es sein, dass du den Kasten nur in dem Frame anzeigst, in dem Escape gedrückt wurde? Im nächsten Frame ist Escape natürlich nicht mehr gedrückt und der Kasten wird nicht mehr angezeigt. Gruß

20.01.2011, 20:49

Forenbeitrag von: »Maddin«

Unterstütze Bildschirmaufl. per WinAPI ermitteln

Hi, damit habe ich mich auch gerade beschäftigt. Schau dir mal die Funktionen EnumDisplayDevices und EnumDisplaySettings an. Damit kannst du die Auflösungen auf den verschiedenen Devices ermitteln. Gruß

27.10.2010, 14:13

Forenbeitrag von: »Maddin«

STL map, iterator und erase

Hi, ich hatte vor kurzer Zeit ein ähnliches Problem. Ich wollte aus einem vector bestimmte Elemente löschen. Das funktionierte auch nicht, weil der Iterator ja ungültig wird. Dazu habe ich remove_if gefunden. In Verbindung mit einem Lambda funktioniert das super, wenn diese Funktion nach der Schleife ausgeführt wird, die bestimmt, welche Elemente gelöscht werden können und diese markiert. C-/C++-Quelltext 1 std::remove_if(liste.begin(),liste.end(),[](Typ t){return t.loeschen;}); Damit wird nicht...

12.08.2010, 17:17

Forenbeitrag von: »Maddin«

SFML - Position von Shapes

Wie Shapes funktionieren und was sf:hape::Circle macht, ist mir klar. Nur finde ich die Umsetzung tatsächlich etwas seltsam. Natürlich ist es kein Problem, den Kreis bei 0|0 zu initialisieren. Dann werde ich mich damit abfinden, dass sf:hape einfach etwas unschön aufgebaut ist.

11.08.2010, 18:18

Forenbeitrag von: »Maddin«

SFML - Position von Shapes

Ja, daran hatte ich auch schon gedacht: Zitat Natürlich könnte ich auch alle Objekte einfach an Position 0,0 initialisieren und dann entsprechend verschieben. Aber, wenn das die "richtige" Lösung ist, dann frage ich mich, warum es dieses System mit den lokalen Koordinaten gibt. Denn der Vorteil davon will sich mir nicht erschließen. Dann könnte man es ja auch einfach so machen, wie bei Sprites, wo bei der Initialisierung gar keine Position vorgegeben wird. Kann mir jemand den Nutzen erklären, wa...

09.08.2010, 20:40

Forenbeitrag von: »Maddin«

SFML - Position von Shapes

Ich habe es genauso, wie es oben zu sehen ist, ausgeführt und hierher kopiert. Der Kreis ist eindeutig unten rechts in der Ecke.

09.08.2010, 20:35

Forenbeitrag von: »Maddin«

SFML - Position von Shapes

Zitat SetPosition - Positioniert das Drawable (in diesem Fall Shape) an die gegebenen - globalen - Koordinaten. Das tut es eben leider nicht. SetPosition setzt die Position in lokalen Koordinaten. Wie ich jetzt festgestellt habe, wird dabei nur die Verschiebung berücksichtigt. Bei einer Rotation gebe ich dir Recht, dass es sich um die globalen Koordinaten verschiebt. Das ist wirklich sehr verwirrend. Folgendes Beispiel: C-/C++-Quelltext 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 2...

09.08.2010, 18:39

Forenbeitrag von: »Maddin«

SFML - Position von Shapes

Danke erstmal für die Antworten. Kann es sein, dass die Funktion SetOrigin ab Version 2.0 die Funktion SetCenter ablöst. Denn in der Doku zu 1.6 (meine Version) finde ich zwar SetCenter, aber nicht SetOrigin (in der Klasse Drawable). In der Doku zu Version 2.0 ist es genau umgekehrt. Und wenn ich mir die Beschreibung so durchlese, finde ich keinen inhaltlichen Unterschied. Ist das nicht ziemlich unklug? Denn jeder, der SetCenter mit 1.6 genutzt hat, wird bei dem Umstieg auf 2.0 viel Änderungsauf...

08.08.2010, 18:24

Forenbeitrag von: »Maddin«

SFML - Position von Shapes

Hallo zusammen, ich habe mich grade mal daran gesetzt, ein erstes Spiel per SFML zu schreiben (es soll ein simples Pong werden). Dazu habe ich erstmal einen Kreis erstellt, der initial genau in der Mitte des Fensters liegt. Den Kreis habe ich als Shape erstellt. Als ich diesen dann bewegen wollte, bin ich darauf gestoßen, dass die Koordinaten, die die verschiedenen Setter und Getter nutzen, relativ zum Zentrum des Shape liegen. Somit ist z.B. die Kollisionsberechnung sehr unschön, da ich jeweils...

30.03.2010, 19:14

Forenbeitrag von: »Maddin«

boost::thread ist joinable obwohl beendet

Gibt es denn eine andere, sichere Möglichkeit, herauszufinden, ob der Thread beendet wurde? Eine Variable dafür zu benutzen, die ich am Ende des Threads auf false setze, finde ich nicht so schön. Denn der Thread kann ja durchaus an mehreren Punkten verlassen werden, außerdem muss ich dafür dann noch einen extra Mutex anlegen und entsprechend nachführen.

29.03.2010, 18:16

Forenbeitrag von: »Maddin«

boost::thread ist joinable obwohl beendet

Hallo zusammen, ich habe ein Problem mit der Funktion boost::thread::joinable(). Ich möchte damit überprüfen, ob ein Thread noch läuft oder ob er beendet ist. Die Doku sagt dazu: "Returns: true if *this refers to a thread of execution, false otherwise." Das "thread of execution" deute ich so, dass es heißt, dass der Thread noch läuft. Das scheint allerdings bei mir nicht zu funktionieren. Ich habe dazu einmal folgendes kurzes Test-Programm erstellt: C-/C++-Quelltext 1 2 3 4 5 6 7 8 9 10 11 12 13...

03.08.2009, 17:01

Forenbeitrag von: »Maddin«

Updates zum Buch! (3te Auflage)

Hallo zusammen, ich habe einen Fehler gefunden, der sich durch das gesamte Buch und die Tribase-Engine zieht: Der Operator new gibt im Fehlerfall unter C++ nicht NULL zurück, sonder wirft eine Exception vom Typ std::bad_alloc. Die Überprüfung auf NULL ist also unsinnig. Zwar kann man mit ein paar Tricks auch erreichen, dass NULL zurückgegeben wird, aber da das dann wieder C und nicht C++ wäre, ist das eher unschön. In diesem Zug möchte ich auch einmal anregen, ob es nicht möglich wäre für eine n...

13.06.2009, 19:09

Forenbeitrag von: »Maddin«

DVD per DirectShow abspielen

Vielen Dank für eure Antworten! Zitat von »"dot"« DirectShow ist schon lange nichtmehr Teil von DirectX, deswegen wirst du im Sample Browser auch nix dazu finden... DS gehört zum Plattform SDK... Das wusste ich nicht - bisher habe ich auch nur selten mit DirectShow gearbeite. Mittlerweile habe ich mir ein altes SDK runtergeladen. Ich kann die Beispiele zwar nicht kompilieren, aber es hat mir vorerst geholfen. Werde mir dann bei Gelegenheit nochmal die aktuellen Beispiele des PSDK anschauen.

12.06.2009, 17:56

Forenbeitrag von: »Maddin«

DVD per DirectShow abspielen

Vielen Dank für die Antwort! Das Neuinstallieren des Codec hat tatsächlich die Probleme behoben. Kannst du mir sagen, wie das Beispiel im DirectX-SDK heißt? Denn ich kann es im Sample-Browser nicht finden.

11.06.2009, 18:22

Forenbeitrag von: »Maddin«

DVD per DirectShow abspielen

Hallo zusammen! Ich bin seit einiger Zeit auf der Suche nach einer Möglichkeit eine DVD auf einer Textur abzuspielen. Im Internet bin ich dabei mehrmals auf folgenden Code gestoßen zum Abspielen in einem Fenster. Wollte dann erstmal das ausprobieren, bevor ich sowas besonderen mache: C-/C++-Quelltext 1 2 3 4 5 6 7 8 9 10 CoCreateInstance(CLSID_DvdGraphBuilder,NULL,CLSCTX_INPROC_SERVER,IID_IDvdGraphBuilder,(void**)&m_pDVDGraph); AM_DVD_RENDERSTATUS sRenderStatus; m_pDVDGraph->RenderDvdVideoVolume...

Werbeanzeige