各位吧友,你们在安卓上玩doom3,手机都是什么配置?要开光
doom3吧
全部回复
仅看楼主
level 1
BEYONDK2000 楼主
各位吧友,你们在安卓上玩doom3,手机都是什么配置?要开光影的。
我诺基亚9 骁龙845 6g运存。玩着不卡。系统剩2g多运存可用。原来占用3到4百兆,切换关卡,一下到2g了,然后画面闪烁卡住。logcat日志显示gpu申请内存失败,内存溢出,然后卡退。
降低纹理大小也没用(漫射纹理128,细节纹理64,高光纹理32)。分辨率用的640x480也不行。使用压缩纹理也不行。
难道必须8g内存才能玩?
2020年05月19日 22点05分 1
level 1
BEYONDK2000 楼主
2020年05月20日 01点05分 2
level 1
BEYONDK2000 楼主
应该是初步找到原因了. 是程序运行时申请的OpenGL顶点缓冲区内存一直没有释放. 当关闭光照和阴影时, 动态创建的顶点数据很少. 当打开光照和阴影时, 会动态添加顶点数据, 然后去频繁的申请OpenGL顶点缓冲区分配显存. 渲染完后, 如果不再使用又不再清理, 显存会不停增加.
函数调用栈: VertexCache::EndFrame() -> VertexCache::ActuallyFree().
VertexCache::ActuallyFree()中, 原来
我修改为以下, 显示调用glDeleteBuffers去释放该顶点缓冲区的内存
我加了调试文本显示, 图形内存使用量不会一直不断增加了.
现在开了光影可以玩好几关, 不像之前玩两关就闪屏退出了.
2020年05月23日 06点05分 4
level 1
BEYONDK2000 楼主
现在打开光影,勾选ETC1/RBGA4444压缩纹理,但不降低纹理尺寸的情况下,直接从回收处理场1到主挖掘地boss通关。不用像以前那样玩会就存个档怕突然崩溃。每关一般内存占用在300-400M之间,显存使用量在300-500M之间,程序一共使用800M左右内存。不会像之前爆到2G。
2020年05月23日 09点05分 5
level 1
请问一下在哪里修改?
2020年07月10日 17点07分 6
回复 BEYONDK2000 :谢谢大佬
2020年07月20日 09点07分
level 4
doom3有手机版?
2021年04月25日 16点04分 7
你别说,还真确实就有
2021年08月25日 01点08分
2012年就有了,不过当时的手机开光影很卡。
2022年03月04日 04点03分
1