作者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://webptt.com/cn.aspx?n=bbs/GameDesign/M.1590656543.A.F4D.html
1F:→ zxc9764315: 每个update都new一个RT当然会爆炸啊XD 05/28 17:05
2F:→ doasgloria: 可是我都是用同一个名称 Result 他不会自动盖掉舍弃吗 05/28 17:07
3F:推 wix3000: 不要相信 GC... XD 05/28 17:08
4F:→ zxc9764315: 看来你的程式观念还有待加强喔 05/28 17:20
5F:推 hala932: 你可以试试看update前 先release Result 05/28 17:23
6F:→ doasgloria: 我试了先release() 不过会造成 下面新的还没出来时会 05/28 17:55
7F:→ doasgloria: 没画面 我再来想想看方法 T.T 05/28 17:55
8F:→ sirius65482: 你把旧的Destroy看看 05/28 20:14
9F:推 SecondRun: 只存几个弄成pool呢? 05/28 22:07
10F:→ doasgloria: 回报: 在把RawImage.texture贴完後 使用Destroy加个 05/29 09:16
11F:→ doasgloria: 延迟时间: Destroy(theRT, 5f); 这样可以好像可以搞定 05/29 09:17
12F:→ doasgloria: =w= 05/29 09:17
13F:推 cjcat2266: 不要这样做...这样只是给GC徒增负担,然後一直占着60*5 05/29 10:10
14F:→ cjcat2266: 份材质记忆体,就乖乖的重复使用同一个材质吧 05/29 10:10
15F:→ doasgloria: 後来改成只用一个了 XD 真的太新手了 ! 05/29 16:31