作者doasgloria (青柳立夏)
看板GameDesign
標題[請益] RenderTexture會造成記憶體一直消耗嗎
時間Thu May 28 17:02:19 2020
目前做了兩支Unity程式
都是透過Camera物件讀取畫面到target texture
(可能是來自影片 或是場景)
然後將畫面透過Compute Shader處理後
貼到蓋滿 Canvas 的 RawImage 物件上
功能已經達到我的需求
可是我發現 只要開著程式
記憶體都會不斷上升達到100% >///<
我的方式是
https://i.imgur.com/BQhdpfX.png
Result 是最後輸出的結果 , ViewXXXXX 都是輸入
https://i.imgur.com/ILMoDDA.png
最後在 Update函式中, 把算出的 RenderTexture貼上去
功能沒問題
但是問題就是 什麼都不做 我的記憶體也不斷上升
到100%就卡死了 T.T
整個遊戲中 唯一有在不斷UPDATE的只有這部分
感覺應該是這邊的問題 但是不確定 !!
有大大可以幫忙猜測可能的原因嗎 太感謝了 >.< !!
--
◤ | █ ヽ █ ◥ ▂▃▄▃▂ 回戰文 疾如風
▍˙▆ 八███████▃▃▄ ●火 ◇ 風● 發廢文 繁如林
▋˙●◤█◤ノ ヽ◥ ‧▋ ●◇ ◇● 挑釁文 嗆如火
◥___ █◤ ● ● ██◣ ●山◇林● 宅在家不動如山
◢█ ██◤ ( _●_) ミ█◣ 彡 甲斐の熊-武田熊玄
◢▇▇▊█▼ |∪| ◢█ ◣_█◢◢ ◤、● 原SotaFujimor 改marubom
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.243.34.154 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1590656543.A.F4D.html
→ zxc9764315: 每個update都new一個RT當然會爆炸啊XD 05/28 17:05
→ doasgloria: 可是我都是用同一個名稱 Result 他不會自動蓋掉捨棄嗎 05/28 17:07
推 wix3000: 不要相信 GC... XD 05/28 17:08
→ zxc9764315: 看來你的程式觀念還有待加強喔 05/28 17:20
推 hala932: 你可以試試看update前 先release Result 05/28 17:23
→ doasgloria: 我試了先release() 不過會造成 下面新的還沒出來時會 05/28 17:55
→ doasgloria: 沒畫面 我再來想想看方法 T.T 05/28 17:55
→ sirius65482: 你把舊的Destroy看看 05/28 20:14
推 SecondRun: 只存幾個弄成pool呢? 05/28 22:07
→ doasgloria: 回報: 在把RawImage.texture貼完後 使用Destroy加個 05/29 09:16
→ doasgloria: 延遲時間: Destroy(theRT, 5f); 這樣可以好像可以搞定 05/29 09:17
→ doasgloria: =w= 05/29 09:17
推 cjcat2266: 不要這樣做...這樣只是給GC徒增負擔,然後一直佔著60*5 05/29 10:10
→ cjcat2266: 份材質記憶體,就乖乖的重複使用同一個材質吧 05/29 10:10
→ doasgloria: 後來改成只用一個了 XD 真的太新手了 ! 05/29 16:31