Der Benutzer C3 auf bitbucket hat eine nette Hilfsklasse zur Erstellung von 2D-Primitiven veröffentlicht. Diese fügen der SpriteBatch-Klasse Erweiterungsmethoden hinzu. Das Repository ist hier: Ссылка
Willkommen
Willkommen in der neuen Heimat des 2D XNA Primitives-Projekts, jetzt mit einem Mercurial-Repository auf Bitbucket! Jetzt kompatibel mit Windows Phones.
Funktionsreferenz
Alle öffentlichen Methoden, die von dieser Bibliothek bereitgestellt werden, sind Erweiterungsmethoden, was bedeutet, dass Sie direkt über Ihre eigene SpriteBatch-Instanz darauf zugreifen können, als wären diese Methoden in die SpriteBatch-Klasse integriert. Wenn Sie die Methoden auf diese Weise aufrufen, können Sie den ersten Parameter von all der folgenden Aufrufe ignorieren.
Öffentliche Methoden
DrawArc
DrawCircle
Zeichenlinie
DrawRectangle
FillRectangle
PutPixel
Wenn es eine gerade Linie ist (mit einfachen 90-Grad-Wendungen), dann ist ein Sprite wahrscheinlich der einfachste.
(Wenn Sie Zugriff auf benutzerdefinierte Shader über das HiDef-Profil haben, ist das Erreichen von gestrichelten Linien in Shadern nicht allzu schwierig, wenn Sie die Anforderungen einfach halten)
Wenn es sich unregelmäßig dreht und dreht, würde ich vorschlagen, 3D-Primitive zu verwenden.
Brechen Sie das Problem in zwei Teile.
1) Definieren Sie die Form der Kurve, wenn es sich nicht um eine gerade Linie handelt.
2) Erstellen Sie entlang dieser Kurve einen dreieckigen Streifen mit der gewünschten Textur der gepunkteten Linie.