Rasterisasi — apa itu, tahapan dan prinsip kerja

Penulis: IT Sectr Diterbitkan: 2026-06-11 Waktu membaca: 10 mnt

Rasterisasi — adalah proses mengubah deskripsi vektor dari primitif tiga dimensi (segitiga, garis, titik) menjadi kumpulan piksel (fragmen) untuk ditampilkan di layar. Menurut Khronos Group, 2025, rasterisasi adalah tahap otomatis (tidak dapat diprogram) dari pipeline grafis, yang terletak di antara Vertex Shader dan Fragment Shader. Rasterisasi menentukan piksel layar mana yang termasuk ke dalam segitiga mana, dan menghitung atribut yang diinterpolasi untuk setiap fragmen.

Poin Utama

  • Rasterisasi — konversi primitif vektor menjadi gambar raster (piksel).
  • Scanline conversion — algoritma dasar yang menentukan cakupan piksel oleh segitiga.
  • Interpolasi atribut — perhitungan warna, koordinat tekstur dan normal untuk setiap fragmen.
  • MSAA — multisampling yang menghaluskan tepi bergerigi (aliasing) pada rasterisasi.
  • Kinerja rasterisasi tergantung pada jumlah segitiga dan resolusi layar.

Apa itu rasterisasi?

Rasterisasi — adalah tahap pipeline grafis yang mengubah primitif geometris (segitiga, garis) menjadi kumpulan fragmen untuk diproses lebih lanjut oleh Fragment Shader. Data masukan — simpul segitiga dalam koordinat layar dan atributnya (warna, normal, UV). Keluaran — kumpulan fragmen dengan atribut yang diinterpolasi.

Berbeda dengan shader yang dapat diprogram (Vertex dan Fragment Shader), rasterisasi adalah tahap tetap (tidak dapat diprogram). Pengembang tidak dapat mengubah algoritma rasterisasi, tetapi dapat mengelola parameternya: mode pemotongan (culling), lebar garis, offset kedalaman (polygon offset) dan multisampling.

Peran rasterisasi dalam grafis real-time

Hampir semua grafis real-time modern — game, UI, AR/VR — menggunakan rasterisasi. Ini adalah metode rendering paling performan, mampu memproses jutaan segitiga per frame pada 60 FPS. Rasterizer GPU dioptimalkan untuk pemrosesan paralel ribuan segitiga secara bersamaan melalui blok khusus ROP (Render Output Units).

Bagaimana cara kerja rasterisasi?

Rasterisasi segitiga dimulai setelah Vertex Shader mengubah simpul menjadi koordinat layar. GPU mengambil tiga simpul segitiga dan menentukan piksel layar mana yang berada di dalam segitiga ini.

Tahapan rasterisasi segitiga

Proses ini mencakup tiga langkah berurutan: penentuan bounding box segitiga dalam piksel — pemeriksaan setiap piksel di dalam bounding box untuk kepemilikan segitiga (edge function) — perhitungan atribut yang diinterpolasi (koordinat barycentric) untuk setiap piksel yang tercakup. Edge function — adalah persamaan linier yang menentukan di sisi mana dari tepi segitiga suatu titik berada.

TahapDeskripsiHasil
ClippingPemotongan segitiga di luar batas viewportPrimitif yang terlihat
Viewport transformTransformasi ke koordinat layarKoordinat piksel
Triangle setupPerhitungan edge-function dan bounding boxParameter rasterisasi
Fragment generationPemeriksaan cakupan dan interpolasiFragmen + atribut

Algoritma rasterisasi

Rasterisasi dapat diimplementasikan dengan berbagai algoritma, masing-masing memiliki kompromi antara kinerja dan kualitas. GPU modern menggunakan kombinasi dari beberapa pendekatan.

Algoritma Scanline

Algoritma rasterisasi klasik, dikembangkan untuk GPU awal. Segitiga diproses baris demi baris (scanline): untuk setiap baris layar, titik masuk dan keluar segitiga ditentukan, dan semua piksel di antaranya diisi. Scanline conversion efisien untuk segitiga besar, tetapi membutuhkan logika kompleks untuk segitiga dengan bentuk sembarang.

Metode Half-space (edge function)

GPU modern menggunakan metode rasterisasi half-space: untuk setiap sisi segitiga, edge function dihitung — persamaan linier, positif di satu sisi dan negatif di sisi lain. Piksel milik segitiga jika ketiga edge functions positif. Rasterisasi half-space mudah diparalelkan dan cocok dengan arsitektur SIMD GPU.

Rasterisasi Tile-Based (TBR)

GPU mobile (Qualcomm Adreno, ARM Mali) menggunakan Tile-Based Rendering (TBR). Layar dibagi menjadi tile kecil (16×16 atau 32×32 piksel), dan rasterisasi dilakukan untuk setiap tile secara terpisah. Ini meminimalkan jumlah akses ke memori video dengan menyimpan framebuffer di memori lokal cepat (tile memory). TBR mengurangi konsumsi daya, yang sangat penting untuk perangkat mobile.

Rasterisasi vs Ray Tracing

Rasterisasi dan ray tracing — dua pendekatan yang fundamentally berbeda untuk rendering grafis 3D. Rasterisasi mendominasi di aplikasi real-time, ray tracing — di rendering offline dan secara bertahap merambah ke real-time (pada GPU yang kompatibel dengan RTX).

ParameterRasterisasiRay Tracing
PrinsipSegitiga → fragmenSinar → persimpangan dengan scene
KecepatanSangat cepat (jutaan segitiga/frame)Lambat (ribuan sinar/frame)
KualitasMembutuhkan teknik tambahan (bayangan, refleksi)Bayangan dan refleksi yang benar secara fisik
GPU mobileMetode standarDukungan terbatas (A17 Pro, Snapdragon Gen 3)
Konsumsi dayaRendahTinggi

MSAA dan anti-aliasing pada rasterisasi

Pada rasterisasi muncul masalah aliasing — tepi bergerigi (jaggies) pada batas segitiga. Ini terjadi karena piksel bersifat diskrit dan tidak dapat tercakup sebagian oleh segitiga. Untuk mengatasi aliasing digunakan multisampling (MSAA).

Bagaimana MSAA bekerja

MSAA (Multisample Anti-Aliasing) melakukan rasterisasi dengan frekuensi sampling yang ditingkatkan (2x, 4x, 8x). Alih-alih satu sampel per piksel, digunakan beberapa sub-sampel, masing-masing diperiksa untuk cakupan oleh segitiga. MSAA 4x memproses 4 sub-sampel per piksel, memberikan penghalusan tepi yang nyata tanpa meningkatkan resolusi rendering sepenuhnya.

FXAA dan metode post-process lainnya

Berbeda dengan MSAA, metode anti-aliasing post-process (FXAA, SMAA, TAA) bekerja setelah rasterisasi, menganalisis gambar akhir. FXAA (Fast Approximate Anti-Aliasing) mendeteksi tepi gambar dan menerapkan pengaburan untuk penghalusan, bekerja jauh lebih cepat daripada MSAA tetapi dengan hasil yang kurang berkualitas.

Rasterisasi pada GPU dan optimasi

Rasterisasi pada GPU modern dilakukan oleh blok perangkat keras khusus — ROP (Render Output Units). Jumlah ROP secara langsung mempengaruhi kecepatan pengisian (fill rate) — jumlah piksel yang dapat diproses GPU per detik.

Faktor kinerja rasterisasi

  • Triangle count — jumlah segitiga per frame. Setiap segitiga membutuhkan overhead untuk setup dan pengujian tepi.
  • Fill rate — jumlah piksel yang diproses oleh blok ROP per detik. Tergantung pada frekuensi clock GPU dan jumlah ROP.
  • Overdraw — rasterisasi ulang piksel yang sama karena tumpang tindih segitiga. Dioptimalkan dengan mengurutkan objek berdasarkan kedalaman.

Optimasi rasterisasi untuk GPU mobile

Untuk GPU mobile (Tile-Based Rendering) sangat penting: minimalisasi overdraw melalui penolakan awal (early-Z), penggunaan back-face culling untuk menghilangkan segitiga yang tidak terlihat dan penghapusan permukaan tersembunyi (occlusion culling) untuk menolak segitiga yang sepenuhnya tertutup oleh objek lain.

Pertanyaan yang Sering Diajukan

Apa itu rasterisasi dengan kata sederhana?

Rasterisasi adalah proses mengubah segitiga menjadi piksel di layar. GPU mengambil segitiga tiga dimensi, menentukan piksel layar mana yang ditutupinya dan mengirimkannya ke Fragment Shader untuk diwarnai.

Apa perbedaan rasterisasi dengan ray tracing?

Rasterisasi memproyeksikan segitiga ke layar dan menentukan cakupan piksel (sangat cepat). Ray tracing mengirimkan sinar dari kamera dan memeriksa persimpangan dengan geometri (secara fisik lebih akurat tetapi jauh lebih lambat).

Mengapa anti-aliasing diperlukan pada rasterisasi?

Pada rasterisasi, piksel sepenuhnya milik segitiga atau tidak — maka muncul tepi bergerigi (aliasing). MSAA menghaluskan tepi melalui beberapa sub-sampel per piksel, dan FXAA menerapkan filter ke gambar jadi.

Bisakah tahap rasterisasi diprogram?

Tidak, rasterisasi adalah tahap tetap dari pipeline grafis. Pengembang tidak dapat mengubah algoritma, tetapi dapat mengelola pengaturan: culling, polygon offset, mode rasterisasi (titik, garis, segitiga) dan parameter MSAA.

Mengapa GPU mobile menggunakan Tile-Based Rendering?

Tile-Based Rendering (TBR) membagi layar menjadi tile dan memprosesnya di memori lokal cepat, bukan di VRAM global. Ini secara drastis mengurangi konsumsi daya dan bandwidth, yang sangat penting untuk perangkat mobile bertenaga baterai.

Ringkasan

  • Rasterisasi — konversi segitiga vektor menjadi fragmen raster untuk ditampilkan di layar.
  • Half-space — algoritma rasterisasi utama di GPU modern.
  • Tile-Based Rendering — arsitektur rasterisasi yang digunakan di GPU mobile (Adreno, Mali).
  • Aliasing — masalah tepi bergerigi, diselesaikan melalui MSAA, FXAA atau TAA.
  • Fill rate — parameter kinerja kunci rasterisasi, tergantung pada jumlah blok ROP.
  • Overdraw — rasterisasi ulang piksel, dioptimalkan melalui early-Z dan occlusion culling.
  • Ray Tracing — metode alternatif yang menyediakan rendering fisik yang benar dengan mengorbankan kinerja.

Kami akan mengembangkan aplikasi seluler turnkey

IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.

Diskusikan proyek

Baca juga