2017-06-01 52 views
-2

前段時間我開始在c#中做簡單的遊戲,但是一段時間後我開始在屏幕上添加越來越多的對象,可惜我看到了我的幀速率緩慢。可以想象在system.drawing中製作遊戲嗎?

Bitmap bmp = new Bitmap(1200, 700); 
Graphics FrameGraphics = Graphics.FromImage(bmp); 

while (true) 
{ 

    FrameGraphics.Clear(Color.White); 

    foreach (GraphicalObject S in ObjectControll.ToList()) 
    { 
     FrameGraphics.DrawImage(S.picture, (float)S.X, (float)S.Y); 
    } 
    DrawHandle.DrawImage(bmp, 0, 0); 
    frames++; 
} 

爲什麼大多數3D遊戲的運行速度比這個循環快20個對象呢?我需要使用任何軟件來製作遊戲嗎?

+0

爲了製作「真實」遊戲,人們通常使用預製遊戲引擎或物理引擎。這些代碼已經爲您提供了一堆代碼,您可以使用代碼,而不必從頭開始。 – coinbird

+2

「是否可以在system.drawing中製作遊戲」 - 不是。 – Evk

+0

@coinbird我的目標主要是打磨我的編程技巧,而不是製作「真實」的遊戲,但如果我無法在屏幕上獲得超過20個物體,我無法繼續。我非常喜歡自己製作的大部分情節,我喜歡這種方式。 – Vordex

回答

3

你可以使用System.Drawing創建一個遊戲,但它並不是真正爲它設計的,而且有一個複雜的遊戲和很多對象,我想你會遇到問題。

最好的辦法是使用一些正確的工具來設計遊戲。看看Unity之類的東西,或者親自發現XNA framework非常容易作爲C#程序員使用,儘管它不受支持並已被MonoGame所取代。

+1

由於XNA死了,我強烈推薦FXA或MonoGame。 –

+1

你是對的@AdamSears,我已經很長時間地涉足於製作遊戲了。 –

+1

我甚至記得的唯一原因是因爲當XNA被殺時我有多難過:( –

相關問題