私は現在、簡単なゲームを書いています。私のグラフィックコードはフレームごとに1回(1秒間に約30回)実行され、670 * 480=307200エントリの配列にRGBデータを書き込みます。
正確に640x480ピクセルのサイズのクライアント領域を持つWin32ウィンドウを作成しました。空のウィンドウ内にRGBデータを表示するための最速の方法は何ですか?
ウィンドウはフレームごとに更新する必要があるので、ちらつきを避ける必要があります。これにはGDIを使用する必要がありますか?または、別のライブラリ(DirectDrawなど)を使用したより高速なアプローチはありますか?
編集:
すべての返信をありがとう。まず、オプションとしてDirect2Dを除外します。WindowsXPをサポートする必要があります。第二に、私は3Dのバックグラウンドを持っているので、YannRaminとBenVoigttoによって提案された方法(Direct3D / OpenGLと単一のテクスチャクワッドを使用)は、これまで常にこれを行ってきた方法です。
しかし、2DAPIがより良いソリューションになるかどうかを知りたいと思いました。明確な答えがないので、テストプログラムをまとめました。このコードは、フレームバッファを画面にできるだけ速く繰り返し表示するだけです。
このフォローアップ質問の一部として結果を投稿しました。