と思ったら、今のコードはフレームバッファオブジェクト(FBO)を使っているのでフレームバッファを切り替えてキャプチャして戻して...という操作が必要っぽい。全体的な描画関連処理は以下のような感じ...。
- FBOをbind
- 右視野設定
- 右を描画するついでにDisplayList蓄積
- 左視野設定
- DisplayList再生
- 生フレームバッファをbind
- FBOのテクスチャからVRHMDの光学歪みを除去するよう歪ませて描画
- VSYNC待ち
FBOはVIEWクラスにがっちり隠蔽されてて触れないのだが、VSYNC待ちの時は生フレームバッファがbindされた状態でxDisplayモジュールに処理が回ってくる。このタイミングならデスクトップをキャプチャできるだろう。
列挙が折りたたまれてワケワカになってるな...。
返信削除