دانلود پکیج مش بیکر mesh baker برای یونیتی_مبحث بهینه سازی بازی در یونیتی
gameover.blog.ir
این پکیج کارش اینه که مش هایی که می خوایم رو می تونیم انتخاب کنیم و با هم ادغام کنیم تا مثلثات بعضی از قسمت هاشون حذف بشه و حجم صحنه ی بازی شما کمی بهینه تر بشه تا روی اندروید و بعضی دستگاه های ضعیف دچار تیک و لگ نشه.
یکی از بهترین پلاگین ها تو کاهش Draw Call ها Draw Call Minimizer هستش که
این کار رو به صورت Realtime انجام میده یعنی موقع اجرای بازی این عمل
صورت می گیره. پلاگین دیگه ای هم تو این زمینه هستش به نام Mesh Baker.
برعکس Minimizer کار باهاش کمی سخته اما به راحتی آبجکت ها رو ترکیب و
Texture Atlas رو براتون به صورت مجزا و همیشگی آماده می کنه (نه به صورت
real time)
یه نکته رو فراموش نکنین. برای اثر بخشی Minimizer حتما باید تکسچر ها روی
Advanced تنظیم، تیک گزینه Read/Write Enabled فعال و خود آبجکت ها هم
static بشن. و الا عمل نمی کنه.
منبع: یونیتی تری دی
توضیحات راهنما(ترجمه توسط سجاد : @gameoverblog ):
Create a new Mesh Baker object in your scene
یک ابجکت مش بیکر می گه بساز
به ترتیب بذار بریم جلو ببینیم چی می گه
می گه اگه ابجکت ها از 64k vertices زیاد تر بود
یه Multi Mesh و Material Baker بده بهشون
GameObject -> Create Other -> Mesh Baker -> Mesh And Material Baker
بهترین هست در حال حاضر تقریبا
بعدش ابجکت ها رو برای comine اضافه می کنی
که نتیجه بهتری بده بهتره متریال ها و شیدرهاشون یکی باشه
بعدش روی Create Empty Assets For Combined Material کلیک می کنی
اینکار باعث ایجاد material assets برای متریال های کامباین شده میشه
و همچنین است MB2_TextureBakeResults رو ایجاد می کنه که شامل اطلاعاتی در باره مپ کردن متریال ها با UV rectangle ها در اتلس میشه(تکستچر های اتلس به تکستچرهای با ابعاد توان دو می گن)
سپس شیدر رو روی Combined Mesh Material انتخاب کن
Mesh Baker در این مرحله سعی می کنه که تنظیمات متریال رو روی اولین ابجکت در لیستی از ابجکت ها برای کامباین،داپلیکیت کنه یعنی کپی کنه.
Mesh Baker همچنین یک تکستچر اطلس رو برای هر خصوصیت تکستچر در این شیدر بیلد می کنه
(main, bump, specular etc)
هر یک از اپشن ها یا تنظیمات رو انجام میدیم و در نهایت روی ‘Bake Materials into a Combined Material’. کلیک می کنیم./
به warnings / errors یا خطاهای احتمالی در پنجره console هم دقت می کنیم
اگه تصمیمی نیاز باشه اتخاذ می کنیم
در inspector به combined material asset نگاه کنید
تا اتلس های ایجاد شده را به دقت ببینید.
ممکنه نیاز باشه non-texture properties رو در قسمت combined material shader(s) تنظیم کنید تا متریال های مبدا، مچ بشن
اگر مش ها در صحنه خوشه ای شدند
یا توی صحنه پراکنده شدن ، نیاز هست که MB3_ClusterGrouper رو برای گروه بندی مش های خود در مش های ترکیب شده چند تایی استفاده کنید
این کار باعث ایجاد چند کامپوننت MB3_MeshBaker می شه.
در کامپوننت MB3_MeshBaker روی ‘Bake’ کلیک کنید
این کار باعث ایجاد combined mesh یا مش ادغام شده و یک گیم ابجکت جدید می شود که از آن استفاده می کند.
combined mesh یک نمونه یا instance ( دقت کنید asset نیست) می باشد ، به طوری که نمی تواند به عنوان یک پریفب(prefab) مورد استفاده قرار بگیرد.
اگر بخواهید combined mesh رو به عنوان یک پریفب استفاده کنید این را انتخاب کنید:
"output" -> "bake into prefab"
یک پریفب با یک گیم ابجکت empty بسازید و درگ کنید روی متغیر resultPrefab در inspector.
در مرحله آخر(اختیاری) گزینه ی renderers رو در ابجکت های اولیه disable کنید(غیر فعال)
بعد از پایان، می توانید ابجکت Mesh Baker رو از صحنه بازیتون حذف کنید یا اونو برای re-baking یا بیک مجدد در اطراف بازیتون کنار بذارید
اگر هر چیزی توی بازیتون یا مدلهای اولیه یا تکستچر های بازیتون تغییر کرد فقط کافیه یک بار دیگه بیک bake کنید تا combined mesh(مش ادغام شده) و تکستچرهای اتلس (texture atlases) از نو ساخته بشه.
منبع:یادم نیست فکر کنم unity3d.ir بود اگه پیدا کردید بگید بذارم.