FRAPS が OpenGL フレームバッファをどのようにキャプチャするのか疑問に思っていますglReadPixels
。(何も保存されていない場合でも) を繰り返し呼び出すよりもはるかに優れているように見えるからです。
次のような単純な OpenGL デモがあります。
フレームレートがミリ秒単位の実際のフレーム時間と比べてどれほど無意味かはわかっていますが、ここでは単純な比較のために使用します。
正常に動作している場合、平均フレーム レートは 8000 をはるかに超えます。
FRAPS をフルサイズで 60 fps にロックして記録すると、フレームレートが 240 に低下します。
呼び出しglReadPixels
て何もしない場合、フレームレートは 225 です。
FRAPS はどのようにして適切な時間内に出力を記録して保存しますか? 非常に軽量なエンコード形式を使用する記録スレッドを使用していますか?