上一次修改时间:2021-01-25 23:13:59

地形流程

  1. 备注:WorldCreator、Houdini里的地形尺寸都为4033*4033,该尺寸为UE4里的地形建议尺寸之一

  2. WorldCreator制作好地形和分层贴图

    WorldCreator制作好地形和分层贴图,贴图只在WorldCreator里展示效果用,并不会导入UE4,在UE4里制作地形材质时会使用另外的贴图;

    图片.png

    在WorldCreator导出地形高度图和层级贴图

    图片.png

    图片.png

  3. Houdini

    注:地形文件和mask文件的Size都要设置为4033

    在Houdini中导入地形的高度图,并按地形的最高高度进行高度缩放;

    图片.png

    图片.png

    图片.png

    WorldCreator中地形的最高高度之一;

    图片.png

    使用WordCreator中导出的地形级信息贴图约束Houdini中地形中的撒点范围;

    图片.png

    图片.png

    图片.png

    约束的图层需要设置成Mask

    图片.png

    在约束范围上进行撒点,并创建三个box用来作为撒点的替代体;

    图片.png

    修改撒点的方式

    图片.png

    图片.png

    将地形几何体打包并导出

    图片.png

    图片.png

    图片.png

    图片.png

    隐藏默认的参数

    图片.png

    导出一些自己需要的参数

    图片.png

  4. UE4

    在UE4中导入Houdini生成hda文件;

    图片.png

    将hda文件拖入场景中生成地形;

    图片.png

    导入UE4中制作好的地形材质

    图片.png

    图片.png

    将hda文件里的box替换成静态mesh

    图片.png

    图片.png

    图片.png

    图片.png

    UE4.26.0和Houdini 18.5.462会出现无法保存的问题,需要将UE的插件类型换成V2版

    图片.png

    图片.png

    图片.png

    图片.png

  5. 撒点种树的注意事项

    1)增加一个heightfield_maskbyfeature节点,用来控制种树的坡度和高度;

    图片.png

    图片.png

    2)撒点节点里,取消沿地形法线生长,防止树长歪,设置树的随机倾斜度的最大值为5度,设置树的随机旋转的最大值为360(每棵树都会在0-360的范围内随机旋转);

    图片.png

    图片.png

    3)将占位体的box换成tube,并将tube的直径设置为3m(3m为树的最大直径),再将撒点节点里的Outer Radius也设置成3,用来保证树与树之间不会出现相互穿插;

    图片.png

    图片.png

    图片.png

    图片.png

    图片.png

    4)设置撒点节点里随机大小为0.8-1.2,默认的0.5-1.5有点太大了,同一种树一棵比另一棵大3倍的话,有点不太自然;

    图片.png

    5)在占位体里增加一个transform节点,用来控制树在地形的z轴上的位移;

    图片.png

    图片.png

    图片.png

    6)对每个tube节点上增加attribcreate节点,用来控制三个tube之间的比例(比例为自身的值除以三个tube的值相加后的值);

    图片.png

    图片.png

  6. 在UE里可以直接设置每种树的位移

    图片.png

  7. Houdini导入文件的路径最好使用绝对路径
    图片.png

    使用如下图所示的相对路径时,导入UE4时,有可能存在找不到对应文件而导致的显示不正确;

    图片.png

  8. 地形图层与材质

    地形的材质,红框里的是材质实例,材质里按地形图层进行了混合;

    图片.png

    图片.png

    图片.png