Unity之地形的构建

PS:公司没活干,好无聊偷偷摸鱼学Unity,害怕自己学完之后忘记,写下这一篇博客

先来看一下效果图:有山有水有树有草地


创建一个新的Unity3D项目

 这里要用到Unity官方的免费资源包(现在好像已经下架了百度网盘 请输入提取码) 

资源包下载完成之后我们导入新建好的Unity项目:

在项目这一栏里点击鼠标右键 ——> 导入包 ——> 自定义包,然后选择你下载资源包的路径就导入进来了。(这是汉化包的教程要对应你Unity版本进行安装unity3D【全版本】设置中文_unitu3d中文-CSDN博客)

首先创建一个地形:在层级这一栏里点击鼠标右键可以创建各种实体,这里选择地形

 在创建好的地形中点击选中它然后在检查器中会显示出对地形的操作和组件

对地形的绘制主要由这5个按钮来实现: 

一、

第一个按钮是创建相邻地形,顾名思义就是在你已经创建好的地形旁边继续添加地形......目前来说一个地形这个已经够练手了

二、

第二个按钮是绘制地形:这一个操作栏下边有六个选项,我们这里先看四个。

2.1

先来选择第一个  ——  Raise or Lower Terrain(升高或降低地形) ——  就是拿画笔在地形上绘制山脉和盆地;升高就是山脉,降低就是盆地,先升高后降低就是......没变(手动狗头) (升高直接鼠标左键绘制,降低需要按住Shift+鼠标左键来绘制)

注:这里的降低必须在地形有原有高度的基础上来降低

下边还有笔刷、笔画大小、不透明度

 尽情绘制吧:

2.2

来看第二个:Paint Holes  ——  它的主要功能是在绘制好的山上进行山洞的绘制,现在的绘制只是单纯的给山戳个洞,想要变得更好看你还需要山洞的资源包模型(然鹅我现在也没有^_^)

2.3

第三个:Paint Texture我们稍等再说。先说第四个:Set Height

你这里设置了想要的高度再去绘制的时候所绘制的高度就不会超过你所设定的高度,效果如下所示:

这里还有一个测量高度的操作,在你的地形里按住 Shift+鼠标点击 会获取你当前所点击地形的高度, 然后数值就会显示在高度里边。

通过这个Set Height设定你还可以为地形创建初始厚度。在高度里输入100,点击 展平瓦片 ,这样就设定了100米厚的地形,然后你就可以挖100米深的盆地了,这个和上面的  “”  相对应

 展平瓦片  只会展平一块地形,如果你还创建了其他相邻的地形 点击 全部展平    那其他地形也会展平。


如果你想要你所绘制出来的山脉盆地表面平滑一些,那么  Smooth Height  可以帮到你

 勾选后设置好笔刷等属性值去抹平就完事了 

2.4

绘制好你想要的效果后这下我们来看 Paint Texture ,给地形装上纹理

点击编辑地形层  ——  创建层,从我们导入的资源包中选择纹理,然后给地形绘制上吧

我这里用的三个地形层的素材名称是:NewLayer 3、NewLayer 4、NewLayer 6

这里地形层可以添加好几个,添加的第一个地形层会自动给整个地形加上该地形层,其他地形层需要手动绘制;这里同样可以调节画笔大小和不透明度。

现在离效果图只差树和草了我们一起说完:主要是通过这两个按钮下边的功能实现的。

操作方法和给地形加纹理类似,首先要导入树和草的资源素材。 树的素材名:Conifer_Desktop

编辑树 ——》  添加树  ——》 选择树素材

 大量放置树  这个按钮可以设定树的数量直接放置,此外还有树的密度、树高和随机性等属性

 草的素材名是:GrassFrond02AlbedoAlpha

编辑细节 ——》  添加草纹理  ——》选择草素材

草离近了才能显示出来  ——  真.编辑细节。

绘制好树和草就能达到效果图所展示的内容了    

下一步要去学习组件和Unity脚本的编写了,拜拜┏(^0^)┛ 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/314952.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在iPhone设备中查看崩溃日志

​ 目录 如何在iPhone设备中查看崩溃日志 摘要 引言 导致iPhone设备崩溃的主要原因是什么? 使用克魔助手查看iPhone设备中的崩溃日志 奔溃日志分析 总结 摘要 本文介绍了如何在iPhone设备中查看崩溃日志,以便调查崩溃的原因。我们将展示三种不同的…

【华为机试】2023年真题B卷(python)-计算疫情扩散时间

一、题目 题目描述: 请根据给定的地图计算,多少天以后,全部区域都会被感染。 如果初始地图上所有区域全部都被感染,或者没有被感染区域,返回-1 二、输入输出 输入描述: 一行N*N个数字(只包含0,1&#xff0c…

分布式【Zookeeper】

1.1 ZooKeeper 是什么 ZooKeeper 是 Apache 的顶级项目。ZooKeeper 为分布式应用提供了高效且可靠的分布式协调服务,提供了诸如统一命名服务、配置管理和分布式锁等分布式的基础服务。在解决分布式数据一致性方面,ZooKeeper 并没有直接采用 Paxos 算法&…

SQL常见面试题

今天刷了一遍牛客里的必知必会题,一共50道题,大部分都比较基础,下面汇总一下易错题。 SQL81 顾客登录名 本题几个关键点: 登录名是其名称和所在城市的组合,因此需要使用substring()和concat()截取和拼接字段。得到登…

电池管理系统BMS中SOC算法通俗解析(二)

下面简单介绍下我们BMS保护板使用的SOC估算方法。我们算法的主要是针对电流积分法计算SOC的局限性进行改进: ●电池包第一次上电使用开路电压法估算SOC。第一次上电,根据电池包厂家给出的电压和剩余容量二维关系图大概估算出目前电池包的剩余容量即SOC。…

python3 识别人像照片并纠正照片正反

实现效果: 本程序可以将下图第二张照片进行人脸识别,发现相片是否是正向,如果不是就进行相片转正形成下图第一张图。 代码 安装配置 模型下载 首先在我的这篇文件下载相应的人脸识别模型,一般 64标记点就够用,当然…

PHP 基础编程 (1)

文章目录 前后端交互尝试php简介php版本php 基础语法php的变量前后端交互 - 计算器体验php数据类型php的常量和变量的区别php的运算符算数运算符自增自减比较运算符赋值运算符逻辑运算 php的控制结构ifelseelse if 前后端交互尝试 前端编程语言:JS (Java…

Java智慧校园源码,SaaS云平台,私有云部署,移动端小程序使用小程序原生语言开发

系统概述: 电子班牌系统又称之为智慧班牌,是当前校园数字化信息化建设、文化建设的主流,是校园日常工作安排、校园信息发布、班级文化风采展示、课堂交流的重要应用载体。智慧班牌系统在传统信息发布和校园文化展示功能基础上,融…

C#设计模式之策略模式

策略模式简介 策略模式在设计模式中属于对象行为型模式,它的意图是定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。策略模式使得算法可独立于使用它的客户而变化。 策略模式的图解如下所示: 示例 本文通过一个简…

jenkins+pytest+allure

jenkinspytestallure allure下载地址 Releases allure-framework/allure2 GitHub allure环境变量配置 allure --version 查看版本(确定是否配置完成) python安装allure插件 pip install allure-pytest pytest的运行指令 pytest -sv test_demo.py 开发完毕后将代码上传到…

Python-docx 深入word源码 带有序号的段落无法设置段后、段前距离、间距等段落属性

如果使用p doc.add_paragraph(内容, styleList Number)来创建序号段落,会发现设置序号段落之间的段前、段后以及段落间距无法生效。后来将docx库生成的word文档打开后发现段落的设置出现问题,如下图红框所示,将该选项去掉即可使段落间距属性…

PACC:数据中心网络的主动 CNP 生成方案

PACC:数据中心网络的主动 CNP 生成方案 文章目录 PACC:数据中心网络的主动 CNP 生成方案PACC算法CNP数据结构PACC参数仿真结果参考文献 PACC算法 CNP数据结构 PACC参数 仿真结果 PACC Hadoop Load0.2 的情况: PACC Hadoop Load0.4 的情况&a…