最近开始学习unity,争取就业前做一个简单的东西出来,跟着课程学着先。
这一笔记主要为项目初始的构建,导入和基础的场景搭建。
( 一)创建项目
用unity2020创建项目,如果用2021创建则部分菜单位置有所变动。导包使用window-package manager,资源可以去unity assets store下载。
如果下载的资源一片粉色,说明使用的渲染管线有问题,需要去包管理器导入universal RP来升级素材到urp
包管理器导入的工具类包大部分会在tool栏内显示
(二)摆放素材
使用键盘v快捷键可启用顶点吸附,ctrl+shift平面吸附,便于物体摆放,防止拖拽物体脱离平面,天空盒与光照等在window-rendering-light中改。
( 三)polybrush构建场景
polybrush的五种画笔能够实现地形起伏、上色、摆放物体和纹理。(需要导入对应的sample)
起伏笔刷shift控制内圈大小,ctrl控制外圈大小和拉伸方向
上色上不去是因为材质不对,换成polybrush的sample生成的材质就可以了。可以在初期用上色来区分场景区域,底色则可用flood按钮。
摆放物体先导入预制件再去放,按住ctrl删除,开启选项后放置的物体是地面的子对象。
启动画笔会临时关闭坐标轴功能。
(四)probuilder修改场景(+progrids)
probuilder从包管理器导入后(也需要同时导入对应的support),可以用于扩大平面等功能。按住shift可显示详情,按住alt点击齿轮可打开设置。
shapetool中的segments字段可以修改顶点数量
关于progrids的安装,如果在包管理里找不到,就从url添加:com.unity.progrids
progrids可以帮助进行场景物体的移动(就像下图中的绿线)
在progrids里开启自动吸附后,就可以让移动按照设定的1网格距离变化。
probuild设置的平面初始是方形顶点,可在probuild工具中选择Traingulate形成偏low poly风格的三角形顶点
(五)创建材质
在Asserts对应的文件夹中创建新的Material文件,并将其应用到场景中。具体的效果可以通过inspector中的属性来更改。
(六)Navigation智能导航
在window-AI中打开Navigation窗口
可以使用此系统标记可移动区域。将地面设为Navigation static,并在Navigation栏设为可行走区域,同样的流程可以用于设置障碍区域及障碍物。
Agent的设置则代表导航主体,在角色对象中加入nav mesh agent,该角色就可以进行自动导航移动。可在组件中调整agent的大小等参数。修改后也要在navigation中修改对应的agent数据,来让区域适应角色agent的变化。
障碍物设置可在物体(如石头)中添加nav mesh obstacle组件,使其成为障碍物,然后调整其形状。它与不可行区域的不同在于当开启carve选项后,nav mesh会对obstacle动态bake,通过在导航网络上“挖洞”来取消一块导航网络,从而让agent避开,这块区域会跟随对象移动,而不像unwalkable需要重新烘培。
自动导航可以用于npc脚本,控制角色自动寻路等方面。
bake后的场景