Fizik Tabanlı Görselleştirme (PBR) dokuları, bir nesne üzerinde birden fazla doku görüntüsü veya haritaları kullanarak gerçekçi gölgeleme ve aydınlatma temsil etmenizi sağlar. Birden fazla doku haritasının bir araya getirilmesi, herhangi bir aydınlatma ortamında renk, pürüzlülük ve yansıtıcılığı daha doğru bir şekilde simüle edebilir ve varlıklarınızın ve ortamınızın görsel unsurlarını geliştirebilir.


PBR dokuları oluşturmak için çeşitli uygulamalar ve iş akışları mevcuttur. Bu dokuları, özelleştirilmiş 3D nesne oluşturmanın modelleme ve doku aşamalarında kullanabilirsiniz; ancak, Roblox Studio'nun kullandığınız belirli doku haritalarını desteklediğinden emin olmalısınız.
Bu kılavuz, PBR doku haritalarını kullanmak üzere ağ kendi nesnelerinizi kurulumu ile ilgili talimatlar sağlar ve Roblox'un desteklediği PBR doku haritaları için yaygın kullanım senaryoları ve en iyi uygulamaları açıklar. Kendi yüzeylerinizi oluştururken, yaygın malzeme değerleri, resim karşılaştırmaları ve giysi örnekleri için malzeme referanslarına bakın.
Yüzey görünümünü etkinleştir
Herhangi bir MeshPart nesnesine PBR dokuları eklemek için, orijinal atanan dokuyu geçersiz kılan bir SurfaceAppearance nesnesi ekleyebilirsiniz. Genel olarak, oyun sırasında SurfaceAppearance özelliklerini betiklerle değiştirmeniz mümkün değildir çünkü motor, bu grafiklerin görüntülenmesi için bazı ön işleme gerektirir. Temel bir doku eklemeye benzer şekilde, her doku görüntü haritası uygun yüklenmiş görüntü varlık ID'sine işaret etmelidir.
Bir MeshPart için yüzey görünümünü etkinleştirmek için:
Keşfedici penceresinde, MeshPart üzerine gelin ve ⊕ butonuna tıklayın.
Bağlam menüsünden bir SurfaceAppearance ekleyin.

SurfaceAppearance nesnesine doku haritalarını eklemeye hazır olduğunuzda, Özellikler penceresindeki her harita özelliğine tıklayabilir ve bir varlık ID'si girebilirsiniz.
Doku haritaları
Studio şu anda dört tür PBR doku haritasını desteklemektedir: renk, normal, pürüzlülük ve metallik. Bu haritaların her biri, nesnenin yüzey görünümünün önemli bir yönüne karşılık gelir. Doku haritaları yalnızca görsel görünümü değiştirir ve MeshPart nesnesinin geometrisini etkilemez.
Roblox'un desteklediği doku haritaları ve ek kaynaklar için aşağıdaki örneklere bakın:
ColorMap özelliği, yüzeyin renk verisini, haritada bulunan herhangi bir saydamlık dahil olmak üzere ayarlar. Daha fazla bilgi için renk (albedo) bölümüne bakın.



Renk (albedo)
Renk veya albedo haritası, dokunuzun rengini belirler ve genellikle aydınlatma veya doku bilgisi olmayan çoğunlukla renk bilgisi içerir. Ek özelleştirme için, görüntü haritanıza opaklık ekleyerek albedo dokunuza saydamlık ekleyebilirsiniz.
Alfa modları
Sayıltmaya veya tamamen saydam bölümlere ihtiyaç duyan nesneler için, örneğin çim, yapraklar, dantel veya toprak veya kir gibi yapraklar için, doku haritanıza saydamlık uygulamak üzere çeşitli alfa modlarını kullanabilirsiniz. Eğer doku harita görüntü formatınız alfa kanallarını destekliyorsa, 0.0 saydam ve 1.0 opak olacak şekilde gri tonlu bir alfa haritası uygulayabilirsiniz. Benzer şekilde, bir .png gibi bir görüntü formatı kullanıldığında, renk haritasındaki her opaklık varlıkta saydamlık olarak uygulanır.
AlphaMode değerlerini ayarlayarak saydamlığı iki farklı davranış biçiminde uygulayabilirsiniz:
- Kaplama — ColorMap'ı, altındaki ağın MeshPart.Color rengi üzerinde kaplar. Kaplama modunu kullanan renk haritaları, nerede saydamlık varsa ağın temel rengini ortaya çıkarır. Bu varsayılan ayardır.
- Saydamlık — ColorMap'daki saydamlığa dayanarak görünür ağı kaldırır. Bu, ağı görünmez yapar ve saydamlık mevcut olduğunda orijinal ağ rengini açığa çıkarmaz.
Opak
Enum.AlphaMode.Opaque modunu kullanarak ColorMap'ın alfa kanalını tamamen yok sayabilirsiniz. Bu durumda, alfa değeri 1 (tam opak) olarak varsayılır.
Aşağıdaki örnek, Opaque modunun nasıl çalıştığını, beyaz bir nesneyi referans olarak kullanarak gösterir:


Kaplama
Enum.AlphaMode.Overlay kullanarak ağın orijinal renginin bölümlerini ortaya çıkarabilirsiniz. Renk haritasının saydam alanları altındaki rengi açığa çıkaracağından, özgün cilt tonları veya özel renkler gerektiren durumlar için ağın Color özelliğini kısmen veya tamamen açığa çıkaracak benzersiz bir doku haritası oluşturabilirsiniz.
Aşağıdaki örnek, beyaz bir küre referansı kullanarak Overlay modunun nasıl çalıştığını göstermektedir:


Aşağıdaki örnek, özel karakterler için Overlay modunu kullanarak karakterin orijinal cilt tonunu açığa çıkarır:


Cilt ve benzeri uygulamalar için bir kaplama optimize etme hakkında daha fazla bilgi için özel cilt tonu bölümüne bakın.
Saydamlık
Enum.AlphaMode.Transparency modunu kullanarak dantel veya ağ gibi çok karmaşık veya ince nesneler oluşturabilirsiniz, görünür ağın parçalarını kaldırarak ağ geometrisini şekillendirme yerine. Bu, ağ nesnesinin geometrisini etkilemediğinden, karmaşık bir ağ modelinin performans etkisi olmadan ayrıntılı nesneler oluşturmanıza olanak tanır.
Aşağıdaki örnek, bu moddaki kısmi ve tam saydamlığın ağın bölümlerini nasıl görsel olarak kaldırdığını göstermektedir:



Transparency modunun iki sonucu vardır; biri MeshPart.Transparency değeri 0 olarak ayarlandığında, diğeri de en az 0.02 olarak ayarlandığında; ancak sayısal hassasiyet, 0.01 gibi küçük değerlerin opak saydamlık tetiklemesine neden olabilir.
- Alfa, sert kenarlarla çoğunlukla opak nesnelerin şeklinin kesilmesini sağlıyorsa (örneğin yapraklar, dantel kumaşı ve ağ), MeshPart.Transparency değerini 0 olarak ayarlayın. Yüzeyin bazı bölümleri tamamen opak olduğunda, Roblox motoru bunları doğru derinlik bazlı saklama ile işleyebilir. Opak yüzeyler ayrıca genellikle DepthOfFieldEffect, cam ve su kırılmaları ve su yansımaları gibi derinlik bazlı etkilerle daha iyi çalışır.
- Alfa, yarı saydam nesneler veya saydamlıkta yumuşak geçişli nesneleri detaylandırmak için kullanılıyorsa, MeshPart.Transparency değerini en az 0.02 olarak ayarlayın. Bu, kirli pencereler ve yumuşak kenarları olan tüyler gibi nesnelerin karışım kalitesini artırır, ancak bu her efektle çalışmaz.
TintMask
Enum.AlphaMode.TintMask modunu kullanarak seçici alanlara SurfaceAppearance.Color boyama uygulayabilirsiniz. Boyama, alfa kanalı tamamen görünür olduğunda en güçlüdür ve alfa kanalı saydam olduğunda uygulanmaz.

Renk boyama
Renk haritanıza bir tint uygulamak için SurfaceAppearance.Color özelliğini değiştirebilirsiniz. Boyama performansı etkilemez ve farklı tintlerle tek bir renk haritası yeniden kullanarak bellek tasarrufu sağlayabilirsiniz. Renk boyamasını, MeshPart PBR dokularınız arasında ek düşük maliyetli varyasyonlar oluşturmak veya PBR yüzey renklerinizi gerçek zamanlı olarak programlı bir şekilde değiştirmek için kullanabilirsiniz.



SurfaceAppearance.Color boyamasının bir çarpan olarak uygulandığını unutmayın, böylece nihai görünüm Color3 (teksel rengi) ve SurfaceAppearance.Color'ın çarpımıdır. Bu, SurfaceAppearance.ColorMap'ınızı neredeyse beyaz gri tonlarında oluşturmanın, bu özellik uygulanırken en güçlü boyama etkisini yaratacağı anlamına gelir.
Boyama yalnızca SurfaceAppearance.ColorMap'a uygulanır, MeshPart.Color'a değil. Saydamlık uygularken alfa kanallarını kullanmaya devam edebilirsiniz.
SurfaceAppearance.AlphaMode Overlay olarak ayarlandığında ve bir alfa kanalı mevcut olduğunda, alttaki MeshPart.Color açığa çıkar ve SurfaceAppearance.Color boyaması yalnızca görünür SurfaceAppearance renk haritasına uygulanır.
SurfaceAppearance.AlphaMode TintMask olarak ayarlandığında ve bir alfa kanalı mevcut olduğunda, alfa kanalı SurfaceAppearance.Color boyamasının miktarını kontrol eder. Boyama, alfa kanalı tamamen görünür olduğunda en güçlüdür ve alfa kanalı saydam olduğunda uygulanmaz.

Normal
Normal veya yüzey haritası, yüzeyinize doku derinliği ekler ve yükseklik haritası ile benzer bir şekilde çalışır. Sonuç olarak, efekt görüntüleme açısına ve aydınlatma ortamına bağlı olarak azalabilir veya yoğunlaşabilir. Normal harita mevcut olmadığında, değeri 0.0 olarak ayarlanır.
Aşağıdaki şekilde, normal harita değerlerini karşılaştırmak için ağ referansı ve harita referansı arasında geçiş yapabilirsiniz:



Resmin R, G ve B kanalları sırasıyla, yerel yüzey vektörünün X, Y ve Z bileşenlerine karşılık gelir. 127, 127, 255 renk koduna sahip bir düzgün görüntü, tamamen düz bir normal haritasına dönüşür. Roblox yalnızca OpenGL format - Tanjant Uzay normal haritalarını destekler.
Normal haritalar, bir ağın görsel yüzeyini etkiler ve doku içindeki garip dikişleri vurgulayabilir. Mümkün olduğunca, doku dikişlerinizi görünmez tutmaya çalışın, böylece ağınızla görsel sorunlardan kaçınabilirsiniz.
Pürüzlülük
Pürüzlülük veya mikro yüzey haritaları, modelinizin yüzeyinde ışığın nasıl yayıldığını belirler. Pürüzlülük 0.0 olduğunda, yüzey hiç ışık yaymaz ve bu, malzemenizde çok daha keskin ve daha parlak bir yansıma sağlar. 1.0 olduğunda, ışık ve yansımalar model boyunca eşit bir şekilde dağılır, bu da daha az yansıtıcı, mat bir yüzey oluşturur.
Pürüzlülük, bir nesnenin farklı açılarda ne kadar yansıtıcı olduğunu, Fresnel etkisi olarak adlandırılan kavramaı etkileyebilir. Daha fazla detaylar ve tutarlı yansıtıcı davranış sağlamak için en iyi uygulamalar için fresnel bölümünü inceleyin.
Aşağıdaki şekilde, çeşitli pürüzlülük haritası değerlerinin karşılaştırmalarını gösterir:



Fresnel
Fresnel, bir yüzeyin mevcut görüntüleme açısına referansla yansıma miktarını belirtir. Studio'nun Fresnel işleme fiziksel gerçek dünya doğruluğunu hedeflese de, bazı açılarda beklenmeyen spekülar katkılarını yalnızca pürüzlü yüzeylerde bile alabilirsiniz. Bazı durumlarda, pürüzlülük haritanızı 0.1 kadar daha pürüzlü hale getirerek malzemelerinizle tutarlı bir aydınlatma tepkisi elde edebilirsiniz.
Roblox burada bu aydınlatma etkisini doğru bir şekilde gösterse de, yüzeyin parlaklığı ve yansıtıcılığı, doku içeriği oluşturma yazılımınız (Substance Painter gibi) ile Studio arasında tutarlı bir şekilde yanıt veremeyebilir. Uygulamalar arasında farklılıkları görmek için giysi örnekleri bölümüne bakın.
Metallik
Metallik, bir yüzeyin yansıtıcılığını belirler. Metallik değerleri 0.0 ile 1.0 arasında değişir. Roblox, bir metallik harita mevcut değilse varsayılan değeri 0.0 olarak ayarlamaktadır.
Aşağıdaki şekilde, çeşitli metallik haritası değerlerinin karşılaştırmalarını gösterir:



Farklı PBR motorları, yansıtıcılığı işlemek için farklı iş akışları kullanır. Studio sadece metallik iş akışını kullanır; bu, bir malzemenin metal veya metal olmayan olup olmadığını belirler; bazen de bir yalıtkan veya iletken olarak adlandırılır.
Çoğu durumda, bu değeri ya 0.0 (metal olmayan) ya da 1.0 (metal) olarak ayarlamalısınız. Orta dereceli yansıtıcı özelliklere sahip daha alışılmadık yüzeyler oluştururken kısmi metallik değerlerini kullanabilirsiniz; bu uygulama, malzemede yansımalara hafif bir yapaylık ekleyebilir ve renk/albedo haritasından çevredeki yansımaların üzerinde renk vurgulamaya yardımcı olur.

