Eigene GUI elemente



  • Also was wäre denn dein Vorschlag, oh großer Meister (das Weise musste ich wegen Sparmaßnahmen streichen)
    Ich hab mir ne Klasse ImageBox geschrieben, die einfach nur ne Box mit Bitmap darstellt. Die kann ich dann fragen, ob sie angeklickt wurde. Sicherlich kann ich auch nen OnMouseOver und OnMouseOut schreiben, aber ich weiß nicht, ob ich das wirklich brauch..

    Naja. hab nun doch angefangen, ne kleine GUI zu schreiben, allerdings bin ich da noch im Wanken wegens die Architektur und so..



  • ImageBox is a Window. ImageBox has a Bitmap.

    Bye, TGGC (Für echte Fans)



  • So ähnlich siehts in der Klassenansammlung die ich grade baue auch aus - nur früher hatt ich eben aus Faulheit einfach nur - naja. siehe oben.



  • Wo wir schon beim Thema sind:
    Wenn ich jetzt ein Objekt erstelle in dem Text sein soll ist es ja nicht so sinnvoll, dass man für jedes Einzelelement den Font neu lädt. Auf der anderen Seite finde ich es nicht besonders elegant, im Objektkonstruktor, der ja eh schon ziemlich voll ist, die GL-texture mit zu übergeben..

    Hat da wer noch ne andere Idee??



  • Texture bzw. Fontmanager benutzen.

    Bye, TGGC (Für echte Fans)



  • TGGC schrieb:

    Texture bzw. Fontmanager benutzen.

    Bye, TGGC (Für echte Fans)

    Ist wie gemeint ?
    P.S.: muss man dir eigentlich immer erst irgendwas unfreundliches an den Kopf werfen bevor du mehr als nen Halbsatz sagst?



  • Ein Manager, der Instanzen cached. Neue Instanzen werden nur erstellt, wenn diese Textur bzw. Font noch nicht im Speicher ist. Instanzen werden erst wieder zerstört, wenn keine Referenz darauf verweist.

    Bye, TGGC (Für echte Fans)



  • hmm.. ist nen interessantes Konzept..
    Müsste also den Manager so konstruieren, dass er Pro Textur ne Liste von Objekten hat, die diese nutzen (ginge eigentlich auch mit Meshes, etc..) und bei Zerstörung eines darauf zugreifenden Objekts prüft ob die Textur noch von anderen genutzt wird..
    Andere Möglichkeit wäre Polling - "schau regelmäßig nach wer diese Textur nutzt" - aber etwas Rechenaufwendig..

    Muss ich mal weiter drüber sinnieren..



  • Liste ist unnötig, Listenlänge reicht aus. (aka RefCounting)

    Bye, TGGC (Für echte Fans)



  • *gg* auch wahr.
    wenn der Anzahlcounter 0 is, kanns weg



  • Oder Du lädst nur immer zusätzlich nach, und tust erst bei EVENTS wie z.B. Levelwechsel das Ding flushen.



  • ist an sich auch nicht soo doof, alelrdings ist das bei mir sehr fließend, da ich eine große Welt hab.. Hab mir erstmal nach TGGCs Vorschlag ne Liste gebaut die das Ganze verwaltet.
    Nebenbei hab ich dann doch mal angefangen mich etwas tiefer ins OOP einzubauen.. wie auch immer. So als Frage: Unter welchen Umständen bekommt man vom Compiler die Meldung "cannot declare member function class::method within class" ? Hatte eine Klasse in der die Ableitung funktionierte und eine ähnliche bei der das nicht ging..


Anmelden zum Antworten