Bir mandelbulb, giderek daha popüler hale gelen üç boyutlu bir fraktaldır. 3d sanat ve vfx. Bu yazıda, bir mandelbulb için nasıl bir şekilde yapılır? Houdini , bir SDF (imzalı mesafe alanı hacmi) kullanarak.
Her vokselde, bir SDF mesafeyi yüzeydeki en yakın noktaya saklar. Houdini bu mesafeleri yorumlayabilir ve türetilmiş yüzeyi 3D geometri olarak görselleştirebilir. Bu çok uygundur, çünkü çoğu fraktal formülün bir 'mesafe tahmini işlevi' şeklini alır - uzayda bir nokta göz önüne alındığında, fonksiyon, fraktal örtük yüzeydeki en yakın noktaya olan mesafeyi döndürür. Bu, fraktal fonksiyonunun sonuçlarını doğrudan her vokselde koyabileceğiniz anlamına gelir ve sadece işe yarayacak!
İlk önce, mesafe değerlerini doldurmak için boş bir hacim (SOP) oluşturun - 'Yüzey' adını verin. Test edilecek iyi bir fraktal, MandelBulb'dir ve varsayılan olarak 2,5 adet genişliğindedir, bu nedenle hacmin boyutunu 2.5, 2.5, 2.5 olarak ayarlayın. Hacimin çözünürlüğünü kaliteye karşı ticaret yapmak için değiştirebilirsiniz; İyi bir başlangıç noktası, üniforma örneklemeyi 0,01 bölümü ile boyutuna göre ayarlayabilir. Houdini'deki bir hacmi görselleştirmenin varsayılan modu bir sis hacmidir, ancak ekran modunu ISOSURFACE (Özellikler sekmesinde) değiştirerek sert bir limit yüzeyi olarak gösterilecek şekilde değiştirebilirsiniz.
O zaman vokselleri mesafe değerleri ile doldurma meselesidir. Voksel başına MandelBulb Formula'yı çalıştırmak için bir hacim vangle SOP'taki bu vex kodunu kullanın:
Vektör p = v @ p;
şamandıra dr = 1;
float r = 0.0;
float power = chf ("güç");
için (int i = 0; i & lt; chi ("iTerations"); i ++) {
r = uzunluğu (p);
eğer (R & GT; 1.5) kırıldı;
// Polar Koordinatlara Dönüştür
şamandıra theta = ACOS (P.Z / R);
float phi = Atan (p.y, p.x);
DR = POW (R, POWER-1.0) * GÜÇ * DR + 1.0;
// Noktayı ölçeklendirin ve döndürün
float zr = pow (r, güç);
theta * = güç;
phi * = güç;
// Kartezyen koordinatlarına geri dön
p = zr * set (günah (teta) * cos (phi), günah (phi) * günah (theta), cos (theta));
p + = v @ p;
}
F @ Yüzey = 0.5 * Günlük (R) * R / DR;
Houdini, kendi özel yedek parametrelerinizi bireysel bir düğümün kullanıcı arayüzüne eklemenizi sağlar. VEX kodumuz parametre referansları içerir ( chf () fonksiyonlar), formülün kullanımlarını UI'deki parametrelerle kontrol etmemize izin vermek. Bu parametreler varsayılan olarak mevcut olmaz, ancak kod penceresinin sağındaki yedek parametreleri oluştur düğmesine basarak oluşturabilirsiniz.
Bu durumda, yineleme parametresi MandelBulb için ayrıntı seviyesini kontrol eder - 5 veya 6 ile başlar. Güç Mandelbulb'un şeklini kontrol eder - tipik şekil, güç 8.0 çevresinde ortaya çıkar.
Yüzeyi çokgenlere dönüştürmek için, bir ses seviyesi SOP dönüştürme ile ses kaybını izleyin. Ters Çevirme modunu kullanın, çünkü imzalı bir mesafe alanı olarak yorumlanır ve çokgen formunda ayrıntılı fraktal şekli elde edersiniz. Etkili olarak, Ters Çevirme modu, yüzeyin normallerini ve çokgenlerin sarma yönünü tersine çevirir.
Daha sonra başka bir kafes olduğunuz gibi aynı şekilde oluşturabilirsiniz, ancak bu kadar ayrıntılı olduğundan, kolayca açamayacağınız için kolayca açamazsınız - örneğin, eğriliğine dayanarak, gölgelendirme için prosedürel teknikleri kullanmayı düşünün.
Bu makale başlangıçta yayınlandı 3d dünya , dünyanın CG sanatçıları için en çok satan dergisi.Satın almak Sayı 237 veya abone ol .
Daha fazla oku:
(Resim Kredi: Pexels / Frank Kagumba) MO.JS, tam ekran sayfa animasyon yükleyicilerini kolaylaştıran, aynı zamand..
Çocukluğumdan beri büyük bir manga fan oldum ve tutkumun benim sanatımdaki etkisini gizlemek imkansız. Güçlü ve dinamik ..
Çoğu insan, bir mobil uygulamanın içinde mi yoksa bir web sitesinde olsun, kullanıcı arayüzlerini günlük olarak görür,..
Geçen yaz sadece mezun olması, hala serbest çizim dünyasında oldukça yeni. Ancak tarzım ve sürecim, şimdi bir süredir g..
Çizim kariyerinin önceki yıllarında, gerçekçi veya basit olup olmadığı rakamları göstermekten uzaklaştık. Bu genelli..
Sayfa 1/4: Sayfa 1 Sayfa 1 Sayfa 2 Sayfa 3 ..
Sayfa 1/2: Sayfa 1 Sayfa 1 Sayfa 2 Bu yazıda, bir okyanus sahnesin..
Yıllarca deneyim boyunca, video oyunu stüdyo ayarlarında ve öğretimde çalışıyor 3d sanat Montreal'deki NA..