Unity làm việc với Prefabs

Prefabs ​​là nội dung đặc biệt cho phép nhà phát triển lưu trữ GameObject cùng với Thành phần và dữ liệu khác của họ vào các mẫu có thể định cấu hình, sau này có thể được sử dụng lại giữa các Cảnh và các Dự án khác hoặc được khởi tạo thông qua tập lệnh mà không cần phải định cấu hình lại chúng.

Các trường hợp Prefabs hữu ích:

  • Tài sản môi trường (cây cối, bụi rậm, đá, v.v.)
  • NPC (nhân vật không phải người chơi)
  • Đạn
  • Phiên bản người chơi
  • Bất kỳ đồ vật nào cần được tái sử dụng trong trò chơi

Ví dụ sử dụng

Khi kéo và thả mô hình trực tiếp vào Cảnh, chúng thường sẽ xuất hiện một số vấn đề, chẳng hạn như:

  • Thiếu họa tiết
  • sai quy mô
  • Xoay sai

Mô hình cây với vật liệu mặc định

Các vấn đề trên có thể được khắc phục dễ dàng trong Cảnh (gán (các) vật liệu chính xác, thay đổi tỷ lệ/xoay, v.v.):

Mô hình cây với chất liệu phù hợp

Tuy nhiên, nếu bạn dự định sử dụng mô hình nhiều lần và/hoặc trong nhiều Cảnh khác nhau, việc lặp lại các bước trên sẽ nhanh chóng trở thành một công việc tẻ nhạt, vì vậy thay vào đó, chúng ta có thể lưu mô hình vào Prefab.

Cách tạo một nhà tiền chế

  • Để tạo Prefab trong Unity, chỉ cần Kéo và thả Đối tượng từ chế độ xem Cảnh vào chế độ xem Dự án.

Unity 3D Tạo nhà lắp ghép

  • Sau khi Prefab được tạo, nó có thể được thả vào bất kỳ Cảnh nào, tạo một bản sao chính xác:

Xem dự án Unity Prefab

Chỉnh sửa nhà tiền chế

Việc chỉnh sửa các Prefab hiện có được thực hiện theo 2 cách: sửa đổi chúng trong trình chỉnh sửa Prefab hoặc sửa đổi chúng trong Cảnh.

Sửa đổi trong Trình chỉnh sửa Prefab

  • Chọn Prefab trong chế độ xem Dự án, sau đó trong Chế độ xem Thanh tra, nhấp vào "Open Prefab"

  • Prefab sẽ được mở trong trình chỉnh sửa, nơi bạn có thể sửa đổi nó.

  • Khi bạn sửa đổi xong, hãy nhấp vào mũi tên quay lại trong Chế độ xem phân cấp để thoát khỏi quá trình chỉnh sửa và lưu các thay đổi.

Unity 3D Lưu các thay đổi Prefab (Phương pháp 1)

Sửa đổi trong cảnh

  • Thả Prefab vào chế độ xem Cảnh rồi chỉnh sửa nó ở đó.

  • Trong trường hợp của tôi, tôi đã thêm một Đối tượng khác vào Hệ thống phân cấp (Chú ý biểu tượng (+) gần biểu tượng)
  • Khi sửa đổi các prefab trong Cảnh, các thay đổi không được lưu tự động, thay vào đó, bạn cần chọn thủ công đối tượng gốc của Prefab và trong Chế độ xem Thanh tra, hãy nhấp vào "Overrides" sau đó nhấp vào "Apply All" để lưu các thay đổi hoặc "Revert All" để hoàn nguyên các thay đổi.

  • Một số hành động không được hỗ trợ khi chỉnh sửa Prefab trực tiếp trong cảnh, ví dụ: nếu bạn cần cơ cấu lại hệ thống phân cấp, bạn sẽ thấy thông báo "Cannot restructure Prefab instance" và có các tùy chọn "Open Prefab" hoặc "Cancel".

Để cơ cấu lại phiên bản Prefab, hãy nhấp vào 'Open Prefab' hoặc nhấp chuột phải vào prefab trong chế độ xem Phân cấp, sau đó nhấp vào Prefab -> Unpack hoặc Prefab -> Unpack Complete.

Việc giải nén Prefab sẽ loại bỏ liên kết của nó với Prefab chính, do đó làm cho nó hoàn toàn có thể chỉnh sửa được trong Cảnh.

Để lưu lại Prefab đã giải nén, hãy chọn thư mục chứa Prefab gốc, sau đó kéo và thả đối tượng đã sửa đổi từ Chế độ xem phân cấp vào Prefab đó.

Unity 3D Lưu các thay đổi Prefab (Phương pháp 2)

Đôi khi, nếu những thay đổi quá lớn, bạn sẽ nhận được thông báo xác nhận.

Đảm bảo kiểm tra kỹ xem bạn có đang sửa đổi Prefab phù hợp hay không, sau đó nhấp vào "Replace Anyway" để hoàn tất hành động hoặc "Không thay thế" để hủy hành động.

Unity 3D Thay thế thông báo xác nhận Prefab

Prefab mới hiện đã được lưu và sẵn sàng để sử dụng.

Bài viết được đề xuất
Cách vẽ cây trên địa hình trong Unity
Sử dụng gói tài sản trong Unity
Chọn Skybox phù hợp cho môi trường của bạn trong Unity
Chiến lược bảo vệ trò chơi Unity khỏi vi phạm bản quyền
Cách tạo một trò chơi lấy cảm hứng từ FNAF trong Unity
Tài sản có mục đích chung phải có cho sự thống nhất
Tạo thế giới thủ tục trong Unity