امیر محمد داودآبادی
امیر محمد داودآبادی
خواندن ۱ دقیقه·۶ سال پیش

گرفتن اسکرین شات از صفحه در یونیتی


⭕️ گرفتن اسکرین شات از صفحه در #یونیتی


[قابل استفاده در یونیتی 2017.3 به بعد]


? کلاسی در یونیتی برای ذخیره اسکرین شات به نام ScreenCapture وجود دارد. این کلاس می تواند اسکرین شات از صفحه را در دو حالت انجام دهد. 1- ذخیره اسکرین شات در یک فایل png

2- برگرداندن اسکرین شات به عنوان Texture2D


? برای ذخیرۀ اسکرین شات در یک فایل png می توان از دستور CaptureScreenshot از این #کلاس استفاده کرد. این دستور دو پارامتر دارد، پارامتر اول نام و مسیر ذخیرۀ فایل png است که اگر مسیر داده نشود، فایل در محل جاری (کنار فایل اجرایی بازی) ساخته خواهد شد و پارامتر دوم نیز میزان بزرگی اسکرین شات است که به طور پیش فرض برابر 1 است بدین معنی که اسکرین شات با اندازه اصلی صفحه ساخته شود. این پارامتر اختیاری است. دستور زیر یک اسکرین شات از صفحه را در فایل test.png خواهد ساخت./?


ScreenCapture.CaptureScreenshot("test.png");


? دستور CaptureScreenshotAsTexture نیز یک اسکرین شات از صفحه می گیرد اما آن را در یک فایل ذخیره نمی کند بلکه آن را به عنوان Texture2D بر می گرداند و شما می توانید از خروجی آن استفاده نمایید.


var texture = ScreenCapture.CaptureScreenshotAsTexture();


? دستور بالا در زبان #سی_شارپ باعث ساخته شدن یک متغیر از نوع Texture2D به نام texture شده که در آن اسکرین شات از صفحه قرار گرفته است و برنامه نویس می تواند در خطوط بعدی از آن استفاده نماید.


?این دستور نیز دارای پارامتر superSize سایز نیز برای تعیین اندازۀ #تکسچر است که عملکرد آن دقیقاً مشابه دستور CaptureScreenshot می باشد.



یونیتیunityسی شارپکد نویسیامیر محمد داودآبادی فراهانی
IT engineer and Game developer
شاید از این پست‌ها خوشتان بیاید