Відстеження натискань користувача в Unity

Прокрутити вниз

Відстеження натискань користувача в Unity програмування курси

 Відстеження натискань користувача в Unity за допомогою модуля на C# 🎮

Сьогодні ти дізнаєшся, як створити C#-модуль, який буде відстежувати натискання клавіш та миші в Unity. Це важливо для створення управління в грі, наприклад, коли гравець стрибає, атакує або натискає кнопки меню.

Відстеження натискань користувача в Unity програмування курси
Відстеження натискань користувача в Unity програмування курси

1. Як працює відстеження натискань в Unity?

Unity має вбудований клас Input, який дозволяє відстежувати:
🔹 Клавіатуру (натискання клавіш)
🔹 Мишу (натискання кнопок, рух)
🔹 Сенсорні екрани (дотики)
🔹 Геймпади (кнопки та стики)

2. Створюємо C#-модуль для відстеження натискань

Крок 1: Створення скрипту

1️⃣ У Unity відкрий Assets.
2️⃣ Натисни Create → C# Script.
3️⃣ Назви його UserInputTracker.
4️⃣ Відкрий його у Visual Studio або Rider.

Крок 2: Написання коду для відстеження клавіш

Заміні стандартний код на цей:

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

public class UserInputTracker : MonoBehaviour
{
    void Update()
    {
        // Відстеження натискання клавіші "Пробіл"
        if (Input.GetKeyDown(KeyCode.Space))
        {
            Debug.Log("Натиснуто Пробіл!");
        }

        // Відстеження утримання клавіші "W"
        if (Input.GetKey(KeyCode.W))
        {
            Debug.Log("Утримується клавіша W");
        }

        // Відстеження відпускання клавіші "Escape"
        if (Input.GetKeyUp(KeyCode.Escape))
        {
            Debug.Log("Відпущено клавішу Escape!");
        }
    }
}

Що тут відбувається?

✔️ Input.GetKeyDown() – перевіряє, чи натиснули клавішу.
✔️ Input.GetKey() – перевіряє, чи клавішу утримують.
✔️ Input.GetKeyUp() – перевіряє, чи клавішу відпустили.

Крок 3: Відстеження кліків миші

Додай цей код у метод Update():

        // Ліва кнопка миші
        if (Input.GetMouseButtonDown(0))
        {
            Debug.Log("Клік лівою кнопкою миші!");
        }

        // Права кнопка миші
        if (Input.GetMouseButtonDown(1))
        {
            Debug.Log("Клік правою кнопкою миші!");
        }

        // Колесо миші (середня кнопка)
        if (Input.GetMouseButtonDown(2))
        {
            Debug.Log("Натиснуто колесо миші!");
        }

Як це працює?

✔️ Input.GetMouseButtonDown(0) – натискання лівої кнопки миші.
✔️ Input.GetMouseButtonDown(1) – натискання правої кнопки миші.
✔️ Input.GetMouseButtonDown(2) – натискання колеса миші.

3. Підключення модуля до об’єкта

1️⃣ Перетягни скрипт UserInputTracker на будь-який об’єкт у Hierarchy (наприклад, на Main Camera).
2️⃣ Запусти гру та відкрий Console (Ctrl + Shift + C).
3️⃣ Натискай клавіші та кнопки миші – у Console будуть з’являтися повідомлення!

Готово! Тепер Unity відстежує натискання клавіш і миші! 🎮

4. Практичне завдання 🎯

🔹 Додай перевірку натискання інших клавіш (наприклад, A, S, D).
🔹 Додай перевірку подвійного кліку миші.
🔹 Додай реакцію на натискання клавіші Enter (наприклад, зміни колір об’єкта).

🎮 Ти тепер вмієш відстежувати введення користувача в Unity! 🚀