مشخصات مقاله
-
1684
-
0.0
-
4455
-
0
-
0
آموزش RenderScript در اندروید
آموزش RenderScript در اندروید
در این فصل در مورد RenderScript اندروید مطلب خواهیم آموخت. معمولا برنامه های اندروید طوری طراحی شده اند که تا جایی که ممکن است منابع کمتری استفاده کنند. اما برخی برنامه ها مانند بازی های سه بعدی، پردازش هایی با سطح بالا نیاز دارند.
برای اجرای چنین برنامه هایی اندروید RenderScript را معرفی می کند، که چارچوب آن اندروید محور می باشد که برای اجرای برنامه هایی استفاده می شود که فعالیت های به شدت رایانگری (computational) را انجام می دهند. توسعه روی این چارچوب در Native Development Kit(NDK) انجام می شود که توسط اندروید ارائه شده است. RenderScrip به شدت برای برنامه هایی که فعالیت هایی مانند فعالیت های زیر را انجام می دهند، مفید می باشد
- اجرای سه بعدی
- پردازش تصویر (image)
- عکاسی کامپیوتری
- ویژن کامپیوتر
RenderScrip چگونه کار می کند
چارچوب RenderScrip اساسا بر پایه ی محاسبه ی داده ی هم راستا می باشد. RenderScrip میزان کار برنامه ی شما را روی همه ی پردازشگرهای موجود در دستگاه شما مانند CPU های چند هسته ای و یا GPU ها، پخش می کند. این پخش هم راستای میزان کار برنامه نویس را از نگرنی در مورد بارگذاری متعادل و زمان بندی کار رها می کند. شما می توانید الگوریتم های دقیق تر و پیچیده تری برای برنامه ی خود بنویسید، بدون نگرانی در مورد نیروی کامپیوتری.
RenderScripچگونگی آغاز
برای استفاده از چارچوب RenderScript باید دو مورد زیر داشته باشید/p>
A RenderScript Kernel
RenderScript APIs
A RenderScript Kernel
هسته ی مرکزی RenderScript برنامه ای می باشد که دستورالعمل های پردازش داده را مدیریت می کند و میزان کار روی Central Processing Units را سازماندهی می کند. هسته ی مرکزی (kernel) بخش اصلی سیستم عملیاتی می باشد.
مشابها برای اجرای چارچوب RenderScript به یک نسخه ی نوشته شده به نام Kernel نیاز داریم تا پردازش داده ها و درخواست ها ازبرنامه ی را سازماندهی کند، و ویژگی های بیشتری از android OS را، که توسط SDK ارائه شده، به کار بگیرد و همانطور که قبلا ذکر شد، توسعه ی RenderScript در Native Development Kit از اندروید انجام می شود.
نسخه ی Kernel در استاندارد C-99 از زبان C نوشته شده است. این استاندارد قبل از توسعه ی C++ می باشد. فایل مربوط به نسخه ی kernel از RenderScript معمولا در فایل .rs جای می گیرد. هر فایل به عنوان یک نسخه فراخوانده می شود. نسخه ی Kernel از فایل RenderScript دارای عناصر زیر می باشد.
در زیر نمونه ای از کد مربوط به Kernel را می بینید.
uchar4 __convert__((kernel)) invert(uchar4 in, uint32_t x, uint32_t y) {
uchar4 out = in;
out.r = 255 - in.r;
out.g = 255 - in.g;
return out;
}
RenderScript APIs
اگر می خواهید از RenderScript در API های خود استفاده کنید، می توانید به دو روش زیر این کار را انجام دهید:
برای اینکه اندروید library را پشتیبانی کند ابزار زیر مورد نیاز می باشند.
- ابزار Android SDK ورژن 22.2
- ابزار Android SDK Build ورژن 18.1.0
چگونگی استفاده از RenderScript Support Library
ابتدا فایل project.properties در پروژه ی خود را باز کرده و خطوط زیر را به آن اضافه کنید.
renderscript.target=18
renderscript.support.mode=true
sdk.buildtools=18.1.0
حالا گروه اصل خود را که از RenderScrip استفاده می کند باز کرده و یک ایمپورت برای پشتیبانی گرو های Support Library به آن اضافه کنید، مانند زیر
import android.support.v8.renderscript.*;
در زیر اهداف ذکر شده در بالا را، مربوط به ویژگی هایی که در فایل project.properties اضافه می کنیم، مشاهده می کنید.
اکنون عملکردهای RenderScript Kernel خود را فراخوانده و الگوریتم های پیچیده ای را در برنامه ی خود محاسبه کنید.