Điều khiển bằng các phím
Thuộc phần Những kiến thức cơ bản về lập trình trong Unity trong hành trình Unity của Coddy. Bài học 12 trên 85.
Input.GetKey(KeyCode.Space) có giá trị true ở mỗi khung hình khi bạn nhấn giữ phím Space và có giá trị false nếu không. Kiểm tra phím trong Update() và chỉ di chuyển khi kết quả là đúng, để người chơi điều khiển đối tượng.
Thùng này bay lên với tốc độ lift đơn vị mỗi giây khi bạn nhấn giữ phím Space. Time.deltaTime giúp duy trì tốc độ tính theo giây, như trong bài học trước:
public float lift = 2f;
void Update()
{
if (Input.GetKey(KeyCode.Space))
{
transform.position += new Vector3(0, lift * Time.deltaTime, 0);
}
}Mỗi phím đều có một KeyCode: KeyCode.UpArrow, KeyCode.W, KeyCode.Return và nhiều phím khác. Trước tiên, hãy nhấp vào khung trò chơi để các phím được gửi đến đó. Lưu ý dành cho Unity 6: các dự án mới sử dụng Input System mới, và Input.GetKey sẽ gây lỗi cho đến khi bạn đặt Active Input Handling (trong Project Settings, Player) thành Both.
Thử thách
DễCho người chơi điều khiển khối lập phương bằng các phím mũi tên.
- Trong
Update(), khiInput.GetKey(KeyCode.RightArrow)là true, hãy cộngnew Vector3(speed * Time.deltaTime, 0, 0)vàotransform.position. - Khi giữ
KeyCode.LeftArrow, hãy trừ cùngVector3bằng-=.
Nhấn Chơi, nhấp vào trò chơi rồi giữ các phím mũi tên: khối lập phương trượt sang phải và trái. Sau đó nhấn Kiểm tra.
Tự làm thử
using UnityEngine;
public class Steering : MonoBehaviour
{
public float speed = 4f;
void Update()
{
// Phím mũi tên phải: di chuyển sang phải. Phím mũi tên trái: di chuyển sang trái.
}
}
Tất cả bài học trong Những kiến thức cơ bản về lập trình trong Unity
1C# cơ bản trong Unity
Xin chào, UnityBiếnSố thập phân cần có fVăn bản trong ConsoleBiến có thể ghi nhớIf và elseSo sánh các sốÔn tập: Thu thập xu7Vòng lặp và phương thức
Lặp lại với forVòng lặp lồng nhauViết phương thứcPhương thức trả lờiMảngÔn tập: Cầu thang2Làm cho nó chuyển động
Đặt khối lập phươngDi chuyển theo từng khung hìnhXoay mỗi giâyĐiều khiển bằng các phímÔn tập: Lái khối lập phương5Vectơ
Cộng vectơPhương hướngKhông gian cục bộ và không gian thế giớiTốc độ theo đường chéoKhoảng cách giữa các vậtVector3 là một structÔn tập: Người điều khiển drone8GameObject và thành phần
Tham chiếu trong InspectorLấy một thành phầnThành phần bị thiếuThêm một thành phầnRequireComponentHiện và ẩnÔn tập: Công tắc đèn3Inspector
Các trường trong InspectorSerializeFieldSố thực và MathfThuộc tính trong InspectorÔn tập: thang máy6Biến đổi và hệ phân cấp
Đối tượng cha và conKéo cờ lênTỷ lệNhìn vào các vật thểDi chuyển đến một điểmÔn tập: Mặt trăng quay quanh9Dự án: Bắt lấy ngôi sao
Người bắt saoNgôi sao rơiTự luyện tập: Playground Unity