2

OpenGL で 2 つのシーンをレンダリングし、1 つのシーンから 2 番目のシーンへの視覚的なクロスフェードを実行したいと考えています。これを行う方法を学ぶための出発点を誰かが提案できますか?

4

3 に答える 3

9

学ぶ必要がある最も重要なことは、テクスチャへのレンダリングを行う方法です。

2 つのテクスチャに両方のシーンがある場合、それらの間のクロスフェードは本当に簡単です。実際、興味深いフェード効果のすべてのマナーを行うのは非常に簡単です:)

于 2009-08-20T14:11:10.540 に答える
1

クロス フェードのサンプル コードを次に示します。2 つのシーンが動的であるため、これは Goz のものとは少し異なるようです。この例では、クロス フェードにステンシル バッファーを使用しています。

于 2009-08-20T18:07:51.843 に答える
0

シーンをクロスフェードする別の方法を考えることもできますが、それはシーンレンダラーの複雑さによって異なります。単純な場合は、目的のブレンディング効果を実行する2番目のシーンをレンダリングする前にシェーダープログラムを開始できます。glBlend(GL_ALPHA、GL_ONE_MINUS_SRC_ALPHA)を試して、シェーダーでフラグメントのアルファ値を操作します。

FBOはところでです。すでに何年も利用可能-延長かどうか。レンダラーが複雑でシェーダープログラムを使用している場合は、両方のシーンをFBOにレンダリングして、これらをブレンドすることもできます。FBOの使用は、あらゆる種類のエフェクトレンダリングを簡単に適用できるようにするための非常に一般的な手法です。

于 2009-09-09T22:25:57.493 に答える