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

61

26.05.2010, 11:28

Darf ich denn nicht einfach Graphics, Audio und Input als Singleton schreiben, in der TriBase ist das auch so und da meckert irgendwie keiner.
Im Buch "C++ für Spieleprogrammierer" wurde im SDL Teil auch der Timer und die Framework Klasse als Singleton geschrieben :(

Bei deiner Lösung könnte ich auch gar nicht mehr den Sprites per ctor eine Texture usw. zu weisen :(

62

26.05.2010, 12:07

Darf ich denn nicht einfach Graphics, Audio und Input als Singleton schreiben, in der TriBase ist das auch so und da meckert irgendwie keiner.
Im Buch "C++ für Spieleprogrammierer" wurde im SDL Teil auch der Timer und die Framework Klasse als Singleton geschrieben

Die Bücher sind ja auch schon älter und außerdem ist es ja einsteigerfreundlich, was die Bücher ja auch sein sollen.
Wenn du es unbedingt mit Singletons machen willst, dann mach es halt so. Ist ja dein Framework. Aber irgendwann wirst du dich mit Sicherheit darüber ärgern.


Bei deiner Lösung könnte ich auch gar nicht mehr den Sprites per ctor eine Texture usw. zu weisen :(

Natürlich könntest du Oo. Musst halt nur der Funktionen einen weiteren Parameter verpassen.
Ich weiß es dauert viel zu lange, aber ich habe echt nur Pech. Habe mir heute mal eben im Zeigefinger Nerv und Sehne durchtrennt. Dennoch kann es nicht mehr all zu lange dauern mit dem Tutorial. Außerdem kamen auch noch Prüfungen und dergleichen dazwischen.
Klatscht die Hopper an die Wand, Deutschland ist ein Raverland! :D

63

26.05.2010, 12:10

Ne eben nicht.
Bei deiner Lösung wird ein Sprite mit der Graphics-Klasse erstellt bzw. einem Spriteobjekt zugewiesen.
Ist das dann nicht mehr Schreibaufwand bzw. der Code ist nicht mehr so schön :P?

€ weiß schon bin nervig und naiv :D

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von ».:!Batzer!:.« (26.05.2010, 12:15)


64

26.05.2010, 13:13

Das war nur ein Beispiel, wie man es anders lösen könnte. Wenn du dem Objekt noch eine Textur mit zuweisen willst, übergibst du halt die Textur der Funktion, die das Sprite erstellt. Wobei der erste Parameter doch schon eine Textur laden würde. Die Funktionalität der Sprites könntest du dann ganz gemütlich in der Sprite Klasse erledigen, du hast ja das Device. Außerdem wird der Sprite Pointer ja zurückgegeben, damit man mit dem außerhalb der Grafikklasse arbeiten kann.
Ich weiß es dauert viel zu lange, aber ich habe echt nur Pech. Habe mir heute mal eben im Zeigefinger Nerv und Sehne durchtrennt. Dennoch kann es nicht mehr all zu lange dauern mit dem Tutorial. Außerdem kamen auch noch Prüfungen und dergleichen dazwischen.
Klatscht die Hopper an die Wand, Deutschland ist ein Raverland! :D

65

06.06.2010, 22:43

Habe meinen ersten Post bearbeitet!
Neuer Link usw.

R3D L10N

Treue Seele

Beiträge: 106

Beruf: Schüler

  • Private Nachricht senden

66

07.06.2010, 09:30

Sieht super aus! Werde ich mir mal anschauen ;)

//Edit: Beispiel läuft, Code schön beschrieben, ich versuch auch mal mein Glück :D
MfG R3DL10N

67

07.06.2010, 10:29

Mh also Exceptions fehlen noch, die solltest du nach Möglichkeit von Anfang an verwenden. Warum hast du nicht Raw Input verwendet? Damit könntest du den Input Kram komplett in eine einzige, unabhängige Klasse stecken. Naja und du reichst deine Variablen per Parameter oder per Funktion weiter. Ist natürlich nicht die beste Lösung, wolltest du da noch was dran ändern? Das Aussehen deiner Log Klasse gefällt mir sehr gut und ansonsten kann dein Framework ja auch schon ein bisschen was. ;)
Ich weiß es dauert viel zu lange, aber ich habe echt nur Pech. Habe mir heute mal eben im Zeigefinger Nerv und Sehne durchtrennt. Dennoch kann es nicht mehr all zu lange dauern mit dem Tutorial. Außerdem kamen auch noch Prüfungen und dergleichen dazwischen.
Klatscht die Hopper an die Wand, Deutschland ist ein Raverland! :D

68

07.06.2010, 14:15

Also die Exceptions werd ich auf jedencfall als nächsten reinbauen ;)
Raw Input fiel für mich weg, da 1. ich es nicht verstanden hab :P 2.weil so weit ich das weiß, Raw Input
nur die realtive mausPosition hat. Welche Variablen reiche ich per Parameter weiter?
Also nur Framework intern, also nicht beim benutzen :) Und wenigstens sind die Singletons weg ;)
Bei der Logfile muss ich fairer Weise sagen, dass einiges davon aus dem Buch "C++ für Spieleprogrammierer"
ist.

Ein Problem besteht aber: Wenn ich 2 oder mehr Fenster erstelle rendert nur eins und wenn ich zwischen denen Wechsel dann keins mehr :(

Aber ansonsten danke für die Bewertung :P

69

07.06.2010, 14:46

Also mit Raw Input bekommt man generell nur die relative Mausposition, allerdings könntest du die absolute Mausposition mit Hilfe der WinApi Funktionen bekommen. Und Raw Input ist an sich nicht schwer, es gibt doch sogar einige Beispiele in der MSDN. Ja das mit dem weiterreichen der Variablen ist auf jeden Fall schonmal besser als Singletons und ich denke dafür, dass es dein erstes Framework ist, geht das schon in Ordnung. Das mit dem Rendern in 2 Fenstern geht mit mehreren Devices oder mit Swap Chains:

http://www.codesampler.com/dx9src/dx9src…ultiple_devices
Ich weiß es dauert viel zu lange, aber ich habe echt nur Pech. Habe mir heute mal eben im Zeigefinger Nerv und Sehne durchtrennt. Dennoch kann es nicht mehr all zu lange dauern mit dem Tutorial. Außerdem kamen auch noch Prüfungen und dergleichen dazwischen.
Klatscht die Hopper an die Wand, Deutschland ist ein Raverland! :D

idontknow

unregistriert

70

07.06.2010, 15:01

@-insane-: Warum verwendest du Raw Input? Ich hab mithilfe der Windows Message WM_INPUT alle Tastendrücke und auch die Maus abgedeckt, das ganze ohne Polling also wunderbar. Mus es nur noch testen, aber da nichts komplexes dahinter steckt sollte das weniger das Problem sein :).

Muss mich nur noch um Mausposition bemühen aber alle (normalen) Eingabe Möglichkeiten ansich habe ich bereits abgedeckt!

Werbeanzeige