Các khối chứa UI trong trải nghiệm giữ lại GuiObjects mà bạn muốn hiển thị trong thế giới 3D của trải nghiệm của bạn.
- SurfaceGui cho phép hiển thị các đối tượng UI lên bề mặt của một phần trong thế giới 3D đồng thời cho phép người dùng tương tác cơ bản.
- BillboardGui là một khối chứa cho các đối tượng UI xuất hiện trong không gian 3D nhưng luôn hướng về phía camera.
UI Bề mặt
Tương tự như Decals và Textures, các đối tượng UI như TextLabels và ImageLabels được gán cho SurfaceGui sẽ hướng cùng hướng với bề mặt mà chúng đang nằm, có thể chỉnh sửa thông qua thuộc tính SurfaceGui.Face.

Để áp dụng SurfaceGui vào một BasePart trong trải nghiệm, đơn giản chỉ cần gắn nó vào phần đó và thiết lập thuộc tính SurfaceGui.Face. Các đối tượng UI con sau đó sẽ xuất hiện trên mặt của phần cha.


Ngoài ra, bạn có thể đặt SurfaceGui vào trong một khối chứa như StarterGui và sau đó thiết lập thuộc tính Adornee của nó đến bất kỳ BasePart, cùng với mặt Face mục tiêu. Thiết lập Adornee ghi đè liên kết cha trực tiếp, cho phép linh hoạt hơn trong việc đặt vì nó có thể được thiết lập từ một kịch bản trong thời gian chạy.


Kích thước và vị trí
"Canvas" của một SurfaceGui chiếm toàn bộ mặt Face của phần cha hoặc phần Adornee. Là một nguyên tắc tốt nhất, nên sử dụng các giá trị tỷ lệ cho kích thước và vị trí của các đối tượng UI con như ImageLabels. Bạn cũng có thể áp dụng UIAspectRatioConstraint cho các con của SurfaceGui để duy trì tỷ lệ khung hình mong muốn bất kể kích thước của mặt.
Chế độ che khuất
Thuộc tính AlwaysOnTop xác định liệu SurfaceGui sẽ hiển thị trên các nội dung 3D hay bị che khuất bởi chúng. Khi đặt là false (mặc định), SurfaceGui hiển thị như các nội dung 3D khác và bị che khuất bởi các đối tượng 3D khác. Khi đặt là true, nó luôn hiển thị trên các nội dung 3D và không bị ảnh hưởng bởi độ sáng/ánh sáng trong môi trường 3D.
Độ sáng và ảnh hưởng của ánh sáng
Brightness và LightInfluence hoạt động song song để xác định cách ánh sáng môi trường ảnh hưởng đến nội dung UI của SurfaceGui.
Brightness xác định hệ số mà ánh sáng phát ra được điều chỉnh trong khoảng từ 0 đến 1000, cho phép bạn phù hợp SurfaceGui với môi trường của nó. Ví dụ, một bảng video có thể được làm sáng trong một phòng tối bằng cách tăng Brightness lên 10.
LightInfluence điều khiển mức độ mà SurfaceGui bị ảnh hưởng bởi ánh sáng trong địa điểm, trong khoảng từ 0 đến 1. Đặt giá trị này là 1 có nghĩa là ánh sáng xung quanh hoàn toàn kiểm soát diện mạo, trong khi đặt giá trị là 0 có nghĩa là ánh sáng không có tác động nào.

Tầm nhìn khoảng cách
MaxDistance điều khiển khoảng cách mà SurfaceGui sẽ được hiển thị trước khi ngừng hiển thị. Giá trị 0 có nghĩa là không có giới hạn và nó sẽ hiển thị vô hạn. Giá trị mặc định 1000 khá phù hợp cho hầu hết các trường hợp.
Đối với SurfaceGuis xuất hiện ngoài trời, các giá trị của MaxDistance nên đủ cao để đảm bảo rằng UI của khối chứa có kích thước đủ nhỏ trên màn hình khi nó xuất hiện hoặc biến mất, giảm thiểu hiệu ứng đột ngột khi xuất hiện hoặc biến mất.
Thứ tự hiển thị
Nếu nhiều khối chứa SurfaceGui tồn tại trên cùng một mặt, bạn có thể xếp chúng theo chỉ số Z thông qua thuộc tính ZOffset của chúng (thay đổi thuộc tính này không thực sự "nâng" hoặc "hạ" khối chứa từ bề mặt).
UI Billboard
Khối chứa BillboardGui hiển thị các đối tượng UI trong không gian 3D nhưng, khác với SurfaceGui, các con của BillboardGui luôn hướng về phía camera. Khối chứa này hữu ích cho việc hiển thị thông tin phía trước trên các đối tượng trong trải nghiệm như đồng hồ sức khỏe hoặc tên trên nhân vật người chơi, các ký hiệu hướng dẫn người chơi đến một đối tượng trong thế giới 3D, và nhiều hơn nữa.

Để liên kết một BillboardGui với một BasePart hoặc Attachment trong trải nghiệm, đơn giản chỉ cần gán nó vào phần đó hoặc đính kèm và, nếu muốn, điều chỉnh kích thước/vị trí của nó.


Ngoài ra, bạn có thể đặt BillboardGui vào trong một khối chứa như StarterGui và sau đó thiết lập thuộc tính Adornee của nó đến bất kỳ BasePart hoặc Attachment. Phương pháp này cung cấp nhiều linh hoạt hơn trong việc đặt vì Adornee có thể được thiết lập từ một kịch bản trong thời gian chạy, ví dụ như để đặt một BillboardGui trên đầu của các nhân vật người chơi trong thời gian chạy.
Kích thước và vị trí
Đối với kích thước billboard, các thành phần tỷ lệ của thuộc tính Size thiết lập kích thước stud của billboard trong không gian 3D. Ví dụ, thiết lập {10, 0},{2, 0} (UDim2.fromScale(10, 2)) tạo ra một billboard với tỷ lệ 10:2 mà có thể lớn hơn hoặc nhỏ hơn tùy thuộc vào khoảng cách đến camera.
Đối với vị trí, thuộc tính StudsOffset dịch chuyển canvas billboard trên trục X (trái/phải), trục Y (lên/xuống), và trục Z (tiến/lui) tương đối đến camera.
Chế độ che khuất
Thuộc tính AlwaysOnTop xác định liệu BillboardGui sẽ hiển thị trên các nội dung 3D hay bị che khuất bởi chúng. Khi đặt là false (mặc định), BillboardGui hiển thị như các nội dung 3D khác và bị che khuất bởi các đối tượng 3D khác. Khi đặt là true, nó luôn hiển thị trên các nội dung 3D và không bị ảnh hưởng bởi độ sáng/ánh sáng trong môi trường 3D.
Độ sáng và ảnh hưởng của ánh sáng
Brightness và LightInfluence hoạt động song song để xác định cách ánh sáng môi trường ảnh hưởng đến nội dung UI của BillboardGui.
Brightness xác định hệ số mà ánh sáng phát ra được điều chỉnh trong khoảng từ 0 đến 1000, cho phép bạn phù hợp BillboardGui với môi trường của nó. Ví dụ, một bảng video có thể được làm sáng trong một phòng tối bằng cách tăng Brightness lên 10.
LightInfluence điều khiển mức độ mà BillboardGui bị ảnh hưởng bởi ánh sáng trong địa điểm, trong khoảng từ 0 đến 1. Đặt giá trị này là 1 có nghĩa là ánh sáng xung quanh hoàn toàn kiểm soát diện mạo, trong khi đặt giá trị là 0 có nghĩa là ánh sáng không có tác động nào.

Tầm nhìn khoảng cách
MaxDistance điều khiển khoảng cách mà BillboardGui sẽ được hiển thị trước khi ngừng hiển thị. Giá trị 0 hoặc inf (mặc định) có nghĩa là không có giới hạn và nó sẽ hiển thị vô hạn.