169 |
С т р а н и ц а
Упражнения
Добавьте привязки осей и функции С++, чтобы двигать игрока влево и назад.
Примечание
Вот подсказка: вам нужно только добавить привязки осей, если вы понимаете, что
идти назад это
негатив ходьбы вперёд.
Решение
Введите две дополнительные привязки осей, перейдя в
Settings |
Project Settings…
|
Input, как показано здесь:
В поле ввода Scale для S и A введите -1. Это
инвертирует ось. Так что
при нажатии
клавиши S в игре, игрок будет идти назад. Попробуйте!
Альтернативно, вы можете определить две совсем раздельные
функции-члены в
вашем классе
AAvatar
,как показано далее и привязать клавиши A и S к
AAvatar::MoveLeft
и
AAvatar::MoveBack
, соответственно:
void AAvatar::MoveLeft( float amount )
{
if( Controller && amount )
{
FVector left = -GetActorRightVector();
170 |
С т р а н и ц а
AddMovementInput(left, amount);
}
} void AAvatar::MoveBack( float amount )
{
if( Controller && amount )
{
FVector back = -GetActorForwardVector();
AddMovementInput(back, amount);
}
}
Достарыңызбен бөлісу: