Fog of War deaktivieren

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Fog of War deaktivieren

    Hi, Community!

    Ich mache ein Strategiespiel und habe Nebel des Krieges gebaut. Er besteht aus 32X32, schwarzen Instanzen, die mit image_alpha unsichtbar werden, wenn ein Unit näher als distance(100) herankommt. Ist es weg, geht image_alpha auf 0.5, damit man sieht, was man schon erforscht hat. Wenn aber alle 32 Pixel eine Fog-Instanz ist und man eine 3000x3000 - Map hat, ist die Framerate fast Null. Wie kann ich die, die außerhalb des 640x480 Views[0] liegen deaktivieren, und wenn sie wieder ins View kommen aktivieren, ohne dass die Framerate darunter leidet?

    ,-Megamag

    Magical dream time!
  • Also: Mit view_xview[0] und view_yview[0] erhälst du die Koordinaten der oberen linken Ecke des Views, und mit view_wview[0] und view_hview[0] die Ausmaße des Views. (Stattdessen kannst du auch einfach direkt 640 und 480 eintragen, wenn du sicher bist, dass du diese ausmaße nicht mehr änderst.
    Mit instance_deactivate_object(obj) deaktivierst du also erstmal alle Instanzen deines FoW (einmalig!), mit instance_activate_region(view_xview[0],view_yview[0],view_wview[0],view_hview[0],true) aktivierst du in jedem Step alle Instanzen innerhalb deiner View, und die Objekte selbst sollten pro Step überprüfen, ob sie schon wieder aus diesem Bereich raus sind, und sich dann wieder deaktivieren.
    Details sind in der Hilfe nachzulesen.
  • Benutzer online 1

    1 Besucher