Bump, Displacement, Normal Map

یکی از عواملی که باعث میگردد ساخت یک متریال یا جنسیت مدل سه بعدی در زمان رندر طبیعی به نظر برسد ایجاد ناهمواری یا بافت بر روی سطح متریال یک موضوع است. چیزی که در زمان رندر باعث ایجاد ناهمواری یا بافت میگردد، استفاده از سه پارامتر Bump,Displacement,Normal Map است. اما تفاوت و شباهتهای هریک از اینها چیست و هر کدام در کجا کاربرد دارند؟

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

در روش دوم به جای ایجاد سطحهای خیلی زیاد در هنگام مدلسازی، مدل را با جزيیات کم ساخته و سپس بافت مورد نظر را در متریال اعمال نموده و سپس از موضوع رندر میگیریم. در این روش بافت فقط در زمان رندر محاسبه خواهد شد، البته اکنون با داشتن تکنولوژی های بالای کارتهای گرافیک این نوع بافتها نیز در صفحه نمایش (Viewport) نیز قابل رویت هستند.
در کل روش دوم، روش مقرون به صرفه تری نسبت به روش اول است و همچین به زمان کمتری در رندر و محاسبات داینامیکی نیاز دارد. اما روش دوم خود چند نوع دارد که در ادامه به توضیح روش دوم و تفاوتهای آنها می پردازیم.

برای ایجاد بافت در متریال یک موضوع در زمان رندر میتوان از یک تکسچر برای ایجاد بافت استفاده نمود. این تکسچرها بسته به نوع استفاده شان (Bump, Displacement, Normal Map ) انواع مختلفی خواهند داشت.
در این روش (ایجاد بافت در متریال) دو حالت وجود خواهد داشت. ۱- ایجاد بافت فقط بر روی متریال در زمان رندر ۲- ایجاد بافت برروی مدل در زمان رندر
در روش اول ما با ساخت یک تکسچر در متریال ناهمواری را بر روی سطح متریال ایجاد میکنیم و این ناهمواری فقط بر روی متریال اعمال شده و بر روی حجم موضوع هیچ تاثیری ندارد. این روش برای موضوعاتی استفاده می شود که از دوربین فاصله زیادی دارند و جزئیاتشان خیلی قابل توجه نیست. البته این روش در ساخت ‌Game کاربرد فراوانی دارد. برای انجام این کار ما از دو نوع تکسچر میتوانیم استفاده کنیم.

Bump

در این روش ما با استفاده از یک تکسچر سیاه و سفید محدوده فرورفته و برجسته یک متریال را تعیین میکنیم و در زمان رندر سطح فرورفته و برجسته بر روی متریال محاسبه خواهد شد و هیچ تاثیری بر روی حجم مدل ندارد. این روش اجرایی، زمان رندر را تا حد زیادی کاهش خواهد داد.

Normal Map

این روش هم مانند روش Bump کاملا دو بعدی بوده و فقط بر روی متریال اعمال می گردد و در زمان رندر ناهمواری را فقط بر روی متریال و توسط یک تکسچر ایجاد میکند و به حجم موضوع کاری نخواهد داشت. تفاوت این روش با روش Bump در این است که در Normal Map به جای استفاده از یک تکسچر سیاه و سفید ، از تکسچر RGB یا رنگی استفاده می شود و در این روش میتوان با کنترل جهت نورپردازی، جهت بافت ایجاد شده را کنترل نمود که به مراتب بهتر از روش Bump است. زیرا زوایه نورپردازی نیز در این ایجاد جهت بافت نیز تاثیر گذار است.

Displacement

اما حالت دوم که بافت میتواند غیر از متریال بر حجم موضوع هم اثر گذار باشد، Displacement است. این حالت نه تنها ناهمواری بر روی متریال ایجاد میکند، بلکه بر روی حجم موضوع نیز اثر گذار خواهد بود. به مراتب این حالت ایجاد ناهمواری از دو روش دیگر دقیق تر و بهتر است ولی زمان رندر آن و محاسباتش از دو روش قبلی بیشتر به طول می انجامد؛ ولی باز هم از مدلسازی Highpoly بهتر و سریعتر خواهد بود. شباهت این نوع ناهمواری با Bump در این است که هر دو آنها از تکسچر سیاه و سفید برای ایجاد ناهمواری استفاده خواهد کرد. ولی در کل باید متذکر شوم که در هر سه نوع ایجاد بافت، ناهمواری ها در جهت Face Normal ها انجام می پذیرد.

پس تنظیم و کنترل Face Normal ها اهمیت به سزایی در پارامترهای متریال و رندر خواهد داشت در صورتی که نیاز به دانش Normalها دارید پیشنهاد میکنم مقاله Normal ها را مطالعه بفرمایید.

کروماکی چیست؟ پرده سبز یا آبی؟

یکی از دغدغه های تولید و در نهایت پس از تولید تکنیک کروماکی است و اینکه رنگ سبز بهتر است یا رنگ آبی؟

کروماکی چیست؟


در تصویر، ما دو عنصر اصلی تحت عنوان رنگ (Chrominance) و نور (Luminance) داریم که در نهایت با ترکیب این دو عنصر تصویر تشکیل میگردد. هر گاه ما بخواهیم رنگی را از تصویر حذف کنیم از تکینیک کروماکی استفاده میکنیم و اگر بخواهیم دامنه نوری رااز تصویر حذف کنیم از تکنیک لوماکی استفاده خواهیم کرد. پس به عبارتی تکنیک کروماکی، حذف یک طیف از رنگ در تصویر میباشد. اما چه رنگی برای کروماکی مناسب است و چرا از رنگهای سبز و آبی استفاده میگردد؟
از آنجایی که مقوله کروماکی یک پروسه تولیدی و در نهایت پس از تولیدی می باشد، پس فرآیند تولید و یا تصمیم گیری در زمان تولید، پروسه پس از تولید را میتواند راحتتر و یا سختتر نماید. تصمیم درست در زمان تولید کمک شایانی به کیفیت خروجی و راحتی انجام آن خواهد داشت. از مهمترین عواملی که برای انتخاب رنگ پرده کروماکی باید در نظر گرفت، رنگی است که کمترین تاثیر گذاری را بر روی رنگ پوست انسان و یا به عبارتی Skin Tone خواهد گذاشت.

طبق تصویر فوق رنگ پوست انسان میانه ای از رنگ های قرمز و سبز میباشد و بدین صورت رنگ آبی کمترین اثر گذاری رابر روی پوست انسان خواهد داشت. پس در نگاه اول بهترین رنگ پرده برای کروماکی رنگ آبی میباشد، زیرا کمترین مقدار در رنگ پوست انسان است و در حین کروماکی آسیبی به رنگ پوست انسان نمیزند.
در ضبط یک تصویر کروماکی می توان همه عناصر اععم از لباس، رنگ دکور و لوازم صحنه را عوض نمود ولی برای رنگ پوست انسان هیچ کاری نمیتوان انجام داد، به همین خاطر مهم ترین عامل تصمیم گیری برای انتخاب رنگ پرده کروماکی رنگی است که کمترین اثر گذاری را در پوست انسان دارد. پس به همین خاطر رنگ آبی برای کروماکی گزینه مناسبی است، اما چرا در بیشتر مواقع از رنگ سبز برای کروماکی استفاده میگردد؟
رنگ پرده کروماکی مقوله مهمی است ولی عامل مهمی که در انتخاب این رنگ تاثیر دارد، جدا از رنگ پوست انسان دوربین و فرمت تصویر بردای می باشد. زیرا نحوه و الگوی ذخیره سازی اطلاعات تصویر خیلی مهم و تاثیر گذار بر روی کرماکی در فرآیند پس از تولید می باشد.
اگر برای تصویر برداری از نگاتیو یا Reel استفاده شود تعاریف فوق برای انتخاب رنگ پرده (پرده آبی) کاملا صادق است اما در موارد ضبط دیجیتال تعاریف کمی متفاوت تر است. در سیستم ضبط دیجیتال نحوه الگوی تبدیل تصویر به مدیا یا فایل دیجیتال میزان اطلاعات دریافتی و ثبت شده را تعیین میکند و همین تعیین الگوی ثبت داده، کیفیت خروجی را تعیین نموده و بر روی کروماکی نیز تاثیر گذار است.
در سیستم ضبط دیجیتال ما دو الگوی ضبط RGB یا RAW و YCbCr را خواهیم داشت. در سیستم ضبط RGB یا همان RAW تصاویر به صورت کامل و ماننده نگاتیو ثبت می گردند ولی حجم فایل و دیتای خیلی زیادی را اشغال خواهند کرد. در این سیستم ضبط نیز مانند Reel یا نگاتیو بهترین رنگ پرده برای کروماکی رنگ آبی می باشد.
اما اگر از در سیستم رنگ YCbCr استفاده گردد، الگوهای مختلفی مانند 4:4:4 و 4:2:2 و 4:2:0 و 4:1:1 برای پایین آوردن و کم کردن حجم اطلاعات استفاده میگردد. در این سیستم رنگی و استفاده از کالر سمپلینگ های مختلف بیشترین خسارت به رنگ آبی وارد میگردد و بین رنگ های RGB کمترین خسارت به رنگ سبز وارد میشود، زیرا رنگ سبز بیشترین اطلاعات نوری را خواهد داشت.
برای درک بهتر سیستم رنگ YCbCr و مقوله کالر سمپلینگ پیشنهاد میکنم مقاله ای را که در این باره در سایت نوشته ام را مطالعه فرمایید.
در تصاویری که به صورت YCbCr و با Color Sampling ضبط میگردند به علت بالاترین میزان وجود رنگ سبز و کمترین خسارت وارده به رنگ سبز، بهترین رنگ پرده برای کروماکی رنگ سبز می باشد. پس اولین گزینه برای انتخاب رنگ پرده کروماکی، رنگ آبی برای نگاتیو یا فایلهای RAW و RGB میباشد و اگر از مدیا با کالر سمپلینگ و سیستم رنگی YCbCr استفاده شود بهترین رنگ پرده برای کروماکی رنگ سبز می باشد.
شناخت عوامل و عناصر هنگام تولید مثل کروماکی تاثیر به سزایی در پروسه پس از تولید خواهد داشت. پس یکی از عناصر مهمی که در انتخاب رنگ پرده کروماکی در حین تولید وجود دارد، انتخاب دوربین تصویربرداری و فرمت و تنظیمات دوربین می باشد.
در یک جمع بندی کلی در دوربین های دیجیتال می توان گفت، فرمت RAW یا RGB و حتی 4:4:4 برای کروماکی با پرده آبی و Color Sampling های پایین تر از 4:4:4 برای کروماکی با پرده سبز مناسب هستند.
حال اگر بخواهیم یک نگاهی به دوربین های بیاندازیم، باید گفت که در دوربین های RED, Arri Alexa, Black Magic Desin که قادر هستند هم با فرمت RGB و هم با کالر سمپلینگ تصویر برداری کنند، بسته به تنظیمات دوربین رنگ پرده کروماکی تعیین می گردد اما در دوربین های DLSR مثل Sony, Canon, Nikon که فقط با سیستم رنگی YCbCr تصویر برداری میکنند بهترین رنگ پرده، رنگ سبز می باشد.

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

یکی از دغدغه ها و چالشهایی که بین متخصصین سه بعدی و یا افرادی که می خواهند با نرم‌افزارهای سه بعدی کار کنند وجود دارد، این است که کدام نرم افزار سه بعدی بهتر است.
در این مطلب نرم افزارهای Maya, 3D Max, Houdini, Cinema 4D را مورد بررسی قرار داده و در مورد کاربرد هر کدام توضیح مختصری خواهم داد.

نرم افزار 3d Max

نرم افزار 3D Max یکی از قدیمی ترین نرم افزارهای سه بعدی میباشد؛ مکس جزء نرم افزارهای جنرال بوده و همه مراحل سه بعدی اعم از مدلسازی، تکسچرینگ و لایتینگ، انیمیشن، داینامیک و رندرینگ را پشتیبانی میکند. اما به واسطه ارتباط خوبی که با سری محصولات اتودسک از جمله اتوکد داشته، بیشتر در زمینه معماری مورد استفاده قرار گرفته است. البته ارائه موتور رندر V-Ray برای مکس و وجود متریال و مدلهای آماده معماری با ساختار V-Ray برای نرم افزار مکس به این انتخاب دامن زده است.
نرم افزار مکس در زمینه جلوه های بصری کمترین استفاده را دارد، این امر به خاطر ناتوان بودن این نرم افزار در این زمینه نیست بلکه به خاطر سازگار نبودن Core اصلی این نرم افزار با Mac و Linux بوده و این در شرایطی است که اکثر شرکتهای تولید جلوه های بصری از این سیستم عامل‌ها استفاده میکنند.

نرم افزار Maya

نرم افزار Maya یکی از قدیمی ترین نرم افزارهای سه بعدی میباشد که بعداً توسط کمپانی اتودسک خریداری شد؛ مایا جزء نرم افزارهای جنرال بوده و همه مراحل سه بعدی اعم از مدلسازی، تکسچرینگ و لایتینگ، انیمیشن، داینامیک و رندرینگ را پشتیبانی میکند. مایا در بین نرم افزارهای سه بعدی بیشترین کاربرد را در جلوه‌های بصری و انیمیشن‌های بلند سه بعدی دارد. مایا برای انجام پروژه های بزرگ مدیریت پروژه خوبی دارد و به خاطر سازگاری با تمامی سیستم عامل‌ها در کمپانی‌های تولید انیمیشن و جلوه های بصری بیشترین استفاده را داشته و کمپانی‌ها جهت ظتولید سریع تر برای این نرم افزار، پلاگین ها و ابزارهای شخصی (in house) تولید کرده اند. امروزه شاید بتوان گفت که سایر نرم افزارها نیز به این قدرت رسیده باشند ولی تغییر این نرم افزار برایشان به خاطر همین ابزارها هزینه زیادی خواهد داشت.
البته نرم افزار مایا از نسخه ۲۰۱۶ ابزارهای موشن گرافیک (Mash) را اضافه نموده است ولی همچنان نرم افزار Cinema 4D بهترین نرم افزار برای موشن گرافیک میباشد.

نرم افزار Houdini

نرم افزار Houdini یکی دیگر از قدرتمندترین نرم‌افزارهای سه بعدی میباشد؛ هودینی هم جزء نرم افزارهای جنرال بوده و همه مراحل سه بعدی اعم از مدلسازی، تکسچرینگ و لایتینگ، انیمیشن، داینامیک و رندرینگ و حتی کامپوزیت را پشتیبانی میکند. هودینی به خاطر Node Base بودنش‌ در زمینه تولید افکت‌های سه بعدی ، داینامیک و جلوه‌های بصری بهترین ابزار میباشد اما به همین خاطر (Node Base) در زمینه مدلسازی گزینه مناسبی نمی باشد و معمولاً در کنار یک نرم افزار دیگر (Maya) در پروسه جلوه‌های بصری استفاده می شود. اما همین مساله در بسیاری مواقع مفید بوده و در مدلسازی گیم که می‌بایست مدلهای زیادی را با کمی تغییرات ایجاد نمود کاربردی میشود.

نرم افزار Cinema 4D

نرم افزار Cinema 4D یکی از بهترین نرم افزارهای سه بعدی در زمینه موشن گرافیک میباشد؛ سینما فوردی نیز جزء نرم افزارهای جنرال بوده و همه مراحل سه بعدی اعم از مدلسازی، تکسچرینگ و لایتینگ، انیمیشن، داینامیک و رندرینگ را پشتیبانی میکند. این نرم افزار جزء اولین نرم افزارهاییست که ابزارهای موشن گرافیک را در خود جای داده و به همین خاطر در این زمینه معروف و پرکاربرد شده است. سینما فوردی به واسطه پارامتریک بودن و داشتن ابزارهای موشن گرافیک در زمینه تیزرهای سه بعدی و موشن گرافیک جایگاه خوبی پیدا کرده است. شایان ذکر است وجود داینامیک لینک بین افتر افکت و سینما فوردی این اتفاق را پررنگ تر نموده است.