Вращение пушки по вертикале и горизонтали с ограничением угл

Программирование на Юнити.

Вращение пушки по вертикале и горизонтали с ограничением угл

Сообщение MrDmitry 06 сен 2022, 18:54

Собственно в заголовке все написано. Вращение самой башни я сделал и это работает.
Синтаксис:
Используется csharp
private Transform Tower;
private Transform Gun;

private void Start() {
        Tower = GameObject.FindGameObjectWithTag("UpTower").transform;
        Gun = GameObject.FindGameObjectWithTag("Gun").transform;
    }

void Update()
{
    Vector3 dir = target.position - transform.position;
    Quaternion lookRotation = Quaternion.LookRotation(dir, Vector3.up);
    Vector3 rotation = Quaternion.Lerp(Tower.rotation, lookRotation, Time.deltaTime * RotateSpeed).eulerAngles;
    Tower.rotation = Quaternion.Euler (0f, rotation.y, 0f);
}


Теперь не могу сообразить как сделать ограничение угла поворота башни и перемещение дула по вертикали? то есть в зависимости от расстояния до объекта пушка склонялась или поднималась.

пытался сделать ограничения через mathf.clamp но что то туплю в этом моменте.
MrDmitry
UNITрон
 
Сообщения: 223
Зарегистрирован: 05 авг 2017, 17:21

Re: Вращение пушки по вертикале и горизонтали с ограничением угл

Сообщение 1max1 06 сен 2022, 19:24

Так не работает?

Синтаксис:
Используется csharp
var ea = Tower.transform.eulerAngles;
ea.y = Mathf.Clamp(ea.y, 100, 200);
Tower.transform.eulerAngles = ea;
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Вращение пушки по вертикале и горизонтали с ограничением угл

Сообщение MrDmitry 06 сен 2022, 20:01

Так я делал. И возникает проблема которую сложно объяснить. Pivot все стоят в правильную сторону. При смещении объекта дальше по оси X пушку начинает трясти, при смещении в другую сторону ограничение срабатывает.

Синтаксис:
Используется csharp
var ea = Tower.transform.eulerAngles;
        ea.y = Mathf.Clamp(ea.y, 0, 90);
        Tower.transform.eulerAngles = ea;


Join 4Shared Now!



Join 4Shared Now!
MrDmitry
UNITрон
 
Сообщения: 223
Зарегистрирован: 05 авг 2017, 17:21


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 23