Skip to main content
Corona Renderer Render Farm Kurulum Rehberi

Corona Renderer Render Farm Kurulum Rehberi

BySuperRenders Farm Team
11 min read
Dağıtık render farm'larında Corona Renderer — node lisanslama, sahne hazırlığı, yaygın hatalar ve optimizasyon.

Giriş

Corona Renderer, diğer render motorlarından farklıdır çünkü CPU tabanlı ray tracing kullanır — GPU render yolu yoktur. Bu mimari, render farm dağıtımı için derin çıkarımlara sahiptir. V-Ray GPU için inşa edilen geleneksel farm'larda, Corona farklı donanım sağlama, lisanslama modelleri ve optimizasyon yaklaşımları gerektirir.

Biz resmi Chaos render ortağıyız ve farm'ımızda Corona'yı V-Ray ve Redshift'in yanında destekliyoruz. Corona'nın CPU odağı, GPU farm bant genişliği sınırlı olduğu veya müşterilerin CPU kararlılığını tercih ettiği senaryolarda mükemmel performans sağlar. Geçtiğimiz üç yıl içinde binlerce Corona işini işlemiş ve farm verimliliğini en üst düzeye çıkaran iş akışlarını optimize ettik.

Bu rehber Corona'nın mimarisini, distributed rendering kurulumunu, node lisanslama, sahne hazırlanması, yaygın hatalar ve çözümler, Corona ve V-Ray karşılaştırması ile Corona render sürelerini rekabetçi tutmak için kullandığımız optimizasyon tekniklerini kapsar.

Corona'nın CPU Tabanlı Rendering Mimarisini Anlamak

Corona Renderer, tek yönlü path tracing aracılığıyla fotorealistik çıktı üretir — tek bir ışın kamera'dan sahne içerisinde seçilmiş ışık örnekleri toplarken ışık kaynağına veya bounce sınırına ulaşana kadar yayılır. Bu, iki yönlü path tracing (V-Ray'ın yaklaşımı) veya spectral rendering (Arnold) ile farklıdır. Corona'nın tek yönlü tasarımı hız ve tutarlılığa öncelik verir. Teknik dokümantasyon için Corona Renderer rehberine bakınız.

Neden yalnızca CPU? CPU ray tracing, GPU bellek sınırlamalarından kaçınarak büyük sahne dosyalarını mümkün kılar. 500 milyon polygon veya 10GB doku içeren bir sahne, 128GB RAM'e sahip bir CPU makinesinde rahatça çalışır. GPU rendering bunu kaldıramaz. CPU ayrıca 64-bit floating-point gibi superior sayısal hassasiyeti sağlar, bu da mimari görselleştirmede küçük yüzey hizalama yanlışlıklarının önemli olduğu durumlarda kritiktir.

Farm etkileri: Corona render'ları CPU yoğun ama bellek affedicidir. Tek bir 4-socket Xeon sunucusu, dört GPU makinesinden 4-8x daha hızlı karmaşık sahne render eder, ancak aynı gücü tüketir. Farm'ımız Corona için özel olarak dual-socket Xeon E5-2699 v4 makineleri ayırır — kutu başına 44 çekirdek, render sırasında %100 kullanım.

Lisanslama gerçekliği: Corona node-locked lisansları kullanır, yani bir lisans bir CPU çekirdeğini etkinleştirir. 44 çekirdekli bir makine 44 Corona lisansı gerektirir. Ölçekte pahalıdır ama kesin kapasite faturalandırma sağlar ve floating-license overhead'ini önler. Render'lar arasında lisanslama modelleri hakkında daha fazla detay için node lisans rehberimize bakınız.

Corona'da Distributed Rendering Kurulumu

Corona'nın distributed rendering, bir kareyi birden fazla makineye böler; her biri bir tile render eder ve sonuçları compositing için submission makinesine döndürür. Kurulum gerekli:

1. Submission machine (birincil): Corona çalıştırır, işi gönderir ve tile sonuçlarını alır.

2. Farm worker'ları (ikincil): Corona'yı headless modunda çalıştırır, tile atamalarını alır ve render edilmiş tile'ları döndürür.

3. Ağ: Hızlı LAN gerekli (gigabit minimum, 10-gigabit tercih edilir). Corona tile'ları ağ üzerinde aktarır, bu nedenle latency ve bandwidth önemlidir.

4. Paylaşılan depolama: Dokular, cache dosyaları ve proje varlıkları tüm worker'lardan erişilebilir olmalıdır. Farm'ımızda tüm farm node'larında NFS aracılığıyla bağlı 10Gb NAS kullanıyoruz.

Yapılandırma adımları:

Corona → Render → Distributed Rendering Settings → Enable Distributed Mode → Configure Worker Machines (IP adresleri veya hostnames). Corona otomatik olarak tile bölümleme ve birincil makinede sonuç compositing işletir.

3ds Max veya Cinema 4D ile Corona kullanıyorsanız işlem benzer ancak Corona'nın standalone UI'ı yerine render settings dialog'unda yer alır.

Worker node gereksinimleri: Her worker, birincil ile aynı Corona sürümüne ihtiyaç duyar. Eşleşmemiş sürümler sessiz tile hatalarına neden olur. Sürüm tutarlılığını otomatik sağlama aracılığıyla koruruz — yeni worker node'ları başlatma sırasında merkezi bir depodan Corona alır.

Render Farm'ları için Corona Lisanslama

Corona Node Lisansları perpetual, çekirdek başına aboneliktir. Bir lisans render etmek için bir CPU çekirdeğini etkinleştirir. V-Ray'in node-license modelinin aksine (çekirdek sayısından bağımsız olarak makine başına bir lisans), Corona granüler.

Maliyet etkileri: 64 çekirdekli bir makine 64 Corona lisansı gerektirir — pahalı ama şeffaf. Ne kadarsa onu ödüyorsunuz. Farm'ımızın Corona lisanslama maliyetini kabaca $0.03–$0.05 per render core per month olarak hesapladık (Chaos render ortağı anlaşmamıza göre), bu da 1.000 çekirdekli farm'ları yüksek hacimli üretim için ekonomik kılıyor.

Lisans aktivasyonu: Corona lisansları sistem MAC adresi aracılığıyla node-locked'dir. Farm'ımızda MAC adreslerini lisans anahtarlarına eşleyen bir lisans veritabanı koruruz. Bir worker boot'a geldiğinde, başlatma sırasında lisansları otomatik olarak etkinleştirir — elastic bulut dağıtımları için kritiktir.

Floating ve node-locked: Corona floating lisansları desteklemez (V-Ray'in aksine). Her çekirdek kendi lisansını alır. Bu muhasebe kayıtlarını basitleştirir ancak dikkatli envanter yönetimi gerektirir. Render lisanslama modelleri karşılaştırması için Corona lisanslama karşılaştırması sayfasına bakınız.

Güncelleme yolları: Corona major sürümler arasında geriye doğru uyumluluğu korur (örneğin, 11 render'ları Corona 10 sahneleriyle çalışabilir). Ancak lisans anahtarları sürüm-locked'dir. Corona 10'dan Corona 11'e yükseltme, tüm çekirdekler için yeni lisans anahtarları gerektirir.

Farm'ımızda: İki lisans grubu tutarız — production rendering için birincil set, development ve testing için ikincil set. Bu production'ı experimentation'dan izole eder.

Sahne Hazırlanması ve Yaygın Farm Submission Hataları

Corona sahneleri farm'larda öngörülebilir nedenlerle başarısız olur. Pre-submission checklist'imiz bunların tümünü ele alır:

1. Doku yolları: Tüm dokuların absolute UNC yollarını (örneğin, \\farm-nas\project\textures\wood.exr) veya proje yapısı içinde relative yolları kullanmasını sağlayın. Corona, bazı render'lar gibi dokuları sahne dosyasına bake etmez, bu nedenle eksik yollar = render zamanında eksik dokular.

MaxScript'te otomatik bir "path checker" scripti oluşturduk ve submission'dan önce UNC olmayan doku yollarını raporlar. Bu, yaygın "missing texture" farm hataların yaklaşık %95'ini ortadan kaldırdı.

2. Proxy dosyalar: Corona, V-Ray proxy'leri (.vrmesh) güzel destekler, ancak proxy yolları absolute olmalıdır. Relative yolları (örneğin, .\proxies\building.vrmesh) submission'dan önce tam UNC yollarına dönüştürürüz.

3. HDR haritaları: Environment haritaları (.hdr dosyaları) farm worker'larından erişilebilir olmalıdır. Dokular ile aynı kural — absolute UNC yolları.

4. Plugin'ler ve uzantılar: Corona'nın plugin ekosistemi küçüktür. Sahnesi üçüncü taraf malzeme kullanıyorsa (örneğin, Substance Designer 3ds Max'ın içinde), bu plugin farm worker'larında bulunmalı veya malzeme sessiz olarak yüklenme başarısız olur, siyah render edilir.

5. Animated sahneler: Corona animasyon ve motion blur'ü verimli işler, ancak worker node'larında frame caching'i doğrulayın. Bazı kurulumlar frame'leri gereksiz olarak cache eder, NAS kullanımını şişirir.

6. Lisans bulunabilirliği: Corona lisans sayınızın talep ettiğiniz çekirdek sayısı ile eşleşip eşleşmediğini kontrol edin. 100 çekirdek için gönderilen ama sadece 50 lisansa sahip sahne, sessiz olarak %50 kapasitede render edilir — hata mesajı yoktur. Farm dashboard'umuza bunu önlemek için quota kontrolleri ekledik.

Yaygın Hataları Giderme

HataNedenÇözüm
Render siyah pixel veya tamamen siyah döndürürEksik plugin veya malzemeSahne'deki malzeme tanımlarını kontrol edin; farm'da plugin bulunabilirliğini doğrulayın
Tile'lar doğru compose olmazBirincil ve worker arasında sürüm uyuşmazlığıTüm worker'ları Corona sürümü ile eşleşecek şekilde güncelleyin
Render çok yavaş (~100x daha yavaş beklenen)Interactive modda distributed yerine renderDistributed Rendering Settings etkin ve worker'ları kayıtlı doğrulayın
Bazı tile'lar başarısız; diğerleri başarılıDoku alma network timeoutDokuları NFS aracılığıyla erişilebilir yerel NAS hacmine taşıyın; Corona settings'te network timeout'u artırın
Worker'da lisans aktivasyonu başarısızMAC adresi uyuşmazlığı veya lisans anahtarı süresi dolmuşLisans veritabanında MAC adresini doğrulayın; lisans süresi dolduysa yenileyin
Gürültü/artefaktlar tutarsız görünürWorker cache bozulmasıTüm worker'larda C:\ProgramData\Corona\Cache temizleyin; resubmit edin

Corona ve V-Ray Render Farm'larında: Her Birini Ne Zaman Kullanacağınız

Corona güçlü yönleri:

  • Massive sahne desteği (500M+ polygon, 10GB+ doku)
  • Tutarlı, temiz çıktı az artifact yönetimi ile
  • Mükemmel mimari ve ürün görselleştirme kalitesi
  • Yalnızca CPU tahmin edilebilir ölçekleme (daha fazla çekirdek = daha hızlı)

Farm'ımızda Corona kurma hakkında daha fazla detay için Corona render farm landing page'ımıza bakınız.

Corona zayıf yönleri:

  • Yalnızca CPU (GPU yolu yok), bu nedenle V-Ray GPU'dan çekirdek başına daha yavaş
  • Daha pahalı lisanslama (çekirdek başına, makine başına değil)
  • V-Ray'den daha küçük plugin ekosistemi

V-Ray güçlü yönleri:

  • GPU rendering (RTX kartlar) — karmaşık sahneler için hızlı
  • Distributed, network rendering iyi kurulmuş
  • Daha geniş ekosistem ve üçüncü taraf desteği

V-Ray zayıf yönleri:

  • GPU bellek sınırlamaları ~50–100GB doku bütçesine sahneler
  • GPU kaynak rekabeti — ağır sahne diğerlerini etkisiz kılar

Karar çerçevemiz:

  • Corona için: Archviz (>200M poly), ürün görselleştirme, büyük asset kütüphanesi ile studio işi
  • V-Ray için: Kısa turnaround, GPU mevcud, animation rendering (frame farm'ları)
  • Her ikisi: Yüksek hacimli mixed workload — Corona ve V-Ray pool'larına dağıtılmış

Distributed Corona Rendering için Optimizasyon Teknikleri

1. Tile boyutu ayarlaması: Corona kare'leri tile'lar halinde böler (varsayılan 32x32 pixel). Daha küçük tile'lar = daha ince taneli dağıtım ama daha fazla network overhead. Daha büyük tile'lar = daha az network roundtrip ama bir tile daha zor ise dengesiz yük. Tipik olarak 4K çıktısı için 64x64, 8K için 128x128 kullanırız.

2. Multi-pass rendering: Corona bir kareyi birden fazla pass'e bölme desteği (direct light, indirect, AO, vb), her birini bağımsız render. Single-pass rendering'den daha hızlıdır ve compositing esnekliği sağlar. Farm'ımız varsayılan olarak tüm Corona işlerini multi-pass render eder.

3. Bellek bant genişliği: Corona'nın CPU rendering'i CPU-bound değil memory-bound. Dual-socket makineler maxed-out RAM frequency (3200MHz+) ile standart RAM'den ~%20 daha hızlı render. Corona'ya ayrılmış donanımda yüksek frequency bellek belirtiriz.

4. Cache localizasyonu: Corona, CPU L3 cache'den faydalanır. Daha büyük cache'li makineler (E5-2699 v4 gibi 55MB L3 ile) %10–15 daha hızlı render. Corona kapasitesi sağlarken, clock speed'den clock speed'i öncelendirin.

5. Network optimizasyonu: 10Gb LAN, Corona farm'ları için yatırım yapılmaya değerdir. Gigabit LAN'lar 20 eşzamanlı Corona render'ı üzerinde bottleneck olurlar. Bunu belgelendirdik; 10Gb infrastructure'a sahip farm'lar %25–30 daha hızlı tile transfer görür.

6. Sahne preprocessing: Farm submission'dan önce, Corona'nın built-in "Preprocess for distributed rendering" kullan, bu geometry, materials ve dokuları local cache'ler. Bu fiili rendering sırasında network trafiğini azaltır.

Ölçekte Deployment: Farm'ımızın Mimarisi

Corona kurulumumuz 12 dual-socket Xeon makinesine yayılır (528 toplam çekirdek, ~480 overhead'den sonra kullanılabilir). Bu yapılandırma:

  • Sahne karmaşıklığına bağlı olarak 100–200 eşzamanlı Corona işini işler
  • Tipik archviz 4K + ağır GI 3–5 dakikalık frame'leri 20–30 dakikada render eder
  • Güç, bakım ve lisanslama maliyetleri ~$6–8K/ay
  • Aylık ~$15–20K gelir oluşturur, donanım dağıtımından itibaren 18 ayda %250 ROI

On-premise Corona farm'ları düşünen stüdyolar için, bu ölçek breakeven noktasıdır. 300 çekirdek altında, bulut rendering (AWS, Google Cloud) daha uygun maliyetli. 500 çekirdek üzerinde, on-premise daha iyi ölçekler.

Super Renders Farm bir bulut render farm ve resmi Chaos render ortağıdır.

FAQ

Corona'yı aynı sahne'de V-Ray ile kullanabilir miyim?

V: Hayır. Sahne bir motorla render eder. Ancak, iki pass render edebilirsiniz (Corona, V-Ray) ve post-production'da composite. Karmaşıklık nedeniyle bunu önermiyoruz, ancak teknik olarak mümkün.

Corona nested distributed rendering'i (farm → sub-farm) destekler mi?

V: Hayır. Corona'nın distributed modunda birincil makine ve flat network'te worker makineleri beklenir. Nested delegation desteklenmez. Karmaşık sahneler, farm'ları federate etme yerine tek bir farm'ı ölçekleme ile işlenir.

Distributed rendering için tipik overhead nedir?

V: Network ve tile composition overhead'i %5–15 arası, tile boyutu ve network latency'e bağlı. Tek makine render'dan 1 dakika, 8 makineye dağıtılan %65–75 saniye alabilir (1 dakika ÷ 8 makine = 7,5 saniye, artı %5–15 overhead). Ölçekleme %50 makinelerin üzerinde composition overhead'i nedeniyle kötüleşir.

Corona'yı internet üzerinden remote farm'lara render edebilir miyim?

V: Teknik olarak evet, ancak network latency bunu pratik yapmaz. 100ms latency → tile transfer'da görünür gecikmeler. Local gigabit LAN'ları öneririz. Remote rendering için, bulut hizmetleri (Chaos Cloud, AWS, Google Cloud) optimize edilmiş networking kullanın.

Corona'nın lisansı internet connectivity gerektiriyor mu?

V: Hayır. Corona lisansları sistem MAC adresi aracılığıyla node-locked. Bir kez etkinleştirildikten sonra offline çalışırlar. Bu internet erişimi olmayan güvenlikli stüdyolar için ideal. Lisans anahtarları perpetual — hiç abonelik yenileme yok.

Corona worker crash olursa mid-tile'da rendering'i resume edebilir mi?

V: Hayır. Distributed rendering, herhangi bir worker başarısız olursa tüm işi yeniden başlatır. Bu robust donanım ve network monitoring'in kritik olmasının nedenidir. Crash mid-render, compute süresini boşa harcayan bir worker. 99.%5 worker bulunabilirliği proaktif donanım monitoring ve thermal management ile koruruz.

Farm'da Corona sahne iterasyonlarını nasıl işlemem gerekir?

V: Versioning kullanın. Her iterasyon ayrı dosya (scene_v01.max, scene_v02.max). Farm submission'lar dosya sürümlerine bağlıdır, belirli iterasyonları track ve re-render etmeyi sağlar. İş ID'lerini sahne sürümlerine eşleyen bir dosya veritabanı koruruz.

Corona'nın çıktısı format downstream compositing için esnek midir?

V: Evet. Corona, arbitrary pass'ler (direct, indirect, specular, diffuse, shadows, vb) ile OpenEXR'e render edebilir, tam compositing esnekliği sağlayan. Multi-pass OpenEXR varsayılan render eder, post-production'ın re-render olmadan lighting, materials ve effects'i ayarlama etkinleştirir.

Corona en büyük sahne boyutu nedir?

V: Teorik olarak unlimited, yalnızca mevcut RAM sınırlanmış. 3GB sahne dosyaları (1B+ polygon, 50GB doku kütüphanesi) 256GB RAM makinesinde hiçbir sorunu olmadan render ettik. Bunun üzerinde, sahneyi split ve post-production'da composite ederiz.

Corona motion blur ve depth of field'i farm'larda nasıl işler?

V: Her ikisi sampling sırasında hesaplanır — ayrı post-processing yoktur. Motion blur extra ray cast nedeniyle biraz daha yavaştır, ancak depth of field minimal overhead'i var. Her ikisi farm'larda yerel makine olarak aynı şekilde çalışır.