热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

战地3寒霜2引擎详解:地形与后期处理技术特性

之前看过了zXr0带来的两篇寒霜2引擎技术解析么?《战地3》寒霜2引擎渲染流程图文详解http:pc.07073.combf3frostbite14097.html战
之前看过了zXr0带来的两篇寒霜2引擎技术解析么?

    《战地3》寒霜2引擎渲染流程图文详解
    http://pc.07073.com/bf3/frostbite/14097.html

    战地3寒霜2引擎详解:物件光照效果技术特性
    http://pc.07073.com/bf3/frostbite/14099.html

    如果你不看完下面篇章领取最终福利可就太可惜了,这次带来的是寒霜2引擎地形与后期处理技术的讲解。

   地形(Terrain):

    地形上DICE的引擎实现了极高可视距离,使用高解析度的高度图、逐像素法线、DX11曲面细分/置换贴图来构造不同细节程度的地形。

    法线贴图与位移置换贴图对比:
    法线贴图(Normal Mapping):


    位移置换贴图(displacement mapping),地形设置在High或Ultra下才开启


        DICE同时还使用了基于DX10/11的虚拟纹理阵列(Virtual texture tiles),每阵列分辨率256x256在GPU处理中被压缩成DXT5寄存,根据玩家视锥与距离调节地形纹理精度,可以实现性能与精度完美平衡,实现最广阔的视野。


    对于地形装饰如:草从、岩石、碎片、小灌木。DICE也使用了几何实例技术,性能消耗极低。


    地形装饰:关


    地形装饰:低


    地形装饰:中


    地形装饰:高


    地形装饰:Ultra


 

   后期处理(Post-Processing):

    寒霜2引擎中的后期处理包括 电影化Tonemapping、BLOOM、动态模糊、景深、晕影、屏幕炫光、模糊、AO、ColorGrading、胶片颗粒、抗锯齿。

    SSAO与HBAO:SSAO是一项通用广泛的技术,而HBAO是DICE与nvidia合作提出的改进技术,效果更好。SSAO对显存内存要求较低使用在游戏机版本的寒霜2引擎游戏上,而HBAO使用在游戏PC上。

    SSAO与HBAO对比:
    SSAO(Screen-Space Ambient occlusion)


    HBAO(Horizon-Based Ambient occlusion)


    无AO


    SSAO

    HBAO


    无动态模糊


    动态模糊


   模糊+晕影+过饱和+血迹


    在反锯齿方面寒霜2引入了MSAA、MLAA、超级采样SSAA等:

超级采样MSAA反锯齿(Super-Sampling MSAA)的采样范围

 

    能看到这里的基友,乃们耐心可真不错,领取最后福利吧~

    3月12号就到了zXr0的生日了,在这里提前祝自己生日快乐~也祝基友们快乐~

    其实最终福利就是zXr0的自爆照呢~

 
  附赠zXr0菊花照一枚

 

 


推荐阅读
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Oracle Database 10g许可授予信息及高级功能详解
    本文介绍了Oracle Database 10g许可授予信息及其中的高级功能,包括数据库优化数据包、SQL访问指导、SQL优化指导、SQL优化集和重组对象。同时提供了详细说明,指导用户在Oracle Database 10g中如何使用这些功能。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 本文讨论了在Spring 3.1中,数据源未能自动连接到@Configuration类的错误原因,并提供了解决方法。作者发现了错误的原因,并在代码中手动定义了PersistenceAnnotationBeanPostProcessor。作者删除了该定义后,问题得到解决。此外,作者还指出了默认的PersistenceAnnotationBeanPostProcessor的注册方式,并提供了自定义该bean定义的方法。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • springmvc学习笔记(十):控制器业务方法中通过注解实现封装Javabean接收表单提交的数据
    本文介绍了在springmvc学习笔记系列的第十篇中,控制器的业务方法中如何通过注解实现封装Javabean来接收表单提交的数据。同时还讨论了当有多个注册表单且字段完全相同时,如何将其交给同一个控制器处理。 ... [详细]
author-avatar
mobiledu2502887381
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有