私が見てきたすべてのコードサンプルでは、ゲームループは次のようになります。
while(true)
{
   InputAndUpdate();
   Draw();
   SwapBuffers();
}
しかし、これはCPUとGPU間の並列性を破壊しませんか?スワップバッファが呼び出された後、CPUが入力を処理して更新している間、GPUは空の状態で待機します。次に、CPUが描画コマンドの発行を完了すると、GPUのレンダリングが完了するまで待機します。なぜこうならないのですか?:
while(true)
{
   Draw(); //First issue the draw commands
   InputAndUpdate(); //Update while the GPU is busy rendering
   SwapBuffers(); //Now block and wait for the GPU to finish
}