Textures PBR

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Kết xuất Dựa trên Thực thể (PBR) cho phép bạn đại diện cho các ánh sáng và bóng chân thực bằng cách sử dụng nhiều loại hình ảnh texture, hay bản đồ, trên một đối tượng duy nhất. Việc kết hợp nhiều bản đồ texture có thể mô phỏng chính xác hơn về màu sắc, độ nhám và độ phản chiếu trong bất kỳ môi trường ánh sáng nào và có thể nâng cao các yếu tố hình ảnh của tài sản và môi trường của bạn.

Một nhân vật humanoid với tóc tết, một chiếc áo khoác bóng, quần jeans có hình trang trí, và giày.
Một nhân vật humanoid với kiểu tóc ngắn, áo khoác da, quần capri, và giày màu cam.

Có nhiều ứng dụng và quy trình khác nhau cho việc tạo ra các texture PBR. Bạn có thể sử dụng chúng trong quá trình mô hình hóa và tạo texture của các đối tượng 3D tùy chỉnh, với điều kiện rằng Roblox Studio hỗ trợ các bản đồ texture cụ thể mà bạn đang sử dụng.

Hướng dẫn này cung cấp hướng dẫn về cấu hình các đối tượng mesh của bạn để sử dụng các bản đồ texture PBR và mô tả các trường hợp sử dụng phổ biến và thực tiễn tốt nhất cho các bản đồ texture được Roblox hỗ trợ. Khi tạo bề mặt của riêng bạn, hãy xem tài liệu tham khảo vật liệu cho các giá trị vật liệu thông thường, so sánh hình ảnh và ví dụ về quần áo.

Kích hoạt vẻ bề ngoài

Bạn có thể thêm các texture PBR vào bất kỳ MeshPart nào bằng cách thêm một đối tượng SurfaceAppearance, mà ghi đè lên texture đã được chỉ định ban đầu. Nói chung, bạn không thể sửa đổi các thuộc tính của SurfaceAppearance bằng các script trong quá trình trò chơi vì engine yêu cầu một số tiền xử lý để hiển thị các đồ họa này. Tương tự như việc thêm một texture cơ bản, mỗi bản đồ hình ảnh texture phải trỏ đến ID tài sản hình ảnh đã tải lên thích hợp.

Để kích hoạt bề ngoài cho một MeshPart:

  1. Trong cửa sổ Explorer, di chuột qua MeshPart và nhấp vào nút ⊕.

  2. Chèn một SurfaceAppearance từ menu ngữ cảnh.

    Một đối tượng SurfaceAppearance được gán bên trong một MeshPart trong cửa sổ Explorer của Studio.

    Khi bạn sẵn sàng thêm các bản đồ texture vào đối tượng SurfaceAppearance, bạn có thể nhấp vào mỗi thuộc tính bản đồ trong cửa sổ Properties và nhập một ID tài sản.

Bản đồ texture

Studio hiện hỗ trợ 5 loại bản đồ texture PBR: màu sắc, bình thường, nhám, kim loại, và phát quang. Mỗi bản đồ trong số này tương ứng với một khía cạnh quan trọng của vẻ bề ngoài bề mặt của đối tượng. Các bản đồ texture chỉ thay đổi vẻ ngoài hình ảnh và không ảnh hưởng đến hình học của đối tượng MeshPart.

Xem các ví dụ sau đây để có cái nhìn tổng quan về các bản đồ texture được Roblox hỗ trợ và các tài nguyên bổ sung:

Thuộc tính ColorMap thiết lập dữ liệu màu của bề mặt, bao gồm bất kỳ độ trong suốt nào có trong bản đồ. Xem màu sắc (albedo) để biết thêm thông tin.

Một hình ảnh được lấp đầy hoàn toàn, chủ yếu là màu đỏ với các đốm đen và các vết xước trắng.
Bản đồ ví dụ
Một quả cầu trắng trống với nền tối.
Mesh ví dụ
Một quả cầu đỏ với đốm đen và vết xước trắng trên nền tối.
Mesh và texture

Màu sắc (albedo)

Bản đồ màu sắc, hoặc albedo, xác định màu sắc của texture của bạn và chủ yếu bao gồm thông tin màu với ít hoặc không có thông tin về ánh sáng hoặc kết cấu. Để tùy chỉnh thêm, bạn cũng có thể thêm độ trong suốt vào texture albedo của mình bằng cách thêm độ mờ cho bản đồ hình ảnh của bạn.

Chế độ alpha

Đối với các đối tượng yêu cầu các phần trong suốt một phần hoặc hoàn toàn, chẳng hạn như cỏ, lá cây, ren, hoặc các vật liệu như bụi bẩn hoặc bụi bẩn, bạn có thể sử dụng nhiều chế độ alpha khác nhau để áp dụng độ trong suốt cho bản đồ màu của bạn. Nếu định dạng hình ảnh của bản đồ màu của bạn hỗ trợ kênh alpha, bạn có thể áp dụng một bản đồ alpha grayscale nơi 0.0 là trong suốt và 1.0 là không trong suốt. Tương tự, khi sử dụng định dạng hình ảnh như .png, bất kỳ độ mờ nào trên bản đồ màu sẽ áp dụng như độ trong suốt trên tài sản.

Bạn có thể áp dụng độ trong suốt trong hai hành vi khác nhau bằng cách thiết lập các giá trị AlphaMode sau:

  • Không trong suốt — Bỏ qua kênh alpha của ColorMap và sử dụng giá trị màu trực tiếp từ bản đồ màu.
  • Lớp phủ — Lớp phủ ColorMap lên màu của mesh bên dưới thuộc tính MeshPart.Color. Các bản đồ màu sử dụng chế độ lớp phủ tiết lộ màu cơ bản của mesh ở mọi nơi có độ trong suốt. Đây là cài đặt mặc định.
  • Độ trong suốt — Loại bỏ mesh có thể nhìn thấy dựa trên độ trong suốt trong ColorMap. Điều này làm cho mesh trở thành trong suốt và không tiết lộ màu gốc của mesh khi có độ trong suốt.
  • Mặt nạ tông màu — Pha trộn ColorMap đã được tông màu lên ColorMap chưa được tông màu.
Không trong suốt

Bạn có thể sử dụng chế độ Enum.AlphaMode.Opaque để bỏ qua hoàn toàn kênh alpha của ColorMap. Trong trường hợp này, giá trị alpha được giả định là 1 (hoàn toàn không trong suốt).

Ví dụ sau đây minh họa cách thức chế độ Opaque hoạt động bằng cách sử dụng một đối tượng màu xanh lam làm tham khảo:

Một kết cấu chấm bi với độ trong suốt. Nền hoàn toàn trong suốt.
Bản đồ màu/albedo với độ trong suốt
Một quả cầu màu xanh lam trên một mặt phẳng.
Đối tượng mesh ví dụ
Quả cầu có các mẫu chấm bi rải rác trên bề mặt. Giá trị độ trong suốt bị bỏ qua.
AlphaMode được đặt thành Opaque
Lớp phủ

Bạn có thể sử dụng Enum.AlphaMode.Overlay để tiết lộ các phần màu gốc của mesh. Vì các khu vực trong suốt của bản đồ màu tiết lộ màu bên dưới, bạn có thể thiết kế một bản đồ texture độc đáo có thể tiết lộ một phần hoặc hoàn toàn thuộc tính Color của mesh cho các tông màu da tùy chỉnh hoặc các tình huống khác với các màu sắc độc đáo.

Ví dụ sau đây minh họa cách chế độ Overlay hoạt động bằng cách sử dụng một quả cầu màu xanh lam nhạt làm tham khảo:

Một hình ảnh được lấp đầy hoàn toàn của một họa tiết lặp lại bán phần với các ô màu xanh lam nhạt nhỏ. Nền là ô vuông để chỉ định độ trong suốt.
Bản đồ màu/albedo với độ trong suốt
Một quả cầu cyan trống trên nền tối.
Đối tượng mesh ví dụ
Một quả cầu trắng với các ô xanh lam nhỏ rải rác trên bề mặt.
AlphaMode được đặt thành Overlay

Ví dụ tiếp theo sử dụng chế độ Overlay cho các nhân vật tùy chỉnh, tiết lộ tông màu da gốc của nhân vật:

Một hình ảnh được lấp đầy hoàn toàn của một bản đồ texture cho một mô hình 3D humanoid. Nhiều phần của hình ảnh là ô vuông hoặc một phần ô vuông để chỉ định các mức độ khác nhau của độ trong suốt.
Bản đồ màu chứa độ trong suốt trong các phần để lộ màu gốc của mesh
Bốn mô hình humanoid giống nhau với các tông da khác nhau: nâu sáng, đen, trắng, xanh lá cây đậm.
Nhiều biến thể của các nhân vật với một bản đồ màu duy nhất sử dụng chế độ Overlay

Xem tông màu da tùy chỉnh để biết thêm thông tin về việc tối ưu hóa một lớp phủ cho da và các ứng dụng tương tự.

Độ trong suốt

Bạn có thể sử dụng chế độ Enum.AlphaMode.Transparency để tạo ra các đối tượng phức tạp hoặc tinh xảo, chẳng hạn như ren hoặc lưới, bằng cách loại bỏ các phần có thể nhìn thấy của mesh như là một lựa chọn thay vì tạo hình học của mesh. Vì điều này không ảnh hưởng đến hình học của đối tượng mesh, điều này có thể cho phép bạn tạo ra các đối tượng chi tiết mà không gây ảnh hưởng đến hiệu suất của một mô hình mesh phức tạp.

Ví dụ sau đây minh họa cách một độ trong suốt một phần và hoàn toàn trong chế độ này trực quan loại bỏ các phần của mesh:

Một quả cầu với bề mặt kiểu giỏ.
Không độ trong suốt
Một quả cầu với các mẫu tam giác thông thường trên bề mặt một phần không thấy.
Độ trong suốt một phần trong các phần
Một quả cầu với các mẫu tam giác thông thường trên bề mặt hoàn toàn không thấy.
Độ trong suốt hoàn toàn trong các phần

Có hai kết quả cho chế độ Transparency, tùy thuộc vào việc MeshPart.Transparency được thiết lập là 0 hoặc ít nhất0.02, mặc dù độ chính xác số có thể dẫn đến các giá trị nhỏ như 0.01 sẽ kích hoạt độ trong suốt không trong suốt.

  • Khi alpha được sử dụng để cắt ra hình dạng của các đối tượng hầu như không trong suốt với các cạnh cứng như cây cỏ, vải ren, và lưới, hãy đặt MeshPart.Transparency0. Khi các phần của bề mặt hoàn toàn không trong suốt, engine Roblox có thể hiển thị chúng với độ che chắn dựa trên độ sâu. Bề mặt không trong suốt cũng thường hoạt động tốt hơn với các hiệu ứng dựa trên độ sâu như DepthOfFieldEffect, khúc xạ thủy tinh và nước, và phản chiếu nước.
  • Khi alpha được sử dụng để thêm chi tiết vào các đối tượng nửa trong suốt hoặc các đối tượng với các độ mờ mượt mà, hãy đặt MeshPart.Transparencyít nhất 0.02. Điều này cải thiện chất lượng của những đối tượng như cửa sổ bẩn và lông vũ có cạnh mịn, nhưng nó sẽ không hoạt động với tất cả các hiệu ứng.
Mặt nạ tông màu

Bạn có thể sử dụng chế độ Enum.AlphaMode.TintMask để áp dụng tông màu SurfaceAppearance.Color cho các vùng chọn lọc của bề mặt. Việc tông màu là mạnh nhất nơi kênh alpha hoàn toàn có thể nhìn thấy và không được áp dụng nơi kênh alpha là trong suốt.

Một họa tiết gạch màu ấm, sáng với vữa xám tối có kết cấu giữa các viên gạch.
Bề mặt gạch ví dụ, hiển thị các chi tiết màu trên mặt gạch cũng như trong vữa giữa các viên gạch.

Tông màu màu

Bạn có thể áp dụng một tông màu cho bản đồ màu của mình bằng cách sửa đổi thuộc tính SurfaceAppearance.Color. Việc tông màu không ảnh hưởng đến hiệu suất và bạn có thể tiết kiệm bộ nhớ bằng cách sử dụng một bản đồ màu duy nhất với các tông màu khác nhau. Sử dụng tông màu để tạo ra sự khác biệt chi phí thấp bổ sung giữa các texture PBR của MeshPart của bạn hoặc để lập trình thay đổi màu bề mặt PBR của bạn theo thời gian thực.

Một bức tượng với tông màu vàng mặc định và thuộc tính phản chiếu giống như ngọc.
Mesh tượng từ Bí ẩn của Duvall Drive không tông màu.
Một bức tượng với tông màu đỏ và tiếp tục có các tính chất phản chiếu bóng.
Mesh tượng với Color được thiết lập thành màu đỏ.
Một bức tượng với tông màu xanh lá cây và tiếp tục có các tính chất phản chiếu bóng.
Mesh tượng với Color được thiết lập thành màu xanh lá cây.

Tông màu SurfaceAppearance.Color được áp dụng như một yếu tố nhân, vì vậy vẻ ngoài cuối cùng là một hàm của Color3 (màu texel) nhân với SurfaceAppearance.Color. Điều này có nghĩa là việc tạo các SurfaceAppearance.ColorMap ban đầu của bạn với các màu gần như trắng trong gam màu xám sẽ tạo ra hiệu ứng tông màu mạnh nhất khi thuộc tính này được áp dụng.

Việc tông màu chỉ áp dụng cho SurfaceAppearance.ColorMap và không áp dụng cho MeshPart.Color. Bạn vẫn có thể tiếp tục sử dụng các kênh alpha khi áp dụng độ trong suốt.

Khi SurfaceAppearance.AlphaMode được đặt thành Overlay và có một kênh alpha hiện diện, màu gốc của MeshPart.Color được tiết lộ và việc tông màu SurfaceAppearance.Color chỉ áp dụng cho bản đồ màu SurfaceAppearance có thể nhìn thấy.

Khi SurfaceAppearance.AlphaMode được đặt thành TintMask và có một kênh alpha hiện diện, kênh alpha kiểm soát mức độ tông màu của SurfaceAppearance.Color. Việc tông màu là mạnh nhất ở nơi mà kênh alpha hoàn toàn có thể nhìn thấy và không được áp dụng ở nơi mà kênh alpha là trong suốt.

Một mặt phẳng hình vuông nổi với kết cấu đá phiến cyan, dần dần thay đổi từ hoàn toàn trong suốt bên trái đến hoàn toàn không trong suốt bên phải. Một thanh ngang mỏng bên dưới mặt phẳng nổi có một gradient với đen bên trái và trắng bên phải.
AlphaMode được đặt thành Transparency. Thanh gradient xám ở dưới cho thấy giá trị alpha. MeshPart.Color được thiết lập thành màu đỏ và SurfaceAppearance.Color được thiết lập thành màu cyan.

Bình thường

Bản đồ bình thường, hoặc bề mặt, thêm chiều sâu cho kết cấu của bạn và hoạt động tương tự như một bản đồ chiều cao. Do đó, hiệu ứng có thể phai yếu hoặc mạnh phụ thuộc vào góc nhìn và môi trường ánh sáng.

Trong hình dưới đây, bạn có thể chuyển đổi giữa mẫu tham khảo và mẫu bản đồ để so sánh các giá trị bản đồ bình thường:

Một hình cầu màu đất sét mịn.
Một hình cầu màu đất sét với một bề mặt khá đá.
Một hình cầu màu đất sét với một bề mặt rất đá.

Các kênh R, G, và B của hình ảnh tương ứng với các thành phần X, Y, và Z của vector bề mặt cục bộ. Một hình ảnh đồng nhất có màu [127, 127, 255] chuyển đổi thành một bản đồ bình thường hoàn toàn bằng phẳng. Roblox chỉ hỗ trợ các bản đồ bình thường theo định dạng OpenGL - Không gian Tangent.

Các bản đồ bình thường ảnh hưởng rõ rệt đến bề mặt hình ảnh của một mô hình và có thể làm nổi bật các đường nối không hoàn hảo trong texture của bạn. Bất cứ khi nào có thể, hãy giữ cho các đường nối của texture được ẩn để tránh các vấn đề hình ảnh với mô hình của bạn.

Nhám

Các bản đồ nhám, hoặc microsurface, xác định cách ánh sáng được phân tán trên bề mặt của mô hình của bạn. Khi độ nhám ở mức 0%, bề mặt sẽ không phân tán ánh sáng chút nào, dẫn đến độ phản chiếu và độ bóng sắc nét và sáng hơn rất nhiều trên vật liệu của bạn. Ở mức 100%, ánh sáng và phản chiếu được phân tán đều trên mô hình dẫn đến một bề mặt mờ như không phản chiếu.

Hình dưới đây cho thấy sự so sánh của các giá trị bản đồ nhám khác nhau:

Một quả cầu màu xanh bóng.
0%
Một quả cầu màu xanh bán bóng.
50%
Một quả cầu màu xanh mờ.
100%

Độ nhám có thể ảnh hưởng đến mức độ phản chiếu của một đối tượng ở các góc độ khác nhau, được gọi là hiệu ứng Fresnel. Quy trình fresnel của Studio nhằm đạt được độ chính xác về mặt vật lý trong thế giới thực, mặc dù bạn có thể gặp phải đóng góp specular bất ngờ ở những góc độ nhất định ngay cả với các bề mặt nhám. Trong một số trường hợp, bạn có thể bù đắp bằng cách tăng giá trị bản đồ nhám của bạn khoảng 0.1 nham nhở hơn để đạt được một phản ứng chiếu sáng nhất quán với các vật liệu của bạn.

Mặc dù Roblox thể hiện chính xác hiệu ứng ánh sáng này, độ sáng và độ phản chiếu của một bề mặt có thể không phản ứng đồng nhất giữa phần mềm tạo nội dung texture của bạn, chẳng hạn như Substance Painter, và Studio. Xem ví dụ về quần áo để thấy sự khác biệt trong việc hiển thị giữa các ứng dụng.

Kim loại

Kim loại xác định độ phản chiếu của bề mặt. Trong hầu hết các trường hợp, bạn nên đặt giá trị này là 0% (không phải kim loại) hoặc 100% (kim loại), mặc dù bạn có thể sử dụng các giá trị kim loại một phần khi tạo các bề mặt có tính chất phản chiếu trung bình như satin hoặc lụa. Thực tiễn này có thể giả định một cách tinh tế các phản chiếu trong vật liệu để làm nổi bật màu sắc từ bản đồ màu/albedo so với các màu sắc phản chiếu trong môi trường.

Xem hình dưới đây để so sánh các giá trị bản đồ kim loại khác nhau:

Một quả cầu màu nâu với các đốm sáng.
0%
Một quả cầu màu nâu với các đốm sáng và một số độ phản chiếu.
50%
Một quả cầu màu nâu với các vết đốm trung bình và nhiều độ phản chiếu.
100%

Các renderer PBR khác nhau sử dụng nhiều quy trình khác nhau để xử lý độ phản chiếu. Studio chỉ sử dụng quy trình kim loại hóa xác định xem một vật liệu là không phải kim loại hay kim loại, đôi khi được gọi là cách điện hoặc dẫn điện.

Mặt nạ phát quang

Một chất liệu texture EmissiveMaskContent grayscale áp dụng một mặt nạ phát quang trên bề mặt. Điều này cho phép bạn sử dụng một texture để kiểm soát khả năng phát quang để có nhiều kiểm soát nghệ thuật hơn so với chất liệu Neon tất cả mọi thứ và cho phép bạn tạo ra các hiệu ứng phát sáng chi tiết như văn bản phát sáng, áo giáp tương lai, hoặc các sinh vật phát quang.

Thuộc tính liên quan EmissiveTint xác định màu sắc của sự đóng góp phát quang, và EmissiveStrength xác định độ mạnh của sự đóng góp phát quang.

Một quả cầu màu cam với mặt nạ phát quang hình mặt bí ngô được tô màu magenta.
EmissiveTint = [255, 0, 255]
©2026 Roblox Corporation. Roblox, logo Roblox và Powering Imagination là các nhãn hiệu đã đăng ký và chưa đăng ký của chúng tôi tại Hoa Kỳ và các quốc gia khác.