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
تست قابلیت Caustic آب در شیدر
مجموعه دوره های آموزش تخصصی NPR در UnityChan با FProSensei

توضیح یکی از پارامتر های شیدر آب یعنی کاستیک و کاربرد آن
🔥2
FPro Sensei
مجموعه دوره های آموزش تخصصی NPR در UnityChan با FProSensei توضیح یکی از پارامتر های شیدر آب یعنی کاستیک و کاربرد آن
دقیقا درست فهمدید من در حال کار روی سیستم Caustic روی اب و کاراکتر هستم تا زیر آب دریافت کنه بشدت روی جاه طلبانه بودن شیدر متمرکزم 😉
🔥4
FPro Sensei
مجموعه دوره های آموزش تخصصی NPR در UnityChan با FProSensei توضیح یکی از پارامتر های شیدر آب یعنی کاستیک و کاربرد آن
تست قابلیت دریافت caustic کاراکتر با این امکانات که میشه تعیین کرد کدام بخش از بدن کاستیک دریافت کنه یا نکنه و اینکه سایز کاستیک روی کاراکتر چقدر باشه 💧

AniToon Water System 🌊
👌1
در شیدر AniToon یک قابلیت خاص در نظر گرفته شده و این هست که میتوان کاری کرد سیستم کاستیک اب بصورت طبیعی تر دریافت بشه یعنی هنگام دریافت به منطق cast shadow احترام گذاشته و در سایه ها هیچ کاستیکی دیده نمیشه
FPro Sensei
Photo
دوست دارم دوستان هم یاد بگیرن پس آموزش های مهمی در اختیارشون میزارم یکی از این نکات برای تستکچر پروجکتشن استفاده از روش خاصی به نام Triplanar هست که برای حل مشکل کشیدگی هست :
FPro Sensei
دوست دارم دوستان هم یاد بگیرن پس آموزش های مهمی در اختیارشون میزارم یکی از این نکات برای تستکچر پروجکتشن استفاده از روش خاصی به نام Triplanar هست که برای حل مشکل کشیدگی هست :
مجموعه دوره های آموزش تخصصی NPR در UnityChan با FProSensei

توضیح روش Triplanar Texturing و اهمیت شدید ان برای استفاده در انواع شیدر های مثل PBR و NPR
🔥2
FPro Sensei
مجموعه دوره های آموزش تخصصی NPR در UnityChan با FProSensei توضیح روش Triplanar Texturing و اهمیت شدید ان برای استفاده در انواع شیدر های مثل PBR و NPR
برای اثبات این ادعا روی کاراکتر خودم تست کردم و به شما تفاوت رو نشون خواهدم دادم وقتی که Gbuffer وارد محاسبه میشه چقدر تاثیر داره :
FPro Sensei
برای اثبات این ادعا روی کاراکتر خودم تست کردم و به شما تفاوت رو نشون خواهدم دادم وقتی که Gbuffer وارد محاسبه میشه چقدر تاثیر داره :
طبق علامت فلش از بالا تسکتچر پروجکتشن را دریافت میکنه ولی کشیدگی شدیدی داره چون فقط از جهت Z دارد محاسبه میکند
FPro Sensei
طبق علامت فلش از بالا تسکتچر پروجکتشن را دریافت میکنه ولی کشیدگی شدیدی داره چون فقط از جهت Z دارد محاسبه میکند
ولی وقتی که از تکنیک Triplaner استفاده میکنم داستان کاملا عوض میشود و کشیدگی تکستچر ها بشدت کاهش و به حداقل میرسد که به وسلیه GBuffer ممکن هست که از HD Buffer میتواند نرمال واقعی ابجکتی که در داخل محوطه دریافت تسکتچر هست را دریافت کنه
FPro Sensei
ولی وقتی که از تکنیک Triplaner استفاده میکنم داستان کاملا عوض میشود و کشیدگی تکستچر ها بشدت کاهش و به حداقل میرسد که به وسلیه GBuffer ممکن هست که از HD Buffer میتواند نرمال واقعی ابجکتی که در داخل محوطه دریافت تسکتچر هست را دریافت کنه
کد + نحوه استفاده در شیدر گراف بعنوان کاستوم فانکشن :

void TriplanarUV_float(
in float3 WorldPos,
in float3 WorldNormal,
in float Sharpness,
out float2 UV
)
{
float2 uvXZ = WorldPos.xz;
float2 uvXY = WorldPos.xy;
float2 uvYZ = WorldPos.zy;

float3 blend = pow(abs(WorldNormal), Sharpness);
blend = blend / (blend.x + blend.y + blend.z + 0.0001);

float2 lerpA = lerp(uvYZ, uvXZ, saturate(blend.y / max(blend.x + blend.y, 0.0001)));
float2 lerpB = lerp(lerpA, uvXY, saturate(blend.z));

UV = lerpB;
}
امیداورم که از این آموزش لذت برده باشید تا یک آموزش خوب دیگه بدرود 😊
FPro Sensei
کد + نحوه استفاده در شیدر گراف بعنوان کاستوم فانکشن : void TriplanarUV_float( in float3 WorldPos, in float3 WorldNormal, in float Sharpness, out float2 UV ) { float2 uvXZ = WorldPos.xz; float2 uvXY = WorldPos.xy; float2 uvYZ =…
یک نکته کوچیک که یادم رفت بگم این بود که با نوع پوزیشن بزارید absoluteWorld نه world چون اگر نزارید با حرکت دوربین اونم حرکت میکنه که درست نیست ❗️
نمونه تست افکت های زیر اب AniToon Water System 🌊
🔥2
FPro Sensei
نمونه تست افکت های زیر اب AniToon Water System 🌊
چه چیزی در شیدر بزرگ AniToon HDRP خواهد بود ؟

شیدر کامل کاراکتر 🥷

شیدر آب حرفه ای با قابلیت های ویژه 💧

شیدر درخت 🌳

شیدر مخصوص اسلحه 🔫

شیدر محیط تبدیل PBR به Anime Style 🎨

شیدر آب و هوا 🌤

شیدر چمن های استایل انیمه 🌿

شیدر های مخصوص VFX

همه اینا در شیدر فوق حرفه ای AniToon خواهد بود 🚀
🤩1
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 هم بهش اضافه میشه تا پیش از هر زمانی بهینه تر بشه