Я разрабатываю игру в cocos-2dx, в которой у меня есть ракетный спрайт, следующий за плоским спрайтом.Я хочу нарисовать пунктирную линию / кривую / траекторию позади ракеты, которая показывает траекторию полета ракеты.на сцене будет несколько спрайтов, пытающихся поймать самолет.
Я использую это в своей функции расписания обновлений, чтобы ракета следовала за плоскостью:
for(auto &i : missiles) {
Sprite* missile = i;
auto diff = plane->getPosition() - missile->getPosition();
auto angle = CC_RADIANS_TO_DEGREES(atan2(diff.x, diff.y)) - 90;
auto rotation = missile->getRotation();
if (rotation + 2 < angle)
rotation += 2;
else if (rotation + 2 > angle)
rotation -= 2;
auto rotation_rad = CC_DEGREES_TO_RADIANS(-rotation);
float x = MISSILE_SPEED * cos(rotation_rad);
float y = MISSILE_SPEED * sin(rotation_rad);
missile->getPhysicsBody()->setVelocity(Vec2(x, y));
missile->setRotation(rotation);
}
Примечание: ракеты - это вектор спрайта. Пожалуйста, помогите.