Управление под смартфоны

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Управление под смартфоны

Сообщение Assassin 24 май 2020, 23:07

Доброго времени суток. Я делаю игру(wasd-движение, Shift-рывок). Как мне адаптировать вот эти клавиши под смартфоны? Спасибо.
Вот скрипт:
Синтаксис:
Используется csharp
using UnityEngine;

public class Run : MonoBehaviour
{
    public float MaxMoveSpeed = 6;
    private CharacterController controllerComponent;

    private Vector3 moveSpeed;
    private float dashingTimeLeft;
    private void Start()
    {
        controllerComponent = GetComponent<CharacterController>();
    }

    private void Update()
    {
       
            UpdateWalk();
            if (Input.GetKeyDown(KeyCode.LeftShift) || Input.GetKeyDown(KeyCode.RightShift) || Input.GetKeyDown(KeyCode.X)) Dash(false);
            else if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift) || Input.GetKey(KeyCode.X)) Dash(true);
    }

    private void Dash(bool holding)
    {
        if (dashingTimeLeft < (holding ? -.4f : -.2f))
        {
            dashingTimeLeft = .3f;
        }
    }

    private void UpdateWalk()
    {
        float ySpeed = moveSpeed.y;
        moveSpeed.y = 0;
        if (dashingTimeLeft <= 0)
        {
            Vector3 target = MaxMoveSpeed *
                             new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical")).normalized;
            moveSpeed = Vector3.MoveTowards(moveSpeed, target, Time.deltaTime * 300);

            if (moveSpeed.magnitude > 0.1f)
            {
                transform.rotation = Quaternion.RotateTowards(transform.rotation, Quaternion.LookRotation(moveSpeed),
                    Time.deltaTime * 720);
            }
        }
        else
        {
            moveSpeed = MaxMoveSpeed * 3 * moveSpeed.normalized;
        }

        dashingTimeLeft -= Time.deltaTime;

        moveSpeed.y = ySpeed + Physics.gravity.y * Time.deltaTime;
        controllerComponent.Move(moveSpeed * Time.deltaTime);
    }
 
Assassin
UNец
 
Сообщения: 7
Зарегистрирован: 03 май 2020, 20:07

Re: Управление под смартфоны

Сообщение Alex5 24 май 2020, 23:13

Ну а как другие делают? Виртуальные кнопки на экране.
Либо можно игроку "бежать" в место "тапа" по экрану.
Linux это просто
Экономика это просто
Forex это просто
Мой канал на YouTube
Аватара пользователя
Alex5
Старожил
 
Сообщения: 507
Зарегистрирован: 22 авг 2019, 17:37


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 26