第三人称角色控制_第四章.md 2.4 KB

运行游戏的时候,可以看到,是有两个mixer的

![[Pasted image 20240306142609.png]]

第一个mixer混合器,就是总的,动画混合器

![[Pasted image 20240306142647.png]]

第二个mixer混合器,是开始步行的时候,才新增的; 有步行和跑步,俩动画,inputcount是2; 然后链接俩mixer混合器

![[Pasted image 20240306143307.png]]

混合动画节点中,创建动画片段的,具体逻辑

![[Pasted image 20240306143753.png]]

设置权重的接口封装

![[Pasted image 20240306143955.png]]

有可能存在,摄像头被环境,挡住的情况; 先添加一个layer层级,设置给Env环境

![[Pasted image 20240306153557.png]]

添加一个碰撞器相关脚本,然后设置一下标签 其他参数,也参考设置一下

![[Pasted image 20240306153709.png]]

运行游戏,角色来到墙壁前面的时候,就会触发,碰撞器,无法向前旋转

![[Pasted image 20240306153831.png]]

需要注意,环境本体,和子物体,也都是有碰撞器的

![[Pasted image 20240306154115.png]]

框架内,这是扩展功能接口

![[Pasted image 20240306154315.png]]

例如,获取类相关

![[Pasted image 20240306154354.png]]

数组对比:

![[Pasted image 20240306154423.png]]

判空逻辑:

![[Pasted image 20240306154515.png]]

主要用来检测,gameobject和音频是否为空

![[Pasted image 20240306154540.png]]

资源管理相关,就跟框架内置,对象池管理器,配合使用

![[Pasted image 20240306154708.png]]

对象池管理器,有两个容器列表,分别是游戏实体字典,和普通实体字典

![[Pasted image 20240306154759.png]]

其中,游戏实体类,构造函数,逻辑上,就是创建一个新的游戏实体,然后,放到对应的父物体即可; 还会整一个poolQueue队列容器,存放对象

![[Pasted image 20240306154910.png]]

这里的父物体,是传参过来的,对应的是这个:

![[Pasted image 20240306155046.png]]

![[Pasted image 20240306155118.png]]

放进对象池的逻辑:

![[Pasted image 20240306155301.png]]

然后,获取对象的相关逻辑: 如果没有设置父物体,就放到当前默认场景

![[Pasted image 20240306155419.png]]

![[Pasted image 20240306155547.png]]

回到对象池管理器,游戏对象字典,和普通对象字典,也是分开管理即可

![[Pasted image 20240306155751.png]]