Изучаем С++ создавая игры в ue4 Уилльям Шериф Изучайте программирование С++ с интересным применением реально мира, что позволит вам создавать ваши собственные игры!



Pdf көрінісі
бет210/252
Дата06.01.2022
өлшемі12,25 Mb.
#11940
1   ...   206   207   208   209   210   211   212   213   ...   252
Детальная суть движения монстра 
Компьютерные  игры  разбиты  на  детали.  На  предыдущем  изображении 
последовательности  наложенных  кадров,  движение  игрока  (Р)  представлено 
прямо  вверх  на  экране,  маленькими  шажками.  Движение  монстра  также  в 
маленьких  шажках.  В  каждом  кадре,  монстр  выполняет  один  маленький  шаг  в 
сторону  игрока.  Монстр  следует  видимой  кривой  дорожкой,  двигаясь  прямо  туда 
где находится игрок в каждом кадре.  
Чтобы двигать монстра на игрока, нам сначала нужно получить позицию игрока. И 
так как игрок доступен в глобальной функции, UGameplayStatics::GetPlayerPawn, мы 
просто берём наш указатель на игрока, используя эту функцию. Далее мы находим 
указывающий  вектор  из  функции  Monster  (GetActorLocation()),  который  указывает 


234 | 
С т р а н и ц а
 
 
от  монстра  на  аватар.  Чтобы  сделать  это,  вам  нужно  вычесть  местоположение 
монстра из местоположения аватара, как показано на следующем изображении:  
  
Это  простое  математическое  правило  и  его  нужно  запомнить.  Но  часто  оно 
понимается  неправильно.  Чтобы  получить  правильный  вектор,  всегда  вычитайте 
исходный вектор (начальная точка) от целевого вектора (конечная точка). В нашей 
системе,  нам  нужно  вычитать  вектор  Monster  из  вектора  Avatar.  Это  работает, 
потому  что  вычитание  вектора  Monster  из  системы,  двигает  вектор  Monster  к 
началу координат и вектор Avatar будет снизу слева от вектора Monster: 
 
Вычитание  вектора  Monster  из  системы  координат  двигает  вектор  Monster  к 
(0,0)   
 
Обязательно испытайте ваш код. С этого момента монстры будут бегать за вашим 
игроком и толпиться вокруг него. С предыдущим кодом, который выделен, они не 
будут  атаковать.  Они  просто  будут  следовать  за  ним  повсюду,  как  показано  на 
следующем скриншоте: 


Достарыңызбен бөлісу:
1   ...   206   207   208   209   210   211   212   213   ...   252




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет