首页 网站首页 商业信息 方案 查看内容

块存储的32层地形混合方案

私域运营 2023-3-4 18:53 6872人围观 方案

最初题目

unity地形碰到超多层(这里按32层会商)需求时有很是严重的采样性能题目,其中响应的处理计划很是多,由于比来又想出一种比之前更好的所以再次重新会商下这个题目.其中参考的3种之条件过若何实现和优弱点最初有链接. 以下都是指不利用rvt情况下对照,我们开辟完rvt后,采样性能的影响就削减很多了.但碰到显存不敷裕不成落地rvt的项目.这个优化还是很成心义.

按unity引擎的地形采样方式,会用结果最守旧的方式采样,采样8张权重图(每张控制4个材质id),再采样32张albedo和32张normal,一共需要可骇的72次采样.假如斟酌去tiling再次翻倍 必定是现实不成用的计划.虽然shader内做了一点判定 假如 持续4张id 权重都为0那末 跳过一个pass采样,但地形大部分地区很难做到持续4个id都不用,使得这个优化根基生效.

间接思绪

面临这个题目最间接思绪是每个地形控制贴图(这里叫splat图,point采样)的每个纹素只存32层中 权重最大的4个ID(一般存2-4个).再对这4个ID的权重存入一张weight图(双线性插值采样). 这也是手游上最简单的处置方式.可是这类题目会出现大量接缝 需要靠摆放物件 石甲等阻挡.

这里用 存3个id为例 诠释为什么道理上就不成避免接缝(马赛克结果)




间接思绪的 接缝道理

这里有2个纹素,别离记录3个当前位置最重要id与权重.为了计较简单 双方权重都设备成一样,红绿2个点为中心相邻 位置 ,那末按照权重图插值 由于左右都是0.6 那末中心插值出权重也是0.6,但由于记录的id与顺序分歧,所以红点获得0.6A 0.3B 绿点获得0.6B 0.3A,但屏幕空间上这2个像素又挨着 又存在庞大分歧,所以一定出现马赛克.




多层变化剧烈地方会出现马赛克

针对这个题目,会发生出3种应对思绪.

T1 确保相邻纹素排序分歧

只要id不异 那末权重图就寄义不异,就支持双线性插值,理论上这是最高性能处理计划,但现实上没法做到这点,由于每个点排序依靠四周点.而四周点又有他四周的限制条件.总会出现过各偏向的条件分歧渡不了的情况.

T2 不用双线性插值 手动采样相邻4个纹素ID(采样量x4)做手动插值,不记录每个ID权重,完全按照位置过渡(farcry5 计划,但他还按照高度图过渡)




farcry5 只存ID计划

按照红点 绿点位置 处于0.5处,所以 双方位置附近 计较成果也附近.由于权重完全按照位置来算.splat只存ID.这类是显存 采样数目 接缝 性能都最好的计划.我们项目用了2年多. 为什么纷歧直用下去,是由于新的需求有沙漠图(farcry5每沙漠图),这类每个纹素只要一种材质,材质过渡范围是一个纹素对应的天下空间 比如2米内.这样对需要大范围半通明夹杂出的沙漠就不能满足.他需要每个纹素最少 2个分歧权重ID叠加.




farcry5计划 没法实现这类大面积同时存在2种分歧权重ID夹杂出的结果

T3 类似T2但每个纹素记录3个ID和对应的权重



这里演示 这类算法成果很是切确,由于不是靠硬件插值 而是 采样左右一切6个ID 按照位置别离计较权重与位置关系. 这里只演示uv的u偏向 现实是 是4个相邻像素.这样需要12次采样,每个像素采样3个 ,性能又不太好了.


块存储计划

这是此次想出的新计划.既然自力存储会致使要末左右计较纷歧致,要末需要左右都零丁采样 采样量太大.那末斟酌块整体存储.就是相邻4个纹素一路 存一份4个纹素都用到最大权重的4个ID,同时存入每个ID 4个纹素的权重数据.




块存储计划

由因而一路存储的,这样计较成果就能始终可过渡,弱点就是 在分歧的块(2x2纹素) 需要反复存储每个纹素对应块ID的权重,也是由于这一点点显存开销,避免了 在分歧块内由于收集的ID分歧而权重歧义.

由于现实不是表示图的2纹素,而是4纹素.所以采样次数是4次 对照 12次.性能提升很多 结果也很不错,这是由于相邻4个纹素总是有大量反复ID.




左:unity原始守旧计划 右:块存储计划

别的由于unity每4个图层用一个pass 所以 批次与三角形衬着数目都很多,这里显现是2倍.由于有大量反复的图,实在项目刷的更丰富后,这个差异会更大.




unity 计划 需要133批次和64k三角形



该计划 需要67批次 和 31k三角形

性能对照

该计划相比当前项目线上版本(类似T3) 利用更实在地形在1050显卡的机械上,gpu提升0.78ms ,实在运转游戏大要从125FPS提升到138FPS. 固然 最快的 必定还是 farcry5计划,作为技术我小我最喜好这个计划,一切的材质都不应当半通明过渡出来,既然供给了32层,就应当预夹杂好所需从材质.这样整体也更清楚.




1050显卡 测线上计划(类似T3) 239FPS



1050 显卡 测block计划 292FPS



1050 显卡 测farcry5 夹杂计划 327FPS

最初在实在游戏中落地 1050机械上跳伞与远眺时 提升了庞大的7ms

这是由于 游戏中开启了 类似ue4的 去tiling采样 也就是 翻倍采样normal与albedo ,所以差异进一步拉大.同时 由于游戏自己的复杂致使gpu本就是最大瓶颈,优化gpu的收益就更明显.




左:线上版本 右:文文章计划

显存优化

上面做的都是提升采样性能,但在超大地形中,显存的开销也是需要大幅度优化的.按我们项目4x4千米,每平方千米一个地块来算.今朝默许的资本 需要1splatID图+4权重图.有20M,16个地块就是320M,这明显是不成适用的.除了做streaming处置,自己也需要紧缩到一个更公道数据.




优化前显存占用 左:splat图,右:权重图

首要优化手段是格式与尺寸.格式上假如能控制16张图,那末4位可以表达一个ID,4个ID用 r4g4b4a4格式.unity代码里叫 TextureFormat.RGBA4444,但面板里叫 RGBA16.权重也是如此16色半通明过渡够用了,不需要256 所以也是用这个格式.而关于尺寸可以对地形默许权重图取mipmap2来用. 这样单个地块就是128kx5=0.64M,16地块就是10M,这样就从320M 下降到10M,这个开销pc与手机都能接管了,只要本来3.125%.




优化后显存占用 左:splat图,右:权重图

在这样庞大的紧缩下,稍微的过渡精度丧失是可以接管的.看下结果对照.别的小幅度的优化还有很多不逐一描写了.比如之前把权重总合控制为1,然后少一张权重图(用1- 3个权重获得第四个权重),又比如把4张单通道4位的图.手动合并成一张RGBAHalf的图 这样4次权重图采样只要一次采样就能完成.而且是point采样 多个数据操纵凹凸位紧缩到同一个通道并不会采样时插值毛病.




优化后 10M显存的画面结果



优化前 320M显存的画面结果

该计划代码工程

代码不长,具体的算法细节间接上完整代码是最直观的

高端人脉微信群

高端人脉微信群

人脉=钱脉,我们相信天下没有聚不拢的人脉,扫码进群找到你所需的人脉,对接你所需的资源。

商业合作微信

商业合作微信

本站创始人微信,13年互联网营销经验,擅长引流裂变、商业模式、私域流量,高端人脉资源丰富。

精彩点评
  • 更强 2023-3-4 18:55
    针对变化激烈的更新了 重要性算法 可以再用你的资源测下是不是有改善
  • 天八部饶gc 2023-3-4 18:55
    是的 一定要有过渡 可以对地形预处理下 比如扩散 柔和等
  • 123456823 2023-3-4 18:54
    试了下,效果非常好了。变化非常剧烈的时候还是会有突变。有道云笔记
  • 123456914 2023-3-4 18:54
    可以看下私信,探索下其他思路

相关推荐

怎样写好项目方案(专业项目方案写作定制)

怎样写好项目方案(专业项目方案写作定制)

在工作中,除了技术工作之外,我们也经常需要写一些项目的方案,当然如果公司比较大,

再谈“断直连”——政策、方案与不确定问题

再谈“断直连”——政策、方案与不确定问题

尽管“断直连”的基本方向已确定,但受各参与方合作意愿、政策理解角度、科技/服务能

运营方案怎么写(专业运营方案写作)

运营方案怎么写(专业运营方案写作)

作为运营人,写方案是必不可少的,而要想写一份优秀的运营方案,掌握框架、抓准方案的

产品方案怎么写(专业撰写产品方案)

产品方案怎么写(专业撰写产品方案)

想要做一名合格的产品经理,首先要能写好一份好的产品方案。一份好的产品方案,会在产

一个恐怕难以推广的自制CR-BOX方案

一个恐怕难以推广的自制CR-BOX方案

可能不需要再更新了,所以放在开头。因为对我这个方案不满意,所以试了其它的方案,用

小白进阶:一份模板,套用所有运营策划方案

小白进阶:一份模板,套用所有运营策划方案

2019.09.26更新:文章内容较多,前半部分主要阐述完成一份方案所需的运营思维,建议刚

论建筑设计方案如今有多卷?

论建筑设计方案如今有多卷?

这是一个故事。请各位看官老爷酌情相信。方案一方案一方案二方案二方案三方案三方案四

策划方案,不以页数论英雄

策划方案,不以页数论英雄

编辑导语:有些人在写策划方案时,总觉得页数越多,感觉准备得越充分,对策划案页数迷

一份完整的方案报告应该包括哪些方面?

一份完整的方案报告应该包括哪些方面?

听周边的同事和学员的反馈说,每次一到写方案的时候,经常会陷入一种非常焦虑的状态:

经国务院同意,八部门联合印发重磅改革方案!(全文)

经国务院同意,八部门联合印发重磅改革方案!(全文)

11月21日,据中国人民银行网站消息,为深入贯彻党中央、国务院决策部署,按照《长江三

一图速览!党和国家机构改革方案

一图速览!党和国家机构改革方案

制作:刘珂君、岳小乔、皇甫凌雨、冯慧文、安博文

延迟退休试点传来“好方案”:这3类人偷偷笑了,希望也有你

延迟退休试点传来“好方案”:这3类人偷偷笑了,希望也有你

我国正在加速进入老龄化,这是不争的事实。专家早在几年前就提出了延迟退休的方案,当

中共中央办公厅 国务院办公厅印发《粮食节约行动方案》

中共中央办公厅 国务院办公厅印发《粮食节约行动方案》

近日,中共中央办公厅、国务院办公厅印发了《粮食节约行动方案》,并发出通知,要求各

解决方案如何写:7个技巧,5个通病,项目总监给出的建议

解决方案如何写:7个技巧,5个通病,项目总监给出的建议

日常工作问题剖析实际的工作中,不管是项目经理还是售前工程师,给客户提供的大部分解

济南重磅方案公布

济南重磅方案公布

近日,济南市政府印发《济南市数字人民币试点工作实施方案》(以下简称《实施方案》)

干货!如何写出一份优秀完整的方案(专业写作方案)

干货!如何写出一份优秀完整的方案(专业写作方案)

无论是从事运营、策划或其他需要制定方案的岗位,写方案、改方案、执行方案都将成为你

项目管理 | 如何编写项目实施解决方案 | 推荐收藏

项目管理 | 如何编写项目实施解决方案 | 推荐收藏

如何保证项目实施成功?项目设计?需求报告?调研记录?项目培训?项目策划?上述提到

权威快报|坚持第九版防控方案和二十条措施不动摇、不走样

权威快报|坚持第九版防控方案和二十条措施不动摇、不走样

国务院联防联控机制11月22日举行新闻发布会表示当前,随着奥密克戎变异株快速传播我国

超硬干货:如何把需求变成产品方案?

超硬干货:如何把需求变成产品方案?

编辑导语:在产品经理的日常工作中,往往需要了解和收集许多的用户需求,那么,如何将

叮!送你一份“开挂式”写方案攻略

叮!送你一份“开挂式”写方案攻略

以下文章来源于泡泡Ter ,作者老1泡听身边不少朋友同事聊到他们写方案时的状态,经常

商业洽谈 文章投递 寻求报道
电话咨询: 15924191378
关注微信