タイルシステムを使用する2Dゲームエンジンを作成しています。これらのタイルを描画しているときは、それぞれが画面上に個別に描画されているのを確認できます。描画は非常に高速ですが、それでも表示できます。
グラフィックに何かを描くように指示するとき、画面上に描くものが他にあり、明らかに非常に非効率的であるため、すぐに更新したくありません。伝えた内容を「描画」したいのですが、実際にはすべてを1つの大きな更新で表示します...それともまったく同じことをしますか?とにかくおそらく不可能です。
//Creating graphics
public static Form GameForm; //Assigned by the form
public static Graphics GFX;
public static void Init()
{
GFX = GameForm.CreateGraphics();
GameForm.BackColor = Color.Black;
// ----
//Drawing the tiles
while (X != 480)
{
while (Y != 352)
{
Tiles.Add(new Tile(X, Y, Num, 0));
GFX.DrawImage(LoadedImages[4], new Point(X, Y));
GFX.DrawRectangle(new Pen(Color.Red), X, Y, 32, 32);
GFX.DrawString(Num.ToString(), new Font("System", 10.0F),
new SolidBrush(Color.Black),
new PointF((float)X, (float)Y));
Y = Y + 32;
Num++;
}
X = X + 32;
Y = 0;
}
//UPDATE NOW!