![]() |
[Andorra 2D] Pixelabfrage
Hi,
ist es irgendwie möglich auf einzelne Pixel des Canvas des AdDraws zuzugreifen. Mir fällt nur die Möglichkeit ein, ein Screenshot des Bildschirms zu machen, aber das möchte ich nicht. Würde zu lange dauern und geht bestimmt auch anders. Wie immer danke im Voraus für die Antworten :corky: mfg Looper |
Re: [Andorra 2D] Pixelabfrage
Einzelne Pixelabfragen sollten nicht durchgeführt werden. Was genau möchtest du machen?
In der nächsten Version von Andorra 2D ist es auf jeden Fall möglich, die gesamte Szene in eine Textur zu Rendern und dann auf einzelne Pixel zuzugreifen. Doch auch das ist langsam und nicht "State of the Art". |
Re: [Andorra 2D] Pixelabfrage
Liste der Anhänge anzeigen (Anzahl: 1)
Okay,
also mein Ziel ist es "Achtung die Kurve" (falls nicht bekannt siehe ![]() ![]() Nun das Problem: Die Kollisionsabfrage wäre sehr leicht zu realisieren, indem ich die Pixel, auf die gleich gezeichnet werden, auf Farben überprüfe. Wenn diese Pixel beispielsweise rot sind würde eine Kollision stattfinden und der Spieler wäre tot. Da das nun nicht so leicht funktioniert, müsste ich mir über Alternativen Gedanken machen, z.B. ein großes zweidimensionales Array
Delphi-Quellcode:
indem die Farben der Pixel abgespeichert sind. Habt ihr noch andere Ideen die Kollisionsabfrage zu realisieren?
Pixel : Array [1..Addraw.Display.Width] of Array [1..AdDraw.Display.Height] of TAndorraColor
Freue mich auf weitere Antworten, Looper PS: alte Version von mir ist im Anhang (auch alleine spielbar) |
Re: [Andorra 2D] Pixelabfrage
Könntest du die Kollision nicht über Andorras Physikengine machen?
Also das wäre wahrscheinlich das Code technisch einfachste was mir einfällt. |
Re: [Andorra 2D] Pixelabfrage
Leite von T(Image)SPrite ab und überschreibe die DoCollision-Methode und behandel da die Kollision
(Außerdem musst du Collision deiner Spriteengine(?) aufrufen) |
Re: [Andorra 2D] Pixelabfrage
Hey,
ertsmal danke für die Antworten. Aber ich glaube das Array ist hier die leichteste Lösung, da die Kollisionsabfage nicht funktioniert. Es sind ja nur die "Köpfe" der Spieler ein Image. D.h. auch nur die sind gespeichert und reagieren gegenseitig auf Kollisionen. Oder sehe ich das falsch? mfg Looper |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz