-
Deus
Pixelmovement
Mich würde mal interessieren wie weit die Pixelmovement-Scripte für den XP schon fortgeschritten sind. Als ich mir damals eines heruntergeladen habe, hat das nur beim Helden (also nicht per Set Move Route) funktioniert und wenn ich mich nicht irre auch nur die Tileset-Einstellungen für die Kollisionsabfrage benutzt. Nicht dass ich vor hätte ein Spiel mit Pixelmovement umzusetzen - deswegen suche ich auch keine Scripte - es geht mir nur um die Theorie.
Wenn man nur die Tileset-Einstellungen für die Kollisionsabfrage benutzt, ist das ja sehr ungenau. Ich hab nun im Internet mehrere Techniken gefunden, mit denen sich die Kollisionsabfrage genauer hinbekommen lässt, aber ich weiß nicht inwieweit das schon für den XP gescriptet wurde.
Die einfachste Möglichkeit sind Rechtecke, die man um die Sprites zieht und testet, ob sie sich überschneiden. Dazu hab ich sogar eine Formel gefunden, die aber falsch war und die erst funktionierte, nachdem ich willkürlich etwas umgeschrieben habe, ohne zu wissen was.
Dabei stellt sich nur die Frage, wie man die Rechtecke zur Laufzeit generiert. Zwar haben die Sprites schon von vorne rein ein Rect-Objekt, aber soweit ich weiß ist das nur die äußere Begrenzung, also wäre die Abfrage nicht besonders genau. Außerdem müsste man sich bei den Tilesets was einfallen lassen.
Auf die Methode mit den Rechtecken aufbauend, könnte man auch gleich Polygone benutzen, bei denen sich relativ leicht ermitteln lässt (zumindest sagen das die Seiten, auf denen ich die Methode entdeckt habe), ob zwei sich überschneiden. Diese Methode ist wohl genauer als der Sonderfall Rechteck, aber man müsste trotzdem noch wissen, wie man den Sprites Polygone zuordnet.
Eine sehr genaue (und wohl auch sehr rechenintensive) Methode ist ein pixelweiser Vergleich der Sprites. Dafür müsste man für jedes Sprite eine Bit-Maske anlegen, je nachdem ob die Farbe transparent oder nicht transparent ist das Bit setzen und dann die Masken zweier Sprites miteinander vergleichen (mit einem UND). Ist halt nur die Frage, ob der XP das performance-technisch überlebt und wie man das konkret in ein Script umsetzen kann.
Nun ja, meine Frage ist nun, ob es schon Scripte gibt, die eine genaue Kollisionsabfrage umsetzen bzw. ob jemand eine Idee hat, wie man so etwas auf dem XP umsetzen könnte.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln