Unity là một phần mềm làm game đa nền tảng, các nền tảng được hỗ trợ hiện nay là Android, IOS, Linux, macOS, Windows, Windows Phone, ...
Unity3D cung cấp một hệ thống toàn diện cho các lập trình viên, từ soạn thảo mã nguồn, 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 ra còn có hỗ trợ 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.
Sau khi tải về và cài đặt 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).
Khi lần đầu nhìn vào giao diện của Unity mình cảm thấy khá bất ngờ, giờ thì chúng ta hãy cùng làm quen với giao diện Unity để công việc lập trình dễ dàng hơn.
Nếu các bạn chọn Unity 3d sẽ có thêm :
Chúng ta đã làm quen sơ qua về giao diện của Unity, nếu các bạn có đọc blog trước của mình (Lập trình game khó hay dễ?) thì các bạn sẽ thấy lần trước mình đã hướng dẫn code di chuyển 1 đối tượng trên màn hình console, bây giờ mình sẽ hướng dẫn các bạn chương trình điều khiển 1 đối tượng trên Unity để các bạn thấy được sự khác biệt khi sử dụng Unity lập trình lập trình game so với màn hình 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 các bạn Save lại và qua bên Unity:
» Tin mới nhất:
» Các tin khác: