Önbellek operatörü, parçacık durumlarını belleğe kaydeder ve depolar. Bu, özellikle büyük veya karmaşık parçacık sistemlerinde, gereken yüksek işlem gücü nedeniyle oynatma ve özellikle geri izleme işlemlerinin yavaş olduğu durumlarda oldukça kullanışlıdır.
Önbellek etkin olduğunda, bir kareyi ilk kez oynattığınızda veya o kareye gittiğinizde, o kareye kadar olan parçacık hareketi hesaplanır ve önbelleğe kaydedilir. Bundan sonra, kareyi veya önceki kareleri oynatırken, parçacık hareketini yeniden hesaplamak yerine önbellekteki veriler kullanılır. Önbellekleme açıkken, parçacık sisteminin her kare için yalnızca bir kez hesaplanması gerekir ve bundan sonra oynatma ve kareler arasında geçiş önemli ölçüde daha hızlı olur.
Tüm akışı önbelleğe almak için, genel olaya bir Cache operatörü ekleyin. Tek bir yerel olayı önbelleğe almak için, o olaya bir Cache operatörü ekleyin.
Parçacık sisteminizde önbelleklemenin en iyi nasıl uygulanacağını belirlemek için Parçacık Görünümünü açın.
İzleme Güncellemesi
İlerleme durumunu güncelleyin ve ardından animasyonu oynatın veya mevcut kareden nispeten uzak bir kareye gidin. Parçacık diyagramını inceleyin ve saniyenin bir bölümünden daha uzun süre vurgulanan eylemlere sahip olayları veya diğerlerinden daha fazla aktiviteye sahip olayları gözlemleyin. Bu tür olaylar önbelleğe almaktan fayda sağlayabilir.
Prosedürler #
Örnek: Önbellek operatörünü kullanmak için:
- 3ds Max’i başlatın veya sıfırlayın ve ardından bir Parçacık Akışı sistemi ekleyin.
- Parçacık Görünümünü Aç.
- Parçacık Görünümünde, Seçenekler menüsüne gidin.
Güncellemeyi izle ve Güncelleme İlerlemesini aç.
Bu özellik, sistem eylemleri gerçekleştirirken Parçacık Görünümü’nde eylemleri vurgulayarak parçacık sisteminin hesaplamasını izlemenizi sağlar.
- Parçacık Görünümünde, Olay 01’e bir Ayrı Tutma operatörü ekleyin.
“Keep Apart” operatörü oldukça yoğun hesaplama gerektiren bir işlemdir.
- Zaman kaydırıcısının sağ ucuna tıklayarak 100. kareye gidin.
Sistem, 0 ile 100. kareler arasında tüm parçacık hareketlerini hesaplarken bir gecikme yaşanır. Bu, Parçacık Akışı’nın geçmişe bağımlı bir sistem olması nedeniyle gereklidir. Aynı zamanda, sistemdeki eylemler her karede yürütüldükçe Parçacık Görünümü’nde kısaca vurgulanır.
- Zaman kaydırıcısının ortasına tıklayarak 50. kareye gidin.
Sistem, 0 ile 50. kareler arasındaki tüm parçacık hareketlerini hesaplarken bir gecikme daha yaşanmaktadır.
- Parçacık Görünümünde, depodan bir Önbellek operatörünü Olay 01’e sürükleyin. Olay içinde herhangi bir yere yerleştirin.
Fare düğmesini bıraktığınızda, Önbellek operatörü animasyonun başlangıcından mevcut kareye kadar parçacık hareketini otomatik olarak önbelleğe aldığı için bir gecikme yaşanır. Bu sırada, her eylem her karede kısa süreliğine vurgulanır.
- Yaklaşık 20. kareye gidin.
Vurgulanan tek operatörler Önbellek (çok hızlı) ve Görüntüleme’dir; hesaplama için herhangi bir gecikme yoktur. 0 ile 50 arasındaki tüm kareler önbelleğe alınmıştır.
- 100. kareye gidin.
Bu seferki gecikme, 50 ila 100. kareler arasındaki parçacık hareketinin önbelleğe alınmasından kaynaklanmaktadır.
- Farklı kareler arasında geçiş yapın ve zaman kaydırıcısını sürükleyin.
Parçacık hareketlerinin tamamı artık önbelleğe alınıyor, bu nedenle herhangi bir gecikme yaşanmıyor. Ancak bir ayarın değerini değiştirirseniz, Önbellek operatörü parçacık hareketini otomatik olarak yeniden hesaplar ve saklar.
- 100. kareye gidin ve ardından Parçacık Görünümü’nde “Ayrı Tut” operatörüne tıklayın ve klavyeyi kullanarak Azalma Bölgesi değerini 8.0 olarak değiştirin .
Varsayılan olarak, Önbellek operatörü, depoladığı parametrelerden herhangi birini değiştirdiğinizde önbelleği otomatik olarak günceller. Bu nedenle, 100. karede Düşüş Bölgesi değerini değiştirdiğinizde, tüm animasyonu yeniden hesaplar ve önbelleğe alır.
Sonraki bölümde, manuel önbelleklemenin nasıl çalıştığını kısaca inceleyeceksiniz.
- Önbellek operatörüne tıklayın ve Güncelleme seçeneğini Manuel olarak ayarlayın.
Önbellek operatörü, bir parametreyi değiştirdiğinizde artık depolanan verileri otomatik olarak güncellemez.
- “Keep Apart” operatörüne tıklayın, Falloff Zone değerini 9.0 olarak değiştirin ve ardından zaman kaydırıcısını sürükleyin.
Herhangi bir gecikme yok, çünkü animasyon hala önbelleğe alınmış verilerden oynatılıyor. Ancak, parçacık sisteminde bir parametreyi değiştirdiğiniz için önbelleğe alınmış veriler artık geçersiz.
- Önbellek operatörüne tıklayın ve Manuel Güncelleme grubunda Güncelle’ye tıklayın.
3ds Max , Parçacık Görünümünü kapatır, aktif segment için önbelleği günceller ve ardından Parçacık Görünümünü yeniden açar. Önbelleğe alınan veriler artık doğrudur.
Diğer manuel güncelleme seçenekleri, tüm animasyon veya özel bir kare aralığı için önbelleği güncellemenize olanak tanır.
Gördüğünüz gibi, Önbellek operatörü oldukça güçlü. Mevcut ve etkin olduğunda, varsayılan olarak parçacık sisteminin yeniden hesaplanmasını geçersiz kılar; ancak herhangi bir eylem parametresini değiştirdiğinizde, önbelleğe alınmış verileri otomatik olarak günceller. Uygun şekilde kullanıldığında, parçacık sistemlerinin kurulumunda ve testinde önemli ölçüde zaman kazandırabilir.
Arayüz #

Kullanıcı arayüzü, Parçacık Görünümü iletişim kutusunun sağ tarafındaki parametreler panelinde görünür.
- Kullanım Alanı
- Görüntü pencerelerinde oynatılırken, render zamanında veya her ikisinde de parçacık hareketini önbelleğe alır. Varsayılan=Görüntü Penceresi.
Önemli: Görünüm Penceresi/Render seçeneğini yalnızca görünüm pencerelerinde ve render işleminde aynı sayıda parçacık kullanıyorsanız seçin. Başka bir deyişle, genel olayın (veya Parçacık Akışı kaynağının) Emisyon Açılır Menüsündeki iki Miktar Çarpanı ayarı aynı olmalıdır. Aksi takdirde, öngörülemeyen sonuçlar ortaya çıkabilir.
- Güncelleme
- Parçacık sisteminde bir parametreyi değiştirirseniz, önbelleğe alınmış veriler geçersiz hale gelebilir. Bu ayar, Particle Flow’un önbelleği otomatik olarak mı yoksa sizin manuel olarak güncellemenize izin vererek mi güncelleyeceğini belirler. Varsayılan=Her zaman.
- Önbellek operatörünün yetki alanındaki herhangi bir parametreyi değiştirmek , depolanan verilerin geçerli aralığın başlangıcından (bir sonraki parametreye bakın) geçerli kareye kadar otomatik olarak güncellenmesine neden olur.
- Manuel güncelleme yalnızca Güncelle düğmesine tıkladığınızda veya önbelleği temizleyip farklı bir çerçeveye geçtiğinizde gerçekleşir.
- Menzil
- Önbellek operatörünün çalışacağı çerçeve aralığını ayarlar. Varsayılan değer = Aktif Segment.
- Particle Flow, animasyonun tamamını önbelleğe alır .
- Aktif Segment Parçacık Akışı, Zaman Yapılandırma iletişim kutusundaki Başlangıç Zamanı ve Bitiş Zamanı ayarlarıyla tanımlanan aktif segmentteki kareleri önbelleğe alır. Bu, izleme çubuğunda gösterilen kare aralığıdır. Ayrıca, Alt+Ctrlfareyle izleme çubuğunu basılı tutarak sürükleyerek de aktif segmenti değiştirebilirsiniz; bu işlem için sol, orta veya sağ fare düğmesini kullanabilirsiniz.
- Özel Parçacık Akışı önbelleği, yalnızca Önbellek operatörünün Başlangıç Zamanı ve Bitiş Zamanı ayarlarıyla tanımlanan özel aralıktaki kareleri önbelleğe alır (aşağıya bakınız).
Not: Animasyonun yalnızca bir kısmını önbelleğe alırsanız, Particle Flow, önbelleğe alınmamış sonraki karelerdeki parçacık davranışını önbelleğe alınmış verileri kullanarak hesaplar. Örneğin, 0 ila 50. kareleri önbelleğe alıp ardından 60. kareye geçerseniz, Particle Flow 51. kareyi önbelleğe alınmış verilere, 52 ila 60. kareleri ise önceki her kareye göre hesaplayacaktır.
- Başlangıç/Bitiş Saati
- Range=Custom (yukarıya bakınız) ayarı yapıldığında önbelleğe alma için dikkate alınan aralığın ilk ve son kareleri. Varsayılan değerler: 0, 30.
Not: Kare aralığı zaman dilimi mutlak zamandır; yani tüm animasyon açısından. Yerel olarak bir Önbellek operatörü kullanırsanız ve olayda hiçbir parçacığın bulunmadığı bir kare aralığı belirtirseniz, Particle Flow önbelleği kullanmaz.
- Örnekleme
- Önbellek operatörünün animasyonu ne sıklıkla örnekleyip önbelleğe alacağını belirler. Varsayılan değer = Her kare.
- Her karede Particle Flow, animasyon verilerini kare başına bir kez önbelleğe alır.
- Particle Flow, her entegrasyon adımında animasyon verilerini, Kullanım Yeri ayarında (yukarıya bakınız) belirtilen Entegrasyon Adımı ayarını kullanarak önbelleğe alır. Kullanım Yeri Görünüm Alanı/Render olarak ayarlanmışsa, iki Entegrasyon Adımı değerinden daha düşük olanı kullanılır. Örneğin, Görünüm Alanı Yarım Kare ve Render 1/8 Kare olarak ayarlanmışsa, örnekleme hızı kare başına sekiz olur.
- Her N. Karede Particle Flow, aşağıda belirtilen N değeriyle gösterilen kare aralıklarında animasyon verilerini önbelleğe alır.
- N
- Örnekleme (yukarıda) Her N. Karede olarak ayarlandığında önbelleğe alma için kare aralığını belirler. Varsayılan değer = 5.
Örneğin, N varsayılan değeri olan 5’e ayarlandığında, önbellek her beşinci kare için animasyon verilerini saklar.
- Önbellek Test Sonuçları
- Parçacık verileri önbelleğe alındığında, test işlemlerinin sonuçları da önbelleğe alınır. Varsayılan değer açık.
Önbellek yerel bir operatör olarak kullanılıyorsa ve bir sonraki olayda Önbellek operatörü yoksa bu önemlidir. Bir sonraki olayın düzgün çalışması için, mevcut olaydan parçacıklar alması gerekir. Bu parçacıklar bir test eyleminin etkinliğinden kaynaklanır. Önbellek operatörü, test etkinliğini kaydedip daha sonra tekrar oynatabilir.
Önbellek operatörü global bir operatör olarak kullanıldığında, test sonuçlarını önbelleğe almaya gerek kalmaz. Çünkü sistem her olay için önbellek verilerine sahiptir ve test sonuçlarına ihtiyaç duymadan rastgele bir kareye atlayabilir.
- Önbelleği Dosya ile Kaydet
- Etkinleştirildiğinde, Parçacık Akışı, diske kaydettiğiniz sahnelerle birlikte önbelleğe alınmış verileri de içerir. Bu, kaydedilen dosyaların boyutunu önemli ölçüde artırabilir, ancak dosyayı yeniden yüklediğinizde parçacık hareketini yeniden hesaplama süresinden tasarruf sağlar. Varsayılan değer = kapalı.
Normalde, önbelleğe alınan veriler yalnızca Kaydet veya Farklı Kaydet komutlarıyla oluşturduğunuz disk dosyalarına kaydedilir. Ayrıca, aşağıdaki iki seçeneği kullanarak 3ds Max’e önbelleğe alınan verileri diğer dosya türleriyle birlikte kaydetmesini de söyleyebilirsiniz.
- Önbelleği Tutarak Kaydet
- Önbelleğe alınmış verileri, Düzenle menüsüyle oluşturulan Beklet dosyasına kaydeder.
Beklet. Varsayılan değer=kapalı.
Manuel Güncelleme grubu #
Bu kontroller, belirli bir zaman aralığı içinde önbelleği manuel olarak güncellemenize veya temizlemenize ya da tüm önbelleği temizlemenize olanak tanır.
- Güncelleme
- Geçerli aralık (aşağıda tanımlanmıştır) içindeki parçacık hareketini hesaplar ve önbelleğe kaydeder, mevcut önbelleğe alınmış verilerin yerini alır. Yalnızca Aralık “Aktif Segment” veya “Özel” olarak ayarlandığında kullanılabilir.
Güncelleme sırasında, 3ds Max geçici olarak Parçacık Görünümünü kapatır ve önbelleğe alınmış aralık boyunca zaman kaydırıcısını hareket ettirirken bir Önbellek Güncelleme İlerleme çubuğu görüntüler. Aynı zamanda, varsayılan olarak, animasyon görüntüleme pencerelerinde oynatılır. Bunu önlemek ve hesaplamayı hızlandırmak için Görüntüleme Pencerelerini Güncelle seçeneğini kapatın.
Önbellek manuel olarak güncellenirken bellek yetersizliği yaşanırsa, Particle Flow güncelleme işlemini durdurur ve bir uyarı görüntüler. Devam etmek için Tamam’ı tıklayın ve ardından, mümkünse, önbelleği tekrar güncellemeden önce Sınır değerini artırın.
- Temizlemek
- Önbelleğe alınmış tüm verileri siler.
Önbellek tamponunu temizledikten sonra, farklı bir kareye geçerseniz veya herhangi bir eylem parametresini değiştirirseniz, Particle Flow, Güncelleme ayarı Manuel olarak ayarlanmış olsa bile parçacık hareketini otomatik olarak önbelleğe alır.
- Menzil
- Güncelle düğmesine tıkladığınızda Önbellek operatörünün verileri yeniden hesaplayacağı çerçeve aralığını ayarlar. Varsayılan değer = Aktif Segment.
- Parçacık Akışını Tamamla seçeneği , tüm animasyonun önbelleğini temizler . Tamamla seçeneğini seçmek, Güncelle düğmesini devre dışı bırakır; bu seçenek yalnızca önbelleği temizlemek içindir.
Animasyonun tamamını güncellemek için, etkin bölümü veya özel aralığı tüm kareleri kapsayacak şekilde ayarlayın, ardından ilgili seçeneği kullanın ve Güncelle’ye tıklayın.
- Aktif Segment Parçacık Akışı, yalnızca Zaman Yapılandırma iletişim kutusundaki Başlangıç Zamanı ve Bitiş Zamanı ayarlarıyla tanımlanan aktif segmentteki kareler için önbelleği günceller. Bu, izleme çubuğunda gösterilen kare aralığıdır. Ayrıca, Alt+Ctrlizleme çubuğunu basılı tutarak ve sürükleyerek de aktif segmenti değiştirebilirsiniz; bu işlem için sol, orta veya sağ fare düğmesini kullanabilirsiniz.
- Özel Parçacık Akışı, önbelleği yalnızca Başlangıç Zamanı ve Bitiş Zamanı ayarlarıyla tanımlanan özel aralıktaki kareler için günceller (aşağıya bakınız).
- Parçacık Akışını Tamamla seçeneği , tüm animasyonun önbelleğini temizler . Tamamla seçeneğini seçmek, Güncelle düğmesini devre dışı bırakır; bu seçenek yalnızca önbelleği temizlemek içindir.
- Başlangıç/Bitiş Saati
- Range=Custom (yukarıya bakınız) ayarı yapıldığında güncellenen aralığın ilk ve son kareleri. Varsayılan değerler: 0, 30.
- Görünüm Pencerelerini Güncelle
-
Etkinleştirildiğinde, önbelleğin manuel olarak güncellenmesi sırasında animasyon görüntüleme alanlarında oynatılır. Manuel önbellekleme sırasında animasyonun görüntüleme alanlarında oynatılmasını devre dışı bırakmak için bunu kapatın; bu, özellikle büyük veya karmaşık parçacık sistemlerinde önbellekleme sürecini hızlandırabilir. Varsayılan değer = açık.
Kullanılan Bellek (K) grubu #
Önbellek operatörü verileri sistem belleğinde saklar; kullandığı bellek miktarı için bir üst sınır belirtebilirsiniz. Sınır ayarı ve önbelleğe alınan veri miktarı kullanılabilir boş belleği aşarsa, bilgisayar sistemi bunun yerine sanal (sabit disk tabanlı) bellek kullanabilir, bu da önbelleğe almayı yavaşlatır. Particle Flow önbelleği doldurursa, kalan kareler anında hesaplanır.
Bu grup ayrıca veri önbelleğe alma için kullanılan bellek miktarını izlemenizi sağlar.
- Sınır
- Parçacık verilerini önbelleğe almak için kullanılan maksimum sistem belleği miktarı (kilobayt cinsinden). Varsayılan değer = 100.000 veya 97,6 MB.
- Toplam
- Önbelleğe alınmış verilerin şu anda kullandığı bellek miktarı (kilobayt cinsinden). Sadece okunabilir.
Not: Parçacık içermeyen animasyon kareleri bile muhtemelen belirli bir miktarda önbellek belleği tüketecektir. Bunun nedeni, önbelleğin, parçacık etkinliğinin bir işleme ağı genelinde ve tüm karelere düzenli erişimi olmayabilecek makinelerde tutarlı olmasını sağlamak için Varyasyon gibi rastgele hesaplanan değerler için de durumları saklamasıdır.
- Mevcut Kare
- Geçerli kare için önbelleğe alınan verilerin kullandığı bellek miktarı (kilobayt cinsinden). Sadece okunabilir.
