影像数据道路夜景美化案例

基于性能考虑,本页面提供一种制作自发光效果的方式以实现大范围道路的发光效果。

主要操作步骤如下:

数据准备

这里需要借助SuperMap iDesktopX来完成影像数据和道路矢量数据共两类数据的准备。

原始影像数据准备

采用SuperMap iDesktopX将原始影像数据生成为*.sci3d格式的影像瓦片数据。具体操作步骤见SuperMap iDesktopX生成三维影像瓦片操作步骤

道路矢量数据准备

  1. 在SuperMap iDesktopX中,将原始道路矢量线数据添加至工作空间管理器中,通过数据右键菜单“添加到新地图”操作将数据添加到地图中。
  2. 通过“图层风格”面板将设置和调整矢量线的颜色、线宽等内容。其中,道路线的颜色建议使用红绿蓝三种颜色,以便于在Unreral Engine中根据不同颜色设置不同的自发光效果。
  3. 设置完成后,保存当前地图。保存后的地图会在工作空间管理器的地图节点下。
  4. 选中上一步保存的地图数据,单击鼠标右键在菜单中选择“生成三维瓦片”,弹出地图生成三维瓦片面板,根据需要设置各类参数,从而生成*.sci3d格式的瓦片数据。具体操作步骤见地图生成三维瓦片操作步骤

制作自发光效果

该部分需要在Unreal Engine中基于准备的数据制作道路自发光效果,具体操作步骤如下:

  1. 在安装了该产品的Unreal Engine中通过编辑器控件加载影像数据和道路矢量面数据.
  2. 注意

    为保证具有道路自发光效果,在加载道路线数据时,需要勾选地形纹理蒙版,然后再点击添加图层按钮。

  3. 单击并找到内容浏览器->All->Plugins->SuperMap内容->UE5->MaterialFunctions->Utility->SM_Road_Emissive材质函数,复制该材质函数到SM_Terrain材质蓝图中。
    • SM_Terrain材质蓝图位于内容浏览器->All->Plugins->SuperMap内容->UE5文件夹中。
    • SM_RoadEmissive材质函数可用于获取道路影像数据中的颜色值,并根据不同的颜色设置不同的自发光强度值。
  4. 在打开的SM_Terrain材质蓝图中,将SM_RoadEmissive材质函数的左侧连接到Custom5的输出节点,并将其右侧连接到SM_Terrain材质的自发光节点,以制作道路的自发光效果。
    • 打开SM_RoadEmissive材质函数,可为道路线的红绿区域分别设置不同的自发光的颜色、强度等参数。如果要设置更多的效果,可根据获取到的各种颜色来设置不同的风格。
    • 原始影像数据也需要设置自发光效果,否则自发光效果只有颜色,没有细节。最终需要通过Lerp函数将上述提及的内容进行混合。
    • SM_Terrain的光照模式为无光照,需要修改为默认光照。
    • SM_RoadEmissive材质函数调整示例

      道路矢量线材质函数调整示例

      影像材质函数调整示例

  5. 在设置完材质参数后,单击运行此关卡,并通过场景/天气调节面板将时间调整至晚上,即可看到道路自发光效果。后续可通过大纲->PostProcessVolume设置泛光等效果。