スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ブログランキング・にほんブログ村へ

--.--.-- | スポンサー広告

描画速度について

 JTdLnchデバッグ中にてちょっと触れたのですが、透過での描画の描画速度がなぜか速かった件について。


 とりあえず、JTdLnchにてアイコン登録を7つ分のものを3つ用意、一つは、プログラムのアイコン情報のまま、一つはbmpのアイコンのもの、最後に透過PNGにアイコン設定で置き換えた状態で描画速度をチェックしてみました。

 プログラムのアイコンは、DrawIconEx()API、
 bmpのアイコン表示は、TransparentBlt()API、
 透過PNGのアイコン表示は、AlphaBlend()APIを使用しています。

DrawIconEx約48mSec
TransparentBlt約20mSec
AlphaBlend約37mSec

測定結果は、こんな感じ。

前回の記事で透過PNGの描画が早いと感じたのは、DrawIconに比べてのことでした。
特にアイコンを指定しない場合は、DrawIconが使用されるので、これに比べると10mSec近く早いですね。 何がそんなに遅いのか、良く分からないのですが。

 ほかの2つは処理的に順当ですね。

AlphaBlendは、ピクセルごとにアルファ値にて合成するため、結構な演算量です。拡大縮小処理ありです。

TransparentBltは、指定色のみを完全な透過色として扱うAPIです。描画時に透過色かどうかの判断が入りますが、背景色との合成はありません。これも拡大縮小ありです。

StretchBlt、このテストは行ってませんが、拡大縮小を行うのみです。
BitBlt、これもテストを行ってません。拡大縮小は無しで、矩形転送のみです。

おそらく、この順に重い処理となると思います。

ということで、DrawIconは結構重いということで、JTdLnchを使用している方でVGA以上の解像度の方は、積極的にbmpに置き換えたほうがより処理が軽くなるので、更新間隔を短くでき、滑らかに動作させることが可能となります。

テーマ:プログラミング - ジャンル:コンピュータ

ブログランキング・にほんブログ村へ

2009.06.22 | Comments(0) | Trackback(0) | Mobile プログラミング

«  | HOME |  »

FC2Ad

08 | 2017/09 [GO]| 10
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

最近の記事一覧 カテゴリ一覧 コメント一覧 トラックバック一覧 プロフィール リンク一覧
[カテゴリ]
WEBコンサルティング・ホームページ制作のバンブーウエイブ

ブログ内検索

ブロとも申請フォーム

この人とブロともになる

カスタム検索

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。