Nur Objekte im Bild zeichnen

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

  • Nur Objekte im Bild zeichnen

    Hi Leutz!
    Also ich habe in einem Room eine Menge kleiner Bodenobjekte, die sich zu einer großen Bodenebene zusammenstellen. Nun möchte ich, dass alle Objekte außerhalb des Bildes ausgeblendet werden, bzw. nur die Objekte gedrawt werden, die sich innerhalb eines Views befinden!
    Ich habe 2 Views, für Spieler 1 und Spieler 2. Ich habe auch schon eine recht einfache Lösung gefunden:

    GML-Quellcode

    1. //Im Draw-Event
    2. if view_current=0 && (point_distance(x,y,spieler1.x,spieler1.y)<500)
    3. scr_draw_haus(); //Das Script, dass das Haus zeichnet
    4. if view_current=1 && (point_distance(x,y,spieler2.x,spieler2.y)<500)
    5. scr_draw_haus(); //Das Script, dass das Haus zeichnet

    Nur habe ich sehr viele Objekte im Spiel, die diese Abfragen im Draw-Event beinhalten! Und ich habe das Gefühl, dass diese ziemlich viel Rechenleistung fressen!
    Hat vielleicht einer von euch eine einfachere Lösung, die bestenfalls noch mehr rechenleistung einspart?

    "Make love, not Warcraft"
  • hmjoa also ich hätte vielleicht erwähnen sollen, dass das Spiel komplett in 3D ist! Hier mal einen Screenshot um das zu verdeutlichen:

    also das mit den tiles hört sich ja ganz gut an, nur habe ich ja für jedes objekt ein model
    (".mod"-dateien)! Die gesasmten Objekte deaktivieren is hier aber keine guten lösung, weil dann natürlich auch die kollisionen nicht berechnet werden, dass heißt ich könnte dann meinen gegenspieler durch alle objekte hindurch beschießen.
    aber kann man denn irgendwie tiles mit models belegen?
    Wenn nicht, dann hat sich das erledigt, wenn jemand noch ne gute idee hat, wie ich alle objekte außerhalb des Bildes ausblenden kann, immer her mit vorschlägen!!
    Bilder
    • combat_fury.png

      214,54 kB, 400×300, 1.147 mal angesehen

    "Make love, not Warcraft"

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von HuRr!cAnE ()

  • tja, das ist ne ganz andere Sache.
    am besten währe es wohl, wen du dir die Eckpunkte anschaust die man noch so eben sehen kann. um diese legst du dann ein Viereck, und alles was außerhalb dieses Viereckes ist wird deaktiviert.

    schwer ist die Berechnung von den Eckpunkten. schau dir dazu am besten WINs Tutorial, bzw. freien sourcecode hieß irgendwas mit RTS. (sry)
    :) Nobody is perfect (-:

    "Dummköpfe sind Denkerköpfen weit überlegen. Zahlenmäßig." Ernst Ferstl