چگونه زمان رندر را کاهش دهیم؟

اغلب اوقات، پردازش یک تصویر سه بعدی که در انیمیشن به آن رندر می‌گویند ساعت‌ها و گاهی بیش از یک روز طول می‌کشد! شما می‌توانید شیک‌ترین صحنه‌های سه بعدی را داشته باشید اما رندرینگ آن ساعت‌ها طول خواهد کشید و در اگر روی یک برنامه فشرده کار کنید می‌تواند برایتان مشکل ساز شود اما خوشبختانه راه‌هایی برای کاهش زمان رندر و تنها با اعمال چند تنظیم ساده می‌تواند پروژه‌تان را بهینه کند البته این در صورتی است که بدانید چه نوع تنظیماتی را باید اعمال کنید تا زمان رندر خود را کاهش دهید. ما در این راهنما، چند راه کاربردی را جهت کاهش زمان‌ رندر، با حداقل افت کیفیت بیان می‌کنیم، پس تا ادامه این مقاله با ما همراه باشید.

رندر

از تکنیک Level of Details استفاده کنید

از آنجا که در یک صحنه سه بعدی، نیازی نیست که تمام جزئیات آن صحنه پردازش شود پس گاهی اوقات می‌توانید با چند تغییر ساده در اجسام را در صحنه، تا حدودی این زمان را کم و سرعت رندر را بالا ببرید. به زبان ساده اگر بگوییم، در زمانی که آبجکت‌های صحنه شما خیلی دور از فوکس دوربین باشد می‌توانید آن‌ها را بهینه و به عبارتی از lowpoly آنها استفاده کنید چرا که آبجکت‌های دور‌تر از دوربین نیازی به جزئیات ندارد.
این تکنیک می‌تواند زمان رندر شما را کاهش دهد و این ویژگی را Level of Details یا LOD می نامند. در واقع LOD جزئیات یک صحنه را با کاهش زیربخش‌ها و تعداد چند ضلعی‌ها به حداقل می‌رساند. به عنوان مثال، شما در حال کار بر روی خودرویی هستید که قرار است در محلی با فاصله از دوربین باشد. از آنجایی که لازم نیست به اجسام دور از دوربین، جزئیات بیشتری اضافه کنیم (مگر در صحنه‌های خاص) جواب می‌دهد و این تکنیک اغلب در ساخت بازی‌های سه‌بعدی استفاده می‌شود و اگر با نرم‌افزار مایا کار می‌کنید برای این مورد یک دستور مستقل در منوی EDIT وجود دارد.

رندر

Ray Tracing را غیرفعال کنید

Ray Tracing (رهگیری پرتو) یک تکنیک رندرینگ است که با آن می‌توان تصاویر نورپردازی شده فوق العاده واقع گرایانه‌ای ایجاد کرد. رهگیری نور اولین قدم برای خروجی واقع گرایانه است در واقع، این یک الگوریتم است که مسیر نور را ردیابی و سپس نحوه تعامل نور با اشیا موجود در صحنه را محاسبه می‌کند. تعداد دفعات محاسبه شده می‌تواند در زمان رندرینگ شما تاثیر بگذارد. برای درک آن اینگونه می‌گویم! وقتی یک نور در صحنه به یک جسم می‌خورد آن نور پس از برخورد با جسم، برگشت داده می‌شود دقیقا مانند دنیای واقعی، در دنیای واقعی این می‌تواند بی‌نهایت باشد اما در کامپیوتر باید با استفاده از پارامترهای آن، محدودیت ایجاد کرد چرا که نمی‌تواند بی‌نهایت باشد و باید در این رهگیری در جایی قطع شود هر چند مقدار این پارامتر بیشتر باشد نتیجه بهتری خواهید گرفت اما خاموش کردن این ویژگی هم توصیه نمی‌شود. بهتر است ارقام پایین برای آن در نظر گرفت.

مقاله مربوط به Ray Tracing را اینجا بخوانید

برای کاهش رندر به GPU Rendering سوئیچ کنید

دو نوع رندر مهم وجود دارد یکی بر پایه سی پی یو و دیگری بر پایه GPU یا کارت گرافیک. که حالت دوم جدیدترین روش رندر است اما شاید جالب باشد بدانید که بیشتر کاربران از سرعت رندر GPU در مقایسه با رندر CPU بی‌اطلاع هستند. پس اگر زمان رندر برایتان مهم است، این مورد مهم در کاهش زمان رندر شما معجزه خواهد کرد. یک رندر Graphics Processing Unit – GPU می‌تواند یک صحنه را فقط در چند ثانیه رندر کند در حالی که یک رندر CPU ممکن است چند دقیقه طول بکشد. رندر کارت گرافیک یا همان GPU تقریبا 12 برابر سریعتر از رندر CPU است. یکی از محبوب‌ترین رندرهای گرافیکی، Redshift است که می‌تواند چندین فریم را در عرض چند ثانیه رندر کند و در عین حال نتایج دقیق عکس را با بیشترین جزئیات ارائه دهد.

 

اگر می‌خواهید نحوه استفاده از Redshift را یاد بگیرید، آموزش Redshift ما را اینجا ببینید.

Ambient Occlusion را غیرفعال کنید

Ambient Occlusion یا انسداد محیط، بهترین تکنیک برای ایجاد سایه‌های نرم، زمانی که نور غیر مستقیم، بر روی یک صحنه تابیده می شود. هر چند این روش خوبی برای اضافه کردن کمی واقع گرایی به یک صحنه است و باعث می‌شود نتیجه نهایی حرفه‌ای به نظر برسد اما نکته اینجاست که اعمال Ambient Occlusion ساعت‌ها زمان می‌برد. اگر صحنه شما به سایه‌های غیر مستقیم نیاز ندارد، می‌توانید Ambient Occlusion را غیر فعال کنید تا زمان بیشتری صرفه جویی کنید. اگر با نرم‌افزار بلندر کار می‌کنید در این برنامه نیز می‌توانید به جای انسداد محیط، از پس (AO) استفاده کنید تا بدون افزایش به زمان رندر، به همان اثر دست یابید و اگر با نرم‌افزار مایا کار می‌کنید که این ویژگی به صورت پیش فرض غیر فعال است.

Ambient Occlusion
تصویر یک فریم دارای Ambient Occlusion

مقاله مربوط به Ambient Occlusion را اینجا بخوانید

هسته های CPU را بررسی کنید

تعداد هسته‌های CPU به نام called threads که در حین رندر استفاده می‌کنید می‌تواند زمان‌های رندر شما را کاهش داده یا تسریع کند. به عنوان مثال شما اگر از یک پردازنده 8 هسته ای استفاده می کنید باید تایین کنید که چند هسته را برای رندر اختصاص می دهید. اگر از موتور رندر CPU استفاده می‌کنید، هنگام تشخیص تعداد رشته‌ها، 2 گزینه وجود دارد: تشخیص خودکار و ثابت. اکثر رندرها به طور پیش‌فرض روی تشخیص خودکار تنظیم شده‌اند، اما باید بررسی کنید تا مطمئن شوید که تمام هسته‌های CPU برای کوتاه‌تر کردن زمان‌های رندر استفاده می‌شوند. همچنین می‌توانید رندر را روی Fixed تنظیم کنید، فقط اگر مطمئن نیستید که همه هسته‌های CPU شما به‌طور خودکار شناسایی نمی‌شوند، تعداد هسته‌هایی را که استفاده می‌کنید به صورت دستی وارد کنید.

مقاله مربوط به تفاوت رندر CPU و GPU را اینجا بخوانید

نور مناسب را انتخاب کنید

نوع نورهایی که شما در یک صحنه اعمال می‌کنید می‌تواند زمان رندرینگ شما را کند یا سرعت ببخشد. با اعمال چند تغییر کوچک در تنظیمات نورپردازی، می‌توانید بسیار سریع‌تر و بهینه‌تر پروژه را ندیریت کنید. به عنوان مثال، تعداد بازتاب نور در یک صحنه را در نظر بگیرید. بازتاب نور، روشنایی غیرمستقیمی است که از اشیا و دیوارها بازتاب می‌شود. هر چه تعداد بازتاب نور بیشتر باشد، یک صحنه واقعی‌تر به نظر می‌رسد. با این حال، افزایش تعداد بازتاب نور سرعت رندر شما را کاهش خواهد داد. حداکثر تعداد بازتاب نور به صورت پیش فرض روی ۸ تنظیم شده است که ممکن است برای اکثر صحنه‌ها بسیار بالا باشد. در موتورهای رندر تبی وجود دارد که می‌توانید تعداد پیش فرض بازتاب نور را به تنظیمات پایین (حداقل ۰ تا ۵) تغییر دهید تا سرعت رندرینگ افزایش یابد.

البته توجه داشته باشید که تنظیم میزان بازتاب نور می‌تواند باعث ایجاد نویز شود بنابراین سعی کنید تنظیمات مختلف را امتحان کنید و ببینید که چه تنظیماتی برای شما مناسب است. در حالت ایده آل، شما می‌خواهید بدون قربانی کردن زمان رندر زیاد، به نتایج واقع گرایانه دست پیدا کنید. همچنین می‌توانید با تنظیم میزان بازتاب نور برای انواع مختلف مسیر نور مانند براق، پخش و انتقال، نورپردازی خود را تنظیم کنید. استفاده از منابع نور بزرگ‌تر نیز می‌تواند در زمینه کاهش زمان رندرینگ شما شگفتی ساز شود. اگر از صفحات انتشار مانند چراغ‌های مش استفاده می‌کنید، سعی کنید اندازه توری را افزایش دهید. منابع نوری کوچک‌تر معمولا زمان رندرینگ را کاهش می‌دهند زیرا برنامه برای ردیابی پرتوه‌ای نوری که پس از بازتاب نور از اشیا به ساطع‌کننده باز می‌گردند، سخت‌تر کار می‌کند.

رندر مایا

Reduce را کاهش دهید

نمونه‌ها نویزهایی هستند که پس از رندر شدن صحنه شما ظاهر می‌شوند. از پنل رندر می‌توانید تعداد نمونه‌ها را تعریف کنید و موتور رندر پس از رسیدن به تعداد تعریف شده نمونه‌ها متوقف می‌شود. هرچه نمونه‌های بیشتری را تعریف کنید، تصویر واضح‌تر خواهد بود، با این حال، زیاده روی با نمونه‌ها، منجر به زمان رندر طولانی خواهد شد. داشتن نمونه‌های بیشتر یک ضرورت قطعی برای دستیابی به نتایج خیره‌کننده است اما گاهی اوقات کاهش نمونه‌ها بدون فدا کردن کیفیت صحنه منجر به نتایج عالی می‌شود. اگر بیش از حد دقیق نگاه نکنید، نویز عملا غیر محسوس خواهد بود. همچنین، بعید است مخاطبان شما متوجه این تفاوت شوند. اگر از نتیجه نهایی راضی نیستید، همیشه می‌توانید این رندر را در فتوشاپ قرار دهید تا از شر هرگونه نویز باقی مانده خلاص شوید.

Multiprocessing را فعال کنید

اگر از After Effects استفاده می‌کنید، این یکی برای شماست. این نرم‌افزار توانایی مدیریت چندین فریم را در یک حرکت با استفاده از چندین هسته پردازشی دارد. با این حال، گزینه ریزپردازش به طور پیش فرض در After Effects روشن نیست. شما باید این ویژگی را به صورت دستی فعال کنید. برای تنظیم تنظیمات، به Preferences Memory & Multiprocessing بروید، سپس تیک کادر را در کنار «Render Multiple Frames Simultaneously» علامت بزنید.

ویژگی‌ها و برنامه‌های استفاده نشده را غیرفعال کنید

زمانی که مشغول رندرینگ هستید به راحتی می‌توانید دیگر ویژگی‌های در حال اجرا در پس زمینه را غیر فعال کنید در واقع اگر می‌خواهید سرعت پردازش را بالا ببرید باید تمام ویژگی‌های بلا استفاده را غیر فعال کنید. از خودتان بپرسید که سعی دارید به چه ویژگی‌هایی دست پیدا کنید یا تعریف کنید که بدون آن‌ها چه کارهایی می‌توانید انجام دهید. مثلا بگویید لایه‌های شما نیازی به تاری حرکتی ندارند، فقط دکمه motion blur را غیر فعال کنید. اگر از یک دوربین سه بعدی استفاده می‌کنید، آیا لازم است که عمق میدان داشته باشید؟ با بستن تمام ویژگی‌ها و برنامه‌های دیگر در حال اجرا بر روی کامپیوتر، CPU شما می‌تواند فضای بیشتری برای رندرینگ داشته باشد، که قطعا در وقت شما صرفه جویی کرده و زمان رندرینگ را کاهش خواهد داد.

همه چیز را به گردن کامپیوتر نندازید

یکی از مهمترین مواردی که برای کاهش زمان رندر تاثیر گذار است بهینه کردن تنظیمات است ممکن است ارقام تنظیمات پیش فرض موتور رندر شما برای کامپیوترتان زیاد باشد که باید پروژه خود را بهینه کنید در اکثر موارد ما سعی می‌کنیم به جای اعمال تنظیمات، آن را گردن نرم‌افزار بیاندازیم در نتیجه اگر تنظیمات رندر را خوب درک کرده باشیم سعی می‌کنیم پروژه‌ای بهینه شده داشته باشیم ممکن است کمی برای ما دردسر ایجاد کند اما راه درست همین است.

از نرم افزارهای مناسب استفاده کنید

یکی از موارد تاثیر گذار در زمان رندر به جای اعمال برخی افکت‌های سه بعدی در نرم‌افزار میزبان می‌توان آن را به شکلی دیگر در نرم افزاری مثل افتر افکت انجام داد به عنوان مثال اعمال جلوه‌های دودی در نرم‌افزار مایا بسیار راحت است اما زمان رندر زیادی می‌خواهد در صورتی که می‌توان این جلوه‌ها را در نرم‌افزار افتر افکت یا نرم افزارهای کامپوزیت انجام داد پس این مورد مهم را نیز در نظر داشته باشید.

از رندر لایه ای استفاده کنید

رندر لایه‌ای را جایگزین رندر کلی کنید. رندر لیر یا رندر لایه‌ای، یکی از رایج‌ترین روش‌های رندر است و افراد حرفه‌ای هرگز یک صحنه را در یک فریم واحد خروجی نمی‌گیرند و آن را در PASS‌ ها و همچنین در لایه‌های چندتایی تعریف می‌کنند پس اگر تکنیک‌های مربوط به رندر لایه را یاد بگیرید می‌توانید تغییرات زیادی در زمان رندر استفاده کنید به عنوان مثال می‌توانید سایه‌ها را جدا رندر بگیرید و همچنین بازتاب‌های نور و بسیار دیگر از ویژگی‌ها که با یک آموزش درست آن را یاد می‌گیرید.

کلام آخر

مبحث رندر جز موارد پیچیده در انیمیشن است که آموزش آن بدون شرکت در دوره آموزشی امکان پذیر نیست برای اینکه موارد گفته شده در این مقاله و همچنین برای آموزش اصول و قوائد و تکنیک های رندرینگ دوره آموزش رندینگ پرشین انیمیشن را به شما پیشنهاد میکنم. شما با تهیه این دوره از تمام دردسرهای رندر خلاص خواهید شد.

دوره های آموزشی رندرینگ

نویسنده و گردآوری کننده: مجید پویافر
تمام مطالب سایت پرشین انیمیشن با زحمت، نوشته و ترجمه شده است در صورتی که قصد استفاده از این مطالب را دارید، لطفا پس از درج متن از سایت خود به سایت پرشین انیمیشن لینک دهید و در نتیجه استفاده از این مطالب جهت ترویج دانش انیمیشن بلا مانع است.

آموزش مقدماتی نرم افزار مایا (پیشنهاد ما)

اگر به انیمیشن سازی علاقه مند هستید و به دنبال یک منبع آموزش انیمیشن میگیردید پیشنهاد میکنم دوره آموزش نرم افزار مایا ارائه شده در پرشین انیمیشن را ببینید که می تواند اولین قدم برای شروع آموزش انیمیشن باشد

مقاله های مرتبط

امیدوارم که این مطلب برای شما مفید بوده باشد اگر این مقاله را دوست داشتید از شما درخواست میکنم آن را به اشتراک بگذارید.

دیدگاه خود را بنویسید

آدرس ایمیل شما منتشر نخواهد شد.