По сути, я заставил свой объект в единстве передвигаться с помощью виртуального джойстика, но я не могу заставить его двигаться на 100% мгновенно, он сглаживается и максимальная скорость достигается только тогда, когда ручка достигает контура джойстика.Как убрать сглаживание?
Я попробовал несколько вещей, которые я узнал из уроков, таких как следующий код, но так как я новичок и не могу придумать много вещей, которые могут помочь.
public float runSpeed = 5f;
public Joystick joystick;
Rigidbody2D rigidbody2d;
// Start is called before the first frame update
void Start()
{
rigidbody2d = GetComponent<Rigidbody2D>();
}
// Update is called once per frame
void Update()
{
float horizontal = joystick.Horizontal;
float vertical = joystick.Vertical;
Vector2 move = new Vector2(horizontal, vertical);
Vector2 position = rigidbody2d.position;
if (joystick.Horizontal || joystick.Vertical >= .2f)
{
position = position + move * runSpeed * Time.deltaTime;
}
else if (joystick.Horizontal || joystick.Vertical <= -.2f)
{
position = position + move * -runSpeed * Time.deltaTime;
}
else
{
position = position + move * 0f * Time.deltaTime;
}
rigidbody2d.MovePosition(position);
Ошибка CS0019 Оператор '||'не может применяться к операндам типа 'float' и 'bool' Assembly-CSharp