一、创建项目导入素材
创建普通项目
- 在Package Manager中安装Universal RP
- 在Asset中创建Rendering => Universal Render Pipeline => Pipeline Asset(URP的设置文件)
- 将project setting中Graphics和Quality的渲染管线设置为刚创建的渲染管线设置文件
- 导入素材(Dog Knight PBR Polyart、 Low-Poly Simple Nature Pack 和 FREE Skybox Extended Shader)
- 在Edit => Edit=Render Pipeline => Universal Render Pipeline 中设置当前项目或当前素材的渲染管线
- 在Lighting => Environment 中设置天空盒的材质
- 注意Asset窗口和Inspect窗口的物体分类,方便管理
安装package
PolyBrush
调整地面的高度(左键直接点击变高,control+左键点击变矮)
- Outer Radius:外圈大小
- Inner Radius:内圈大小
- Strength:变化强度
- Direction:设置变化的方向。Brush normal:材质的法线方向
- Brush Mirroring:沿坐标轴对称形成另一个笔刷同时进行相同操作
柔化:将比较突出的棱角变的平滑。设置基本同上
将当前物体刷上不同的颜色
- 如果需要将颜色刷到物体上,则物体材质的 shader 需要为 Polybrush=> Shader 下的shader
- Brush:根据笔刷的大小刷上颜色
- Fill:填充区块
- Flood:整个物体
将预制体刷到场景当中
- 基本设置同1
- 将需要的prefab添加到Current Palette中,当前选中的prefab会在Brush Loadout中
- Brush Loadout 中prefab下的拖动条表示此物体出现的概率
- Hit Surface is Parent:将所有的画在平面上的物体都是此平面的子物体
将texture刷到场景当中
- 同4
Pro Builder
- 按住shift可以查看图标的功能
Pro Grids
安装ProGrids需要在Project Setting的Package Manger中打开允许preview
- 设置物体移动时的单位距离
- 是否在Scene窗口中显示坐标轴
- 是否自动吸附:即按照1的设置在坐标轴上自动进行吸附,每次只移动1的距离
- 4
- 5
- X 、Y、 Z、 3D均为Scene窗口显示的坐标轴
Navigation
自动导航
点击移动
自定义事件的注册和调用
-
注册
1
2public class EventVector3 : UnityEvent<Vector3> { };
//声明类,继承UnityEvent,并需要参数Vector3调用
1
2OnMouseClicked?.Invoke(hitInfo.point);
//当OnMouseClicked事件不为空时调用,并传入point信息
-
屏幕射线转为世界射线
1
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
单例模式
方便事件函数等在外部的调用
1
2
3
4
5
6
7
8public static MouseManager Instance;
private void Awake()
{
if (Instance != null)
Destroy(gameObject);
Instance = this;
}事件注册和调用
功能实现
- 鼠标指针图片切换
- Cinemachine:多功能相机插件
- Post Processing:后处理
- Animator
Shader Graph 遮挡剔除
FSM 状态机