رندر سریع

چرا ردشیفت سریعتر از Vray هست؟

🔹 مقایسه Redshift و V-Ray:

  • Redshift یک GPU renderer هست → تمام توان کارت گرافیک رو می‌کشه بالا.
  • V-Ray بیشتر CPU-محوره (البته نسخه GPU هم داره، ولی اونقدری بهینه و پایدار مثل Redshift نیست).
  • نتیجه: معمولاً رندر Redshift می‌تونه بین ۵ تا ۱۰ برابر سریع‌تر از V-Ray باشه (بستگی به صحنه، کارت گرافیک و تنظیمات داره).

✅ جمع‌بندی:

  • Redshift از پایه برای سرعت بالا طراحی شده.
  • Proxies، Instances و GPU Optimization → همه دست به دست هم میدن تا رندر حتی تو صحنه‌های سنگین، راحت انجام بشه.
  • به همین خاطر الان خیلی از استودیوهای تبلیغاتی و معماری، از V-Ray مهاجرت کردن سمت Redshift یا Octane.


اهمیت استفاده از Proxies در رندر سریعتر

Proxy یعنی مدل‌های سنگین رو تبدیل به یه فایل سبک (کش) کنی و به جای هندسه واقعی، نمای ساده‌ش تو صحنه بمونه.

Redshift Proxy باعث میشه:

  1. حافظه GPU آزاد بمونه.
  2. سرعت Viewport بالاتر بره.
  3. رندر هم سبک‌تر و سریع‌تر بشه، مخصوصاً تو صحنه‌های پر از آبجکت تکراری (مثل جنگل، یا همین کنجدهای روی نون 🍔😂).

بهبود پروسه رندر

🎬 ۱. بهینه‌سازی در پروسه (قبل از رندر نهایی)

این بخش مربوط به موقعی هست که داری صحنه رو آماده می‌کنی:

  • Instances استفاده کن
    به‌جای اینکه صدها بار یک مدل تکراری (مثلاً برگ یا کنجد) رو وارد صحنه کنی، از Instance یا Particle Instancing استفاده کن → حافظه GPU خیلی کمتر مصرف میشه.
  • Texture Optimization
    • تکسچرها رو خیلی بزرگ نکن (۴K به بالا رو فقط وقتی لازمه استفاده کن).
    • از .tx یا mipmap استفاده کن تا Redshift توی حافظه فقط رزولوشن موردنیاز رو لود کنه.
  • Subdivision Adaptive
    به‌جای اینکه کل مدل رو Subdivide کنی، بذار Redshift فقط توی رندر و فقط همون‌جایی که لازم باشه، subdiv کنه.
  • Disable Unseen Objects
    آبجکت‌هایی که توی دوربین دیده نمیشن رو می‌تونی Render Stats غیرفعال کنی (Cast Shadows, Primary Visibility و …).

⚡ ۲. بهینه‌سازی در رندر نهایی

اینجا سرعت خیلی مهمه:

  • Unified Sampling
    • از Adaptive Sampling استفاده کن.
    • Max Samples رو کم نگه دار (مثلاً 256 یا 512 برای تبلیغات کافیه).
    • Noise Threshold رو منطقی بذار (0.01 یا 0.02 → سریع‌تر، 0.003 → خیلی تمیز ولی کندتر).
  • Ray Depth پایین‌تر
    توی تنظیمات Trace Depth (Reflection, Refraction, GI) اگه عدد رو خیلی بالا ببری رندر سنگین میشه. معمولاً:
    • Reflection: 3–4
    • Refraction: 3–4
    • Total: 6–8
  • Lights Optimization
    • فقط از Light های ضروری استفاده کن.
    • Shadow Samples رو پایین نگه دار و Noise رو با GI حل کن.
  • Bucket Size درست انتخاب کن
    • روی GPU معمولاً 256 یا 512 بهترین کارایی رو میده.
  • GI Caching
    برای صحنه‌هایی مثل معماری یا تبلیغات ثابت، از Irradiance Cache + Brute Force استفاده کن → سریع و تمیز.

🧰 ۳. ابزارها و تکنیک‌های خاص

  • AOVs جداگانه رندر بگیر
    به‌جای اینکه کل افکت‌ها رو تو رندر بگیری، بعضی چیزها رو (Glare, Bloom, DOF) تو After Effects یا Nuke اضافه کن → هم سریع‌تر، هم کنترل بیشتر.
  • Out-of-Core Rendering
    اگه کارت گرافیکت حافظه کم آورد، Redshift می‌تونه از RAM سیستم استفاده کنه. کندتره، ولی باعث میشه سیستم کرش نکنه.
  • Cache استفاده کن (Photon, Irradiance, Proxy)
    • هرجا امکانش هست، Cache کن تا فریم‌های بعدی سریع‌تر حساب شن.
    • مخصوصاً توی انیمیشن، خیلی سرعت میده.

✅ خلاصه:

  • مرحله آماده‌سازی → Proxy + Instances + Texture Optimization
  • مرحله رندر → Adaptive Sampling + Low Ray Depth + GI Caching
  • مرحله خروجی → AOVs + Compositing نرم‌افزاری

مولفه های Global Illumination

این سه‌تا چیزی که گفتی مربوط به Global Illumination (GI) توی Redshift هست. یعنی همون نور غیرمستقیم که بعد از برخورد نور با سطوح توی صحنه پخش میشه. بذار خیلی ساده و کاربردی توضیح بدم:


🔦 ۱. Brute Force

  • هر پرتو نور رو به صورت کاملاً فیزیکی و دقیق دنبال می‌کنه.
  • کیفیت خیلی بالاست (واقعی‌ترین GI).
  • ولی سنگین‌تر و کندتره چون برای هر پیکسل، نور رو شبیه‌سازی می‌کنه.
  • بیشتر توی صحنه‌های کوچک یا رندرهایی که نهایت دقت مهمه استفاده میشه (مثلاً تبلیغات محصول لوکس).

📌 کاربرد: وقتی کیفیت برات از سرعت مهم‌تره (فریم تکی، شات ثابت).


🌐 ۲. Irradiance Point Cloud (IPC)

  • این روش هوشمندانه‌تره: به جای محاسبه همه پرتوها، نقاط مهم رو می‌سازه و از اون‌ها برای تقریب نور استفاده می‌کنه.
  • خیلی سریع‌تر از Brute Force.
  • برای انیمیشن‌ها یا صحنه‌های معماری عالیه چون میشه Cache گرفت و همه فریم‌ها رو با یک GI ذخیره شده رندر کرد.

📌 کاربرد: وقتی باید سرعت بالا باشه و کمی approximation مشکلی نداره.


⚡ ۳. Irradiance Cache (IC)

  • شبیه IPC هست ولی به شکل Cache ذخیره میشه (یه جور “نقشه روشنایی”).
  • باز هم سرعت خیلی بالا، کیفیت خوب.
  • برای صحنه‌های بزرگ یا فریم‌های تکراری خیلی بهینه‌ست.

📌 کاربرد: تبلیغات معماری، محیط‌های داخلی، شات‌هایی که نور خیلی تغییر نمی‌کنه.


✅ جمع‌بندی کاربردی:

  • Brute Force → بهترین کیفیت، کندتر (برای شات‌های تبلیغاتی باکیفیت بالا).
  • Point Cloud / Irradiance Cache → سرعت بالا، مناسب انیمیشن یا صحنه‌های سنگین (معماری، محیط‌های بزرگ).
  • ترکیب رایج:
    • Primary GI: Brute Force
    • Secondary GI: Irradiance Cache یا Point Cloud
      → چون پرتوهای اولی مهم‌ترن و دقت بالا می‌خوان، بقیه‌شو میشه سریع‌تر Approximate کرد.

جمع آوری پروژه و ارسال به رندرفارم

🔹 ۱. تنظیم بازه فریم (Frame Range)

قبل از هر چیزی باید به مایا بگی از کجا تا کجا رندر بگیره:

  1. برو به Render Settings (Ctrl+Shift+R).
  2. توی تب Common:
    • Frame/Animation ext: بذار روی name.#.ext (تا شماره فریم‌ها بیاد).
    • Frame Range: Start Frame و End Frame رو مشخص کن (مثلاً 1 تا 120).
    • Image Format: مثلا PNG, EXR.
    • File Naming: یک پوشه مشخص برای خروجی تعریف کن.

🔹 ۲. جمع‌آوری تکسچرها و وابستگی‌ها (File > Archive Scene)

این مهم‌ترین مرحله‌ست.

  1. برو به منوی File > Archive Scene…
    • این گزینه همه‌ی تکسچرها، رفرنس‌ها، Proxies، HDRI و… رو جمع می‌کنه.
    • یک فایل زیپ‌شده (یا پوشه کامل) بهت میده که همه چیز توشه.
  2. این بسته رو می‌دی به رندرفارم → اون‌ها مطمئنن تکسچرت Missing نمیشه.

🔹 ۳. Redshift Settings ذخیره کن

  1. توی Render Settings → تب Redshift، همه تنظیماتت (Sampling, GI, Ray Depth, AOVs) رو چک کن.
  2. بعضی رندرفارم‌ها می‌خوان که preset جداگانه ذخیره کنی:
    • برو به پایین تب Redshift → Presets > Save Preset.
    • اینجوری اگه لازم شد سریع می‌تونی preset رو هم براشون بفرستی.

🔹 ۴. تست رندر لوکال (Low Res)

قبل از اینکه فایل رو بفرستی:

  • توی کامپیوتر خودت یک فریم رو با رزولوشن پایین (مثلاً 720p) تست کن.
  • مطمئن شو همه‌ی تکسچرها، نورها و تنظیمات درستن.
  • این کار جلوی کلی هزینه‌ی اضافه توی رندرفارم رو می‌گیره.

🔹 ۵. ارسال به رندرفارم

الان دو حالت داری:

  1. رندرفارم عمومی (مثل RebusFarm, GarageFarm)
    • اینا معمولاً یه پلاگین دارن (RebusDrop, GarageFarm App) → مستقیم توی مایا نصب میشه.
    • بعد از نصب → File > Send Job to Farm.
    • خودشون صحنه رو collect می‌کنن و می‌فرستن.
  2. استودیو یا رندرفارم لوکال
    • باید همون فایل Archive شده (زیپ) رو براشون بفرستی.
    • داخل پوشه حتماً:
      • فایل اصلی .ma یا .mb
      • فولدر sourceimages (تکسچرها)
      • پوشه cache (اگه Simulation یا Alembic داری)
      • پوشه proxy (Redshift Proxy)
    • و توضیح بدی:
      • Start: 1
      • End: 120
      • Resolution: FullHD/4K
      • Render Layer یا AOV موردنیاز

🔹 ۶. نکته‌های طلایی قبل از ارسال

  • Delete History و Optimize Scene بزن → فایل سبک‌تر و امن‌تر میشه.
  • Relative Paths استفاده کن (نه absolute C:/…) → Archive Scene خودش درست می‌کنه.
  • اگه از Redshift Proxy استفاده کردی، حتماً فولدرش رو همراه فایل بفرست.
  • همیشه یک ReadMe.txt بذار کنار فایل، توضیح بده:
    • چه فریم‌هایی (مثلاً 1–120)
    • چه ریزی (1080p یا 4K)
    • چه فرمت خروجی (PNG, EXR, TIFF)

✅ جمع‌بندی:

  • بازه فریم → Render Settings.
  • پکیج کامل → File > Archive Scene.
  • تست یک فریم → لوکال.
  • ارسال → یا با پلاگین رندرفارم، یا زیپ پوشه Archive.

فرق Proxy با Instance و Particle Instancing

🔹 ۱. Proxy (Redshift Proxy)

  • چی هست؟
    یک مدل سنگین رو به صورت یک فایل کش (مثلاً .rs) ذخیره می‌کنی. توی صحنه، به‌جاش فقط یک نمای ساده (bounding box یا low poly) می‌بینی.
  • فایده؟
    فایل اصلی سبک‌تر میشه، GPU رم کمتری مصرف می‌کنه، رندر سریع‌تر میشه.
  • کاربرد؟
    وقتی یک آبجکت سنگین (مثلاً یک درخت با میلیون‌ها پلی‌گان یا یک ماشین کامل) داری که می‌خوای بارها تو صحنه استفاده کنی.

🔹 ۲. Instance

  • چی هست؟
    به‌جای اینکه یک کپی واقعی از آبجکت بسازی (که رم و پلی‌گان رو دو برابر می‌کنه)، فقط یک Instance می‌سازی.
    یعنی همون هندسه‌ی اصلی رو همه‌ی Instanceها share می‌کنن.
  • فایده؟
    رم خیلی کمتر مصرف میشه چون فقط یک بار مدل تو حافظه لود میشه.
  • کاربرد؟
    وقتی می‌خوای همون آبجکت رو چند جا داشته باشی (مثلاً ۲۰ تا ماشین تو پارکینگ یا ۵۰۰ تا برگ روی زمین).

🔹 ۳. Particle Instancing

  • چی هست؟
    در واقع ترکیب سیستم ذرات (nParticles یا Mash یا XGen) با Instance. یعنی ذرات هرکدوم یک Instance از مدل تو باشن.
  • فایده؟
    می‌تونی هزاران بار آبجکت رو روی سطح یا توی فضا پخش کنی (هرکدوم با random rotation, scale).
  • کاربرد؟
    • پخش کنجد روی نون 🍔
    • پخش برگ روی زمین
    • دونه‌های برف یا بارون
    • جمعیت ساده

🔑 تفاوت‌ها به زبون ساده

  • Proxy = برای سبک‌کردن فایل اصلی و مدیریت مدل‌های سنگین.
  • Instance = برای تکرار مدل بدون مصرف اضافه رم.
  • Particle Instancing = برای پخش تصادفی/انبوه مدل‌ها (معمولاً همراه سیستم ذرات).

✅ ترکیب اینا بهترین نتیجه رو میده:

  • مدل سنگین → تبدیل به Proxy
  • چند بار استفاده همون Proxy → با Instance
  • پخش انبوه همون Proxy (مثلاً هزار تا) → با Particle Instancing

مثلاً برای همون همبرگر 🍔:

  • دونه کنجد → اول یه کنجد رو به Proxy ذخیره می‌کنی.
  • بعد با Particle Instancing روی سطح نون پخش می‌کنی.
  • همه‌شون Instance هستن → رم مصرف نمیشه.