码迷,mamicode.com
首页 > 其他好文 > 详细

创建场景——02地形编辑器

时间:2015-11-13 00:46:12      阅读:379      评论:0      收藏:0      [点我收藏+]

标签:

学习笔记适合新手,如有错误请指正。?号处也请各位指点下,谢谢。

在Project视图中点击鼠标右键》Import Package》Environment,弹出资源导入窗口

点击Import按钮,导入环境资源宝

点击导航菜单栏》GameObject》3D Object》Terrain菜单项创建地形

在Scene视图中通过鼠标滚轮调整视距,按住鼠标右键进入观察模式,在该模式下用鼠标调整视角,键盘WASD移动

升降地形工具

技术分享

选中地形工具栏中的第一栏Raise/Lower Terrain即可看到地形升降工具

Brushes:笔刷区域,选择笔刷的形状

Settings:这只区域,设置参数

Brush Size:笔刷的尺寸

Opacity:变化的力度,在地形升降工具表示升降的幅度

按住Shift键在点击鼠标左键,可以下降地形

绘制高度工具

地形工具栏中第二栏Paint Texture,该工具可以将笔刷覆盖的区域设定为指定高度

Settings中多了一个Height属性,表示将要绘制的高度,将Opacity设置为100,Height设置为120,然后在空白区域绘制

平滑地形工具

选中地形工具栏中的第三栏Smooth Height,该工具主要是用来平滑笔刷区域内的地形

绘制地形工具

选中地形工具栏中的第四栏Paint Texture,点击Edit Textures按钮,在下拉菜单中点击Add Texture

技术分享

Diffuse(RGB):图

Normal:法线贴图

Size:贴图在地形中尺寸大小,该值越大,贴图在地形中越被拉伸

Offset:贴图的其实偏移

这里我们只选贴图,其他参数为默认即可,点击Texture栏中的Select按钮,选中之前添加的环境宝中的GrassHillAlbedo贴图,点击Add按钮,Inspector窗口中的Terrain栏

放置树木工具

选中地形工具栏中的第五栏Place Trees放置树木工具,点击Edit Tree按钮,在下拉菜单中点击Add Tree按钮,弹出下图,添加树木界面,可以看到参数Tree Prefab,顾名思义就是所要放置的树木预制体

技术分享

接着点击Tree栏,最后侧的圆形小按钮,选中之前添加的地形包中的预制体,点击Add按钮,Inspector窗口中的Terrain栏

接着将Brush size笔刷尺寸设置为1,绘制一棵树

技术分享

Mass Place Trees:当有多棵树木是随机放置树木

Brush Size:笔刷的尺寸

Tree Density:放置树木的密度

Tree Height:树木的高度,当勾选Random时,该栏右侧盒相拖动跳决定了高度,盒相拖动跳的左顶点决定树木的最小高度,右侧决定了最大高度,当不勾选Random时,高度为0.02至2之间的一个数值,根据该数值对树木模型沿Y轴放大或者缩小,拖动横向拖动条左右两个半圆形按钮设定区域

Lock Width to Height:勾选表面树木的宽度对应高度,不用再设置,当不勾选Random时,可以通过Tree Width设置树木的宽度

Tree Width:树木的宽度,当勾选Random时,该栏右侧横向拖动条决定了高度,横向拖动条的左顶点决定树木的最小高度,右侧决定了最大高度,右侧决定了最大高度,当不勾选Random时,高度为0.02至2之间的一个数值,工具该数值对树木模型沿着Y轴放大或者缩小

Color Variation:颜色变化,改这为0时,树木的颜色不会变化,当值为1时,颜色会有明显的明暗变化,设置笔刷尺寸为10,数的密度为100,数的高度为1,宽度为一个值域,颜色变为0,在Scene中放置一片树木,按住Shift键清楚掉这片树木,将颜色变化设置为1,在放置一片树木,有了颜色的变化,看起来真实的多,没有单调的感觉了

Random Tree Rotation:数是否沿着Y轴随机旋转后摆放

绘制细节工具

绘制花草之类的细节

地形工具栏中的第六栏Paint Detail绘制细节工具,点击Edit Details按钮,在下拉菜单汇总点击Add Grass Texture按钮,添加树木界面,接着点击Detail Texture栏最右侧的圆形小按钮,选中指点添加地形宝中的Grass贴图,点击Add按钮

技术分享

Min Width、Max Width、Min Height、Max Height这4个参数是设置花草从最小宽度、最大宽度、最小高度和最大高度,花草丛的宽高会在最大最小值之间随机分布,unity采用了Pelin noise的早点方式来实现随机分布,这种方式会根据花草在场景中的水平位置,也就是X轴Z轴的位置来取值,好处是这种随机不是完全随机的而是一种平滑随机,而Noise Spread就是随机的变化程度,值得注意的是,当Noise Spread为0时,没有随机,草丛的宽高分别为各自的最大值

Healthy Color和Dry Color分别代表哦花草健康的颜色和干枯的颜色,一般来说草丛的内侧比较健康发绿,而外侧则干枯而发黄

Billboard用于设置是否应用广告牌效果(Billboard Effect),当不勾选该项选项时,草丛的旋转角度是固定的,在某些角度,我们看到的是草的侧面,而失去了应有的效果

当勾选该选项时开启了广告牌效果,该效果主要是用花草贴图做出一张张置于地形表面的面片,而这些面片一直面向屏幕,从而不用复杂的模型即可实现逼真的草丛效果,这种永远面向摄像机的面片技术就叫做广告牌效果

另外一种谢姐处理方式Add Detail Mesh的实现方法与此类似

地形参数设置

选中地形工具栏的最后一栏Terrin Settings地形参数设置工具

技术分享

Pixel Error:像素容差,在显示地形网格时准许的错误数量,这个其实是一个LOD配置

Base Map Distance:基本地图距离,在搞分辨率下地图贴图的距离

Cast Shadows:投影,控制是否投影

Material:渲染地形所使用的材质,如果留空,则使用默认材质,该材质应当使用合适的Shader,如“Nature/Terrain/Bumped Specular”

Physics Material:物理材质,用于地形表面定义其摩擦力和弹性

Draw:绘制,如果选中,所有的树、草和细节模型将被画上去

Bake Light Probes For Trees:为树烘焙Light Probe光照探针

Detail Distance:细节距离,当细节与摄像机的距离大于等于该值,细节将不被显示

Collect Detail PatChes:收集细节斑点

Detail Density:在单位区域内细节/草的数量上限,可以设置小的数值减少渲染损耗

Tree Distance:树的距离,当树与摄像机的距离大于等于该值,树将不被显示,值越高,更远的树将被显示

Billboard Start:开始公告板,当树与摄像机的距离大于等于该值,树将显示为公告板而不是模型

Fade Length:退变距离,树从公告板过度到模型的四元素的总距离差值

Max Mesh Trees:网格树上限数,在地形上种的所有模型树的总数量上限

Speed:风吹过草时的速度

Size:风影响草的面积

Blending:草被风吹时的弯曲程度

Grass Tint:所有草和细节模型整体的色调量

Terrain Width:地形宽度,设置地形在X轴方向的宽度

Terrain Length:地形长度,设置地形在z轴方向的长度

Terrain height:地形高度,设置地形在y轴方向的高度

Heightmap Resolution:高度分辨率,地形高度图的分辨率(值必须是2的N次方加1,如513=512+1)

Detail Resolution:细节分辨率,绘制细节工具所产生的贴图记录图的分辨率,该值越高细节越细致,但同时空间占用也越大

Detail Resolution per Patch:细节分辨率,某长宽的一片细节在一个Draw call内渲染

Control Texture Resolution:控制贴图分辨率,Splat纹理混合贴图的分辨率

Base Texture Resolution:基本贴图,当与摄像机距离达到Basemap Distance距离后,贴图的分辨率

Import Raw:导入Raw文件

Export Raw:导出Raw文件

创建场景——02地形编辑器

标签:

原文地址:http://www.cnblogs.com/kubll/p/4960312.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!