Cara Kerja GPU di OS Android
Saat GPU menerima raw data,serangkaian proses panjang dimulai dan diakhiri dengan memunculkan gambar di layar perangkat. Graphics Pipeline, yaitu channelling agar data dalam card sampai pada frame buffer, umumnya hampir sama pada semua graphics card yang ada saat ini. Seluruh proses tersebut diulang untuk setiap gambar (frame). Agar dapat menghasilkan gerakan yang cepat.
Setelah data dikirim ke GPU melalui interface, langkah pertama proses pipeline-nya adalah mempersiapkan kalkulasi (pre-calculation) dan mengubah data dengan menggunakan sebuah pre-processor (setup Engine atau Input Assembler). Pre-processor ini mendeteksi jenis data, apakah berkaitan dengan vector,gambar,dank ode program, dan mempersiapkan raw data sehingga dapat diproses oleh modul yang tepat. Disini, ditentukan apakah raw data diproses oleh sebuah Vertex Shader, Geometry Shader, Pixel Shader, atau sebuah texture unit.
Setiap objek 3D terdiri atas berbagai triangle. Vertex Shader (Vertices adalah titik-titik sudut sebuah polygon) disuplai dengan koordinat-koordinat ini. segitiga-segitiga ini kemudian membentuk sebuah dunia 3D berdasarkan koordinat tersebut yang diselaraskan, di-scaling, atau di-distorsi sesuai dengan arah pandangan mata. Area pandangan yang diasumsikan ini disebut sebagai frustum. Setelah scane tersebut terbentuk,dilakukan pemeriksaan apakah sebuah objek harus terlihat atau tidak, berada di area frustum, dan apakah seluruh atau sebagian ditutupi oleh objek-objek.
Elemen yang tidak terlihat akan disingkirkan dari scane untuk menghindari proses kalkulasi yang tidak diperlukan. Proses ini disebut Frustum Culling. Apabila ditemukan sebuah objek terlalu jauh untuk dapat terlihat atau terlalu dekat menghadap (membelakangi) penonton (secara teoritis), maka proses ekuivalennya disebut sebagai clipping.
Proses Vertex Shader yang terakhir adalah lighting. Disini, 3D scane akan diterangi oleh sumber cahaya ke dalam lingkungan (ruang) tersebut. Tanpa langkah ini, 3D scane terlihat gelap. Vertex Shader hanya dapat memanipulasi objek, namun tidak dapat menghasilkan elemen geometri baru, seperti titik, garis, dan segitiga.
Apabila gambar yang akan dilihat anda (viewer) sudah terbentuk dalam grid model dengan lighting source-nya,berarti prosesnya telah membuat sebuah foto dari scane tersebut dalam gambar 2D (dua dimensi) untuk ditampilkan di monitor. Proses ini dinamakan rastering atau rendering. Setiap titik sebuah objek 3D, yang selama ini hanya disimpan sebagai vector, akan diubah menjadi sebuah pixel. Langkah selanjutnya yang “menguras tenaga” adalah shading (shadowing) yang dilakukan oleh Pixel Shader. Pixel Shader akan memproses warna dan atribut yang diperlukan, seperti trasnparasi, pemantulan atau struktur dari masing-masing oixel. Hasilnya, objek 3D akan mendapat pewarnaan.
Prinsipnya, sekarang gambar sudah jadi. Proses yang diperlukan hanyalah penyempurnaan malalui berbagai filter agar scane terlihat lebih realistis. Untuk itu tekstur, yaitu Bitmaps (gambar) yang sudah jadi, akan diproyeksikan menjadi sebuah objek 3D (Texture Mapping). Dengan cara ini, dengan mudah dihasilkan gambar-gambar yang terlihat seperti foto minus fleksibelitas sebuah objek 3D. Jadi obyek yang dibentuk oleh tekstur dapat terlihat bagus dari depan, namun terlihat datar saja dari samping. Anisotrophic filtering, yang juga ditempatkan dalam tekstur units, berfungsi agar teksture yang sudah terdistorsi secara perspektif dapat ditampilkan secara tajam dari kejauhan.
Kelas GPU
untuk mengetahui GPU yg digunakan dalam perangkat android, Anda harus menginstal quadrant standar / aplikasi yg sejenis di MARKET banyak kemudian masuk ke system information.
GPU JUGA DIPENGARUHI OLEH PROSESOR
KENALI JUGA PROSESOR YANG DIPAKAI APAKAH ARMv6 / ARMv7
ARMv7 lebih bagus banyak support aplikasi/game dan lebih mengoptimalkan GPU (cek pakai quadrant standar atau antutu benchmark / aplikasi sejenis ).
Biasanya ARMv6 dipakai android low end sedangkan ARMv7 dari low sampai high end
Kelas low end
Adreno 130
Adreno 200
powerVR SGX530
Kelas mid end
PowerVR SGX531 ( termasuk juga ke kelas low end tergantung prosesor)
Mali 400 biasa (yg biasa dipakai di tablet2 cina)
Video core IV
Adreno 200 enchanced/ adreno 200 ++
Adreno 203
Adreno 205
Nvidia tegra 2
PowerVR SGX535
PowerVR SGX540 clock 200
PowerVR SGX544 (imo s89)
Adreno 220
Mali 400MP2
PowerVR SGX543
Adreno 305
Kelas high end
Nvidia tegra 3
PowerVR SGX543MP4
PowerVR SGX544MP3 (Tri-Core) (galaxy s4 dan iphone 5)
Mali 400MP4
Adreno 225
Adreno 320
Adreno 330
0 komentar:
Posting Komentar