UE4C++(7):理解输入映射

本文介绍了UE4中的输入映射,包括Action Mappings和Axis Mappings的概念及其应用场景。Action Mappings用于离散事件,如跳跃、射击;Axis Mappings用于持续输入,如行走、旋转。通过设置轴映射,可以将输入设备的操作映射到游戏行为,并通过SetupPlayerInputComponent进行绑定。自定义函数用于处理输入值,如限制在-1到+1之间,确保游戏行为的正确性。总结中强调了输入处理的层级结构及启用输入的重要性。
摘要由CSDN通过智能技术生成

10/14/2020

输入映射

您可以把 Action Mappings (动作映射)想象成**"是或否"的输入,**类似于鼠标按键或摇杆按键。 当在短时间内按键、松开、双击或按住不放时,它们会进行该项操作的汇报。 离散事件的动作,诸如跳跃、射击或与物体互动都可以使用这种类型的映射。

Axis Mappings (坐标轴映射)是持续不断的 - 您可以把它们想象成为"数量"输入,例如摇杆上的杆,或者鼠标指针的位置。 它们会在每一帧汇报其值,即使在不移动时也是如此。 一般涉及到量级或方向的内容,比如行走、到处看、开车等都可以用这种方式来处理。

设置轴映射

通过轴映射可将键盘、鼠标和控制器输入映射到一个"易懂的命名",之后再绑定到游戏行为(如移动)。轴映射将不停轮询,实现无缝的动作过渡和流畅的游戏行为。

  • 轮询:定时发出询问,依序询问每一个输入输出是否需要其服务
    输入映射
  • Scale表示映射的大小,如果没按是0,按了W是3.0

绑定映射(SetupPlayerInputComponent)

每一个Pawn或者Character都需要设置玩家输入组件

// Called to bind functionality to input
void APawnWithCamera::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent)
{
   
	Super::SetupPlayerInputComponent(PlayerInputComponent);


	//连接"ZoomIn"的事件
	PlayerInputComponent->BindAction("ZoomIn", IE_Pressed, this, &APawnWithCamera::ZoomIn
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值