Tiles Collision mit anderen Formen

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

    • Tiles Collision mit anderen Formen

      Hallöchen ihr da draußen!

      Im neuen GameMaker Studio 2 gibt es ja nun ziemlich gute Möglichkeiten Kollisionen über Tiles abzufragen. Nun sind Tiles allerdings immer viereckig egal wie das Bild aussieht. Für ein aktuelles Projekt von mir benötige ich allerdings auch die korrekte Kollision von Dreiecken, was ich mit Tiles beim besten willen nicht hinbekomme. Mit ganz normalen Objekten funktioniert das natürlich wunderbar, aber hunderte unsichtbare Objekte im Raum zu haben (und zu Zeichnen) nur für die Kollision finde ich jetzt auch nicht so toll. Vor allem das Zeichnen im neuen Room Editor ist da eher nervig.

      Eine Abhilfe habe ich mir geschaffen indem ich jetzt das ganze über Tiles mache, beim betreten des Raumes werden diese aber automatisch in Objekte umgewandelt. Somit spare ich mir schon mal das zeichnen. Lange rede gar kein Sinn:

      Die Frage die ich mir nun stelle ist: Was ist die beste Art einer Kollisionsabfrage im neuen GameMaker? Gibt es vielleicht doch eine Möglichkeit das ganze komplett über Tiles zu lösen? Sind 1000 Kollisions Objekte doch gar nicht so schlimm wie ich denke? Oder gibt es vielleicht sogar noch eine wahnsinnig coole dritte Alternative? Ich bin sehr gespannt auf eure Antworten :)

      Ich bin keine Signatur... Ich putze hier nur!
    • 1000 Objekte? Wie groß ist denn dein Raum? Eventuell kommst du mit instance activation/deactivation weiter. Du könntest aber auch ein grid anlegen wobei jede Zelle einen potentiellen Eckpunkt darstellt. 0 wäre leer und 1 dann solide. Dabei brauchst du dann garkeine Objekte sondern schreibst dir ein Script welches dann bspw. mit collision_line die umgebenden Kanten auf Kollisionen überprüft.
      132 little bugs in the code. 132 little bugs. Fix a few, set the compiler to stew, 172 little bugs in the code... :vogel: