0

鉛筆のレンダリングに関するアルゴリズムを実装しています。まず、フォン シェーディングを使用してモデルをレンダリングし、強度を決定します。次に、テクスチャをレンダリング結果にマップする必要があります。

opengl および cg シェーダーを使用してマルチパス レンダリングを実行します。「テクスチャにレンダリング」を試してみるべきだと誰かに言われました。しかし、このメソッドを使用して必要な効果を得る方法がわかりません。私の意見では、最初にこの方法を使用してメッシュをレンダリングし、次にシーン全体の 2D テクスチャを取得する必要があります。フレームバッファにコンテンツを描画したので、次は画面にレンダリングする必要がありますよね? しかし、レンダリングされたテクスチャをどのように使用し、後処理を行うのでしょうか? それに関するコードやリンクを誰かに教えてもらえますか?

4

2 に答える 2

1

私はこのチュートリアルを作成しました

ただし、RTT を使用するのはやり過ぎだと思います。テクスチャでフラグメントの強度が必要な場合は、シェーダーに既にあるので、2 回レンダリングする必要はありません...

多分これは役に立つでしょうか?http://www.ozone3d.net/demos_projects/toon-snow.php

于 2012-05-22T09:19:07.293 に答える
0
  • フォン シェーディングを使用してテクスチャにレンダリングする
  • そのテクスチャをフルスクリーンのテクスチャクワッドで再度画面に描画し、目的の操作を行うシェーダーを適用します。

RTT とその使用について明確にする必要があると思います。

基本的に、画面はフレームバッファです (テクスチャに非常に似ています)。結局のところ、これは 2D 画像です。RTT の考え方は、その 2D 画像をキャプチャすることです。これを行うには、フレームバッファ オブジェクト (FBO) を使用するのが最善の方法です (Google の「フレームバッファ オブジェクト」で、最初のリンクをクリックします)。ここから、シーンの 2D 画像が得られます (画像ファイルに保存して、実際に必要なものであることを確認する必要があります)。

画像を取得したら、 2D ビューを設定し、800x600 の四角形または what-have-you を使用してその画像を画面に描画します。描画するときは、画像の明るさをグレースケール値に変換するフラグメント プログラム (シェーダー) を使用します。これを出力することも、別の「鉛筆」テクスチャへのオフセットとして使用することもできます。

于 2012-05-19T07:30:32.403 に答える