Как изменить соотношение скорости игрока к кадрам в секунду, а также связано ли это с кинематикой?

#frame-rate #timedelta #rigid-bodies #kinematics

Вопрос:

Как я это делаю, каждый раз, когда персонаж сталкивается с блоком, искинематическое свойство Rigidbody переходит в True и не может вернуться к повреждению в течение 3 секунд. Когда время закончится, мне нужно изменить кинематику на ложную и уже можно получить повреждения?? И мне также нужно изменить способ перемещения персонажа, чтобы учесть частоту кадров в секунду, и отрегулировать скорость, до сих пор это мой код…

 using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Personaje : MonoBehaviour {

    public float speed = 5.0f;
    public int vidaMaxima;

    private int vidaActual;
    private Rigidbody rigidBody;
    // Use this for initialization
    void Start()
    {
        Application.targetFrameRate = 60;
        rigidBody = GetComponent<Rigidbody>();
        rigidBody.freezeRotation = true;

        vidaActual =  vidaMaxima;
    }
    
    // Update is called once per frame
    void Update ()
    
        {

            transform.position = transform.position   transform.forward = speed * Time.deltaTime;

        } 
    

    public void RestarVida()
    {
        vidaActual--;
    }

    public void OnTriggerEnter(Collider other)
    {
        if(other.tag == "Enemy")
        {
            RestarVida();
            Debug.Log("Restar vida");
        }
    }
}