Các thành phần cơ bản trong Unity: Component

24 Tháng Sáu, 2024

Component là một trong nhiều thành phần cơ bản của Unity. Vì thế, hiểu và làm việc với component là yêu cầu thiết yếu cho lập trình viên.

Tổng quát

Component là những thành phần có chức năng riêng biệt, được gán vào một hoặc nhiều Game Object . Component bổ sung, cấu thành chức năng cho Game Object. Từ đó, giúp chúng ta xây dựng lên những Game Object theo từng yêu cầu của game.

Mỗi script kế thừa từ lớp MonoBehaviour đều được coi là một component. Mỗi Game Object cơ bản đều được gán sẵn một component cơ bản là Transform.

Minh hoạ về component
Minh hoạ về component

Ví dụ: Một chiếc xe hơi được cấu tạo từ nhiều component là hệ thống điều khiển, động cơ, bánh xe, nội thất,..

Làm việc với Component

Tại Inspector của mỗi Game Object đều có chức năng là Add Component cho phép bạn gán những component đang có trong project vào nó.

Add Component
Add Component

Đó là trên Editor, vậy nếu muốn gán hoặc lấy một component trên một Game Object qua scripts có được không? Câu trả lời là có.

  • GetComponent: Trả về kiểu của component nếu nó được gán trên GameObject, null nếu GameObject đó không có.
  • GetComponentInChildren: Tương tự như GetComponent nhưng sẽ trả về các Component được gán trên Children Object của GameObject đó.
  • GetComponentInParent: Tương tự như GetComponent nhưng sẽ trả về các Component được gán trên Parent Object của GameObject đó.

Ví dụ: Mình có một GameObject được gán hai component là Rigidbody2D và Unit. Ở ảnh dưới, các bạn sẽ thấy phần Rigid2D của Unit đang là None.

Rigid2D của Unit
Rigid2D của Unit

Bây giờ mình trong scripts Unit, mình sẽ lấy component “Rigidbody 2D” và thay đổi giá trị “mass” của nó.

public class Unit : MonoBehaviour
{
    public Rigidbody2D rigid2D;
    private void Start()
    {
        rigid2D = GetComponent<Rigidbody2D>();
        if (rigid2D != null)
        {
            rigid2D.mass = 2f;
        }
    }
}

Và đây là kết quả:

Kết quả
Kết quả

Tổng kết

Mình đã giới thiệu khái quát một thành phần rất quan trọng của Unity. Nếu các bạn muốn tham khảo thêm về Component thì hay truy cập link.

0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest
0 Góp ý
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất
Phản hồi nội tuyến
Xem tất cả bình luận
Tin tức liên quan
Save/Load dữ liệu trong Unity
Save/Load dữ liệu có lẽ là điều quá quen thuộc với những người đã từng chơi game. Bài viết này mình sẽ hướng dẫn các bạn cách dựng một...
Các thành phần cơ bản trong Unity: Component
Component là một trong nhiều thành phần cơ bản của Unity. Vì thế, hiểu và làm việc với component là yêu cầu thiết yếu cho lập trình viên. Tổng...
C# Extension trong Unity: Delay Action Coroutine
Việc chờ một khoảng thời gian rồi gọi một (hoặc nhiều) hàm trong một project thì cách đơn giản nhất là sử dụng Coroutine. Cách thông thường nhất là...
0
Rất thích suy nghĩ của bạn, hãy bình luận.x