2016-11-03 17 views
0

大きな写真:スプラッティングアプローチ(C++、OpenGLおよびSDL2)を使用してボリュームモデル用のレンダラを作成しています。私はマルチ解像度のデータ構造(オクトリー)を持っています。カメラが動いている間、レンダリングはリアルタイムで実行される解像度で行われます。カメラが静止したらすぐに、より高い解像度でのレンダリングが行われます(=繰り返しの洗練)。OpenGL/SDL2ダブルデプスバッファリング

問題:リファインメント中のレンダリングが数秒間続く可能性があるため、ユーザーがカメラの位置を変更すると、レンダリングをキャンセルする必要があります。カラーバッファーに関する問題ではなく、私はダブルバッファリングを使用し、単純に切り替えません。しかし、レンダリングする前にデプスバッファをクリアする必要があるので、レンダリングをキャンセルすると、デプスバッファの情報は失われます。つまり、レンダラの別の部分に奥行き情報が必要です。

私の質問:この場合、どのような戦略が最適ですか?深度バッファをバックアップしますか?または、OpenGLとSDL2を使用して深度をダブルバッファリングする方法がありますか?

答えて