簡體   English   中英

2D圖形性能提升

[英]2D Graphics Performance Boost

我知道我的頭銜有點多么荒謬。 我的問題是,我正在嘗試使用Win32圖形在C ++中編寫一個小游戲,我希望我的所有作品都是從上到下繪制的,這樣它們就可以正確地相互對接。 (EG,如果我站在一棵樹前,它首先繪制樹,然后是玩家,所以我在前面)

我的第一個想法是,使用向量,因為我需要一個動態數組類型的東西,在這樣的循環中循環

for(y = 0; y < playerYValue; y++){
    //Check every enemy/object to see if its yValue matches the looping y
    object.drawImage();
}

在玩家面前也一樣。 然而,在運行一些測試之后,這與循環一樣非常低效,它需要34毫秒,而不需要2:/

我正在尋找一種方法來按順序繪制我的所有對象,並希望得到任何幫助,一切都值得一試。 這是我無法想到解決問題的創造性方法的一個領域。

請問你是否需要我提供更多細節:)

編輯:代碼中的注釋是每次向量迭代的占位符,以檢查對象的yValue是否等於y :)我想清楚一點:)

也許您應該按y值對對象進行排序然后渲染它們,如果您每次繪制對象時當前正在對每個對象進行搜索,這應該更快。

盡量不要讓玩家特別。 玩家也應該是一個“對象”,然后你會先回到前面然后再回到前面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM