بررسی Corona Renderer و خصوصیات
آ
ن
ا معرفی نسخه جدید از موتور Corona و شرایط رایگان و آزاد استفاده از آن بر آن شدیم که این موتور را به صورت تخصصی و موشکافانه مورد بررسی قرار دهیم. Corona یک موتور رندرینگ رایگان ( چه برای مصارف شخصی و چه مصارف تجاری ) می باشد. این موتور که بر پایه الگوریتم های روز دنیا توسعه داده شده است بسیار سریع، ساده و کارآمد میباشد و با توجه به جوان بودن آن از طرفداران بسیار زیادی در دنیا برخوردار شده است. توجه داشته باشید که با توجه به آنکه از نظر کیفیت در سطح موتورهای تراز اول دنیا میباشد میتواند به سرعت در میان کاربران رواج پیدا کند. از آنجایی که این موتور به شدت شبیه Vray می باشد، میتوان آن را با این موتور محبوب مقایسه نمود. در یک کلام باید بگویم که Corona Render بشدت سریع، با کیفیت و آسان می باشد. کسانی که با موتور Vray کار کردهاند با نهایتاً یک هفته کار میتواند به کرونا مسلط شوند. تعداد پارامترهای این موتور آنقدر کم است که به
سادگی میتوانید کل پارامترهای آن را در یک روز مرور کرده و با آن آشنا شوید. در صورتی که مایل هستید که این موتور را بهتر بشناسید با ما در ادامه مطلب همراه باشید.
کرونا رندر یک موتور تمامعیار از نوع Biased و UnBiased رندر می باشد. در مورد این دو روش رندرینگ بارها در سایت صحبت کردهام و میتوانید با جستجو در سایت با این روشها بیشتر آشنا شوید. با توجه به ساختار رندرینگ این موتور، میتوان انتظار کیفیت بسیار بالایی را از آن داشت که دقیقاً این انتظار توسط Corona Renderer برآورده شده است. کیفیت رندرینگ نهایی واقعاً واقعگرایانه است و در صورتی که به آن مسلط شوید چیزی از Vray و امثال آن کم نخواهد آورد. با توجه به اینکه در این موتور از الگوریتم های توسعه یافتهای مانند
BDPT/VCM استفاده شده است، نتیجه Render نهایی بسیار مطلوب و realistic خواهد بود. در نتیجه با اطمینان به شما میگویم که کرونا رندر به هیچ عنوان شما را نا امید نخواهد کرد. از همه مهمتر اینکه برای اجرای corona نیاز به سختافزار خاصی هم نخواهید داشت زیرا این موتور رندرینگ تنها از CPU برای محاسبات خود استفاده میکند.
توسعه دهندگان Corona Renderer معتقد هستند که استفاده از روش GPU Based Rendering مانند Octane render و Arion Render و Lux Render و … به دلیل اعمال هزینههای جانبی برای کاربران به منظور خرید کارت گرافیک مناسب، محدودیتهای رندرینگ در مبحث GPU Rendering و مشکلات و خطاهای این روش، مشکلات نویزها ، گرمای تولید شده توسط کارت گرافیک و … باعث شده است که Corona Renderer را بروی روی CPU Based توسعه دهند. از این رو شما میتوانید با هر سیستمی از این موتور استفاده نمایید. البته شاید به نظر خیلی از کاربران مخصوصاً کسانی که از Octane render استفاده میکنند این حرف کمی دور از منطق به نظر بیاید اما این دلایل باعث شده است که Corona Renderer فقط از CPU برای کار و پردازش تصویر استفاده نماید. البته در فروم این شرکت ذکر شده است که ممکن است نسخه GPU یا هر نسخه جدید تری از موتور Corona Renderer در آینده عرضه شود و
توسعه دهندگان این شرکت همیشه به دنبال راه کارهای بهتر و سریعتر خواهند بود.
از آنجایی که در موتورهای رندرینگ
CPU Based از تواناییهای پردازنده های جدید شرکت اینتل استفاده میکنند،
Corona Renderer هم از قابلیت هسته
Intel Embree در پردازش
Ray Tracing استفاده میکند. این قابلیت قبلاً توسط موتور
Vray در نسخه 2 به صورت آزمایشی و سپس در نسخه 3 به صورت اجرایی، معرفی شده بود و کاربرانی که از پردازنده های سری جدید
Intel استفاده میکردند، میتوانستند با استفاده از این قابلیت سرعت رندرینگ خود را در صحنههایی که با الگوریتم های
ray traced پردازش میشد بالا ببرند. البته توجه داشته باشید که استفاده از این روش در همه صحنهها سرعت را افزایش نمیدهد و در برخی شرایط ممکن است که سرعت رندر را بسیار کند تر کند. از این رو بهتر است که به راهنمای شرکت
Vray و
Corona مراجعه کرده و شرایط استفاده از این هسته پردازشی را بررسی نمایید. در صورتی که نمیدانید شرایط استفاده از این قابلیت را در صحنه خود دارید یا خیر؟، بهتر است که با یک تست رندر در اندازه کوچک آن را مورد آزمایش قرار دهید. استفاده از
Embree بسته به نوع صحنه شما ممکن است از 5 تا 35% باعث افزایش سرعت رندر شما شود.
Embree یک هسته پردازشی بهینه شده برای الگوریتم
Ray-Tracing می باشد. این هسته به منظور افزایش سرعت و کیفیت رندرینگ تصاویر توسط
CPU های شرکت Intel توسعه داده شده و در اختیار برنامه نویسان قرار گرفته است.
Corona Renderer نیز به منظور افزایش سرعت و کیفیت تصاویر رندرینگ خود به مانند
Vray از این هسته استفاده میکند.
پردازنده های اینتلی که دارای خصوصیات SSE , AVX, AVX2 میباشند میتوانند توابع Embree را در اختیار موتورهای رندرینگ قرار دهند. از این رو میتوانید از کمک پردازنده قدرتمند شرکت اینتل به نام Intel Phi در هر دو موتور Corona Renderer و Vray استفاده نمایید. تمامی سیستمهای شرکت مازستا این توابع را در اختیار کاربران قرار خواهند داد در نتیجه اگر از محصولات این شرکت استفاده میکنید میتوانید با خیالی آسوده از این توابع استفاده نمایید. صحبت در مورد Intel Embree را به یک مقاله کامل و جداگانه واگذار میکنم اما به منظور آشنایی بیشتر شما باید عرض کنم که این هسته پردازشی بسیاری از الگوریتم هایی را که در فرایند رندرینگ مورد استفاده قرار میگرند را آنالیز و پردازش میکند که از جمله آنها میتوان به الگوریتم های Cat-mull Clark Subdivision surface ، Vector Displacement و … اشاره کرد. اما چیزی که برای کاربران موتورهای رندرینگ بسیار با اهمیت است مبحث سرعت است. باید عرض کنم که Corona Renderer به صورت وحشتناکی سریعتر از Vray تصاویر را رندر میکند. کرونا حقیقتاً سریع و سبک اجرا میشود و شما از سرعت آن لذت خواهید برد. برای آشنایی شما با روش رندرینگ این موتور یک صحنه آماده به رندر در نرمافزار 3ds max در انتهای فایل قرار خواهم داد که میتوانید بعد از دانلود آن، در نرمافزار 3ds max ( از نسخه 2012 تا 2015 ) به بررسی آن بپردازید و رندر کنید. خوب اجازه دهید تا اینجای کار این موتور را با Vray مقایسه کنم. دلیل انتخاب موتور Vray برای مقایسه این است که بیشترین تعداد کاربر را در ایران به خود اختصاص داده است و دلیل اصلی آن متریال های آماده و مدلها و صحنههای آماده موجود برای این موتور میباشد.
اگر شما هم Vray را به این دلیل انتخاب کردهاید تا پایان مطلب با ما باشید تا برگ برنده Corona Renderer را برای شما رو کنم.
خوب Vray با قیمت 1000$ و صدها پارامتر و هزاران ترفند و تکنیک که برای یادگیری آنها نیاز به مرور کتابها و آموزشها و کلاسهای بسیاری میباشد در یک طرف و در طرف دیگر Corona Renderer به صورت کاملاً رایگان حتی برای مصارف تجاری، پارامترهای بسیار کم و ساده و عدم نیاز به استفاده از ترفند های پیچیده مانند Vray در طرف دیگر قرار دارد. کاملاً مشخص است که تا به اینجای کارVray هیچ حرفی برای گفتن نخواهد داشت. اما وجود صحنههای آماده و متریال و مدلهای بیشمار برای Vray هنوز برگ برنده آن محسوب می شود. Corona Renderer برای این موضوع نیز چارهای اندیشیده است. یک اسکریپت آماده و رایگان به نام advanced corona material converter که میتواند متریال های Vray را به Corona تغییر دهد. در نتیجه میتوانید صحنههای Vray خود را با یک اشاره به تبدیل نمایید. من این کار را بروی یکی از صحنههای arch model انجام دادم. و همانطور که در تصویر مشاهده میفرمایید به
سادگی اینکار انجام شد.
اگر در اوایل این مطلب دقت کرده باشید عرض کردم که موتور Corona Renderer بشدت شبیه Vray است. یکی از دلایل این است که به سادگی تمام متریالهای Vray به کرونا تبدیل میشود. اسکریپتی که معرفی شد متریال های StandardMaterial, VRayMtl, VRayBlendMtl, VRayLightMtl, VRay2SidedMtl, VRayCarPaintMtl, VrayOverrideMtl, VrayMtlWrapper, VRayFastSSS (basic), VRayFastSSS2 (basic), Arch___Design__mi, Car_Paint_Material__mi, fR_Advanced, fR_Architectural, Shellac, DoubleSided, TopBottom, Autodesk_Material, RaytraceMaterial (basic), Architectural (basic), fR_Metal (basic), fR_Glass (basic) را به متریاهای Corona Renderer تبدیل میکند. این اسکریپت رایگان بوده و میتوانید از سایت Corona Renderer آن را دانلود نمایید. ممکن است مانند تصویر زیر در برخی از صحنهها هم متریالی باشد که قابل پشتیبانی توسط این موتور نباشد. در اینجا میتوانید آنها را به صورت دستی تغییر دهید.
در مبحث رندرینگ این موتور در نهایت باید عرض کنم که این موتور هم مانند
Vray از روش
Distribute rendering استفاده کرده و میتوانید با استفاده از رندرباکس و دیگر سیستمها از روش رندرینگ تحت شبکه اقدام به رندر تصاویر تک فریم بسیار سنگین و انیمیشن نمایید. در مورد رندرینگ تحت شبکه میتوانید به مجموعه مقالات من در مورد « آشنایی با رندرینگ تحت شبکه» مراجعه نمایید. البته توجه داشته باشید که Corona Renderer بسیار ساده است و این موضوع را تا پایان مطلب به خوبی درک خواهید کرد. کرونا رندر به سادگی و به صورت خودکار شبکه شما را جستجو میکند و تمام سرورها و رندرباکس هایی را که قابل استفاده باشد شناسایی میکند. پس فقط کافی است که کرونا رندر را بروی رندرباکس ها و سیستمهای خودتان نصب کنید و به راحتی رندرینگ تحت شبکه بگیرید.
همچنین میتوانید از این موتور به صورت تعاملی رندر تهیه نمایید.
Corona Renderer سه روش رندر را در اختیار شما قرار میدهد.
Bucket Rendering که همانند روش سنتی
Vray عمل میکند.
Progressive rendering که به صورت تدریجی
sample ها محاسبه شده و کیفیت رندرینگ بهبود می یابد. از محاسن این روش این است که میتوانید کلیات تصویر را به سرعت مشاهده نمایید. این روش مناسب تست رندر بوده و به تازگی در Vray 3.0 نیز این روش در اختیار کاربران قرار گرفته است. روش سوم نیز به نام
Bidir/VCM می باشد. این روش در حال توسعه میباشد و ممکن است در بسیاری شرایط از روش
Progressive کندتر عمل نماید. اما از این روش در رندرینگ و تست رندر صحنههایی استفاده خواهد شد که از پیچیدگی نورپردازی بسیار بالایی برخوردار هستند. مانند تصاویری که از بازگشت های نور و انکسار فوتون های نوری زیادی استفاده میکنند. از جمله این صحنهها میتوان به صحنههایی که دارای متریال های شیشهای و شفاف زیادی هستند اشاره کرد یا صحنههایی که در آنها از
caustic استفاده شده است.
در نتیجه
Corona Renderer قابلیت
interactive rendering را در اختیار شما قرار خواهد داد و شما میتوانید متریال ها و نورها را تغییر داده و در همان لحظه نتیجه را به صورت تعاملی رندر نمایید. یکی از مواردی که
Corona Renderer بشدت بر آن تکیه دارد این است که تست رندرها تا 99.9% به رندر نهایی شبیه هستند. در صورتی که در بسیاری از موارد مشاهده شده است که تست رندرهای Vray در رندرینگ interactive تفاوت زیادی با رندر نهایی دارد. این موضوع در
Vray RT بشدت حس میشود و در برخی از موارد اختلاف رنگ و نور به حدی زیاد است که عملاً تست رندر کاربردی نخواهد داشت.
در رندرینگ تعاملی
Corona Renderer میتوانید بسیاری از افکت های تصویری مانند motion blur , DOF، scattering systems و Proxy ها را نیز رندر کرده و حتی از پلاگین های جانبی 3ds
max و
cinema 4D نیز استفاده نمایید.
Corona Renderer با بسیاری از پلاگین های این نرمافزارها به راحتی کار میکند. از جمله مهمترین آنها میتوان به
Forest Pack,
Rail Clone ,
Multi Scatter,
BerconMaps,
Color Correct,
MDO Suite,
VRAY HDRI,
Vray Physical Camera,
Groundwiz,
Vizpark و بسیاری دیگر اشاره کرد. بله تعجب نکنید شما میتوانید با
Vray Physical Camera در Corona Renderer کار کنید و رندر کنید. جالب اینجاست که یک اسکریپت به نام
Vray Proxy to corona Proxy وجود دارد که همانطور که از نامش پیداست پروکسی های وی ری را به پروکسی کرونا تبدیل میکند.
در مبحث متریال ها،
Corona Renderer واقعاً شما را شگفت زده خواهد کرد. یکی از بهترین نکات در این مورد این است که همان چیزی را که در پنجره ویرایشگر مواد (
Material Editor) مشاهده میکنید، در رندر هم مشاهده خواهید کرد. بر خلاف وی ری که متریال ها در پنجره متریال با خروجی نهایی بسیار متفاوت هستند،
Corona Renderer شما را از همه لحاظ راحت خواهد کرد. کافی است که یک متریال را تولید نمایید. مطمئن خواهید شد که همان چیزی را که در Material editor مشاهده میکنید در رندر نهایی توسط Corona Renderer بدست خواهید آورد. این بدان معناست که شما زمان بسیار زیادی را نسبت به vray در ساخت متریالها صرفه جویی خواهید کرد. دلیل این موضوع هم بسیار ساده است.
Corona Renderer از همان موتور رندری که در رندر نهایی استفاده میکند در Material editor نیز استفاده میکند. پس شما یک نتیجه را در هر دو پنجره مشاهده خواهید کرد. همچنین Corona Renderer از روش GGX microfacet model برای شبیه سازی واقعگرایانه بازتاب نور استفاده کرده است. در نتیجه انعکاس ها و بازتابهای سطوح براق مانند فلزات و متریالهای بازتابی بسیار واقع گریانه خواهد بود. از این روش برای رندرینگ بسیار زیبای طلا، کروم و … استفاده می شود.
در صورتی که نیاز به رندرینگ کاراکترها و متریال های SSS یا sub surface scattering دارید میتوانید از Corona Renderer نهایت استفاده را ببرید. SSS در Corona Renderer واقعاً سریع است. به شخصه وقتی این متریال را تست میکردم از سرعت آن تعجب کردم. شاید ساده بودن تنظیمات SSS از سرعت آن هم جذابتر باشد. البته این سادگی در تمام پارامترهای Corona Renderer به چشم میخورد. شما در مبحث رندرینگ میتوانید از Render Pass ها استفاده نمایید. همانطور که مشاهده میکنید انواع Render Layerها در اختیار شما بوده و فرایند Post Production را میتوانید به سادگی مدیریت نمایید.
در مبحث نور نیز کرونا رندر شاهکار است. سریع است ، راحت است و کاملاً بدون دردسر. برای Corona Renderer تفاوتی ندارد که منبع نوری شما Light Object است یا Light Material . شما میتوانید به راحتی از قابلیتهای Corona Renderer در زمینه نور پردازی مانند HDRI, IES Lighting , SUN Light, Sky Light و … استفاده نمایید. همچنین تمامی نورهای استاندارد 3ds max را پشتیبانی کرده و خود Corona Renderer نیز دو منبع نوری انحصاری در اختیار شما قرار می دهد. همچنین شما میتوانید هر مدلی را توسط متریال corona light به یک منبع نوری تبدیل کنید. همچنین شما کافی است هر texture ی را به environment نسبت دهید. Corona Renderer به صورت خودکار نور محیط را از آن تأمین کرده و صحنه را روشن میکند. این موتور به صورت کاملاً از HDRها و روش Image Based Lighting یا IBL پشتیبانی میکند.
رندر صحنه چه تک فریم باشد و چه انیمیشن بسیار ساده است. نیازی نیست به درجه دکتری در Vray دست پیدا کنید تا بتوانید یک صحنه را بدون دردسر به صورت انیمیشن رندر کنید. تنظیمات رندرینگ در Corona Renderer آنقدر ساده هستند که به راحتی کنترل صحنه را در دست خواهید گرفت. همچنین متریال بسیار پرطرفدار و کاربردی shadow catcher که امروزه در تمام موتورهای رندرینگ جدید به چشم میخورد در Corona Renderer در دسترس میباشد. این متریال شما را قادر میسازد که یک یا چند مدل سه بعدی را بروی یک تصویر پس زمینه رندر کنید و به راحتی سایه مدلها را بروی تصویر خروجی بدست آورید. در این صورت میتوانید خیلی راحت یک مدل سه بعدی را بروی یک تصویر واقعی ترکیب و رندر نمایید.
Corona Renderer نرمافزار 3ds max را به صورت کامل پشتیبانی میکند. همچنین این نرمافزار در حال توسعه برای
cinema 4D و
Maya و
Blender می باشد. در کلام آخر باید عرض کنم معتقد هستم که این موتور در آینده بشدت مورد استقبال قرار خواهد گرفت زیرا سه عنصر بسیار مهم را در اختیار کاربران قرار میدهد، سادگی، سرعت و کیفیت.