xnaでtexture2dをトリミングしようとしています。上部と右側の画像をトリミングする次のコードを見つけました。コードをいじってみましたが、特定の間隔ですべての側面をトリミングする方法がわかりません。以下は、私が変更しようとしているコードです:
どんな助けやアイデアも大歓迎です。
Rectangle area = new Rectangle(0, 0, 580, 480);
Texture2D cropped = new Texture2D(heightMap1.GraphicsDevice, area.Width, area.Height);
Color[] data = new Color[heightMap1.Width * heightMap1.Height];
Color[] cropData = new Color[cropped.Width * cropped.Height];
heightMap1.GetData(data);
int index = 0;
for (int y = 0; y < area.Y + area.Height; y++) // for each row
{
for (int x = 0; x < area.X + area.Width; x++) // for each column
{
cropData[index] = data[x + (y * heightMap1.Width)];
index++;
}
}
cropped.SetData(cropData);