Tekstur PBR

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Rendering Berbasis Fisik (PBR) memungkinkan Anda untuk merepresentasikan pencahayaan dan bayangan yang realistis dengan menggunakan beberapa jenis gambar tekstur, atau peta, pada satu objek. Menggabungkan beberapa peta tekstur dapat lebih akurat mensimulasikan warna, kekasaran, dan reflektivitas dalam lingkungan pencahayaan apa pun dan dapat meningkatkan elemen visual dari aset dan lingkungan Anda.

Avatar humanoid dengan dreadlocks, jaket glossy, celana jeans dengan decal, dan sepatu bot.
Avatar humanoid dengan potongan rambut pendek, jaket kulit, celana capri, dan sepatu oranye.

Berbagai aplikasi dan alur kerja tersedia untuk membuat tekstur PBR. Anda dapat menggunakan ini selama fase pemodelan dan teksturing pembuatan objek 3D kustom, asalkan Roblox Studio mendukung peta tekstur spesifik yang Anda gunakan.

Panduan ini memberikan instruksi tentang menyiapkan objek mesh Anda untuk menggunakan peta tekstur PBR, dan menjelaskan kasus penggunaan umum serta praktik terbaik untuk peta tekstur PBR yang didukung oleh Roblox. Saat membuat permukaan Anda sendiri, lihat referensi material untuk nilai material umum, perbandingan gambar, dan contoh pakaian.

Aktifkan penampilan permukaan

Anda dapat menambahkan tekstur PBR ke MeshPart mana pun dengan menambahkan objek SurfaceAppearance yang menimpa tekstur yang ditetapkan sebelumnya. Secara umum, Anda tidak dapat memodifikasi properti SurfaceAppearance melalui skrip selama permainan karena mesin memerlukan beberapa pemrosesan awal untuk menampilkan grafik ini. Mirip dengan menambahkan tekstur dasar, setiap peta gambar tekstur harus mengarah ke ID aset gambar yang diunggah yang sesuai.

Untuk mengaktifkan penampilan permukaan untuk MeshPart:

  1. Di jendela Explorer, arahkan mouse ke MeshPart dan klik tombol ⊕.

  2. Masukkan SurfaceAppearance dari menu kontekstual.

    Objek SurfaceAppearance yang diparent di dalam MeshPart di jendela Explorer Studio.

    Ketika Anda siap untuk menambahkan peta tekstur ke objek SurfaceAppearance, Anda dapat mengklik setiap properti peta di jendela Properties dan memasukkan ID aset.

Peta tekstur

Studio saat ini mendukung 5 jenis peta tekstur PBR: warna, normal, kekasaran, metalness, dan emissive. Masing-masing peta ini berkaitan dengan aspek penting dari penampilan permukaan objek. Peta tekstur hanya mengubah penampilan visual dan tidak mempengaruhi geometri objek MeshPart.

Lihat contoh berikut untuk gambaran umum tentang peta tekstur yang didukung oleh Roblox dan sumber daya tambahan:

Properti ColorMap mengatur data warna permukaan, termasuk transparansi yang ada dalam peta. Lihat warna (albedo) untuk informasi tambahan.

Gambar yang sepenuhnya terisi, sebagian besar merah dengan berbagai bercak hitam dan goresan putih.
Contoh peta
Sebuah bola putih kosong dengan latar belakang gelap.
Contoh mesh
Sebuah bola merah dengan bercak hitam dan goresan putih dengan latar belakang gelap.
Mesh dan tekstur

Warna (albedo)

Warna, atau albedo, peta menentukan warna tekstur Anda dan terdiri dari sebagian besar informasi warna dengan sedikit atau tanpa informasi pencahayaan atau tekstur. Untuk kustomisasi tambahan, Anda juga dapat menambahkan transparansi dalam tekstur albedo Anda dengan menambahkan opasitas ke peta gambar Anda.

Mode Alpha

Untuk objek yang memerlukan bagian transparansi parsial atau lengkap, seperti rumput, daun, renda, atau decal seperti kotoran atau grunge, Anda dapat menggunakan berbagai mode alpha untuk menerapkan transparansi pada peta warna Anda. Jika format gambar peta warna Anda mendukung saluran alpha, Anda dapat menerapkan peta alpha grayscale di mana 0.0 transparan dan 1.0 opak. Demikian pula, saat menggunakan format gambar seperti .png, setiap opasitas pada peta warna diterapkan sebagai transparansi pada aset.

Anda dapat menerapkan transparansi dalam dua perilaku berbeda dengan mengatur nilai AlphaMode berikut:

  • Opaque — Mengabaikan saluran alpha dari ColorMap dan menggunakan nilai warna langsung dari peta warna.
  • Overlay — Menumpuk ColorMap di atas MeshPart.Color mesh yang mendasarinya. Peta warna yang menggunakan mode overlay mengungkapkan warna dasar mesh di mana pun transparansi ada. Ini adalah pengaturan default.
  • Transparansi — Menghapus mesh yang terlihat berdasarkan transparansi di ColorMap. Ini membuat mesh menjadi tembus pandang dan tidak mengungkapkan warna mesh asli kapan pun transparansi ada.
  • Tint mask — Mencampur ColorMap yang diwarnai di atas ColorMap yang tidak diwarnai.
Opaque

Anda dapat menggunakan mode Enum.AlphaMode.Opaque untuk mengabaikan saluran alpha dari ColorMap sepenuhnya. Dalam hal ini, nilai alpha dianggap 1 (sepenuhnya opak).

Contoh berikut menunjukkan bagaimana mode Opaque bekerja menggunakan objek biru sebagai referensi:

Tekstur polkadot dengan transparansi. Latar belakang sepenuhnya transparan.
Peta warna/albedo dengan transparansi
Sebuah bola biru di atas bidang.
Contoh objek mesh
Bola tersebut memiliki pola polkadot yang tersebar di permukaannya. Nilai transparansi diabaikan.
AlphaMode diatur ke Opaque
Overlay

Anda dapat menggunakan Enum.AlphaMode.Overlay untuk mengungkapkan bagian dari warna asli mesh. Karena area transparan dari peta warna mengekspos warna yang mendasari, Anda dapat merancang peta tekstur unik yang sebagian atau sepenuhnya mengungkapkan properti Color untuk warna kulit kustom atau situasi lain dengan warna unik.

Contoh berikut menunjukkan bagaimana mode Overlay bekerja menggunakan referensi bola biru muda:

Gambar yang sepenuhnya terisi dengan pola semi-repeating dengan kotak kecil berwarna biru muda. Latar belakangnya kotak-kotak untuk menunjukkan transparansi.
Peta warna/albedo dengan transparansi
Sebuah bola cyan kosong di atas latar belakang gelap.
Contoh objek mesh
Sebuah bola putih dengan kotak kecil berwarna biru yang tersebar di permukaannya.
AlphaMode diatur ke Overlay

Contoh berikut menggunakan mode Overlay untuk karakter kustom, mengungkapkan warna kulit asli karakter:

Gambar yang sepenuhnya terisi dengan peta tekstur untuk model humanoid 3D. Berbagai bagian gambar kotak-kotak atau sebagian kotak-kotak untuk menunjukkan tingkat transparansi yang bervariasi.
Peta warna yang mengandung transparansi di bagian untuk mengekspos warna mesh asli
Empat model humanoid yang sama dengan warna kulit yang berbeda: coklat muda, hitam, putih, hijau tua.
Beberapa variasi karakter dengan satu peta warna menggunakan mode Overlay

Lihat warna kulit kustom untuk detail tambahan tentang mengoptimalkan overlay untuk kulit dan aplikasi serupa.

Transparansi

Anda dapat menggunakan mode Enum.AlphaMode.Transparency untuk membuat objek yang kompleks atau sangat halus, seperti renda atau jaring, dengan menghapus bagian yang terlihat dari mesh sebagai alternatif untuk membentuk geometri mesh. Karena ini tidak mempengaruhi geometri objek mesh, ini memungkinkan Anda untuk membuat objek yang detail tanpa dampak kinerja dari model mesh yang rumit.

Contoh berikut menunjukkan bagaimana transparansi parsial dan penuh dalam mode ini secara visual menghapus bagian dari mesh:

Sebuah bola dengan permukaan seperti keranjang.
Tidak ada transparansi
Sebuah bola dengan pola segitiga reguler di permukaannya sebagian tidak terlihat.
Transparansi setengah di bagian
Sebuah bola dengan pola segitiga reguler di permukaannya sepenuhnya tidak terlihat.
Transparansi penuh di bagian

Ada dua hasil dari mode Transparency, tergantung pada apakah MeshPart.Transparency diatur ke 0 atau setidaknya 0.02, meskipun presisi numerik dapat menghasilkan nilai kecil seperti 0.01 yang memicu transparansi opak.

  • Ketika alpha digunakan untuk memotong bentuk objek yang sebagian besar opak dengan tepi keras seperti dedaunan, kain renda, dan jaring, atur MeshPart.Transparency ke 0. Ketika bagian permukaan sepenuhnya opak, mesin Roblox dapat merendernya dengan oklusi berbasis kedalaman yang tepat. Permukaan opak juga umumnya bekerja lebih baik dengan efek berbasis kedalaman seperti DepthOfFieldEffect, pembiasan kaca dan air, serta refleksi air.
  • Ketika alpha digunakan untuk menambahkan detail pada objek semi-transparan atau objek dengan gradien transparansi yang halus, atur MeshPart.Transparency ke setidaknya 0.02. Ini meningkatkan kualitas pencampuran untuk objek seperti jendela kotor dan bulu dengan tepi lembut, tetapi tidak akan berfungsi dengan semua efek.
Tint mask

Anda dapat menggunakan mode Enum.AlphaMode.TintMask untuk menerapkan pewarnaan SurfaceAppearance.Color ke area tertentu dari permukaan. Pewarnaan paling kuat di mana saluran alpha sepenuhnya terlihat dan tidak diterapkan di mana saluran alpha transparan.

Tekstur bata berwarna hangat dan terang dengan grout berwarna abu-abu gelap di antara bata.
Contoh tekstur bata, menunjukkan detail warna pada wajah bata serta di grout di antara bata.

Pewarnaan warna

Anda dapat menerapkan tint pada peta warna Anda dengan memodifikasi properti SurfaceAppearance.Color. Pewarnaan tidak mempengaruhi kinerja dan Anda dapat menghemat memori dengan menggunakan satu peta warna dengan berbagai tint. Gunakan pewarnaan warna untuk menciptakan variasi biaya rendah tambahan antara tekstur PBR MeshPart Anda atau untuk memodifikasi warna permukaan PBR Anda secara programatis dalam waktu nyata.

Sebuah patung dengan tint kuning default dan sifat reflektif seperti giok.
Mesh patung dari The Mystery of Duvall Drive tanpa pewarnaan.
Sebuah patung dengan tint merah dan terus memiliki sifat reflektif yang mengkilap dari peta tekstur lainnya.
Mesh patung dengan Color diatur ke merah.
Sebuah patung dengan tint hijau dan terus memiliki sifat reflektif yang mengkilap dari peta tekstur lainnya.
Mesh patung dengan Color diatur ke hijau.

Pewarnaan SurfaceAppearance.Color diterapkan sebagai pengali, sehingga penampilan akhir adalah fungsi dari Color3 (warna texel) kali SurfaceAppearance.Color. Ini berarti bahwa membuat SurfaceAppearance.ColorMap asli Anda dalam warna grayscale mendekati putih menciptakan efek pewarnaan yang paling kuat ketika properti ini diterapkan.

Pewarnaan hanya diterapkan pada SurfaceAppearance.ColorMap dan bukan pada MeshPart.Color. Anda dapat terus menggunakan saluran alpha saat menerapkan transparansi.

Ketika SurfaceAppearance.AlphaMode diatur ke Overlay dan saluran alpha ada, MeshPart.Color yang mendasari terungkap dan pewarnaan SurfaceAppearance.Color hanya diterapkan pada peta warna SurfaceAppearance yang terlihat.

Ketika SurfaceAppearance.AlphaMode diatur ke TintMask dan saluran alpha ada, saluran alpha mengontrol jumlah pewarnaan SurfaceAppearance.Color. Pewarnaan paling kuat di mana saluran alpha sepenuhnya terlihat dan tidak diterapkan di mana saluran alpha transparan.

Sebuah bidang persegi yang mengapung dengan tekstur batuan cyan, yang secara bertahap berubah dari sepenuhnya transparan di sebelah kiri menjadi sepenuhnya opak di sebelah kanan. Sebuah bilah horizontal tipis di bawah bidang yang mengapung memiliki gradien dengan hitam di sebelah kiri dan putih di sebelah kanan.
AlphaMode diatur ke Transparency. Bilah gradien grayscale di bagian bawah menunjukkan nilai alpha. MeshPart.Color diatur ke merah dan SurfaceAppearance.Color diatur ke cyan.

Normal

Peta normal, atau permukaan, menambahkan kedalaman tekstur ke permukaan Anda dan berperilaku mirip dengan peta tinggi. Akibatnya, efeknya dapat memudar atau menguat tergantung pada sudut pandang dan lingkungan pencahayaan.

Dalam gambar berikut, Anda dapat beralih antara referensi mesh dan referensi peta untuk perbandingan nilai peta normal:

Sebuah bola halus berwarna tanah liat.
Sebuah bola berwarna tanah liat dengan permukaan yang agak berbatu.
Sebuah bola berwarna tanah liat dengan permukaan yang sangat berbatu

Saluran R, G, dan B dari gambar masing-masing berkaitan dengan komponen X, Y, dan Z dari vektor permukaan lokal. Gambar seragam dengan warna [127, 127, 255] diterjemahkan menjadi peta normal yang sepenuhnya datar. Roblox hanya mendukung peta normal format OpenGL - Ruang Tangen.

Peta normal secara mencolok mempengaruhi permukaan visual dari sebuah mesh dan dapat menonjolkan jahitan yang tidak nyaman dalam tekstur Anda. Sebisa mungkin, sembunyikan jahitan tekstur Anda untuk menghindari masalah visual dengan mesh Anda.

Kekasaran

Peta kekasaran, atau mikropermukaan, menentukan bagaimana cahaya tersebar di permukaan model Anda. Ketika kekasaran berada di 0%, permukaan tidak menyebarkan cahaya sama sekali, menghasilkan refleksi dan kilau yang jauh lebih tajam dan lebih cerah pada material Anda. Pada 100%, cahaya dan refleksi tersebar merata di seluruh model menghasilkan permukaan matte yang kurang reflektif.

Gambar berikut menunjukkan perbandingan berbagai nilai peta kekasaran:

Sebuah bola glossy biru.
0%
Sebuah bola semi-glossy biru.
50%
Sebuah bola matte biru.
100%

Kekasaran dapat mempengaruhi seberapa reflektif suatu objek pada sudut yang berbeda, yang disebut sebagai efek Fresnel. Pemrosesan fresnel Studio bertujuan untuk akurasi fisik dunia nyata, meskipun Anda mungkin mendapatkan kontribusi spekular yang tidak terduga pada sudut tertentu bahkan dengan permukaan yang kasar. Dalam beberapa kasus, Anda dapat mengkompensasi dengan meningkatkan nilai peta kekasaran Anda sekitar 0.1 lebih kasar untuk mencapai respons pencahayaan yang konsisten dengan material Anda.

Meskipun Roblox merender efek pencahayaan ini dengan akurat, kecerahan dan reflektifitas permukaan mungkin tidak merespons secara konsisten antara perangkat lunak konten tekstur Anda, seperti Substance Painter, dan Studio. Lihat contoh pakaian untuk perbedaan dalam rendering antara aplikasi.

Metalness

Metalness menentukan reflektifitas suatu permukaan. Dalam kebanyakan kasus, Anda harus mengatur nilai ini ke 0% (non-logam) atau 100% (logam), meskipun Anda dapat menggunakan nilai metalness parsial saat membuat permukaan dengan sifat reflektif moderat seperti satin atau sutra. Praktik ini dapat secara halus meniru refleksi dalam material untuk menonjolkan warna dari peta warna/albedo di atas warna yang dipantulkan di lingkungan.

Lihat gambar berikut untuk perbandingan berbagai nilai peta metalness:

Sebuah bola coklat dengan bercak cahaya.
0%
Sebuah bola coklat dengan bercak cahaya dan sedikit reflektifitas.
50%
Sebuah bola coklat dengan bercak moderat dan banyak reflektifitas.
100%

Berbagai renderer PBR menggunakan berbagai alur kerja untuk memproses reflektifitas. Studio hanya menggunakan alur kerja metalness yang menentukan apakah material adalah non-logam atau logam, kadang-kadang disebut sebagai isolator atau konduktor.

Emissive mask

Tekstur konten grayscale EmissiveMaskContent menerapkan masker emissif di seluruh permukaan. Ini memungkinkan Anda menggunakan tekstur untuk mengontrol emissivitas untuk kontrol artistik yang lebih baik daripada material Neon yang semuanya atau tidak sama sekali dan memungkinkan Anda untuk membuat efek bercahaya yang detail seperti teks yang diterangi, armor futuristik, atau makhluk bioluminescent.

Properti terkait EmissiveTint menentukan warna tinting untuk kontribusi emissif, dan EmissiveStrength menentukan kekuatan kontribusi emissif.

Sebuah bola oranye dengan masker emissif jack-o-lantern yang diwarnai magenta.
EmissiveTint = [255, 0, 255]
©2026 Roblox Corporation. Roblox, logo Roblox, dan Powering Imagination termasuk dalam merek dagang kami yang terdaftar dan tidak terdaftar di AS dan negara lainnya.