Прежде всего, это плохо сформулированный вопрос.Обычно я бы за это проголосовал, но по какой-то причине я не собираюсь сегодня.
Вы говорите, что нет необходимости в переменной скорости, но она должна двигаться в направлении с постоянной скоростью.Я предполагаю, что вам нужен полный диапазон 360 градусов.То, что вы делаете, это спрайт джойстика на вашем слое.Когда вы касаетесь спрайта, вы вычисляете угол касания (игнорируя расстояние от центра, так как вам не нужна переменная скорость).Преобразуйте угол в CGPoint (для этого полезно ccpForAngle (CGFloat)), а затем используйте ccpMult (CGPoint, CGFloat), чтобы решить, как быстро перемещать спрайт.Затем вы можете использовать CCMoveBy для перемещения вашего спрайта.
Это как минимум один из способов сделать это.