Unity(一)
平动和转动
plaintext
1 | public class instance : MonoBehaviour |
摄像机的平滑跟随和视角锁定
plaintext
1 | [SerializeField] Transform target; |
plaintext
1 | public Transform target; |
两种对摄像头的设置
第一种是摄像机的平滑跟随,第二种是视角锁定(摄像机不动,只转动)
GetAxis
在 Unity 的 Input Manager 中,Positive Button
和 Negative Button
是用来处理轴输入(axis input)的.当你配置诸如 "Horizontal"
或 "Vertical"
这样代表方向或动作的输入轴时,这两个按钮起到了重要的作用.
轴输入(Axis Input)简介
Unity 中的轴输入通常用来处理类似于左右、上下移动这样的操作.输入轴是一种 模拟输入,而不是简单的二元按键(开/关).例如:
"Horizontal"
轴可以映射到 A/D 键或 左/右 方向键,表示横向移动."Vertical"
轴可以映射到 W/S 键或 上/下 方向键,表示纵向移动.
这些轴输入返回的值在 -1 到 1 之间,用来表示不同的方向或强度.
Positive Button
和 Negative Button
的作用
- Positive Button 是用来指定当你按下该按钮时,输入轴返回正向值(如
1
).例如,”D” 键或右方向键通常用作Positive Button
,它会让角色向右移动. - Negative Button 是用来指定当你按下该按钮时,输入轴返回负向值(如
-1
).例如,”A” 键或左方向键通常用作Negative Button
,它会让角色向左移动.
示例:Horizontal
轴配置
假设我们在 Input Manager 中配置了一个名为 "Horizontal"
的输入轴.常见的设置可能是这样的:
- Name: Horizontal
- Negative Button: A (或 Left Arrow)
- Positive Button: D (或 Right Arrow)
- Gravity: 3
- Dead: 0.001
- Sensitivity: 3
- Type: Key or Mouse Button
- Axis: X axis
工作原理
- 当你按下
Positive Button
(比如"D"
键),Input.GetAxis("Horizontal")
会返回一个正值,接近1
. - 当你按下
Negative Button
(比如"A"
键),Input.GetAxis("Horizontal")
会返回一个负值,接近-1
. - 如果没有按下任何按钮,
Input.GetAxis("Horizontal")
将返回0
,表示没有水平输入.
为什么使用 Positive 和 Negative 按钮?
它们的主要作用是提供一种简便的方式来处理方向性输入.例如,移动角色时,可以根据返回的轴值决定角色的移动方向:
- 如果
Input.GetAxis("Horizontal")
返回正值(如 1),角色向右移动. - 如果返回负值(如 -1),角色向左移动.
示例:检测水平轴输入并移动角色
plaintext
1 | void Update() |
- 如果玩家按下 “D” 或 右方向键(
Positive Button
),move
会变成正值,角色向右移动. - 如果玩家按下 “A” 或 左方向键(
Negative Button
),move
会变成负值,角色向左移动.
配置解释
- Gravity: 控制按键松开后,轴值回到零的速度.数值越大,返回到 0 的速度越快.
- Sensitivity: 控制按键按下时,轴值从 0 加速到 1(或 -1)的速度.数值越大,响应越快.
- Dead: 一个小阈值,避免微小输入造成意外响应.小于该值的输入会被视为 0.
总结
- Positive Button:用于正方向的输入,通常映射为右/上方向键或控制器的正向输入.
- Negative Button:用于负方向的输入,通常映射为左/下方向键或控制器的反向输入.
- 它们是用于控制方向性输入的核心元素,特别是在控制角色移动时.
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.
Comments