オペレーティングシステム上にOpenGlアプリケーションがあり、アプリケーションがメモリに残っていても、アプリケーションがフォーカスを失ったときにOpenGLコンテキストを奪うことができます。これにより、アプリケーションがフォーカスに戻ったときにテクスチャを新しいOpenGLコンテキストに再ロードすると、画面がちらつきます。
再読み込みを段階的に分割して、見栄えを良くするように取り組んでいます。しかし、私はこの可能性についても疑問に思っています:
- プログラムがフォーカスを失うことに気づいたら、ディスプレイの「平均的な」色(またはプライマリテクスチャ)をキャプチャします。
- プログラムがフォーカスを取り戻したら、手順1でキャプチャした色を使用して非常にすばやくglClearColor(r、g、b)を実行します。
- 次に、ユーザーが手順2で設定した色を確認しながら、通常どおりテクスチャを再読み込みします。
これは、ちらつきを目立たなくするための視覚的なトリックのようなものだと思います。落とし穴があります。すべてのピクセルを平均して集合色をキャプチャするには時間がかかりすぎて、価値がないと考えています。
それで、ユーザーが画面に表示する平均的な色の大まかな見積もりをアプリケーションに取得させるOpenGlのトリックがあるかどうか疑問に思っていますか?