Unity初体验一窗口介绍及地形基础使用技巧

Unity初体验(一)入门基础篇

最近由于作业需要用到Unity相关知识,所以开始写下博客记录自己学习的内容和解决的问题,希望能够帮助有需要的人。

本文主要介绍以下几个内容:

  • Unity 游戏编辑器(如何导入 Assets 资源,窗口作用等)
  • 地形系统(如何创建地形)

Unity 窗口详解

首先打开 Unity 项目后会显示一个窗口,如下图所示:

在这里插入图片描述

这个空窗口需要了解五个类型的子窗口:

  • Scene 窗口:它是我们在开发游戏时可以编辑物体的游戏场景窗口
  • Project 窗口:它是包含所有游戏资源的窗口,这些资源都还没有真正使用在游戏中,只是可以使用,在游戏中需要使用任何资源时都要从这个窗口里查找
  • Hierachy 窗口:包含所有场景中已经正在使用的游戏物体,我们游戏在运行过程中看到的所有东西都是这个窗口中包含的所有物体
  • Inspector 窗口:该窗口包含物体可操控的所有组件,比如物体的变换组件(位置、旋转、缩放),纹理贴图等等,我们可以通过这个窗口去调整物体的各种属性。
  • Game 窗口:该窗口显示的场景是游戏在运行时真实看到的场景,以摄像机的视角为基准看向游戏中的场景。每个场景至少需要一个摄像机,否则 Game 窗口就看不见场景中的任何东西了。

地形系统

使用基本的地形系统你就可以实现像下面这样的场景。

在这里插入图片描述

地形系统在各个 Unity 版本中都不太相同,这里的不同指的是 Inspector 控制面板的选项布局不同,导致很多开发者在看视频教程的时候由于 Unity 版本不一致导致花很多时间来熟悉面板,这里将会介绍地形系统中 Terrain 组件的各种使用技巧,绘制出一个基本的有凸起、凹陷、树木和小草的地形。

在 Hierachy 面板中进行如下步骤:右键-3D Object-Terrain 创建出一个地形。

创建出来以后选中该物体,在 Inspector 面板中主要关注一个组件:Terrain。

这个组件是地形物体的核心组件,能够使我们的地形产生凹陷、凸起、种植树木草地等效果。

下面介绍该组件的五个选项。

Create Neighbor Terrains 创建地形

在这里插入图片描述

该组件代表代表地形的网格布局,即你能够在场景中定义多个地形网格。通过点击空白的格子可以添加新的网格,如果误添加了地形,选中该网格即可删除。

Paint Terrain 绘制地形

第二个选项:Paint Terrain。这个选项是整个组件的核心选项,它用于绘制我们的地形,呈现出不同的地形形状。

在这里插入图片描述

这个选项里面有 5 个子选项:

  • Raise or Lower Terrain:绘制凸起地形
  • Paint Holes:绘制凹陷地形
  • Paint Textures:为地形添加贴图纹理
  • Set Height:绘制凸起地形,凸起部分不会超过指定的 Height
  • Smooth Height:平滑地形的高度
  • Stamp Terrain:设置地形网格本身的属性例如宽度、深度等

Raise or Lower Terrain 绘制凹凸地形

首先第一个子选项,你可以在 Scene 面板中绘制自己想要凸起的地形区域,然后就可以画出像下面这种形状的地形

在这里插入图片描述


如果某些部分太高了或者太尖了还是不小心按错了,可以用 Shift + 左键 让凸起的部分慢慢地凹陷直到变成原来的地平面。

Set Height 设置高平面地形

下一个子选项是:Set Height。这个选项和第一个子选项的区别在于:该选项创造的凸起部分不会超过指定的高度 Height。

例如设置了最大高度为 30,那么创建出来的凸起部分地形就会下面这个样子。

在这里插入图片描述


最高点处的地方成了一个平面,而不会一直往上冒尖。

接下来就是要尝试绘制一个像沙滩一样凹陷的区域了。我们要注意 Height 属性下有 Flatten Tile 和 Flatten All 两个选项。这个选项的含义是:将地平面抬高至 Height 高度,而这样做的意义在于可以很方便地绘制凹陷的地形。

我们点击 Flatten All 表示将整个地形抬高,然后就可以看到和一开始的地平面是完全相同的。然后我们选中第一个子选项 Raise or Lower Terrain,使用Shift + 左键来绘制地形,就可以看到凹陷的地形了。

在这里插入图片描述

Smooth Height 平滑地形高度

下一个子选项:Smooth Height。顾名思义,就是平滑高度,我们画的山峰和低谷边缘部分有可能不够平滑,使用这个选项就可以使地形过渡得更加平滑,整个场景看起来更美观。

Paint Texture 为地形绘制纹理

最后一个要介绍的子选项是:Paint Texture。这个选项能够为我们的地形贴上纹理贴图。

在这里插入图片描述


我们点击下面的 Edit Terrain Layer 可以新建一个地形贴图。选择对应的纹理贴图后地形就会呈现出贴图效果。

在这里插入图片描述


我们还可以使用不同的纹理贴图对不同的区域进行着色,只要添加多个不同的 Layer 根据自身需要去着色就好了,下面给出我自己写的一个小例子

Paint Trees 画树木

到这里为止我们已经能够创建自己的地形并且为它附上一张好看的贴图了,接下来如果能在场景中添加上一些树木就更完美了。

效果图就是下面这样子,下面我们就正式开讲:

在这里插入图片描述


想要画树木很简单,我们只需要导入树木的预制体,然后使用笔刷在想要绘制的地方点鼠标左键就好了。

在这里插入图片描述


点击 Edit Trees - Add Tree - 选择预制体,保存后即可。注意绘制树木的时候要控制好笔刷大小(Brush Size)和树的密度(Tree Height)两个属性,否则就会出现太多的树聚集在一起,非常不好看。

如果不想自己画,我们还可以使用 Unity 提供的一个智能布局的 Mass Place Tree 功能,在场景中均匀地生成一些树木。

在这里插入图片描述


打开界面后可以设置需要生成的树木数量以及是否保存已有的树木,点击 Place 就会发现地形中生成了树木了,然后可以根据自身的喜好把一些觉得生成位置不合理的树木删除掉。

在这里插入图片描述

Paint Details 画草丛

当我们绘制完草丛以后,整个场景就会像下面这个样子,当然你做的场景一定会比我做的好看的。

在这里插入图片描述


绘制草丛的步骤与绘制树木的步骤基本相似,只要准备好小草的纹理贴图,然后点击 Edit Details 选项进行添加,之后就可以使用笔刷愉快的绘制了。

在这里插入图片描述

总结

整个地形系统常用的部分已经介绍完了,你只需要准备好在地形中用到的所有资源即可,这些资源都可以在 Asset Store 中下载到,有非常多的免费资源可以使用,推荐 Standard Asset,里面基本上涵盖了入门所需要的一切资源了。希望上面的内容对你有帮助!

原文地址:https://blog.csdn.net/weixin_41949328/article/details/113308859

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


这篇文章主要介绍了Unity游戏开发中外观模式是什么意思,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家...
这篇文章主要介绍Unity中地面检测方案的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.普通射线在角色坐标(一般是脚底)...
这篇文章主要介绍了Unity游戏开发中如何消除不想要的黄色警告,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带...
这篇文章主要介绍了Unity中有多少种渲染队列,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解
这篇文章主要介绍Unity中如何实现Texture,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!了解Texture2D 如上图,Texture2D是一张
小编给大家分享一下Unity中DOTS要实现的特点有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让...
这篇文章给大家分享的是有关unity中如何实现UGUI遮罩流光特效的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。下面是核心shader:Sh...
这篇文章主要为大家展示了“Unity中如何实现3D坐标转换UGUI坐标”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下...
这篇文章主要介绍了Unity游戏开发中设计模式的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家...
这篇文章主要介绍了Unity中如何实现仿真丝袜渲染,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了...
这篇文章给大家分享的是有关Unity插件OVRLipSync有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。项目需要接入对话口型动...
这篇文章主要介绍了Unity性能优化之DrawCall的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家...
这篇文章给大家分享的是有关Unity给力插件之Final IK怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。这插件有什么用:一般游...
这篇文章给大家分享的是有关Unity中如何内嵌网页插件UniWebView的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、常见Unity中内...
小编给大家分享一下Unity如何做流体物理的几个轮子,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让...
小编给大家分享一下Unity中Lod和Occlusion Culling的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收...
这篇文章将为大家详细讲解有关Unity中LineRenderer与TrailRenderer有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获...
这篇文章主要介绍了Unity中coroutine问题的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起...
这篇文章将为大家详细讲解有关unity中spine怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。骨骼动画首先我们来看到...
这篇文章主要为大家展示了“Unity Shader后处理中如何实现简单均值模糊”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学...