Exemplo n.º 1
0
    void resilientCollision(CommunicationItem item) // функция считающая значение скорочти при упругом столкновении
    {
        Debug.Log("- - - - - -  - - - -  - - -");
        Debug.Log(item.getMass());
        Debug.Log(item.getSpeed());
        Debug.Log(toSend.getMass());
        Debug.Log(toSend.getSpeed());
        Debug.Log("- - - - - -  - - - -  - - -");
        float newSpeed = (2 * item.getMass() * item.getSpeed() + (toSend.getMass() - item.getMass()) * toSend.getSpeed()) / (item.getMass() + toSend.getMass()); // рассчет скорости по формуле

        Debug.Log(newSpeed);
        ball.velocity = new Vector3(newSpeed, 0, 0); // присваивание объекту значение новой скорочти
        setupInfoUI(newSpeed);
    }
Exemplo n.º 2
0
    void nonResilientCollision(CommunicationItem item) // функция считающая значение скорочти объекта при неупругом столкновении
    {
        float newSpeed = (item.getMass() * item.getSpeed() + toSend.getMass() * toSend.getSpeed()) /
                         (toSend.getMass() + item.getMass()); // соответственно рассчет скорочти по формуле

        ball.velocity = new Vector3(newSpeed, 0, 0);          // присваивание объекту значение новой скорочти
        setupInfoUI(newSpeed);
    }