UnityChan(Channel)
561 subscribers
2.07K photos
86 videos
38 files
89 links
کانال آموزش و نکات UnityChan

مالک کانال : @FProSensei

حمایت مالی (دونیت) : https://daramet.com/FProSensei

گروه یونیتی https://t.me/UnityChan
Download Telegram
FPro Sensei
نمونه تست افکت های زیر اب AniToon Water System 🌊
This media is not supported in your browser
VIEW IN TELEGRAM
دارم برای یونیتی یک سیستمی شبیه به Dynamic Paint بلندر میسازم 🛠 اینو هم فرستادم بدونید چطوری باید افکت ripple آب رو بلندر بسازید 💧

🌊. توی یونیتی نقشه ساخت به این طریقه که ما با سی شارپ داده های اولیه رو میگیرن که متخصات کاراکتر کجاست 📍. بعد اگر حرکت کرد از اون اطلاعات اولیه پاس میدم شیدر و با استفاده از پارتیکل اون افکت را میسازیم 🎨
🔥3
FPro Sensei
دارم برای یونیتی یک سیستمی شبیه به Dynamic Paint بلندر میسازم 🛠 اینو هم فرستادم بدونید چطوری باید افکت ripple آب رو بلندر بسازید 💧 🌊. توی یونیتی نقشه ساخت به این طریقه که ما با سی شارپ داده های اولیه رو میگیرن که متخصات کاراکتر کجاست 📍. بعد اگر حرکت کرد از…
دوستان یکی از زیبای های یونیتی این هست که کاملا دست باز (fixable) هست یعنی اگر چیزی نیاز داری که این انجین در داخل وجود ندارد مثل مدلسازی کردن یا ریگ های حرفه ای IK - FK و ... هر چیزی که فکرشو میکنید رو میشه با کد نویسی واینا داخلش اورد و این واقعا جذابترش میکنه
🔥2
FPro Sensei
دوستان یکی از زیبای های یونیتی این هست که کاملا دست باز (fixable) هست یعنی اگر چیزی نیاز داری که این انجین در داخل وجود ندارد مثل مدلسازی کردن یا ریگ های حرفه ای IK - FK و ... هر چیزی که فکرشو میکنید رو میشه با کد نویسی واینا داخلش اورد و این واقعا جذابترش…
در مقابل بلندر متن بازه ولی دست باز نیست یعنی چی یعنی بلندر توی هیچ کدام از رندر های دسترسی به کد ها رو نمیده ملا بخوای مانند یونتی هر چی خواستی از api بکشی بیرون نداره بشدت محدوده مانند یونیتی هم نیست که بخوای کاستوم پس یا رندر فیچر بسازی و بعد تایین کنی از کجا injection بزنه پس بشدت محدود هست و از زبان قدیمی GLSL استفاده میکنه اگر بخواهید مثلا انجین خودتون داخلش بسازید بشدت سخته و باید با c/ c++ و چیزای مثل Cmake وا اینا کار کنید که واقعا نمی صرفه
FPro Sensei
در مقابل بلندر متن بازه ولی دست باز نیست یعنی چی یعنی بلندر توی هیچ کدام از رندر های دسترسی به کد ها رو نمیده ملا بخوای مانند یونتی هر چی خواستی از api بکشی بیرون نداره بشدت محدوده مانند یونیتی هم نیست که بخوای کاستوم پس یا رندر فیچر بسازی و بعد تایین کنی…
پس در نهایت یکی برگ برنده یونیتی در مقابل تمام انجین ها داشتن سیستم SRP هست یعنی با این من میتوانم رندر انجین خودم داشته باشم و بهش دستور بدم که کدام Buffer ها باید رندر بشه یا نه و بصورت کامل Render Pass ها رو مدیریت کنم تا بازی بهینه تر ساخته بشه و این یک مزیت فوق العاده هست بعنوان این سیستم DOTS و بزودی CORE CLR هم بهش اضافه میشه تا پیش از هر زمانی بهینه تر بشه
FPro Sensei
Buffer
از جمله نمونه از بافر ها توی یونیتی این هست که :

1. Color Buffer: این بافر شامل رنگ پیکسل‌ها است که در نهایت بر روی صفحه نمایش نشان داده می‌شود. هر پیکسل معمولاً شامل مقادیر RGBA (قرمز، سبز، آبی و آلفا) است.

2. Depth Buffer: این بافر عمق هر پیکسل را ذخیره می‌کند تا مشخص کند که کدام اشیاء در صحنه نزدیک‌تر به دوربین هستند. این اطلاعات برای انجام عملیات‌هایی مانند سایه‌زنی و تعیین اینکه کدام اشیاء باید قابل مشاهده باشند، ضروری است.

3. Stencil Buffer: این بافر برای انجام عملیات‌های خاصی مانند ماسک‌گذاری استفاده می‌شود. با استفاده از این بافر، می‌توان بخش‌هایی از تصویر را مخفی یا نمایان کرد.

4. Normal Buffer: این بافر اطلاعات نرمال‌های سطح اشیاء را ذخیره می‌کند که برای محاسبات نور و سایه‌ها در رندرینگ ضروری است.

5. Shadow Map: این بافر برای ذخیره‌سازی اطلاعات سایه‌ها از نورهای موجود در صحنه استفاده می‌شود. این اطلاعات برای تعیین اینکه کدام بخش‌ها از صحنه در سایه قرار دارند، کاربرد دارد.

6. Render Target: این بافرها برای ذخیره‌سازی نتایج رندرینگ یک مرحله خاص (مانند افکت‌های پس‌پردازش) استفاده می‌شوند.

7. Vertex Buffer: این بافر شامل داده‌های مربوط به ورودی‌های ورتکس‌ها (نقطه‌های هندسی) است، مانند موقعیت، رنگ و نرمال.

8. Index Buffer: این بافر برای ذخیره‌سازی ایندکس‌های ورتکس‌ها استفاده می‌شود و به تسریع فرآیند رندرینگ کمک می‌کند.

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

یکی از مهم ترین چیز هم در بازی و هم انیمیشن چه انیمه چه Pbr اصلا هر چی ساخت امواج Ripple برای زمانی هست که چیزی به نقطه اب برخورد کرد یک سری امواج ایجاد کند و این بخاطر قانون امواج مویینگی در فیزیک هست :
FPro Sensei
Photo
This media is not supported in your browser
VIEW IN TELEGRAM
یک مثال از امواج مویینگی در شیدر Anime
2
FPro Sensei
Photo
فرم اول مربوط به Ripple Center هست یعنی ما با استفاده از گرفتن فاصله پوزیشن + مقدار بردار دو بعد که ما میدم مشخص میشده بعد در یک عدد اعشاری ضرب میکنم تا تعداد ایجاد Ripple مخشص بشود و در اخر با استفاده از one Munis عدد را معکوس میکنم همان معادل invert در بلندر هست
FPro Sensei
Fraction چ
تابع ریاضی fraction (کسر) در زبان‌های برنامه‌نویسی و نرم‌افزارهای محاسباتی معمولاً به منظور تبدیل یک عدد اعشاری به یک کسر استفاده می‌شود.
اخرین فرم ما مربوط به محاسبات اصلی تر ripple هست یعنی اول دو فرم قبلی که ایجاد کردید را جمع میکنید بعد برای اینکه از حالت SDF بودن خارج کنیم ان را در معدل ریاضی TAU ضرب میکنیم بعد با استفاده از تابع Sine حالت Ripple را شبیه سازی مکنیم در مرحله اخر برای تایین میزان قدرت در یک عدد اعشاری ضرب و با Normal form Heghit نرمال را میسازیم
FPro Sensei
اگر دوست دارید تنها برای روی تسکتچر مورد علاقه مثل توی بازی های 2d ایجاد کنید همچین نود های ساده ای رو بسازید
اگرم دوست دارید تنها با یک مقدار رنگشو عوض کنیم و از ماسک alpha استفاده کنید یا نود ها را پیاده کنید
FPro Sensei
اگرم دوست دارید تنها با یک مقدار رنگشو عوض کنیم و از ماسک alpha استفاده کنید یا نود ها را پیاده کنید
This media is not supported in your browser
VIEW IN TELEGRAM
اگر بر روی سطح اب یا هر چیزی که فکر میکنید اجرا کنید همچین افکتی رو مشاهده خواهید کرد موفق باشد
This media is not supported in your browser
VIEW IN TELEGRAM
تست شیدر فول Procedural تولید RIPPLE آب استلایزد تر شده به سبک انیمه
شیدر Ripple آب PBR
FPro Sensei
Photo
شیدر Ripple آب NPR
This media is not supported in your browser
VIEW IN TELEGRAM
تست اولیه قابلیت Dynamic Paint بلندر بدون ADD روی یونیتی با دقت بسیار بالا (به عنوان مثال، می‌تواند با دقت اعشاری بالا، حتی انگشت‌های پای کاراکتر را تشخیص دهد 👣). در این مثال با نقطه ماوس تست شده و برای کم حجم شدن ویدیو فریم ریت بسیار پاین گذاشتم و گرنه 170 فریم میده 🖱
🔥2