Unity地形基础

1.地形绘制

2.地形贴图

3.植物的种植

4.其他细节的实现



在 Unity 5 中,默认导入资源包是空,如下图:

不要着急,需要自己去 Asset Store 下载:

下载完成后,就可以导入 Standard Assets 了。

第一个工具可以实现突起和凹陷效果,选择相应的笔刷,设定所需要的笔刷大小以及笔刷的强度,按住左键就可以对地形进行绘制了,按住 Shift + 左键是对凹陷进行的处理,制作凹陷是可以把笔刷调小点。

效果如下:

第二个工具可以改变地形的高度,可以用来踏平一个地形。

效果如下:

第三个工具是柔滑高度,就是使地面变得比较光滑。

效果图如下:

第四个工具是绘制纹理,定型绘制完后,需要给其添加一些纹理,这时需要使用第四个工具,绘制地形纹理。

点击添加纹理后,弹出下面的对话框:

选择一个地形纹理,点击 Add,效果如下:

可以添加多种纹理,比如添加草地材质,在地形中进行绘制,绘制前可以设置笔刷的大小、强度和融合度。

第五个工具是用来在地形上绘制树木的。点击 Edit Trees,然后点击 Add Tree。

弹出下面的对话框:

选择一个游戏对象,点击添加后,可以对添加的 Trees 进行设置:

参数以及其代表的含义:

Brush Size :笔刷大小

Tree Density : 树的密度

Tree Height : 树的高度

Lock Width to Height : 锁定宽度到高度

Tree Width : 树的宽度(在锁定状态时不可选,在非锁定状态可以设置树的宽度)

Random Tree Rotatio : 树的旋转随机性

如果想在场景中加入大量的树,可以点击 Mass Place Trees,弹出下面的对话框,通过改变 Number Of Trees 的数值来确定最终在场景中种植的树目,还可以通过 shift + 左键去除不想要的树。

在场景中进行树的种植时,不必担心树的悬浮或者插入地面太深的问题,Unity 引擎本身会根据地形的高度自动调节。

第六个工具是绘制草地的细节。

选中第六个工具来绘制草地,添加一个草地的材质。

弹出下面的对话框,选择响应的草地。同时可以根据自己的需要修改下面的参数值。也可以在绘制完后再进行调整。点击 Add 按钮即可。

选中草地之后,按住左键在场景中绘制。我们可以用 PhotoShop 进行草地的绘制,保存成 .psd 格式,再导入到 Unity 中就可以使用了。

第六个工具是有关地形细节的设置。具体的参数有网格优化的容差,Map 距离,光晕图的设置等。

时间: 2024-10-02 01:18:43

Unity地形基础的相关文章

【蓝鸥Unity开发基础三】课时3 Terrain地形系统【未完】

[蓝鸥Unity开发基础三]课时3  Terrain地形系统[未完] 推荐视频讲师博客:http://11165165.blog.51cto.com/ 一.Terrain地形系统 Terrain地形系统 资源包的导入 场景漫游 立方体是:长宽高1m 二.Terrain地形系统 1.Terrain组件:提升地形/沉降地形工具 点击左键-- 提升地形 点击左键+Shift--沉降地形 选择笔刷的形状.笔刷的大小,笔刷的硬度--绘制地形 2.Terrain:平坦地形工具:设置地形目标高度 平滑地形工具

蓝鸥Unity开发基础——If 语句学习笔记

蓝鸥Unity开发基础--If 语句学习笔记 本节内容:程序的三种结构,if语句,问号表达式 程序的三种结构 顺序结构:顺序执行语句 分支结构:通过进行判断,在多个语句块中选择某一个执行 循环结构:条件满足时,反复执行同一语句块 If语句 用if语句可以构成分支结构 它根据给定的条件进行判定,用来决定要执行某个程序段 一.if(条件表达式){语句1} using System; namespace Lesson11{    class MainClass    {        public s

蓝鸥Unity开发基础二——课时6 方法

蓝鸥Unity开发基础二--课时6 方法 推荐视频讲师博客:http://11165165.blog.51cto.com/ 对象.方法名(实际参数); Person p=new Person(); P.Say(); 1.带有参数的方法举例 using System; namespace Lesson_06{    class MainClass    {        public class Car{        //l跑        //访问说明符  返回值类型 方法名(参数列表){语句

【蓝鸥Unity开发基础三】课时2 游戏对象和基本操作

[蓝鸥Unity开发基础三]课时2 游戏对象和基本操作 一.首先,让我们先看一下下面的图片--金字塔架构 推荐视频讲师博客:http://11165165.blog.51cto.com/ 一个游戏有多个场景组成, 场景是由多个游戏对象组成, 每一个游戏对象身上由多个组件组成的, 每个组件都是为了完成某个特定的功能! 二.创建一个游戏环境--01 1.快捷键--CTRL+S 2.创建的环境会在视图中显示 3.在Create视图中邮件--选3D Object 4.创建一个--Plane 5.创建一个

蓝鸥Unity开发基础—— 实践课程源代码一

蓝鸥Unity开发基础-- 实践课程源代码一 源代码 using System; namespace MyFirstGame{    class MainClass    {        public static void Main (string[] args)        {            //游戏即将启动时做一些操作            const int mapW=46;//地图宽度            const int mapH = 16;//地图高度 //定义常量

蓝鸥Unity开发基础—— 实践课程源代码二

蓝鸥Unity开发基础-- 实践课程源代码二 using System; namespace MyFirstGame{    class MainClass    {        public static void Main (string[] args)        {            //游戏即将启动时做一些操作            const int mapW=46;//地图宽度            const int mapH = 16;//地图高度 //定义常量    

蓝鸥Unity开发基础二——课时3 访问修饰符

[蓝鸥Unity开发基础二]课时3 访问修饰符 一.访问修饰符 public --公共的,在哪里都能用 private  --私有的,只能够在当前机构体重使用,其他任何地方都不能 访问修饰符举例说明 using System; namespace Lesson_03{           struct Point2{        //public--公共的,在哪里都能用        public float x;        //private  --私有的,只能够在当前机构体重使用,其他

蓝鸥Unity开发基础—— 一维数组学习笔记

蓝鸥Unity开发基础-- 一维数组学习笔记 一.数组 之前我们学过很多数据类型,今天我们来学习数字,数字也是一种数据类型,那么,具体的数组是如何定义的? 数组:相同数据类型的成员组成的一组数据 Int类型数组:4  7  12  3  5--数组元素 Float数据类型数字:11.5 4.62 7.1 2.21 9.3--数组元素 数组中每一个元素都会分配一个数组下标,数组下标是从0开始的,有序排列,如:0 1 2 3 4 二.声明并初始化数组: 数组也是数据类型,所以也可以声明变量.使用ne

蓝鸥Unity开发基础—— 二维数组学习笔记

蓝鸥Unity开发基础-- 二维数组学习笔记 一.二维数组 有两个下标的数组叫做二维数组 类似[,]数组名=new类型[常量表达式1,常量表达式2] int[,] numbers= new int[2,3]; [0,0] [0,1] [0,2] [1,0] [1,1] [1,2] 举例说明 using System; namespace Lesson16{    class MainClass    {        public static void Main (string[] args)