Hi,欢迎来到中国优发娱乐手机版高端品牌 - 华清远见嵌入式学院<北京总部官网>,专注嵌入式工程师培养13年!
  • 全国咨询热线:400-706-1880
  • 新浪微博
  • 微信
  • 北京
    校区
  • 上海
    校区
  • 深圳
    校区
  • 成都
    校区
  • 南京
    校区
  • 武汉
    校区
  • 西安
    校区
  • 广州
    校区
  • 沈阳
    校区
  • 济南
    校区
  • 重庆
    校区
  • 研发
    中心
  • 当前位置: > 嵌入式学院 > 嵌入式学习 > 讲师博文 > Unity 3D 搭建地形系统
    Unity 3D 搭建地形系统
    时间:2017-04-21作者:华清远见
    地形被广泛的应用于开放的场景和城市的仿真, 游戏里也有被大规模的使用,尤其是现在moba类的游戏。比如英雄联盟、魔兽世界、王者荣耀。 游戏模型特点:地形比较复杂,高低起伏,有河流,有植被,还有的复杂的道路。 这么复杂的模型如果使用3D max来做,将会浪费大量的时间,因为每一个模型都可以使用Unity 3D工具来生成。 一、地形是如何生成的? 先创建一个新的场景,在Hierarchy中右键3D object->Terrain,就创建了一个地形对象。这样在Project中会产生一个new Terrain。在“层级视图”(Hierarchy) 中选中地形 (Terrain) 后,便可以使用 F(焦点)键对地形进行轻松导航。按 F 后,无论鼠标在哪个位置,都会移动到场景视图 (Scene View) 的中心位置。这样就可以对某个区域进行润色,快速移动到另一个区域并修改其他东西。如果在按下 F 键时鼠标没有悬停在地形 (Terrain) 的某个区域,则整个地形 (Terrain) 都会被置于场景视图 (Scene View) 的中心位置。   二、地形组件 Terrain组件共包含7个选项按钮,利用这些选项就可以绘制地形起伏、地表纹理或附加细节如树、草或石头等:    1. 使用笔刷可以进行地形的拉伸和降低 单击此选项按钮后,再展开的选项卡中,先设置Brush Size(笔刷大小)、Opacity(不透明度)的值以及绘制时使用的Brushes(笔刷),然后就可以在场景中用鼠标单击或拖动绘制地形了。 单击鼠标会增加高度,保持鼠标按下状态移动鼠标会不断的升高高度直到达到高度的最大值。如果想降低高度,按住Shift键再单击鼠标即可。   2. 为地形添加纹理 单击左侧开始的第2个按钮选项,可进入喷涂高度模式。该模式一般用于绘制平整的高地或峡谷等地形。 设置Brush Size(笔刷大小)、Opacity(不透明度)、Height(高度)的值以及绘制时使用的Brushes(笔刷),就可以利用鼠标移动场景中地形上的任意部分,直到达到你希望的高度为止。    3. 处理多层纹理 单击左侧开始的第3个按钮选项,可进入平滑高度模式。该模式用于柔化绘制的区域的高度差,使地形的起伏更加平滑。   4. 绘制纹理 导入纹理,选择Assets -> import package ->Environment 单击左侧开始的第4个按钮选项,可进入纹理绘制模式。单击【Edit Texture】可添加、编辑、移除纹理。重复“Add Texture”这个过程,可以添加多个纹理。添加地形纹理以后,选择想使用的地形纹理,即可使用此纹理拖动鼠标左键对地形进行纹理绘制。   选择不同的纹理再拖动鼠标绘制,就可以在同一个场景中绘制出各种形式的地形纹理。    5. 添加地形细节—树木 单击【Edit Tree】可添加、编辑、移除树。重复“Add Tree”这个过程,可以添加多种树。选择使用的树,设置树的密度(Tree Density)为合适的值,然后就可以将其绘制在场景中了,此时当前鼠标所在位置会标记为蓝色高亮,如下图所示,单击即可。 单击地形的任何地方都能种树。按住鼠标左键不放并拖动鼠标可在地形上连续种树。按住Shift键然后单击地面,可以擦掉相应位置种植的树。  参数设置(Settings): Bush Size:笔刷的尺寸。设置植树时笔刷的大小,取值范围在1~100之间。 Tree Density:树木密度。用于控制树对象的间距。值越大树木越密集、间距越小。取值范围在10~100之间。 Tree Height:树的基准高度。值越大树木越高,取值范围在50~200之间。    6. 添加地形细节—草 单击左侧开始的第6个按钮选项,可进入Paint Details模式,利用该模式可绘制草坪(用Grass Texture种草)以及指定对草坪进行细节性描述的网格(Detail Mesh)。  其中,【Settings】下的【Target Strength】表示目标强度,用于控制种草以及添加细节网格时所产生的影晌,取值范围在0~1之间。 单击【Edit Details…】,在弹出的快捷菜单项中选择【Add Grass Texture】,然后选择某种草坪纹理,并设置相关参数,单击【Add】即可添加一种草坪:    Details Texture:草坪的图片。 Min Width、Max Wdth、Min Height:设定草坪的最小宽度、最大宽度、最小高度值。 Noise Spread:噪波范围。用于控制草产生簇的大小。该值越低意昧着噪波越低。 Healthy Color:健康颜色。此颜色在噪波中心较为明显。 Dry Color:干燥颜色。此颜色在噪波边缘较为明显。 Billboard:广告牌。该项如果被勾选,草将随着摄像机一起转动,永远面向主摄像机。  这两项选择后,就可以在场景中用鼠标种草了。 按住Shift键可用鼠标选择删除,按住Ctrl键可用鼠标删除选择的细节网格。 7. 地形参数设置 基本地形(Base Settings)选项卡下的参数如下: Draw:是否绘制基本地形。 Pixel Erroe:像素容差。在显示地形网格时允许的像素误差。是地形LOD系统的一个参数。 Base Map Dist:基本地图距离。设置地形贴图显示高分辨率的距离。 Cast Shadows:投影。设置地形是否投射阴影。 Mterial:材质。通过单击右侧的圆圈按钮为地形指定材质 。   树和细节配置(Tree & Details Objects)选项卡下的参数如下: Draw:如果选中该项,所有的树、草和细节模型都将被渲染出来。 Bake Light Probes for: Detail Distance:细节距离。该项用于设定摄像机停止对细节渲染的距离。 Collect Detail Patches: Detail Density:细节密度。该项用于控制细节的密度。默认为1,如果将此值调小,过密的地形细节将会不被渲染。 Tree Distance:树林距离。该项用于设定摄像机停止对树对象进行渲染的距离。值越高,越远的树会被渲染。 Billboard Start:开始广告牌。该项用于没定摄像机将树渲染为广告牌的距离。 Fade Length:渐变距离。该项用于控制树对象从模型过渡到广告牌的速度,如果值设置为0,模型会突变为广告牌。 Max Mesh Trees:最大网格树。该项用于控制在地形上所有模型树的总数量上限。   针对草的风设置(Wind Settings for Grass)选项卡下的参数如下: Speed:速度。该顶用于设定风吹过的速度。 Size:大小。该项用于设定风力影响的面枳。 Bending:弯曲。该项用于没定草木被风吹的弯曲程度。 Crass Tint:草的色调。该项用于设定所有草以及细节网格整体的色调。   【Resolution】选项卡下的参数用于添加地形对象后设置相关的属性。参数含义如下: HeightMap Resolution:高度图分辨率。 Detail Resolution:细节分辨率。控制草地和细节网格的地图分辨率。如果希望提高绘制性能,可将该数字设置低一些,比如设置为512或者256。 Base Texture Resolution:基础纹理分辨率,用于代替在一定距离的泼溅贴图 (splat map) 的复合纹理分辨率。   三、示例Demo 这里介绍实际操作的基本步骤,当你熟悉了这些基本步骤后,就可以绘制各种绚丽的地形了。按这些基本步骤操作完成后,即可得到下面的简单示例效果。   设计完毕基本的场景后,一般都需要先运行看看效果如何,即先让场景“动起来”,以方便观察不同的位置,而不是仅仅观察固定摄像机位置的死板板的场景。 

    发表评论
    全国咨询电话:400-706-1880,双休日及节假日请致电值班手机:15010390966 在线咨询: 曹老师QQ(619366077), 余老师QQ(2657985593), 李老师QQ(2814652411), 徐老师QQ(1462495461) 企业培训洽谈专线:010-82600901,院校合作洽谈专线:010-82600350,在线咨询:QQ(248856300) Copyright 2004-2017 华清远见教育集团 版权所有 ,沪ICP备10038863号,京公海网安备110108001117号

    优发娱乐手机版

    百度360搜索搜狗搜索

    优发娱乐手机版

    百度360搜索搜狗搜索