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

41

25.05.2010, 15:26

Nö eben nicht, wenn du z.B. einen Manager für das Hauptmenü verwenden möchtest und einen für das erste Level und einen für das zweite Level oder ein Level in mehrere Abschnitte unterteilen willst, usw.?
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

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

42

25.05.2010, 15:28

1. Das ist doch kein Problem. Du brauchst ja kein direkten Zugriff auf die Internas von Input aus der WndProc raus.

2. Das sagt ja niemand. Aber deshalb muss die Liste noch lang nicht statisch sein.
@D13_Dreinig

43

25.05.2010, 15:28

Warum sollte ich die gleiche Textur einmal fürs Hauptmenü und einmal fürs 1. Level laden, wenn man doch einach die gleiche nehmen könnte?

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

44

25.05.2010, 15:29

Warum sollten alle Instanzen deines Texturmanagers die selbe Liste verwalten?

45

25.05.2010, 15:32

@David_pb
Wie meinst du das mit dem Input?

@dot
Also soll der Manager doch ein Singleton sein?
Irgendwie versteh ich nicht was ihr wollt ^^

46

25.05.2010, 15:34

Warum sollte ich die gleiche Textur einmal fürs Hauptmenü und einmal fürs 1. Level laden, wenn man doch einach die gleiche nehmen könnte?

Ich meinte nicht den Ladescreen für das Level, sondern das Level selbst.
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

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

47

25.05.2010, 15:36

@David_pb
Wie meinst du das mit dem Input?
Deine "Taste gedrückt Liste" aus der Input Klasse.

Was du tun könntest ist z.B. das du eine Liste von Eventhandlern registrierst (ich glaub bei dir hieß das Graphics) und alle Events an die entsprechenden Handler weiterleitest. Dann kannst du die Behandlung im Handler erledigen.
@D13_Dreinig

48

25.05.2010, 15:36

Aber wäre es nicht besser einfach alle Texturen in einen Manager zu laden und den dann einfach benutzen.
So muss ich die Textur nur einmal laden und nicht für jedes Level neu.

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

49

25.05.2010, 15:41

Aber wäre es nicht besser einfach alle Texturen in einen Manager zu laden und den dann einfach benutzen.
So muss ich die Textur nur einmal laden und nicht für jedes Level neu.

Und die Texturen die nicht mehr vom Level benötigt werden eiern dann im Speicher rum? Ggf endlos lang ohne wirklich gebraucht zu werden? Oder willst du eine Referenzzählung und ne Garbagecollection durchführen?
Im normalfall würdest du die Texturliste beim Levelladen ja ohnehin erstmal löschen und dann neu aufbauen. Doppelte Referenzen innerhalb eines Levels werden damit abgedeckt und du hast keine unnötigen ungenutzten Daten im Speicher.
Es würde also z.B. reichen einfach eine Instanz der Textureliste in deinem Levelobjekt zu halten.
@D13_Dreinig

50

25.05.2010, 15:47

Also ich habe Referenzzähler und einen Garbagecollector drin und bis jetzt habe ich es so getan:

Im ctor eines Sprites wird die benötigte Textur in die Liste eingefügt oder wenn sie schon vorhanden ist nochmal verwendet und
im dtor wird die Textur aus der Liste entfernt bzw. der Referenzzähler wird erniedrigt.

Das gleiche ist bei den Sounds.

Werbeanzeige