Simulacrum, từ simulacrum Latin, là một sự bắt chước, giả mạo hoặc hư cấu. Khái niệm này được liên kết với mô phỏng, đó là hành động mô phỏng .Một...
Lập Trình Game Với Unity Như Thế Nào (Phần 1)
1. Unity là gì?
Unity là một ứng dụng làm game đa nền tảng, những nền tảng được tương hỗ lúc bấy giờ là Android, IOS, Linux, macOS, Windows, Windows Phone, …
Unity3D cung ứng một mạng lưới hệ thống tổng lực cho những lập trình viên, từ soạn thảo mã nguồn, thiết kế xây dựng công cụ tự động hóa đến trình sửa lỗi nên cũng khá dễ sử dụng. Ngôn ngữ lập trình chính của Unity là C #, ngoài những còn có tương hỗ cho Javascript .
Unity cũng tận dụng chức năng của các thư viện phần mềm như engine mô phỏng vật lý PhysicX của Nvidia, OpenGL và Direct3D để kết xuất hình ảnh 3D, OpenAL cho âm thanh, … nên nó hỗ trợ rất mạnh cho công việc lập trình game.
Bạn đang đọc: Lập Trình Game Với Unity Như Thế Nào (Phần 1)
Các game được lập trình bởi Unity:
Hướng dẫn cách cài đặt và tạo projects
Sau khi tải về và thiết lập thì sẽ có giao diện như thế này :
Các bạn vào phần Insfalls -> Chọn ADD -> chọn phiên bản Unity muốn cài đặt (mình chọn bản Unity 2019.2.21f1) -> Next -> sau đó kick chọn 2 phần đó là Microsoft Visual Studio Community 2019 (các bạn nhớ cài Visual Studio trước nha) và Documentation (các bạn có thể chọn thêm các phần khác nhưng ở đây mình chưa cần dùng tới)-> sau đó kick vào I have read and agree with the above terms and conditions -> Done.
Sau khi cài đặt xong các bạn vào phần Projects -> chọn New -> ở phần Templates chọn 2D hoặc 3D (các bạn nên chọn 2D), phần Settings đặt tên project và chọn vị trí lưu -> sau khi hoàn tất nhấn Create.
Sau khi mở Unity các bạn chọn Edit -> Preferences… -> tại External Tools, ở phần External Script Editor chọn Visual Studio 2019 (Community).
2. Làm quen giao diện Unity
Khi lần đầu nhìn vào giao diện của Unity mình cảm thấy khá giật mình, giờ thì tất cả chúng ta hãy cùng làm quen với giao diện Unity để việc làm lập trình thuận tiện hơn .
Đây là giao diện mặc định của Unity:
Mình sẽ giới thiệu các bạn các thành phần cơ bản, còn cụ thể chúng ta có thể tìm hiểu sau:
- Có 2 thẻ cần quan tâm trong Unity đó là:
- Thẻ Scene để thao tác :
-
- Thẻ Game hiển thị giao diện game các bạn đang lập trình:
- Play/Pause/Step : dùng để chạy thử game.
- Assets : Chứa các tài nguyên để xây dựng game.
- Inspector: Chứa các thuộc tính của từng đối tượng, mỗi đối tượng có các thuộc tính riêng.
- Hierarchy: Chứa các đối tượng của game.
Nếu những bạn chọn Unity 3 d sẽ có thêm :
- Trục tọa độ.
3.Thực hành
Chúng ta đã làm quen sơ qua về giao diện của Unity, nếu những bạn có đọc blog trước của mình ( Lập trình game khó hay dễ ? ) thì những bạn sẽ thấy lần trước mình đã hướng dẫn code vận động và di chuyển 1 đối tượng người dùng trên màn hình hiển thị console, giờ đây mình sẽ hướng dẫn những bạn chương trình tinh chỉnh và điều khiển 1 đối tượng người tiêu dùng trên Unity để những bạn thấy được sự độc lạ khi sử dụng Unity lập trình lập trình game so với màn hình hiển thị console .
Đầu tiên chúng ta bắt đầu tạo 1 đối tượng:
Tại Hierarchy các bạn chọn Create -> 3D Object -> Chọn kiểu đối tượng muốn tạo, mình chọn Sphere để tạo 1 khối cầu.
Tiếp theo tại vùng trống của Assets ta R_Click -> Create -> chọn C# Script, ở đây mình sẽ sử dụng C# để lập trình.
Nó sẽ tạo ra 1 tệp như thế này , đặt lại tên và kick chọn để mở.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}
Sau khi mở thì sẽ có 2 hàm chính mặc định được tạo ra đó là Start và Update, tạm thời các bạn xóa hàm Start đi, mình sẽ giải thích hàm Start sau. Bây giờ chúng ta sẽ thao tác trong hàm Update. Như đã nói lúc trước, game chính là một vòng lặp vô tận và hàm Update căn bản cũng chính là vòng lặp này. Bây giờ, chúng ta sẽ bắt đầu lập trình trong hàm Update như sau:
float speed = 5f; // biến để điều khiển tốc độ
if(Input.GetKey(KeyCode.LeftArrow)) //nếu đầu vào Input là phím mũi tên trái
{
transform.Translate(Vector3.left * Time.deltaTime *speed); //dịch chuyển (Translate) vector 3 của vật (transform) sang trái
}
else if (Input.GetKey(KeyCode.RightArrow)) //nếu đầu vào Input là phím mũi tên phải
{
transform.Translate(Vector3.right * Time.deltaTime * speed); //dịch chuyển (Translate) vector 3 của vật (transform) sang phải
}
else if (Input.GetKey(KeyCode.UpArrow)) //nếu đầu vào Input là phím mũi tên lên
{
transform.Translate(Vector3.up * Time.deltaTime * speed); //dịch chuyển (Translate) vector 3 của vật (transform) lên trên
}
else if (Input.GetKey(KeyCode.DownArrow)) //nếu đầu vào Input là phím mũi tên xuống
{
transform.Translate(Vector3.down * Time.deltaTime * speed); //dịch chuyển (Translate) vector 3 của vật (transform) xuống dưới
}
//lưu ý: các Vector3 phải *( Time.deltaTime * speed) để điều chỉnh tốc độ di chuyển phù hợp với nhịp game.
//Nếu các bạn không muốn dùng phím mũi tên để điều khiển thì các bạn có thể thay thành các phím A-S-D-W hoặc bất kì phím nào khác bằng cách sau: sửa "KeyCode.LeftArrow" thành "KeyCode.A", "KeyCode.RightArrow" thành "KeyCode.D",....
Sau khi code xong những bạn Save lại và qua bên Unity :
- Kéo thả tệp vừa code xong vào đối tượng đã tạo.
- Nhấn Play để chạy thử
4.Kết luận
Như các bạn có thể thấy, Unity hỗ trợ rất mạnh cho lập trình game, vì vậy nếu các bạn muốn theo con đường chuyên nghiệp thì nên sử dụng Unity để lập trình. Unity miễn phí cho các bạn học tập, nếu kinh doanh và có doanh thu một mức nào đó bạn sẽ phải trả phí và mức phí cũng khá rẻ nên các bạn có thể yên tâm sử dụng. Ngoài ra, Unity còn cung cấp các môi trường và một số tài nguyên có sẵn để các bạn làm quen và khai thác. Hi vọng các bạn có thể dần làm quen và sử dụng được Unity, ở blog sau có thể mình sẽ hướng dẫn các bạn tạo 1 nhân vật và tạo hiệu ứng chuyển động animations cho nhân vật đó.
Chúc những bạn thành công xuất sắc !
Tài liệu tham khảo:
Tài liệu tự học Unity : https://www.stdio.vn/tutorials/topics/tu-hoc-unity-3
Các bạn hoàn toàn có thể vào xem và hiểu rõ hơn đoạn code trên và Unity3D tại đây
Source: https://vh2.com.vn
Category : Tin Học