OpenGLスレ Part15
■ このスレッドは過去ログ倉庫に格納されています
0231デフォルトの名無しさん
2011/01/23(日) 01:53:37OpneGLでV同期を取る方法ですが、
SwapBuffers()を高優先度スレッドで呼ぶようにし、
メインスレッドをシグナルで起こすように実装しています。
なぜかSwapBuffers()がV同期待ちをしてくれず、
高優先度スレッド側でsleep()を呼ばないと、
メインスレッドにCPU時間が回らない状況です。
高優先度スレッドでV同期&スワップバッファが終わった後、
メインスレッド起動、メインスレッドの仕事が終わったら
V待ち関数(条件変数待ち)でメインスレッドをスリープし、
あまった時間を低優先度スレッドに渡すようなフレームワークを考えています。
グラフィックボードはATI Radeon HD4550です。
wglSwapIntervalEXT()をつかってもV同期が取れません。
PCのOpenGLの設定も、常にV同期待ちを行うように設定しています。
原因、解決方法がわかるか方がいたらお願いします。
■ このスレッドは過去ログ倉庫に格納されています