Erstellen Sie ein 2D-polygon in XNA

Habe ich irgendeine Art von problem. Ich bin neu in XNA und möchten, zeichnen Sie ein polygon-shape, das sieht ungefähr so aus (am Ende, ich will diesen Punkt zufällig zu sein):

Erstellen Sie ein 2D-polygon in XNA

Also Las ich einige Artikel und dies ist, was ich am Ende mit:

private VertexPositionColor[] vertices;

public TextureClass()
{
    setupVertices();
}

public override void Render(SpriteBatch spriteBatch)
{
    Texture2D texture = createTexture(spriteBatch);
    spriteBatch.Draw(texture, new Rectangle((int)vertices[0].Position.X, (int)vertices[0].Position.Y, 30, 30), Color.Brown);
}

private Texture2D createTexture(SpriteBatch spriteBatch)
{
    Texture2D texture = new Texture2D(spriteBatch.GraphicsDevice, 1, 1, false, SurfaceFormat.Color);
    texture.SetData<Color>(new Color[] { Color.Brown });
    return texture;
}

Wenn ich rufe Render es fängt zeichnen von Quadraten, als ob es, wo in einer Schleife. Ich bin nur erraten, ich mache alles falsch. Ich würde es lieben, wenn someones Punkte, die mich in die richtige Richtung. Einfach erstellen Sie ein polygon und zeichnen. Es schien so einfach...

Ändern Sie die Scheitelpunkte nachdem er Sie das erste mal?
NÖ, ich Ruf einfach einmal Rendern
Von wo rufst du Rendern?
Ich rief es aus dem Spiele-Update. Ich habe eine andere Lösung gefunden, ich werde einfach hier posten für die Leute die es sehen möchten aswell.
Wenn Sie den Aufruf von Update, dann sind Sie eigentlich die Schaffung einer neuen textur in jedem frame, das ist nicht etwas, was Sie wollen. Stellen Sie sicher, deal mit, die in Ihrer neuen Lösung.

InformationsquelleAutor Jordy Langen | 2011-08-30

Schreibe einen Kommentar