0
この機能は、画像処理のいくつかの例から取られ、それが0と255の間の値を返します。メイク機能速く
private static byte CalculateColorComponentBlendValue(float source, float overlay)
{
float resultValue = 0;
byte resultByte = 0;
resultValue = source + overlay;
if (resultValue > 255)
{
resultByte = 255;
}
else if (resultValue < 0)
{
resultByte = 0;
}
else
{
resultByte = (byte)resultValue;
}
return resultByte;
}
そして、それは大きなループ内で呼ばれています。これは何とか最適化できますか?いくつかのビットを操作することがありますか?今度はループ全体が400msかかるので、この関数への呼び出しを取り除くと200msに短縮されます。
私が考えることができる簡単なことの一つは、最も高い確率を持つ述語が最初に調べられるように 'source + overlay'値の分布を調べることです。 –
ループの大きさはどれくらいですか? – Mark
どのように測定しますか?あなたはコンパイラを付けずにリリース版で動いていますか? – Euphoric