hatte das gleiche Problem, wie andere bereits vorgeschlagen, dass Sie benötigen ein Quadrat oder Rechteck mit einem Unentschieden Kreis Textur drauf. Hier folgt meine Methode zum Erstellen einer Circle Texture Runtime. Nicht die effizienteste oder raffinierteste Art, es zu tun, aber es funktioniert.
Texture2D createCircleText(int radius)
{
Texture2D texture = new Texture2D(GraphicsDevice, radius, radius);
Color[] colorData = new Color[radius*radius];
float diam = radius/2f;
float diamsq = diam * diam;
for (int x = 0; x < radius; x++)
{
for (int y = 0; y < radius; y++)
{
int index = x * radius + y;
Vector2 pos = new Vector2(x - diam, y - diam);
if (pos.LengthSquared() <= diamsq)
{
colorData[index] = Color.White;
}
else
{
colorData[index] = Color.Transparent;
}
}
}
texture.SetData(colorData);
return texture;
}
Das scheint wie es wird gut funktionieren. Vielen Dank! –