>_ ᴄᴏᴅᴇ ᴛʜᴇʀᴀᴘʏ
Video
معمولا توی جلوههای ویژه ریلتایم (بازی) از پارتیکل ها استفاده میشه که معمولا کواد (quad) هستن و یه تکسچر روشون رندر میشه.
برای چیزایی مثل دود، ابر .... که والومتریک هستن (حجم دارن، سطح ندارن) نورپردازیی که روی کواد انجام بشه زیاد واقعی بنظر نمیرسه.
(چونکه کواد یه سطح صافه و معمولا هم بیلبورد میشه؛ یعنی میچرخه که به سمت دوربین باشه🤷♂)
یه تکنیکی که میتونه حس والیومتریک بودن رو ایجاد کنه اینه که دود یا... رو ۶ بار رندر میکنیم با نورپردازی از ۶ جهت مختلف (چپ، راست، بالا، پایین، عقب، جلو) بعد،
هر ۳ تا از این ۶ جهت رو توی rgb یه تکسچر پک میکنیم (این تکنینکو بهش Gray-Packing یا channel-packing میگن btw).
اینطوری دو تا تکسچر داریم که توی هر چنل تکسچر یکی از جهتها پک شده.
تکسچری که راست، بالا، عقب رو داره رو میگیم Positive و اون یکی تکسچر رو Negative بهش میگیم.
بعد توی شیدر این تکسچرا بِلِند میشن براساس جهت نور.
حالا شاید بپرسید که اگر بخایم این تکنیکو برای چیزی که رنگ داشته باشه (مثلا انفجار) استفاده کنیم، اون وقت چیکار کنیم؟
چون دو تا تکسچرمون (negative, positive) یکی هستن، فقط نورپردازیش فرق میکنه، یکی از تکسچر ها ترنسپرنسی رو توی چنل آلفا داشته باشه کافیه، و چنل آلفای تکسچر دومی خالی میمونه، که میتونیم توش یه مسک داشته باشیم که برای سمپل کردن یک گردینت (Gradient / LUT) استفاده کنیم برای اضافه کردن رنگ به تکسچر.
برای چیزایی مثل انفجار حتی میشه بجای گردینت از Backbody Radiation استفاده کرد، که براساس حرارت رنگ و نور رو محاسبه میکنه.
برای چیزایی مثل دود، ابر .... که والومتریک هستن (حجم دارن، سطح ندارن) نورپردازیی که روی کواد انجام بشه زیاد واقعی بنظر نمیرسه.
(چونکه کواد یه سطح صافه و معمولا هم بیلبورد میشه؛ یعنی میچرخه که به سمت دوربین باشه🤷♂)
یه تکنیکی که میتونه حس والیومتریک بودن رو ایجاد کنه اینه که دود یا... رو ۶ بار رندر میکنیم با نورپردازی از ۶ جهت مختلف (چپ، راست، بالا، پایین، عقب، جلو) بعد،
هر ۳ تا از این ۶ جهت رو توی rgb یه تکسچر پک میکنیم (این تکنینکو بهش Gray-Packing یا channel-packing میگن btw).
اینطوری دو تا تکسچر داریم که توی هر چنل تکسچر یکی از جهتها پک شده.
تکسچری که راست، بالا، عقب رو داره رو میگیم Positive و اون یکی تکسچر رو Negative بهش میگیم.
بعد توی شیدر این تکسچرا بِلِند میشن براساس جهت نور.
حالا شاید بپرسید که اگر بخایم این تکنیکو برای چیزی که رنگ داشته باشه (مثلا انفجار) استفاده کنیم، اون وقت چیکار کنیم؟
چون دو تا تکسچرمون (negative, positive) یکی هستن، فقط نورپردازیش فرق میکنه، یکی از تکسچر ها ترنسپرنسی رو توی چنل آلفا داشته باشه کافیه، و چنل آلفای تکسچر دومی خالی میمونه، که میتونیم توش یه مسک داشته باشیم که برای سمپل کردن یک گردینت (Gradient / LUT) استفاده کنیم برای اضافه کردن رنگ به تکسچر.
برای چیزایی مثل انفجار حتی میشه بجای گردینت از Backbody Radiation استفاده کرد، که براساس حرارت رنگ و نور رو محاسبه میکنه.
This media is not supported in your browser
VIEW IN TELEGRAM
اینم خودم رندر کردم
This media is not supported in your browser
VIEW IN TELEGRAM
دلیل اصلی اینکه LOD باعث بهینه شدن میشه (علاوهبراینکه حجم مش کمتره و پهنای باند کمتری از ویدیومموری مصرف میکنه و تعداد ورتکسها کمتره و ورکتس شیدر کمتری اجرا میشه) اینه که جیپییو تراینگل ها رو وقتی رسترایز میکنه (تبدیل تراینگل های پروجکت شده به شیدینگ فرگمنت یا پیکسلهایی که قراره فرگمنت شیدر روشون اجرا بشه)، پیکسل به پیکسل پردازش نمیشه و معمولا ۴ تایی پیکسل ها پردازش میشن، به این چهار تا پیکسل که 2x2 هستن میگیم quad و اگر تراینگل ها خیلی روی صفحه کوچک باشند، پردازش جیپییو به شدت هدر میره (مثلا اگر هر تراینگل اندازه یک پیکسل باشه ۷۵% از پردازش کواد هدر رفته، بعد تراینگل بعدی که کنار این هست هم باعث میشه که همین کواد دوباره پردازش بشه و ...).
به این مشکل میگیم Quad Overdraw و اینجا میبینید که مشی که ۵ تا lod داره اصلا Overdraw نداره ولی همون مش بدون lod بهشدت Overdraw داره.
به این مشکل میگیم Quad Overdraw و اینجا میبینید که مشی که ۵ تا lod داره اصلا Overdraw نداره ولی همون مش بدون lod بهشدت Overdraw داره.
👍2⚡1❤1👏1
>_ ᴄᴏᴅᴇ ᴛʜᴇʀᴀᴘʏ
دلیل اصلی اینکه LOD باعث بهینه شدن میشه (علاوهبراینکه حجم مش کمتره و پهنای باند کمتری از ویدیومموری مصرف میکنه و تعداد ورتکسها کمتره و ورکتس شیدر کمتری اجرا میشه) اینه که جیپییو تراینگل ها رو وقتی رسترایز میکنه (تبدیل تراینگل های پروجکت شده به شیدینگ…
یه ویدیو درمورد همین ضبط و ادیت کردم بهزودی توی یوتوب میزارمش.
اینم به عنوان تیزر 🫴
اینم به عنوان تیزر 🫴
👏1
This media is not supported in your browser
VIEW IN TELEGRAM
pov: you suck at basic arithmetics🤦♂
فکر کردم 8x8 میشه 68 تا و تایملاین رو طوری رندر میخاستم کنم که 68 فریم بده و همونم حتی اشتباه حساب کردم و 67 تا رندر شد 🫠😂😂
شاید بپرسید چرا حتما فلیپبوک باید مربعی باشه (8x8) ؟
دلیلش اینه که تکسچر کمپرشن معمولا ۴ تایی پیکسلارو فشرده میکنه، اگر رزلوشن تکسچر مربعی باشه بهتر فشرده میشه (با آرتیفکتهای کمتری).
توی 1:50 میبینید که خیلی تکسچر کیفیتش کمه و تا وقتی که رزلوشن تکسچر کمپرشن رو روی 16k نمیزارم خوب دیده نمیشه جزئیات تکسچر.
فکر کردم 8x8 میشه 68 تا و تایملاین رو طوری رندر میخاستم کنم که 68 فریم بده و همونم حتی اشتباه حساب کردم و 67 تا رندر شد 🫠😂😂
شاید بپرسید چرا حتما فلیپبوک باید مربعی باشه (8x8) ؟
دلیلش اینه که تکسچر کمپرشن معمولا ۴ تایی پیکسلارو فشرده میکنه، اگر رزلوشن تکسچر مربعی باشه بهتر فشرده میشه (با آرتیفکتهای کمتری).
توی 1:50 میبینید که خیلی تکسچر کیفیتش کمه و تا وقتی که رزلوشن تکسچر کمپرشن رو روی 16k نمیزارم خوب دیده نمیشه جزئیات تکسچر.
❤1
>_ ᴄᴏᴅᴇ ᴛʜᴇʀᴀᴘʏ
معمولا توی جلوههای ویژه ریلتایم (بازی) از پارتیکل ها استفاده میشه که معمولا کواد (quad) هستن و یه تکسچر روشون رندر میشه. برای چیزایی مثل دود، ابر .... که والومتریک هستن (حجم دارن، سطح ندارن) نورپردازیی که روی کواد انجام بشه زیاد واقعی بنظر نمیرسه. (چونکه…
This media is not supported in your browser
VIEW IN TELEGRAM
هر 64 فریم تقریبا نیمساعت رندرش طول کشید.
در کل 3 ساعت.
نتیجه 5:12
در کل 3 ساعت.
نتیجه 5:12
This media is not supported in your browser
VIEW IN TELEGRAM
Debris w Z-Buffer Collision
>_ ᴄᴏᴅᴇ ᴛʜᴇʀᴀᴘʏ
یه ویدیو درمورد همین ضبط و ادیت کردم بهزودی توی یوتوب میزارمش. اینم به عنوان تیزر 🫴
YouTube
This is why LODs Work! explained in 100 seconds!
Level of Detail (LOD) is a technique where we do less processing for things that occupy less attention. This usually means the farther things get, the less detail they will have.
One common application of this technique is for 3D models. Apart from having…
One common application of this technique is for 3D models. Apart from having…
🔥1
Spritesheet + Normal Map
>_ ᴄᴏᴅᴇ ᴛʜᴇʀᴀᴘʏ
Video
توی بلندر دو تا نرمال رندر میکنیم یکی نسبت به دوربین یکی هم نرمال world space بعد اینا رو به هم دیگه اضافه میکنیم ( نرمال world سه تا جهت داره که دو تاشو باید به نرمال دوربین که دو جهت داره اضافه کنیم).
اسپرایت میتونه نورپردازی درست داشته باشه و حس سهبعدی بودن بده.
👍1