1、需求:
主顯示界面中有邊緣發光效果,需要將主界面中的相機邊緣發光效果的紋理放在其他地方顯示;
2、Bug描述:
在邊緣發光處理完后,直接將dst渲染到新的renderTexture中,兩個相機中,其中一個相機獲取的紋理在Y軸方向上,上下反了;
通過定義臨時RenderTexture soc0進行邊緣發光效果處理后,再傳遞給renderTexture,顯示就正常了;


3、疑惑:
經過測驗發現,此Bug與邊緣發光效果無關,在場景中搭建兩個相機,不使用任何效果,直接將相機通過OnRenderImage渲染出紋理,將紋理通過RawImage顯示,發現其中一個相機顯示的紋理一直都是Y軸上下反了;

上面通過臨時變數進行傳參時,正常顯示;是因為
OnRenderImage(RenderTexture source, RenderTexture destination)中會對destination進行其他特定操作,不能通過Graphics.Blit(destination, renderTexture);直接使用destination???
4、相關測驗工程:
鏈接:https://pan.baidu.com/s/1omrNxn9Y22yRcDNo-Ka4pQ
提取碼:olck
uj5u.com熱心網友回復:
https://zhuanlan.zhihu.com/p/29228304看這篇文章,像是由于OpenGL與Unity坐標系差異導致的,后面有時間再研究下
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/9417.html
標籤:Unity3D
