Unity SKFramework框架(二十四)、Avatar Controller 第三人称控制

目录

一、简介

二、使用说明

1.人物控制

2.相机控制

三、参数说明

1.Avatar Controller

2.Camera Controller


一、简介

Avatar Controller适用于第三人称的人物控制,包括相机控制,目前初始版本v0.0.1包含对Avatar三个动画的控制:Idle静止、Walk行走、Sprint奔跑,通过Speed参数控制BlendTree,如图所示:

阈值分别如下:

该工具已经上传至我的开发框架SKFramework中,如图所示:

SKFramework框架开源地址:

https://github.com/136512892/SKFramework

二、使用说明

1.人物控制

为Avatar人物添加Avatar Controller组件,实现人物控制

Avatar移动通过Rigidbody刚体组件驱动,因此需要同时添加刚体组件,假设人物重70公斤,将Mass设为70,Freez Rotation设为true,如图所示:

为Avatar添加Collider碰撞器,并设置适当大小:

为Avatar添加Animator组件,并指定Animator Controller:

2.相机控制

为Camera相机添加Avatar Camera Controller组件,实现相机控制:

三、参数说明

1.Avatar Controller

Main Camera:主相机 用于跟随人物
Sprint Key:加速按键 按下该键时 人物进入奔跑状态
Walk Threshold:行走阈值 与Animator BlendTree中阈值相对应
Sprint Threshold:奔跑阈值 与Animator BlendTree中阈值相对应
Rotate Speed:旋转值使用插值方式 插值的速度

2.Camera Controller

Avatar:Avatar人物
Horizontal Sensitivity:鼠标水平方向灵敏度
Vertical Sensitivity:鼠标垂直方向灵敏度
Rot Y Min Limit:旋转y值的最小值限制
Rot Y Max Limit:旋转y值的最大值限制
Rotation Lerp Time:插值到目标旋转值所需的时间
Height:相机距人物的高度
Min Distance Limit:相机距人物最小距离限制
Max Distance Limit:相机距人物最大距离限制
Scroll Sensitivity:鼠标滚轮滚动的灵敏度
Invert Scroll Direction:是否翻转鼠标滚轮滚动的方向
Obstacle Layer:避障检测时障碍物的Layer层

其中Obstacle Layer用于避障检测,例如在场景中放置一个障碍物,将其Layer层级指定为Default,假设它是障碍层:

将Obstacle Layer也设为Default:

如图所示,当相机与人物之间被障碍物遮挡时,相机会向前拉进越过障碍物:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CoderZ1010

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值