Lec 2 – GRAFIKA KOMPUTER

Download Report

Transcript Lec 2 – GRAFIKA KOMPUTER

GRAFIKA
KOMPUTER
BAB 1 . PENGANTAR
Sistem Grafika Komputer
• Grafika komputer  suatu bidang ilmu komputer yang
mempelajari tentang cara – cara untuk meningkatkan
dan memudahkan komunikasi antara manusia dan mesin
(komputer)
• Sistem grafika komputer dapat diklasifikasikan :
- grafika komputer pasif
- grafika komputer interaktif
Penerapan grafika komputer
• Penerapan grafika komputer :
- Bidang sains,teknologi dan bisnis
cth: diagram statistik, chart, fenomena fisika, dsb
- Kartografi
cth: menyajikan informasi geografis, cuaca
- Simulasi dan Animasi
cth: Film, simulator, game
- Computer Aided design and drafing ( CAD )
Cth: membantu perancangan sistem elektronis, perancangan
struktur bangunan
- Graphical User Interface (GUI)
Cth: mempermudah interaksi antar program dan pemakainya
Sistem grafis
• Sistem grafis terdiri dari komponen hardware dan paket
software, antara lain :
- Perangkat layar penampil (video display device)
- Pengolah tampilan (display adaptor)
- Pengingat digital (frame buffer)
- Peripheral device
Video display device
• Layar penampil merupakan perangkat output primer dari
sistem grafis
• Beberapa contoh teknologi layar penampil :
1. CRT (cathoda ray tube)
- Raster scan Display
- Random scan display
2. Flat panel display (emissive dan non emissive)
- plasma display
- LCD
Pengolah tampilan
• Pengolah tampilan / video display adaptor adalah piranti grafis yang
mengolah pola bit dari pengingat digital (frame buffer) untuk
ditampilkan sebagai citra pada layar penampil
• Tipe video adaptor menurut layar penampil yang didukung:
- MDA (monochrome display adaptor) digunakan bersama layar
bertipe direct drive monochrome monitor, dapat menampilkan
warna latar depan dan warna latar belakang (foreground dan
background color)
- CGA (color graphic adaptor) digunakan bersama composite color
monitor, dapat menampilkan warna dengan jumlah terbatas
- VGA ( video graphic array) digunakan bersama RGB monitor, dapat
menampilkan citra dalam true color
Peripheral device
• Piranti / device yang umum dijumpai dalam sistem
berbasis grafis:
1. Mouse
2. Trackball
3. Joystick
4. Digitizer tablet
5. Light pen
6. Printer dan plotter
Perangkat Lunak
Corel draw
AutoCAD
3D Studio MAX
MS.Paint, dll
Tools / Library
Perangkat Tools untuk pengembangan grafis
(pustaka/library) :
1. BGI (Borland Graphic Interface)
2. OpenGL
3. DirectX
BGI
• BGI (Borland Graphic Interface) merupakan salah satu
piranti grafis (graphic tools) yang dapat digunakan
mengembangkan aplikasi berbasis grafis
• BGI terdiri dari unit penggerak grafik (display driver)
dan graphic library yang berisi fungsi – fungsi dan makro
grafis
display adaptor yang didukung antara lain EGA,CGA,VGA
dan IBM 8514
BGI
• Langkah – langkah untuk bekerja pada mode grafis dengan BGI
1. Load library graphic dan library pendukung (bila dibutuhkan)
- include <graphics.h>
- include <conio.h>
2. Tentukan driver dan mode grafik yang digunakan
cth: int drv =9 ; //vga driver
int mode = 2; // vga Hi 640 *480*16 bit color
int drv= DETECT //deteksi konfigurasi optimal
3. Inisialisasikan layar grafik
initgraph(&drv,&mode, “bgi-path”)
BGI
4. Error handling (optional)
cth: int errkode;
errkode=graphresult();
if (errkode !=grOk)
{ cout << “terjadi error ” <<grapherrormsg(errkode);
getch();
exit(1); }
5. Mode grafis siap digunakan
cth: putpixel (100,100,white) // buat titik putih di koordinat 100,100
6. Akhiri mode grafis
closegraph();
Driver dan error grafis
• Driver  mode
1- CGA
2- MCGA
3- EGA
9- VGA  0.vgaLo(640*200*16), 1.
vgaMed(640*350*16),2.vgaHi(640*480*16)
• Kode kesalahan grafis
0  grOk
// tidak ada kesalahan
-1 grNoInitGraph // mode grafik BGI tidak ditemukan
-2 grNotDetected // perangkat grafis tidak ditemukan
-4 grInvalidDriver // driver penggerak grafis salah
Open GL
• spesifikasi standar yang mendefinisikan sebuah cross-bahasa,
cross-platform API untuk menulis aplikasi yang menghasilkan
komputer 2D dan 3D grafis. Antarmuka terdiri dari lebih dari
250 panggilan fungsi yang berbeda yang dapat digunakan
untuk menggambar tiga dimensi yang kompleks adeganadegan dari primitif sederhana.
• sebuah library terdiri dari berbagai macam fungsi dan biasanya
digunakan untuk menggambar sebuah objek 2D ata 3D
Sejarah OpenGL
[1] OpenGL dikembangkan oleh Silicon Graphics Inc (SGI) pada
tahun 1992
[2] dan secara luas digunakan dalam CAD, virtual reality,
visualisasi ilmiah, visualisasi informasi, dan simulasi
penerbangan. Hal ini juga digunakan dalam video game, di mana
bersaing dengan Direct3D on Microsoft Windows platform (lihat
vs OpenGL Direct3D). OpenGL dikelola oleh sebuah teknologi
nirlaba konsorsium yaitu Khronos Group.
OpenGL
• bahasa pemrograman C/C++, delphi dan java
• OpenGL merupakan sebuah library untuk pemrograman grafik
(Graphics Programming / GP)
• Dasar untuk mempelajari GP adalah terletak pada fungsi
matematikanya, terutama operasi matriks
• yang perlu dipelajari adalah mengenai shading, shape,
transform (rotate, translation, scala).
Tujuan OpenGL
• Untuk menyembunyikan kompleksitas dari interfacing dengan
berbagai 3D accelerators, memamerkan oleh programmer
dengan satu, seragam API.
• Untuk menyembunyikan kemampuan yang berbeda dari
hardware platform, oleh semua yang memerlukan mendukung
implementasi penuh fitur opengl set (menggunakan software
emulation jika diperlukan).
Cara Kerja OpenGL
• OpenGL lebih mengarah pada prosedural daripada sebuah
deskriptif API grafis
• Untuk mendeskripsikan scene dan bagaimana
penampilannya,sebenarnya programer lebih tau untuk
menentukan hal-hal yang dibutuhkan untuk menghasilkan
efek yang di inginkan
• Langkah tersebut termasuk memanggil banyak perintah
openGL,perintah tersebut digunakan untuk menggambarkan
grafis primitif seperti titik,garis dan poligon dalam tiga
• openGL mendukung lighting,shading,texture
mapping,blending,transparancy,dan banyak kemampuan efek
khusus lainnya.
Library Tambahan
• OpenGL32.dll
• Glu32.dll
• Glut32.dll
Evolusi OpenGL
• Pendahulu openGL adalah IRIS GL dari Silicon Grapics
• library grafis 2D,yang berefolusi menjadi API program 3D
untuk workstation canggih milik perusahaan tersebut.
OpenGL adalah hasil dari usaha SGI untuk mengembangkan dan
meningkatkan kemampuan portable IRIS
API grafis yang baru akan menawarkan kemampuan IRIS GL
tetapi dengan standar yang lebih terbuka,dengan input dari
pembuatan hardware lain dan sistem operasi lain,dan aka
memudahkan adaptasi ke hardware platform dan sistem operasi
lain.
…lanjutan
• Untuk lebih mempopulerkan openGL SGI mengijinkan pihak
lain untuk mengembangkan standart openGL,dan beberapa
vendor menyambut hal tersebut dengan membentuk OpenGL
Architecture Review Board (ARB)
• Pendiri openGL adalah SGI,Digital Equepment
Corporation,IBM,Intel dan Microsoft,pada tanggal 1 juli 1992
OpenGL versi 1.0 diperkenalkan.
Penjelasan
• Letak openGL ketika aplikasi berjalan, program tersebut
memanggil banyak fungsi,beberapa yang dibuat oleh
programer dan beberapa yang disediakan oleh sistem operasi
bahasa pemrograman.
• Aplikasi windows membuat output pada layar biasanya
dengan memanggil sebual API windows yang disebut Graphics
Device Interface,yang memungkinkan sebagai penulisan teks
pada sebuah windows,menggambar garis 2D sederhana dan
lainnya.Implementasi dari openGL mengambil permintaan
grafis dari aplikasi dan membangun sebuah gambar berwarna
dari grafis 3D,kemudian memberikan gambar tersebut ke GDI
untuk ditampilkan pada layar monitor.
DirectX
directX (microsoft) memiliki fungsi yang hampir sama, namun
DirectX lebih banyak digunakan oleh sebagian besar game
developer karena beberapa fungsi DirectX nampaknya lebih
memudahkan game developer untuk membuat game.
Mode grafis dan teks
• Perbedaan mode Teks dan grafis:
- Teks
* satuan unit terkecil adalah 1 karakter
* resolusi 80 x 25
- Grafis
* Satuan unit terkecil adalah 1 pixel
* Resolusi beragam tergantung display device (VGA Hi =
640 x 480)
Bahan Lanjut
• Output primitif