ユニティOnRenderImage

このトピックでは、オンラインの情報は本当に小さすぎる、メインはOnRenderImage実装後に治療上のいくつかの基本的な操作です。
それはめったに尊敬の原理を説明しないようにするために、更新を追加することです見つかった場合でも、私は戻っへのネットワーク外に発見していないことがあります。

オンライン情報:HTTPS://gameinstitute.qq.com/community/detail/112744を
参照することができますが、主にこの実験で私を見て分析することができます。

この記事では、さまざまな状況考え分析の結果、主ビット長ったらしいであってもよいです。

図1に示すように、テストスクリプトを調製する:TestRenderTexture.csは、
メインカメラにハングアップするために、スクリプトの内部の内容が空である今回は、バックは、さまざまな状況をテストします。
場合は、この時点では何もしませんでしたが、メインカメラには、我々は次のようにカメラは、球を見てみましょう、TestRenderTextureスクリプトをハング:
ここに画像を挿入説明
フレームデバッガ開くには、この時間:
ここに画像を挿入説明
この時点では、すべてが前に、私たちと同じです変更なし。ここでは、実験はまだ始まっていないので、結論はどんな根拠なしで、どんな結論を作りません。[OK]を、私たちは、に進みます。

2は、TestRenderTexture.csで、次の操作を実行します。
スクリプト書き換えOnRenderImage方法で)2.1を、変更を参照してください

using UnityEngine;

public class TestRenderTexture : MonoBehaviour
{
    private void OnRenderImage(RenderTexture source, RenderTexture destination)
    {
        // 不做任何操作
    }
}

:画面が暗かった
ここに画像を挿入説明
フレームデバッガ:
ここに画像を挿入説明
この時間はほとんど変化、これは1つの黒い画面であり、第二は、カメラの画面が一時的TempBufferの行くを描画します。
ブレークポイントの状況は:
ここに画像を挿入説明
ソースは、一時的なバッファであり、先はnullです。
我々は継続します。

図3は、OnRenderImage方法では、ブリット方法:
コードは次のようになります。

using UnityEngine;

public class TestRenderTexture : MonoBehaviour
{
    private void OnRenderImage(RenderTexture source, RenderTexture destination)
    {
        Graphics.Blit(source, destination);
    }
}

このとき、結果:
ここに画像を挿入説明
フレームデバッガ:
ここに画像を挿入説明
ブレークポイントの状況:
ここに画像を挿入説明
我々ブリット操作はOnRenderImage方法で行われるので、画面には、物事を見ることができます。
このブリットの参照、ソース一時バッファ先は、我々はそれが画面に直接コピーされ、宛先が空である知っている、nullにコピーし、一時的なバッファであり、ヌル、です。だから我々は、画面に何かを参照してください。メインフレームは、デバッガながら、BlitCopyが構築されたシェーダを使用して複数の描画呼び出しImageEffectsは、一時的なバッファは、その後、画面にコピーされます。
ここに画像を挿入説明

図4に示すように、RTを与えるために作成し、スタート方法でカメラに割り当てます

using UnityEngine;

public class TestRenderTexture : MonoBehaviour
{
    public RenderTexture rt;
    public Camera m_camera;

    public void Start()
    {
        rt = new RenderTexture(m_camera.pixelWidth, m_camera.pixelHeight, 16); //16位的深度
        rt.name = "xxx";
        m_camera.targetTexture = rt;
    }
}

画面:
ここに画像を挿入説明
画面には、私たちのために作成された、黒、およびRT targetTextureカメラです。
デバッガフレームに入れる:
ここに画像を挿入説明
この時点で、我々は、画面が黒ですので、上がる作成室温に物事を描画します。

図5に示すように、スクリプトで、OnRenderImage方法が、唯一の空のメソッドを追加します。
ここに画像を挿入説明
この場合、スクリーンはプロンプトの出力は、目標が何かを描画していないと言う、まだ黒です。
デバッガフレームに入れます:

公開された618元の記事 ウォン称賛96 ビュー330 000 +

おすすめ

転載: blog.csdn.net/wodownload2/article/details/104455641