作为一个控制器,需要控制读取操控旋转(Rotator)和位置(Location)。所以作为一个FRotator有自己的纵摇(Pitch)和横摇(Yaw and Roll),目前我们Pawn编辑器里已经有了控制器纵摇输入。
AddControllerPithInput();
AddControllerYawInput();
AddControllerRollInput();
在项目设置添加鼠标X轴(横向)和Y轴(纵向)映射,并反转Y轴。(轴映射是每一帧检查输入的,像Tick函数一样)。
接下来看看在蓝图中如何实现:
勾选细节选项,即可实现鼠标控制视角。
接下来看看如何在C++中实现这些操作。
声明这两个保护函数并接受浮点类型的值。
将声明的两个函数绑定到设置玩家输入组件中,使用轴结合BindAxis。
还是按照刚刚我们在蓝图执行的语句。
在函数体内定义。
void ABird::Turn(float Value)
{
AddControllerYawInput(Value);
}
void ABird::LookUp(float Value)
{
AddControllerPitchInput(Value);
}
接下来进行热重载即可(之前的蓝图需要删掉)。