unity render pipeline

minggoddess發表於2018-03-29

post process v2 

GUI

 

temp8->TaregtPool0->temp8       tem8                      temp8->backbuffer     backbuffer     

         blit                  pp              trasparentUI                blit                            UI

 

ppv2說他做那次temp8到tp0的blit是為了 resolve tiled GPU

 

unity有點噁心,對camera的rendertarget設定 如果是null (backbuffer)

它就會自動在這個camera的最後加一個 imageEffects 裡面把temp blit到backbuffer

如果不把camera的rendertart設定為空呢  它是可以直接畫到這張rt上 但是你沒法把它再blit 到bb上 除非你再設定camera.rt=null這樣怎麼都省不下那次blit了啊

 

好坑 我找到那次blit的設定了,

m_Camera = GetComponent<Camera>();
m_Camera.forceIntoRenderTexture = true;

這會在imageeffect裡面加一次blit 從cameratarget到backbuffer

postprocessing stack v2好坑 加了layer這個component就會自動加這次blit再刪掉這個外掛 那次blit還在 除非刪了camera因為

camera的屬性就這樣被它強制true了

找這個找了一天 都準備看原始碼了 最後測出來是ppv2導致的 就在二分。。。。。二分法和橡皮鴨子是最好的debug方法。。。。。。。。

 

相關文章