Массив Rigidbody

Физика в Unity

Массив Rigidbody

Сообщение xies 07 апр 2021, 17:09

Ошибка в скрипте, делаю управление для персонажа, не знаю как правльно оформить.
Синтаксис:
Используется csharp
[SerializeField] private Vector3 moveDirection;
    private Rigidbody[] _player;

    private void Start()
    {
        _player = FindObjectsOfType<Rigidbody>();
    }
    private void FixedUpdate()
    {
        OnButtonLeft();
        OnButtonRight();
    }
    public void OnButtonLeft()
    {
        _player.GetComponent<Rigidbody>().velocity += moveDirection;
    }
    public void OnButtonRight()
    {
        _player.GetComponent<Rigidbody>().velocity -= moveDirection;
    }

ошибка в функциях OnButtonLeft и OnButtonRight не знаю как правильно оформить строку _player.GetComponent<Rigidbody>().velocity = moveDirection; :-?
xies
UNец
 
Сообщения: 9
Зарегистрирован: 07 апр 2021, 16:58

Re: Массив Rigidbody

Сообщение 1max1 07 апр 2021, 17:44

_player это же массив у тебя.
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Массив Rigidbody

Сообщение xies 07 апр 2021, 17:47

1max1 писал(а):_player это же массив у тебя.

Ну да, масив
xies
UNец
 
Сообщения: 9
Зарегистрирован: 07 апр 2021, 16:58

Re: Массив Rigidbody

Сообщение Xtir 07 апр 2021, 18:01

Ну а какая ошибка то?
Xtir
UNIверсал
 
Сообщения: 498
Зарегистрирован: 21 окт 2016, 00:37

Re: Массив Rigidbody

Сообщение 1max1 07 апр 2021, 18:04

Ты обращаешься не к элементу, а к самому массиву.
Синтаксис:
Используется csharp
foreach (var rb in _player)
    rb.velocity -= moveDirection;
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Массив Rigidbody

Сообщение xies 07 апр 2021, 18:06

Xtir писал(а):Ну а какая ошибка то?

Rigidbody[] не содержит определения "GetComponent", и не удалось найти доступный метод расширения "GetComponent", принимающий тип Rigidbody[] в качестве первого аргумента - это в Visual, а в Unity Rigidbody[] does not contain a definition for 'GetComponent'
xies
UNец
 
Сообщения: 9
Зарегистрирован: 07 апр 2021, 16:58

Re: Массив Rigidbody

Сообщение 1max1 07 апр 2021, 18:11

В GetComponent нет никакого смысла, я исправил код. Вообще твой код странный, ты сразу и прибавляешь скорость и отнимаешь, там всегда будет 0.
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Массив Rigidbody

Сообщение xies 07 апр 2021, 18:20

1max1 писал(а):В GetComponent нет никакого смысла, я исправил код. Вообще твой код странный, ты сразу и прибавляешь скорость и отнимаешь, там всегда будет 0.

Спасибо, заработало, сам бы не додумался. На счёт кода может я не прав, но 0 будет в том случае если игрок не будет нажимать кнопки, а так это 1 или же 0
xies
UNец
 
Сообщения: 9
Зарегистрирован: 07 апр 2021, 16:58


Вернуться в PhysX

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

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