虚幻图像渲染引擎有哪几种为什么靠一张纹理就能实现模型上色模块化,是什么原理?

数字孪生是充分利用物理模型、传感器更新、运行历史等数据,集成多学科、多物理量、多尺度、多概率的仿真过程,在虚拟空间中完成映射,从而反映相对应的实体装备的全生命周期过程。并利用大数据计算,深度学习,人工智能等前沿技术,挖掘数据潜力,提高数据价值。
大家好,我是石几衣束,Shader不写了,视频不剪了,蓝图也不连了...来当一段时间小作家。
没想到,自21年3月份发布这篇文章以来,时隔一年,收获了大量同行业者来自不同角度的交流和解读,大家共克时艰收获颇丰,同时也推动着我孜孜不倦的排忧解难更上一层楼,至此,感谢大家的鼓励与支持!
这一版更新是我自发布后站在对数字孪生新的高度新的理解重新审视的作品,我将倾自己之所能,为大家带来全面,深刻,细致的阐述和讲解。
首先,我们先通过一段视频对UE5数字孪生所能达到的水平,建立起一定的认知。UnrealEngine数字孪生行业作品https://www.zhihu.com/video/1516909204278915072
首先整理一下涉及到的三维建模软件及其作用:3DMax(格式转换+场景整合+Datasmith导出)Maya(模型骨骼动画)Blender(天下第一)SketchUp(面数低)Revit(1:1参数化建模)Rhino(高精度地形)倾斜摄影OSGB数据(作为外围环境模型)Marvelous Designer(布料解算)Daz studio(人体表现)CityEngine CGA规则(低模城市集群快速生成)PointCloud点云数据(作为大远景背景)Houdini(程序化建模)Bentley(实景建模)*欢迎交流其它相关三维软件.....*UE4目前支持CityEngin Vitruvio插件可以直接实时执行ACG规则生成建筑和道路。*UE4支持Houdini插件可以直接自动程序化生成实例化建筑,详情可参考:
地形插件:Landscap根据灰度图生成地形(灰度图来源:国家地质信息网,美国国家地质网)手工勾勒雕刻山脉+三位模型堆砌地形环境(模型来自UE4商城地形素材)CAD图纸结合WorldMap生成可视化地形WorldCreator2结合灰度图模拟真实地形(效果最好)WorldMachine结合DEM数据生成灰度图根据生成模型手工二次拓扑制作地形(效果好,性能优)
道路手工建模:适用于定制化崎岖不规则道路模块化程序道路:适用于井字整齐排列道路(参考商城资源:Roads Generator Pack)Landscape样条线道路:适用于山脉之字形道路(参考商城资源:Brushify Country Roads Pack)GIS矢量数据生成道路:适用于城市级高密度复杂道路(参考CityEngine)
建筑建筑分级:F1-F5。(F1:自动化生成低模、F2:自动化贴图低模、F3:精度误差低于0.5m中模、F4:主建筑低于0.3m精度周边50m到达0.5m中模、F5:建模精度10米范围误差小于0.1m高模)低精度建筑:根据GIS矢量数据<shp.>生成(成熟方案:CityEngine)+低模素材根据卫片手工摆放(或者手工绘制shp数据直接生成可控的配楼景观)。中精度建筑:模块化程序建筑+3D66中精度素材+UE4商城资源结合精模区位摆放。高精度建筑:根据甲方要求在建模软件内设计制作即可。
植被SpeedTree素材库,根据卫片刷在Landscape上,近景建议一个一个种树,远景建议直接大范围刷Billboard片。(*注意控制性能消耗)相关虚幻商城素材资产积累:绿化丛,花草丛,点缀性植被。(eg:桃花树,杏树)推荐在Twinmotion中刷好植被,并调节好植被参数后,通过TM插件导入UE,此方案效率高效果好。
水基于UE4 4.26水系统湖泊,河流,海洋,池塘,瀑布素材库积累,结合船只,码头等配景。物理水粒子(eg:喷泉、消防模拟..等)进阶模拟可以参考Asher的SPH水粒子方案。
其它其它一些地编装饰物,例如:风车、飞鸟蝴蝶鱼群、路灯、车流+人流、动物、公共交通载具、天空球等......*特别提醒:目前UE4支持将Twinmotion的模型以及材质100%还原到UE4内(水材质除外),这一点极大的优化了地编流程,特别是对于重点表现的建筑区域进行精细化处理。
PBR材质漫反射 Diffuse颜色 BaseColor反射 Specular金属度 Metalness反射率 Reflectivity菲涅尔反射(玻璃属性)法线 Normal粗糙度 Roughness阴影 AmblientOcclusion高度图 Height*常见的材质属性PBR材质工具1.SubstanceDesgener(制作PBR材质)2.Marmoset Toolbag3.俗称:八猴(预览PBR效果)3.Unfold3D(展UV)4.Xnormal(烘焙法线)
Niagara粒子实际应用:UE4数字孪生 OD线、水体流体气体模拟、烟雾、火焰、灯光、等动态视效....
PostProssesVolume(后期)以下为后期常用控制参数Color Grading LUT(润色)影视级调色PPM 后期材质(设置景深用于表现独立建筑,扫描特效,Mesh描边)Ambient Cubemap 环境光遮罩Motion Blur 控制动态模糊Misc 控制全局分辨率(不建议大于200)Film(影视调色)Bloom 太阳光晕调节Exposure 人眼适应曝光Temperature 色温Fade Out Distance 控制阴影距离SSR 控制屏幕空间反射效果
光线追踪&非光线追踪&LumenRayTracing(光线追踪)-着重表现金属,玻璃,全局AO等等离线烘焙(Lightmass)-可用于降低配置消耗,不过占用内存较大(目前的GPU Lightmass烘焙效率高,效果与CPU渲染并无太大差异)Lumen -实时全局GI,混合追踪管线,每条管线解决它所擅长解决的,UE5正式版已经支持了对Landscape的渲染其它光照技术:虚拟纹理-是一种以时间换空间的纹理流送技术,它最大的好处在于能够让我们使用多种高分辨率纹理,而不像传统流送一样受到内存和带宽限制距离场阴影 -能很好的解决级联阴影无法设置过远的阴影距离问题,对远距离阴影进行补充屏幕空间全局光照SSGI-是一个非常廉价的实时GI方案PathTracing-与其他渲染模式相比,追踪器具有以下优势:可生成高品质的逼真渲染效果,以及物理合理。无需额外设置,或者只需很少设置,即可获得与其他离线渲染器相当的效果缩小与类似的再现效果之间的差距。与序列器和渲染渲染完整集成,以支持设备质量等级的渲染输出。
底层程序框架&UMG程序的底层架构&UMG可以直接参考大钊老师专栏里有关GamePlay架构的文章即可:https://zhuanlan.zhihu.com/p/22813908数字孪生涉及的业务功能:天气系统昼夜交替系统四季切换系统模拟(非数据)交通系统程序化夜景车流,路灯,窗户效果数据可视化大屏嵌入自定义POI镜头事件程序化道路系统程序化交通系統动态模型扫描系统模型切割透视效果自定义景深选择带描边*详情参见:UE4数字孪生开发路线图其它功能点:全局参数设置(eg:分辨率,阴影距离,音效质量等)Config配置产品运行参数WebUI(UE4数字孪生 WebUI前端控制功能浅析)产品启动真实读取&加载分布式控制:远程内网ipad控制交互(TCP&UDPsocket)APK加密&解密生成安装包进阶开发:GIS数据的应用Plugin插件集成和应用像素流多端应用-虚幻引擎像素流白皮书:比较 HTML5、WebGL 和像素流送API接口设计(SDK工具集)可参考51API:http://superapi.51aes.com/guideVR&AR应用视频流的接入(RTSP/RTMP/HTTP)数据库接入(Mysql、Oracle、Redis...)RPC广域网多人联机音视频接入(可参考腾讯游戏语音 GVoice)独立GUI模块(基于Slate重新定义UMG)实时OSGB加载(支持以T为单位的倾斜摄影数据实时加载)
物联网大数据同步获取数据:数据包括但不限于:点、线、面(格式通常为Json/GeoJson以及CSV、Shp等)同时可以支持MySQL, SQL Server,Oracle, Hive, PostgreSQL, 等数据库。读取数据:可以通过LowEntryHttpRequest、LowEntryJson插件读取中台数据。处理数据:通常数据都是按照经纬坐标集成的,这里我们需要将经纬坐标转为引擎坐标,推荐插件(SimulationPlugin),4.27已内置。然后进一步解析其它需要的参数即可。应用数据:将数据转化为可视的效果,例如:当地停车场位置以及内部信息。*常见数据驱动效果有:热力图、OD线(UE4数字孪生 OD线)、标签POI、路网。
全局/程序&美术/优化这是非常关键的一个环节,根据经验来讲,产品开发过程中50%的工作可能都要放在后期的优化上。特别推荐:NAVIDA DLSS目前支持4.25版本以上,可大幅度提升性能,并且提高分辨率,和光线追踪同时使用效果更佳。(UE5相应推出时序超级分辨率用于对标英伟达的DLSS) 程序优化 优化前的注意事项:记得在独立模式下运行(standalone Mode)记得最小化编辑器切记关闭帧率平滑turn off Frame rates smoothing用控制台命令r.VSync=0关闭垂直同步方案:少用Tick(要记住如果你的场景和世界中,有许多Actor的“Tick”函数在运行。那就会严重拖累游戏的流畅度。)*替代方案:Timeline、TimerManual toggling of Actor Tick 手动切换Tick(手动禁用和开启Tick,比如禁用那些距离玩家太远的Actor,它们不在摄像机里,在你靠近他们的时候再重新启用。)Reducing the tick interval (减少Tick的时间间隔.)Event drien systems (事件驱动&蓝图时间驱动)C++的“RotatingMovementComponent”就是个很好的方法。它用于让对象自旋,但假如你还想进一步榨取性能,你就可以用顶点着色器实现它。如果你制作的3D游戏会用到动画蓝图,记得要使用Fast Path,基本上动画蓝图中的这种闪电图标越多就越好。性能消耗大的几个函数:GetAllActorsOfClass
ForLoop
SpawnActorXXX*在只有需要访问数据的时候才调用这个函数。然后把数据全部存到数组中。 美术优化 影响美术渲染性能的主要因素:大量使用半透明材质:当半透明材质占据屏幕比例越大,且半透明材质越多的时候,性能影响越大网格体拥有的材质数量越多,则需要调用的渲染指令越多,不同的材质需要调用其他着色器模型。比如绘制8600万三角形的个只有一个材质的平面是15fps,而绘制10万个有50个由以上材质组成的平面绘制是5fpsUE4场景是逐对象绘制的(也就是通常意义上的DrawCall),与前一个绘制对象相同材质的对象一般会优先绘制,绘制对象越多,调用绘制指令越多,则渲染需要的时间越长开启相同质量的动态阴影情况下,组成模型网格体三角面越多,绘制开销越大网格体优化技巧:Mesh的三角面数量低,并且使用频繁,可合并;远距离的模型,一般可以合并;保证合并的Mesh在同一个区域;保证合并的是共享相同材质的Mesh;保证合并的Mesh是缺少碰撞或简单碰撞的;保证合并的Mesh非常小或只接受动态光照LOD细节层次:*LOD:(Level of Details),简称为多细节层次。LOD技术根据模型的节点在显示环境中所处的位置(Screen Size)和重要度,来决定物体渲染的资源分配,降低非重要物体的面数和细节数,从而获得高效率的渲染计算。一般后一个层级的模型面数只有前一个50%;*HLOD:主要在渲染材质上做了优化,近距离下,原模型可能使用了20个Material,但是远距离下,会统一的使用一个材质示例进行显示。
多媒体视频播放在项目>Movies>StartupMovies直接添加视频(会自动在Content文件夹内生成Movie文件夹,这样打包后的安装包就可以包含我们的视频了)创建以下4种类型的文件,并将MP4指定到MediaPlayer,然后将MediaPlayer指定MediaTexture,最后将MediaTexture拖入材质即可。添加带有透明通道的视频需要修改材质的混合模式,参考如下:应用
角色动画&场景定序器角色动画可以直接参考奶帆大佬的专栏里有关《UE4动画系统那些事》的文章即可:https://zhuanlan.zhihu.com/p/62401630
资产打包&DLC更新资产打包&DLC可以直接参考循迹研究室里查l利鹏有关《UE4动热更新》的文章即可:https://imzlp.com/posts/5867/
前后端开发&服务器运维VueReactAngular
数字孪生的项目分类智慧城市、智慧楼宇、智慧校园、智慧工厂、智慧医院、智慧展馆、智慧旅游、智慧乡村、智慧水利、智慧能源、智慧交通、智慧商场、智慧机场、智慧小区、智慧酒店、智慧BIM、智慧港口。
UE5带来的技术革命: Lumen 在实时全局光照领域,将成为挑战光线追踪技术的硬核法宝,并且,其仅通过软件(不借助硬件)计算。*目前UE5早期体验版:在折射、反射、透明物等方面和光追还有一定的差距。并且会出现严重的漏光现象,比如墙体过薄。 Nanite 彻底解决了模型的面数限制,在某种程度上达到了‘’无限面‘’,其动态Lod效果相对传统的手工Lod,效果显得非常细腻自然。*不过对于已经属于无法优化的物体(比如一个引擎底层的12面cube)表面会存在不显示材质的Bug。 Mass AI 人群和交通系统,就是UE5实现的ECS框架。WorldPartition
自动化的大世界流送系统。是一种全新的数据管理和流送系统。使用世界分区功能后,世界场景会以单个持久关卡的形式存在,并且场景会被划分成数个网格,数据会根据你的需求进行局部加载,因此你再也不用将世界划分成无数的子关卡来管理流送。Temporal Super Resolutio 更高分辨率显示。MetaSounds 程序化音频系统。MetaHuman 下一代数字人。 虚拟阴影贴图 得益于Nanite、Lumen和世界分区系统,虚拟阴影贴图能够提供稳定且高品质的次世代阴影效果,可用于为电影级品质的资产和大型开放世界生成阴影。Mega Assemblies 全新资产类型。 Game Feature Plugins 游戏功能插件(用更模块化的方式构建和发布游戏内容。 Animation Motion Warping 动画运动扭曲(允许操作根移动动画)。 Control Rig 控制骨骼绑定。Q&A板块(欢迎小伙伴们提问):1.ACG规则生成建筑?是个什么东东?详情请参考:cityengine官网,ACG可以理解为一个全自动的场景生成算法,通过数据直接还原真实世界。单说就是一个脚本,告诉shp该如何生成建筑体块。2.怎么样让UE5和网页交互?可以使用WebUI插件,通过数据接口调用前端H5的交互界面,中间的通信数据结构推荐json,实现前后端的数据和交互通信。
参考UE4官方文档UE5官方文档最后,欢迎关注我的公众号【熵次元】,定期分享技术干货!点关注,不迷路哈,也欢迎你的点赞哦~

我要回帖

更多关于 图像渲染引擎有哪几种 的文章

 

随机推荐