【Unity3D】地形Terrain

1 前言

        Terrain 是 Unity3D 提供的用于绘制地形的游戏对象,可以在其上绘制山地、江海、池塘、草树等。

        用户可以通过【GameObject → 3D Object → Terrain】新建地形,主要有如下6个功能菜单:

图片[1] - 【Unity3D】地形Terrain - MaxSSL

  1.  Raise / Lower Terrain:升高 / 降低地势
  2. Paint Height:高度平坦化,用于绘制山上的平台、盆地、池塘等
  3. Smooth Height:高度平滑化,用于平滑地形中尖锐部分
  4. Paint Picture:地皮、山体贴图
  5. Paint Trees:种树等
  6. Paint Details:种草等

        如下是一块简单的地形:

图片[2] - 【Unity3D】地形Terrain - MaxSSL

2 应用

        1)Raise / Lower Terrain:升高 / 降低地势

图片[3] - 【Unity3D】地形Terrain - MaxSSL

        按住鼠标左键向上移动升高地势,按住 Shift 键同时鼠标左键向下移动,降低地势,如下:

图片[4] - 【Unity3D】地形Terrain - MaxSSL

        2)Paint Height:高度平坦化,用于绘制山上的平台、盆地、池塘等 

图片[5] - 【Unity3D】地形Terrain - MaxSSL

         Height 用于设置地势的最大高度,超过这个高度就会被抹平,如下搭建山上的平台:

                  图片[6] - 【Unity3D】地形Terrain - MaxSSL      图片[7] - 【Unity3D】地形Terrain - MaxSSL

        3)Smooth Height:高度平滑化,用于平滑地形中尖锐部分

图片[8] - 【Unity3D】地形Terrain - MaxSSL

         图片[9] - 【Unity3D】地形Terrain - MaxSSL       图片[10] - 【Unity3D】地形Terrain - MaxSSL

        4)Paint Picture:地皮、山体贴图

图片[11] - 【Unity3D】地形Terrain - MaxSSL

        先导入资源包,在 Assets 窗口里面右键,选择【Import Package → Enviroment】 

        再选择【Edit Textures → Add Terrain Texture → Select】,添加贴图图片(本文使用地皮资源“GrassRockyAlbedo.psd”),如下:

图片[12] - 【Unity3D】地形Terrain - MaxSSL

         可以看到,山体与地皮贴图一样,这个效果不太理想,用户可以再添加一张贴图(本文使用山石资源“CliffAlbedoSpecular.psd”),选中山石纹理,并使用鼠标左键给山体涂抹;接着再添加一张贴图(本文使用沙子资源“SandAlbedo.psd”),用同样的方法给中间的水池涂抹沙子纹理。

        涂抹山石和沙子纹理后的效果如下:

图片[13] - 【Unity3D】地形Terrain - MaxSSL

        5)Paint Trees:种树等

图片[14] - 【Unity3D】地形Terrain - MaxSSL

        选择【Edit Trees → Add Tree → Tree Prefab】添加树预设体(本文使用树预设体“Broadleaf_Desktop”),种树如下:

图片[15] - 【Unity3D】地形Terrain - MaxSSL

        补充:按 Shift 键,再点击已种的树的位置,可以挖树。

        6)Paint Details:种草等

图片[16] - 【Unity3D】地形Terrain - MaxSSL

        选择【Edit Details → Add Grass Texture → Detail Texture】添加贴图图片(本文使用草资源“GrassFrond01AlbedoAlpha.psd”),种草如下:

图片[17] - 【Unity3D】地形Terrain - MaxSSL

        补充:按 Shift 键,再点击已种的草的位置,可以挖草。 

        7)水池注水

        将 Water4Advanced.prefab 预设体拖拽到池子中,再调整水面缩放、平移。

图片[18] - 【Unity3D】地形Terrain - MaxSSL

         效果如下:

图片[19] - 【Unity3D】地形Terrain - MaxSSL

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享