OnMouseDown() в Unity не работает

На попытки решить проблему я потратил несколько дней, и у меня уже опустились руки. Проблема видимо глобальная, т.к я перепробовал все, что советовали форумы, официальная документация Unity и чат GPT.

Проблема: у меня есть объект машинки в 3D проекте. Это префаб. Иерархию сможете найти на скринах ниже. Я прикрепил к ней Rigidbody, Box Collider, сам скрипт.

Логи кода - выводится только "Object has been created".

Прикрепляю код:

using UnityEngine;

public class CarController : MonoBehaviour
{ 
    private Rigidbody _rb;
    public byte carSpeed = 5;
    private bool isClicked;

    void Awake()
    {
        Debug.Log("Object has been created");
        _rb = GetComponent<Rigidbody>();
    }

    void OnMouseDown()
    {
        Debug.Log("Mouse clicked!");
        isClicked = true;
    }

    void FixedUpdate()
    {
        if(isClicked) 
        {
            _rb.MovePosition(transform.position + carSpeed * Time.fixedDeltaTime * Vector3.left);
        }
    }

}

Прикрепляю основную сцену, с направлением камеры, самой машинкой, и с иерархией проекта слева:

Прикрепляю основную сцену, с направлением камеры, самой машинкой, и с иерархией проекта слева:

Inspector объекта Car3

Inspector объекта Car3

Inspector объекта Main Camera

Inspector объекта Main Camera

Надеюсь на помощь ???


Ответы (1 шт):

Автор решения: Ворон

Я все-таки решил проблему. Дело в том, что Unity по приколу решил полностью обновить систему ввода, а нормальную документацию, увы, не приготовил.

Проблема решена переключением на старую систему ввода, при помощи этого ответа на Stackoverflow.

→ Ссылка