View Categories

VRayMtlGLSL

3 dakika okuma

Bu sayfa, V-Ray’deki GLSL materyali için ayarların ayrıntılarını sunmaktadır.

Genel Bakış #


VRayMtlGLSL ve VRayTexGLSL düğümleri, GLSL gölgelendiricilerini ( .frag, .glsl  dosyaları) veya V-Ray önceden derlenmiş fragment gölgelendiricilerini ( .pfrag dosyaları) yüklemek ve bunları doğrudan V-Ray ile işlemek için kullanılabilir . Gölgelendirici dosyası bir materyali (doku yerine) tanımlıyorsa, bir VRay GLSL Materyali ile veya bir VRayTexGLSL haritasını bir VRayLightMtl materyalinin renk yuvasına   atayarak işlenebilir  .

VRayGLSLMtl ve VRayTexGLSL’nin aynı kullanıcı arayüzünü paylaştığını   unutmayın  .

Bu materyal ve VRayTexGLSL haritası, V-Ray’in GLSL desteğinin ilk aşamasının bir parçasıdır. V-Ray’in bu sürümünde, gölgelendiriciler bir yazılım sanal makinesi için bayt koduna derlenir ve daha sonra yorumlanır. Bu çalışma zamanı yorumlaması nedeniyle, GLSL gölgelendiricileri, C++ ile yazılmış V-Ray gölgelendiricilerine göre biraz daha yavaş işlenebilir. V-Ray’in gelecekteki sürümlerinde, daha hızlı işleme için gölgelendiriciler doğrudan makine koduna derlenecektir.

Kullanıcı Arayüzü Yolu: ||Geometriye sağ tıklayın|| > Yeni Malzeme Ata… #

Temel Parametreler #


Gölgelendirici Dosya Adı  – Gölgelendirici kodunu içeren .glsl, .frag veya .pfrag dosyasını belirtir.

Özellikleri yeniden oluştur  – Gölgelendiriciyi yeniden yükler ve parametrelerini yeniden oluşturur.

Derlenmiş gölgeleyiciyi kaydet  – Gölgeleyici dosyasını ikili önceden derlenmiş parça gölgeleyici dosyası (.pfrag) olarak kaydeder.

Görünüm penceresi rengi  – Görünüm penceresi gölgelendirmesinde kullanılan malzemenin dağılım bileşenini belirtir.

Maksimum Işın Derinliği  – Gölgelendirici için maksimum yansıma/kırılma derinliğini belirtir.

Sonucu Sınırla  – Sonucun [0,  Sınır Değeri ] aralığında sınırlandırılıp sınırlandırılmayacağını belirler.

Sıkıştırma Değeri – Sıkıştırma Sonucu  etkinleştirilmişse  , üst sıkıştırma sınırını belirtir  .

Shader Alfa Değerini Kullan  – Shader’da hesaplanan alfa değerini kullanır.

Şeffaflık – Eğer Gölgelendirici Alfa Kullanımı kapalıysa  , alfa değerini geçersiz kılar   .


Gölgelendirici Nitelikleri #


Bu bölüm, shader’ın kendisinde bulunan tüm parametreleri içerir ve buradan düzenlenebilir.

GPU Desteği #


GLSL shader’ı, belirli sınırlamalar dahilinde V-Ray GPU tarafından desteklenmektedir. GPU desteği hakkında detaylı bilgileri aşağıda bulabilirsiniz.

Özellik

GPU Desteği

Dahili değişkenler

gl_NormalMatrix 

Her zaman birim matris.

gl_ModelViewMatrixTranspose 

Her zaman birim matris.

gl_DokuMatrisi 

Her zaman birim matris.

gl_TextureMatrixInverse 

Her zaman birim matris.

gl_TextureMatrixInverseTranspose 

Her zaman birim matris.

gl_TextureMatrixTranspose

Her zaman birim matris.

gl_ModelViewMatrixInverseTranspose 

Her zaman birim matris.

gl_FogFragCoord 

Her zaman sıfırdır.

gl_TexCoord[] 

Tüm gl_TexCoord[] öğeleri özdeştir, yani birden fazla UVW kanalı desteklenmez. VRayMtlGLSL#1

Dahili fonksiyonlar

dFdx(); dFdy() 

Her zaman sıfır döndürün.

fwidth() 

Her zaman sıfır döndürür.

GLSL için V-Ray uzantıları

vr_Hız 

Her zaman sıfırdır.

vr_NumSuperSamples 

Her zaman 1’dir.

vr_SüperÖrnekDizin 

Her zaman 1’dir.

vr_TextureDu[] 

Desteklenmiyor.

vr_TextureDv[] 

Desteklenmiyor.

vr_VertexData[] 

Desteklenmiyor.

vr_FrameData 

Yalnızca aşağıdakiler desteklenmektedir:

vr_FrameData.focalLength
vr_FrameData.aperture
vr_FrameData.dofFocus
vr_FrameData.dofRadius
vr_FrameData.imageResolution
vr_FrameData.imagePlaneOffset

 vr_izleme() 

Desteklenmiyor.

vr_evalLight() 

Desteklenmiyor. Çağrılmaya çalışılırsa, aşağıdaki sabitler çıktı ışık yineleyicisine atanacaktır:

ışık.nokta_nl = -1.0
ışık.katkı = vec3(0.0, 0.0, 0.0)
ışık.yön = vec3(0.0, 0.0, 0.0)

 vr_intersect() 

 Desteklenmiyor.

BRDF

Yalnızca aşağıdaki BRDF çağrıları desteklenmektedir 2 :

vr_brdf_diffuse()
vr_brdf_glass()
vr_brdf_mirror()
vr_brdf_ggx()

 Anahtar Kelimeler

Aşağıdaki anahtar kelimeler dikkate alınmaz: 

__kanal 

__kalıcı 

__yerli 

Referanslar #


  • Randi J. Rost ve diğerleri,  OpenGL Gölgelendirme Dili , ikinci baskı, Addison-Wesley, 2006

  • Lighthouse3D.com (bağlantı artık aktif değil) – GLSL’nin temellerini açıklayan ve birçok shader örneği içeren faydalı bir site.

Dipnotlar #


1 – Bu henüz geliştirme aşamasındadır.

2 – Deneysel özellik.

Tarafından desteklenmektedir BetterDocs

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir