Her şeyden önce, katılan medyada Monte Carlo yol izlemesi için iyi bir referans Steve Marschner'den bu ders notlarıdır.
Hacim saçılımı hakkında düşünmeyi sevdiğim yol, bir ortam boyunca seyahat eden bir fotonun, birim uzunluktaki etkileşim (dağılma veya emilme) başına belirli bir olasılığa sahip olmasıdır. Etkileşim yapmadığı sürece, engelsiz ve enerji kaybetmeden düz bir çizgide ilerler. Mesafe ne kadar büyük olursa, o mesafe içinde bir yerde etkileşim olasılığı da o kadar büyük olur. Birim uzunluk başına etkileşim olasılığı katsayıdırσdenklemlerde gördüğünüz Genellikle saçılma ve soğurma olasılıkları için ayrı katsayılarımız vardır, yaniσ=σs+σa.
Birim uzunluk başına bu olasılık tam olarak Beer-Lambert yasasının kökenidir. Bir ışın segmentini sonsuz aralıklarla dilimleyin, her aralığı etkileşime girmek için bağımsız bir olası yer olarak muamele edin, sonra ışın boyunca entegre edin; üstel bir dağılım elde edersiniz (rate parametresi ileσ) mesafenin bir fonksiyonu olarak etkileşim olasılığı için.
Bu nedenle, sorularınızı doğrudan yanıtlamak için:
Sen edebilir istediğiniz gibi teknik olarak sürece doğru bir foton ortamı ile etkileşim olmadan iki komşu olaylar arasına yapabileceği olasılığı için yolunu ağırlık olarak, olaylar arasındaki mesafeyi seçin. Başka bir deyişle, ortam içindeki her bir yol segmenti,e- σx, nerede xsegmentin uzunluğudur. (Bu homojen bir ortam olduğu varsayılır, ancak homojen değilse ne yapılacağı için yukarıda bağlantılı Marschner notlarındaki bölüm 4.2'ye bakın.)
Bu göz önüne alındığında, mesafe için genellikle iyi bir seçim, üstel dağılımdan önemini örneklemektir. Başka bir deyişle,x = - ( lnξ) / σ ve sonra e- σx yol ağırlığından faktör.
Daha sonra, emilimi hesaba katmak için, bir kesiri öldürmek için Rus ruletini kullanabilirsiniz. σbir/ σHer etkinlikte yolların Bu özellikle, yolun öldürülmezse keyfi olarak uzun süre zıplayabileceği çok büyük veya sonsuz medya (atmosferik saçılmayı düşünün) için gereklidir. Sadece küçük ve çok yoğun olmayan ortamlarla uğraşıyorsanız, sadece ağırlığını hesaba katmak daha iyi olabilir1 -σbir/ σ Rus ruleti kullanmak yerine etkinlik başına.
Hayır, az önce açıklanan önem örnekleme prosedürünü izlerseniz Beer-Lambert zaten örneklemede örtük olarak dahil edilmiştir, bu yüzden bunu yol ağırlıklarına uygulamak istemezsiniz.
BSDF'ye hacimsel eşdeğer, saçılma ve soğurma katsayılarının birleşimidir σs,σbirve faz fonksiyonu. Geleneksel olarak, katsayılar iletim, saçılma ve emilimin genel dengesini kontrol ederken, faz fonksiyonu her zaman normalleştirilir.
BSDF'ler için de böyle bir şey yapabilirsiniz; genel albedoyu etkisiz hale getirebilir ve yön bağımlılığının her zaman normalleştirilmesini sağlayabilirsiniz. Bu çoğunlukla konvansiyon AFAICT meselesidir.
"Katılımcı medyayı" (yani, hafif taşımacılığa "katılan" hacimsel "orta" —pralral “medya”) ve “hacimsel yol izlemeyi” deneyin.