Triển khai đầu vào bàn phím và chuột trong Unity

Việc triển khai đầu vào bằng bàn phím và chuột trong Unity cho phép nhà phát triển nắm bắt được tương tác của người dùng và kiểm soát trò chơi hoặc ứng dụng. Unity cung cấp nhiều phương thức và sự kiện khác nhau để xử lý thao tác nhập bằng bàn phím và chuột. Dưới đây là thông tin tổng quan về cách triển khai tính năng nhập bằng bàn phím và chuột trong Unity:

Đầu vào bàn phím

Để chụp đầu vào bàn phím, nhà phát triển có thể sử dụng lớp 'Input' do Unity cung cấp. Phương thức 'Input.GetKey' hoặc 'Input.GetKeyDown' kiểm tra xem một phím cụ thể hiện đang được giữ hay đã được nhấn. Đây là một ví dụ:

void Update()
{
    if (Input.GetKey(KeyCode.Space))
    {
        // Space key is being held down
    }

    if (Input.GetKeyDown(KeyCode.Escape))
    {
        // Escape key has been pressed
    }
}

Trong ví dụ này, phương thức 'Update' được gọi ở mọi khung hình và chúng tôi kiểm tra xem phím Space có được giữ hay không bằng cách sử dụng 'Input.GetKey' và nếu phím Escape đang được nhấn bằng cách sử dụng 'Input.GetKeyDown'.

Đầu vào chuột

Để ghi lại đầu vào của chuột, nhà phát triển cũng có thể sử dụng lớp 'Input'. Unity cung cấp nhiều phương thức và thuộc tính khác nhau để xử lý các tương tác chuột, chẳng hạn như 'Input.mousePosition', 'Input.GetMouseButtonDown''Input.GetMouseButton'. Đây là một ví dụ:

void Update()
{
    if (Input.GetMouseButtonDown(0))
    {
        // Left mouse button has been pressed
    }

    if (Input.GetMouseButton(1))
    {
        // Right mouse button is being held down
    }

    Vector3 mousePosition = Input.mousePosition;
    // Get the current position of the mouse cursor
}

Trong ví dụ này, phương pháp 'Update' được sử dụng để phát hiện các lần nhấn nút chuột bằng cách sử dụng 'Input.GetMouseButtonDown', kiểm tra xem chuột có nút đang được giữ bằng cách sử dụng 'Input.GetMouseButton' và lấy vị trí hiện tại của con trỏ chuột bằng cách sử dụng 'Input.mousePosition'.

Đầu vào dựa trên sự kiện

Unity cũng cung cấp khả năng xử lý dữ liệu đầu vào dựa trên sự kiện thông qua thành phần 'EventSystem''EventTrigger'. Cách tiếp cận này cho phép các nhà phát triển xác định hàm được gọi để phản hồi các sự kiện cụ thể, chẳng hạn như nhấp chuột vào nút hoặc di chuột. Nhà phát triển có thể sử dụng thành phần 'EventTrigger' để xác định các sự kiện trong Unity Editor, sau đó viết các hàm để xử lý các sự kiện đó trong mã.

Trục đầu vào

Unity Trình quản lý đầu vào cho phép nhà phát triển xác định trục đầu vào tùy chỉnh cho các cấu hình đầu vào phức tạp hơn. Điều này hữu ích để xử lý đầu vào analog, chẳng hạn như cần điều khiển hoặc tay cầm chơi game. Có thể truy cập trục đầu vào bằng cách sử dụng phương thức 'Input.GetAxis' hoặc 'Input.GetAxisRaw'.

Phần kết luận

Đây là một số kỹ thuật cơ bản để triển khai thao tác nhập bằng bàn phím và chuột trong Unity. Tùy thuộc vào yêu cầu cụ thể, nhà phát triển có thể kết hợp các phương pháp trên để xử lý các thao tác nhập bằng phím hoặc nút chuột khác nhau cũng như để triển khai các tương tác tùy chỉnh trong trò chơi hoặc ứng dụng. Hãy nhớ xử lý dữ liệu đầu vào trong phương pháp cập nhật thích hợp (ví dụ: 'Update', 'FixedUpdate') dựa trên yêu cầu.

Bài viết được đề xuất
Giới thiệu về State Machine trong Unity
Cập nhật so với Cập nhật muộn
Cập nhật so với Cập nhật cố định
Mở ngăn kéo và tủ bằng các phím cụ thể trong Unity
Triển khai nhóm đối tượng trong Unity
Triển khai Điều khiển tai nghe VR trong Unity
Triển khai dịch chuyển tức thời trong Unity