using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class JoystickPlayerExample : MonoBehaviour
{
[SerializeField] float MinSpeed;
[SerializeField] float MaxSpeed;
[SerializeField] float dragAmount;
[SerializeField] float steerAngle;
[SerializeField] float Traction;
Vector3 _MoveVec;
public float speed;
public VariableJoystick variableJoystick;
public Rigidbody rb;
public void FixedUpdate()
{
_MoveVec += transform.forward * MinSpeed * Time.deltaTime;
transform.position += _MoveVec * Time.deltaTime;
transform.Rotate(Vector3.up * Input.GetAxis("Vertical") * steerAngle * Time.deltaTime * _MoveVec.magnitude); //Dönüş , manevra açısı
//joystick
Vector3 direction = Vector3.forward * variableJoystick.Vertical + Vector3.right * variableJoystick.Horizontal;
rb.AddForce(direction * speed * Time.fixedDeltaTime, ForceMode.VelocityChange);
//joystick
_MoveVec *= dragAmount; //Sürtünme kuvveti
_MoveVec = Vector3.ClampMagnitude(_MoveVec, MaxSpeed); //Minimum hızdan maksimum hıza çıkış
_MoveVec = Vector3.Lerp(_MoveVec.normalized, transform.forward, Traction * Time.deltaTime) * _MoveVec.magnitude;
}
}