景观
景观是虚幻引擎3中的新地形系统,目前正在开发中。它是一个基于高度贴图的系统,其中采用了虚幻引擎 3 内容动态加载功能,它使得资源的使用效率更高,与此同时在这个引擎中以前可以使用的地形系统基础上提供了新增的功能。开发 Landscape(景观)的目的是替换旧的 Terrian(地形)系统,当 Landscape(景观)功能完整后将废弃旧的系统。
景观主题
- 创建景观 - 创建并导入新的 Landscape(景观)并转换以前的 Terrain(地形)
- 景观材质 - 设置材质使其可以与景观地形结合在一起使用
- 编辑景观 - 编辑景观高度贴图和材质图层
- 移动设备上的景观 - 针对移动设备的景观信息。
景观特点
下面概述了景观地形系统所使用的主要特点和技术。
大的地形尺寸
景观系统会使那些是比以前虚幻引擎中可能存在的地形的数量级的地形处理起来更容易。因为它的 LOD 系统功能非常强大,并且它可以非常有效地使用内存,所以现在那些尺寸高达 8192x8192 的高度贴图都可以合情合理切实可行地进行处理。将会快速轻松地创建可以容纳任何游戏类型数量的广阔的户外世界,不需要修改储备品引擎或工具。
在 GPU 内存中存储为贴图的静态渲染数据
景观系统会为 GPU 内存里贴图中的地形存储渲染数据,数据可以在顶点着色器中查看。将数据装到一个 32 位贴图中,高度以 R 和 G 通道的形式占用 16 位,而在 B 和 A 通道中 X 和 Y 偏移量分别存储为 8 位数值。
连续几何体 MipMap LOD
使用标准贴图 mipmap 处理景观地形的 LOD。每个 mipmap 都是一个细节层次,并且使用 text2Dlod
HLSL 指令可以指定要进行采样的 mipmap。它可以容纳大量 LOD,同时还可以容纳平滑 LOD 变换,因为这两个 mip 关卡都可以采样使用,然后可以将高度以及 X 和 Y 偏移量插入到制作整齐的顶点变形效果的顶点着色器中。
高度贴图和权重数据动态加载
由于数据被存储在贴图中,所以可以使用虚幻引擎 3 中的标准贴图动态加载系统根据需要动态载入并载出 mipmap。这不仅仅适用于高度贴图数据,还适用于贴图图层的权重。只需要每个 LOD 所需要的 mipmap 就可以最小化任意时间所使用的内存量,它会增加可以创建地形的尺寸大小,因为内存被释放了。
高分辨率独立于 LOD 的光照
由于已经存储景观的 X 和 Y 斜度,所以可以使用整个高分辨率(非 LOD)法线数据进行光照计算。
这样可以始终为基于像素的光照使用地形的最高分辨率,即使是在在 LOD 距离之外的远处组件。
在将这个高分辨率法线数据与细节法线贴图结合在一起后,景观可以实现非常详细的光照,而且内存消耗很少。
PhysX 碰撞
景观会使用 PhysX 高区域对象来为虚幻和刚体碰撞进行碰撞。可以为每个图层指定 Physical 材质,碰撞系统将会在每个位置使用主要图层来确定要使用的物理材质。可以使用降低的分辨率碰撞高区域(例如,0.5x 渲染分辨率)根据大型景观地形额内存需求进行保存。也可以使用关卡动态加载系统动态载出远处景观的碰撞和渲染组件。
Important!
You are viewing documentation for the Unreal Development Kit (UDK).
If you are looking for the Unreal Engine 4 documentation, please visit the Unreal Engine 4 Documentation site.