1. Tuyển Mod quản lý diễn đàn. Các thành viên xem chi tiết tại đây

RenderScript Kernel trong lập trình Android

Chủ đề trong 'Hỏi đáp Tin học' bởi nuongitq, 06/01/2016.

  1. 1 người đang xem box này (Thành viên: 0, Khách: 1)
  1. nuongitq

    nuongitq Thành viên quen thuộc

    Tham gia ngày:
    19/04/2015
    Bài viết:
    59
    Đã được thích:
    6
    Sự phát triển của framework này là dựa trên Native Development Kit(NDK) được cung cấp bởi android. RenderScript là vô cùng hữu ích cho ứng dụng với hình thức theo sau :

    - 3D Rendering

    - Image Processing

    - Computational Photography

    - Computer Vision

    1. Cách làm việc của RenderScript RenderScript framework

    là dựa trên sự phát triển của máy tính dữ liệu song song. Nó mô tả khối lương công việc ứng dụng của bạn trên tất cả hệ xử lý cần thiết trên thiết bị như multi-core CPUs hoặc CPUs. Điều này phân phối song song công việc giải phóng các chương trình từ sự cân bằng khối lượng công việc. Bạn có thể viết chi tiết các thuật toán trong ứng dụng của bạn mà không cần lo lắng về việc tính toán trong android. Để sử dụng RenderScript Framework, bạn cần làm 2 thứ sau:

    - RenderScript Kernel

    - RenderScript APIs



    2. RenderScript Kernel

    Một kernel là một chương trình được quản lý dữ liệu và quản lý khối lượng công việc trong central Processing Units. Một kernel là một phần nền móng của hệ thống xử lý. Đơn giản để chạy RenderScript framework chúng ta cần viết một mã lệnh tên là Kernel để quản lý tất cả dữ liệu yêu cầu từ ứng dụng của chúng ta và sử dụng những tính năng của android OS được cung cấp bởi NDK và như được đề cập sớm nhất rằng sự phát triển của RenderScript là hoàn toàn dựa trên Native Development Kernel of Android.

    Kernel Script được viết dựa trên ngôn ngữ C-99 standard của C-language. Chuẩn này là dựa trên sự phát triển của ngôn ngữ C++. RenderScript kernel script file thường được đặt là .rs . Mỗi file là được gọi như một script. RenderScript Kernel có thể bao gồm các phần tử sau:

    >> Khóa học lập trình android cơ bản nâng cao tại hà nội !

    STT Phần tử

    1 Language declaration

    2 package declaration

    3 Invokable functions

    4 Script Global Variables

    Theo sau Sample Code của một Kernel :

    Mã:
    uchar4 __convert__((kernel)) invert(uchar4 in, uint32_t x, uint32_t y) {[/COLOR][/FONT][/SIZE]
    
    [SIZE=3][FONT=Open Sans][COLOR=#222222]uchar4 out = in;[/COLOR][/FONT][/SIZE]
    
    [SIZE=3][FONT=Open Sans][COLOR=#222222]out.r = 255 - in.r;[/COLOR][/FONT][/SIZE]
    
    [SIZE=3][FONT=Open Sans][COLOR=#222222]out.g = 255 - in.g;[/COLOR][/FONT][/SIZE]
    
    [SIZE=3][FONT=Open Sans][COLOR=#222222]return out;[/COLOR][/FONT][/SIZE]
    
    [SIZE=3][FONT=Open Sans][COLOR=#222222]}
    3. RenderScript APIs


    Nếu bạn muốn sử dụng RenderScript trong API, bạn cần làm theo 2 cách sau:

    STT APIs

    1 android.renderscript API này có sẵn trên các thiết bị chạy Android 3.0 và cao hơn.

    2 android.support.v8.renderscript API này có sẵn trên các thiết bị chạy Android 2.2 và cao hơn.

    Để hỗ trợ thư viện android cung cấp công cụ yêu cầu sau: - Android SDK Tools version 22.2 - Android SDK Build-tools version 18.1.0 3. Cách sử dụng RenderScript Support Library (Thư viện hỗ trợ RenderScript) Đầu tiên mở tập tin project.properties trong dự án của bạn và thêm những dòng sau trong file:

    Mã:
    renderscript.target=18[/COLOR][/FONT][/SIZE]
    
    [SIZE=3][FONT=Open Sans][COLOR=#222222]renderscript.support.mode=true[/COLOR][/FONT][/SIZE]
    
    [SIZE=3][FONT=Open Sans][COLOR=#222222]sdk.buildtools=18.1.0
    Bây giờ mở lớp chính sử dụng RenderScript và thêm một truy xuất cho lớp Support Library như sau:


    Mã:
    import android.support.v8.renderscript.*;
    Với mục đích đề cập trên, chúng ta cần thêm một file project.properties

    STT thuộc tính Project properties

    1 renderscript.target Nó chỉ rõ phiên bản mã byte để được tạo ra.

    2 renderscript.support.mode Nó chỉ định một phiên bản tương thích cho các mã byte được tạo ra để rơi trở lại.

    3 sdk.buildtools Nó định các phiên bản của Android SDK xây dựng các công cụ để sử dụng.

    Bây giờ gọi hàm RenderScript Kernel và tính toán các thuật toán phức tạp của bạn.



    Trung tâm đào tạo học photoshop tại hà nội với đội ngũ giáo viên trẻ, nhiệt tình và học php cơ bản nâng cao tại VietPro!

Chia sẻ trang này