码迷,mamicode.com
首页 > 其他好文 > 详细

(转\整)UE4游戏优化 多人大地型游戏的优化(四)内存的优化

时间:2018-10-11 01:35:45      阅读:273      评论:0      收藏:0      [点我收藏+]

标签:ade   分享图片   引擎   程序员   一点   ott   val   ring   top   

施主分享随缘,评论随心,@author:白袍小道,当苦无妨

   

小道暗语:

1、因为小道这里博客目录没自己整,暂时就用随笔目录结构,所以二级目录那啥就忽略了。标题格式大致都是(原or转) 二级目录 (标题)

   

2、因为所看和以前记录太过杂乱,所以只能手动一点点搬移(回忆,整理)。欢迎讨论,知识和能力总是被问出来了不是(嘿嘿,这样才能成长), 若有不对别喷就好哈哈。

   

引言:

文章四方面包括了从游戏线程渲染线程GPU内存等的优化,提升游戏技术底子。

原作者:王祢Epic Games 资深开发者技术支持,管理虚幻引擎技术支持的程序员团队,拥有近15年虚幻引擎使用经验。

   

正文:

优化肯定是有个前提和需求背景的,本文的前提:在移动设备上做大地型的多人游戏。

需求背景:

1、开放地图:视野宽,视距远,地图大

2、场景:风格变化多

3、同屏人不少

4、交互也不少

(看到这里对吧,UE +上述 就直接说堡垒之夜就好了呗)

   

(由于篇幅较长,小道就直接拆开了,各位看官)

   

内存

技术分享图片

   

2

TextureStreaming

   

技术分享图片

在cpu上根据物件bounds的屏幕尺寸×材质中用到的对应贴图的uv scale系数×一个可以由美术tweak的scalar值来决定实际贴图提交的mip数,可以用r.Streaming.PoolSize在不同设备上很方便设置全局的贴图资源的内存Budget。

   

3

Shader Code

Shader code,我们会利用Shared Shader code的功能,将大量静态的分裂导致产生的Shader有重复的去除,将实际的Shader code存入ShaderLibrary,在每个MaterialInstance对象上只存ShaderCode的GUID,大大减小了实际的ShaderCode大小。在有些项目里可以减掉80%。另外,不使用的rendering功能一定要在项目设置中关掉,可以大大减少shader分裂的组合数量。

技术分享图片

   

6.4

RHI

(RHI又见面)

技术分享图片

   

很多

技术分享图片

   

   

   

优化的适配和迭代

技术分享图片

(转\整)UE4游戏优化 多人大地型游戏的优化(四)内存的优化

标签:ade   分享图片   引擎   程序员   一点   ott   val   ring   top   

原文地址:https://www.cnblogs.com/BaiPao-XD/p/9770005.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!