KATA PENGANTAR
Puji Syukur kehadirat Tuhan Yang Mahakuasa yang telah berkenanmenganugerahkan kesempatan sehingga buku Grafika Komputer Tingkat Perkuliahan untuk Mahasiswa Universitas Negeri Malang Pendidikan Teknik Informatika ini dapat diselesaikan oleh penulis.
Buku ini disusun untuk memudahkan Mahasiswa dalammemahami konsep openGL yang meliputi Pengantar dan Seja-rah Grafkom, Teknologi Grafkom, Pengantar dan Instalasi GLUT, Primitive Object, Transformasi Objek , Interaksi Keyboard dan Mouse, Material Warna, Lighting, Animasi, Objek 3D serta Texture. Penulisan buku inidiharapkan mahasiswa dapat mengembangkan keterampilan dankreativitas, baik secaramandiri maupun kelompok, melalui pemahaman konsepdan wacana serta pelatihan–pelatihan dalam setiap babnya.
Materi dalam buku ini disajikan secara tematik. Setiap tema pada bahasandapat dikembangkan siswa melalui keterampilan dan kreativitaspemrograman menggunakan openGLsehingga diharapkan dapat mendukung pengembangan setiap kompetensi dasar.
Dalam hal ini mahasiswa diajak untuk berperan aktif sebagai pelaku utama dalampembelajaran.Pada kesempatan ini penulis mengucapkan terima kasih kepada semuapihak yang berkenan memberikan kritik dan saran dalam rangka penyempurnaanbuku ini di kemudian hari. Akhirnya penulis berharap dengan terbitnya bukuini dapat memberikan motivasi yang positif bagi guru dan mahasiswaUniversitas Negeri Malang padasemua program keahlian terutama bidang Informatika yang berkaitan erat dengan pemrogra-man.
DAFTAR ISI
KATA PENGANTAR ... I
BAB 1 ... 1
PENGANTAR DAN SEJARAH ... 1
GRAFKOM ... 1
PENGANTARGRAFIKAKOMPUTER ... 1
SEJARAH PERKEMBANGAN GRAFIKA KOMPUTER ... 2
PERANAN DAN PENGGUNAAN GRAFIKA KOMPUTER ... 10
BAB 2 ... 22 SEJARAH OPENGL ... 22 SEJARAH OPENGL ... 22 PENGENALAN OPENGL ... 23 EVOLUSI OPENGL ... 25 BAB 3 ... 27 INSTALASI OPENGL... 27
INSTALASI GLUT PADA WINDOWS ... 27
BAB 4 ... 37 TEKNOLOGI GRAFKOM ... 37 SEJARAHMONITOR ... 37 CRT ... 40 LCD ... 44 OLED ... 49 BAB 5 ... 51 PRIMITIF OBJEK ... 51
OUTPUTPRIMITIF ... 55
ALGORITMA PEMBENTUKAN GARIS ... 56
ALGORITMA GARIS BRESSENHEM ... 58
ALGORITMA PEMBENTUKAN LINGKARAN ... 61
ATRIBUTOUTPUTPRIMITIF ... 64
ALGORITMA BOUNDARY-FILL ... 67
ALGORITMA FLOOD-FILL ... 68
ANTIALIASING ... 69
SUPERSAMPLING ATAU POSTFILTERING ... 70
BAB 6 ... 76
INTERAKSI KEYBOARD DAN MOUSE ... 76
PENGENALAN ... 76
FUNGSI DASAR PEMBUATAN ANIMASI DENGANMENGGUNAKAN KEYBOARDFUNCTION. ... 81
CODING ... 83
2. TOMBOL UP ... 84
3. KUNCI BUFFER ... 85
INTERAKSIMOUSEPADAOPENGL ... 91
B. Mouse ... 92 1) JENIS MOUSE ... 93 Mouse Mekanis ... 93 Mouse Optical ... 94 Mouse Wireless ... 94 BAGIAN-BAGIAN MOUSE ... 95
Bagian-bagian pada Mouse Ball ... 95
Bagian-bagian Mouse Optical ... 96
C. Pemanfaatan Mouse untuk Interaksi dengan OpenGL ... 97
glutMotionFunc(motion); ... 98
CONTOH PROGRAM ... 99
KESIMPULAN ... 101
Jenis-jenis mouse: ... 101
Mouse Optical ... 101
Mouse Wireless... 101
BAB 7 ... 103
ANIMASI OBJEK 2D ... 103
ANIMASI OBJEK 2DOPENGL ... 106
TRANSLASI (TRANSLATION) ... 106 ROTASI (ROTATION) ... 108 SKALASI (SCALING) ... 109 REFLEKSI ... 110 SHEAR ... 112 TIMER FUNCTION... 113 BAB 8 ... 119 OBJEK 3 DIMENSI ... 119
DEFINISIOBJEK3DIMENSI ... 119
FUNGSIOPENGL3DIMENSI ... 120
SPESIFIKASIOBJEK3DIMENSI ... 125
PRIMITIF3D ... 126
RENDERING ... 127
REPRESENTASIBENDAGRAFIKA3D ... 129
BAB 9 ... 132
PENCAHAYAAN ... 132
PENCAHAYAAN PADA OPENGL ... 132
PENCAHAYAAN PADA OPENGL DAN DUNIA NYATA ... 134
CAHAYA AMBIENT,DIFFUSE, DAN SPECULAR ... 135
TEKNIK PENCAHAYAAN (LIGHTING ) ... 136
BAB 10 ... 144
TEXTURE ... 144
KONSEP TEXTURE MAPPING ... 147
REFLECTION MAPPING ... 149
ENVIRONMENT MAPPING ... 150
SPHERE MAPPING ... 151
DUAL PARABOLOID MAPPING ... 153
CUBE MAPPING... 153
FORWARD MAPPING ... 155
INVERSE MAPPING ... 156
THE INVERSE TRANSFORM ... 157
BAB 1
PENGANTAR DAN
SEJA-RAH
GRAFKOM
PENGANTAR GRAFIKA KOMPUTER
A. Pengenalan Grafika KomputerGrafika komputer merupakan salah satu bidang ilmu komputer yang perkembangannya terbilang sangat pesat. Penggunaan grafika komputer sangat terasa manfaatnya hampir di seluruh kegiatan, terutama yang berhubungan dengan komputer. Pada kenyataannya, sebagian besar kegiatan manusia memanfaatkan grafika komputer. Indsutri film, televisi, desain grafis dan arsitektur adalah beberapa contoh kegiatan yang banyak sekali memanfaatkan grafika komputer. Bidang ilmu murni seperti Fisika, Matematika, Kimia dan Biologi pun merasakan manfaat dari grafika komputer. Bidang-bidang tersebut memanfaatkan grafika komputer untuk visualisasi model-model objek yang secara kasat mata mustahil terlihat seperti; atom, sel dan bakteri. Bahkan perkembangan bidang-bidang tersebut menjadi semakin cepat, karena para ilmuwan semakin berani melakukan eksperimen tanpa takut melakukan kesalahan yang mengakibatkan kerugian besar, sehingga mereka dapat menghasilkan penemuan-penemuan baru.
Pada saat ini industri film dan game adalah yang betul-betul telah merasakan manfaat dari grafika komputer. Saat ini, film yang digemari bukan lagi film-film kartun, tetapi film animasi yang menggunakan teknologi 3D(tiga dimensi). Dengan grafik 3D(tiga dimensi), dapat dihasilkan suatu objek yang menyerupai bentuk aslinya. Hal yang sama terjadi pada industri game. Jika dulu game-game yang digemari masih dalam bentuk dua dimensi (2D), dengan teknologi yang ada sekarang dapat dihasilkan suatu game yang lebih realistis karena sudah dalam bentuk tiga dimensi.
Bidang-bidang yang berhubungan dengan grafika komputer sudah menjadi alternatif pilihan pekerjaan yang banyak diminati di Indonesia, seperti; desain grafis, pengolahan citra dan digital fotografi. Pada bidang ini juga, Indonesia tidak mengalami ketertinggalan yang jauh jika dibandingkan dengan bidang ilmu komputer yang lain seperti jaringan komputer dan pemrograman. Bahkan banyak ditemui orang-orang yang sudah sangat ahli pada bidang-bidang yang digelutinya.
Sejarah Perkembangan Grafika Komputer
Grafika KomputerGrafika komputer adalah bagian dari ilmu komputer yang berkaitan dengan pembuatan dan manipulasi gambar (visual) secara digital. Bentuk sederhana dari grafika komputer adalah grafika komputer 2D yang kemudian berkembang menjadi grafika komputer 3D, pemrosesan citra (image processing), dan pengenalan pola (pattern recognition). Grafika komputer sering dikenal juga dengan istilah visualisasi data.
Bagian dari grafika komputer meliputi:
Geometri, mempelajari cara menggambarkan permukaan bidang
Animasi, mempelajari cara menggambarkan dan memanipulasi gerakan
Rendering, mempelajari algoritma untuk menampilkan efek cahaya
Citra (Imaging), mempelajari cara pengambilan dan penyuntingan gambar
Sejarah Grafika Komputer
Sejarah grafika dimulai sejak jaman dahulu ketika bangsa mesir, Roma dan Yunani berkomunikasi secara grafik.
Gambar 1 Sejarah Grafika Komputer
Beberapa lukisan yang terdapat pada batu nisan orang mesir dapat dikatakan sebagai lukisan teknik. Leonardo da Vinci sudah menghasilkan lukisan dengan objek 3D dengan pandangan isometrik.
Gambar 2 Lukisan-Lukisan Leonardo Da Vinci
Perkembangan grafika komputer dapat dibagi menjadi 4 (empat) fase, yaitu:
Fase Pertama : tahun 50an
Merupakan era grafika komputer interaktif. Pada mulanya perkembangan grafika komputer interaktif tidak terlalu cepat karena teknologi dan harga komputer yang mahal. Pada tahun 50an MIT mengembangkan komputer whirlwind dengan tabung sinar katode. Komputer ini mampu memaparkan grafik pasif yang digunakan untuk keperluan pertahanan.
Gambar 3 Komputer Whirlwind Dengan Tabung Sinar Katode
Akhir tahun 50an banyak orang menggunakan pena cahaya sebagai alat input, selain itu pada periode yang sama alat pemrograman otomatis telah berhasil dibuat. Komputer grafik interaktif mulai diteliti oleh general motor pada tahun 1959.
Gambar 5 Bagian-Bagian dalam pena Cahaya
Fase Kedua : Dekade 60an
Merupakan zaman penelitian /riset grafika komputer interaktif. Saat ini grafika interaktif moderen berhasil ditemukan oleh Ivan Sutherland dengan sistem penggambaran SKETCHPAD. Beliau juga menggambarkan teknik interaktif dengan sarana keyboard dan pena cahaya. Awal tahun 60-an dimulainya model animasi dengan menampilkan simulasi efek fisik
Gambar 6 Keyboard
o 1961 : Edward Zajac menyajikan suatu model simulasi satelit dengan menggunakan teknologi Grafik Komputer.
o 1963 : ditemukan Sutherland (MIT), Sketchpad (manipulasi langsung, CAD), Alat untuk menampilkan Calligraphic (vector), Mouse oleh Douglas Englebert
o 1968 : ditemukan Evans & Sutherland
o 1969 : Journal SIGGRAPH pertama kali diterbitkan o Pertengahan tahun 60an sejumlah proyek penelitian dan
produk computer aided design / munufacturing (CAD / CAM) telah muncul.
Gambar 7 Computer Aided Design / Munufacturing
Fase Ketiga pada dekade 70an
Saat ini sektor industri, pemerintahan dan ilmuan mulai sadar akan pentingnya grafika komputer interaktif untuk memperbaiki kualitas desain produk secara cepat dan mudah.
Gambar 7 Prototipe Desain Robot
-
1970 : Pierre B´eezier mengembangkan kurva B´eezier- 1971 : ditemukan Gouraud Shading,
- 1972 : ditayangkannya filmWestworld, sebagai film pertama yang menggunakan animasi computer
- 1974 : Ed Catmull mengembangkan z-buffer (Utah). Komputer animasi pendek, Hunger: Keyframe animation and morphing
- 1976 : Jim Blinn mengembangkan texture dan bump mapping
- 1977 : Film terkenal Star Wars menggunakan grafik computer
- 1979 : Turner Whitted mengembangkan algoritma ray tracing,untuk pesawat Death Star
- Pertengahan tahun 70-an hingga 80-an: Pengembangan Quest for realism radiosity sebagai main-stream aplikasi realtime
Fase Keempat : Dekade 80an
Pada masa ini grafika komputer berkembang pesat. Banyak orang berlomba untuk menemukan teori dan algoritma baru, penelitian dekade ini bertumpu pada penggabungan dan pengotomatisasian sebagai unsur desain dan pemodelan pejal (solid modeling) hal ini berguna untuk industri masa depan.
o 1982 : Pengembangan teknologi grafik komputer untuk menampilkan partikel
o 1984 : Grafik Komputer digunakan untuk menggantikan model fisik pada film The Last Star Fighter
o 1986 : Pertama kalinya Film hasil produksi grafik komputer dijadikan sebagai nominasi dalam Academy Award: Luxo Jr. (Pixar).
o 1989 : Film Tin Toy (Pixar) memenangkan Academy Award.
Pada tahun 90an teknologi model hibrid mulai diperkenalkan, teknologi ini berguna untuk penggabungan objek pejal dengan permukaan. Contohnya jika kita melukis sebuah mobil bagian badan mesin adalah suatu permukaan dan bagian mesin adalah bentuk pejal. Jika kita gabungkan dengan teknologi maka badan dan mesin membentuk sebuah mobil. Akhir tahun 90-an, ditemukannya teknologi visualisasi interaktif untuk ilmu pengetahuan dan kedokteran, artistic rendering, image based rendering, path tracing, photon maps, dan lain-lain. Tahun 2000 ditemukannya teknologi perangkat keras untuk real-time photorealistic rendering.
Gambar 8 Contoh teknologi model hibrid
Peranan dan Penggunaan Grafika Komputer
Grafika komputer digunakan dalam berbagai bidang seni, sains, bisnis, pendidikan dan hiburan, sebagi contoh:
- Antarmuka pengguna – sering setiap aplikasi pada komputer pribadi menggunakan GUI (Graphical User Interface).
- Pemetaan (Cartography) –Google Map, etc
- Kesehatan – Untuk perencanaan maupun pelaksanaan pembedahan, CT Scan, etc
- Computer Aided Design (CAD) – pengguna merancang objek ( mekanik, desain interior, modelling) mengunakan grafika komputer.
- Sistem Multimedia.
- Presentasi grafik untuk produksi slides. - Sistem paint.
- Presentasi data statistik. - Pendidikan.
- Hiburan.
B. Manfaat Grafika Komputer
1. Di Bidang Pendidikan
Grafik komputer pada pendidikan digunakan untuk mempresentasikan objek-objek pada siswa secara nyata, dapat melalui power point ataupun software lainnya. Dengan penggunakan bentuk objek ini diharapkan siswa lebih nyata dalam menerima semua materi yang telah diajarkan, tidak hanya teori saja tetapi sudah melihat bentuk dan simulasinya. Bentuk ini dapat berupa penggambaran bidang, ruang, grafik, gambar kerangka manusia, susunan tubuh manusia, dan sebagainya. Contohnya : Desain kerangka manusia
Gambar 1. Desain Kerangka Manusia
2. Di Bidang Hiburan
Tidak memungkiri pada sekarang ini semua acara hiburan di Televisi banyak menggunakan grafik komputer. Mulai dari film kartun, iklan di TV dan sampai acara sinetron sekalipun sudah di selipi oleh grafik komputer. Grafik komputer disini berupa efek animasi yang dapat membuat film semakin menarik. Contohnya : Desain Film Kartun The Smurfs.
Gambar 2. Desain Film Kartun The Smurfs
3. Di Bidang Perancangan
Pada bidang ini grafik komputer digunakan untuk membuat berbagai desain dan model objek yang akan dibuat. Misalnya digunakan untuk mendesain suatu arsitektur bangunan, desain kendaraan dan lainnya. Menggunakan software desain grafis seperti autocad semuanya akan berlangsung secara mudah dan lebih spesifik dalam perancangan yang akan dibuat. Memperkecil tinggkat kesalahan sehingga akan menhasilkan suatu model yang sama seperti aslinya. Contohnya : Desain Arsitektur/Teknik Sipil/Interior
Gambar 3. Desain Arsitektur dan Interior
C. Elemen-Elemen Dasar Desain Grafis 1. Elemen Geometri
a. Transformasi dari suatu konsep (atau suatu benda nyata) ke suatu model geometris yang bisa ditampilkan pada suatu komputer :
- Posisi
- Orientasi (cara pandang)
- Surface Properties / Ciri-ciri Permukaan (warna, tekstur)
- Volumetric Properties / Ciri-ciri volumetric (ketebalan/pejal, penyebaran cahaya) - Lights/cahaya (tingkat terang, jenis warna) - Dll.
b. Pemodelan Geometris yang lebih rumit :
- Jala-Jala segi banyak: suatu koleksi yang besar dari segi bersudut banyak, dihubungkan satu sama lain.
- Bentuk permukaan bebas: menggunakan fungsi polynomial tingkat rendah
- CSG: membangun suatu bentuk dengan menerapkan operasi boolean pada bentuk yang primitif.
2. Titik
Untuk menggambar titik (point) digunakan perintah point(x,y) dimana nilai x dan y adalah koordinat pada layar. Sedangkan untuk membuat garis digunakan perintah lines(x1,y1,x2,y2). Contoh program :
int d = 40; int p1 = d; int p2 = p1+d; int p3 = p2+d; int p4 = p3+d; size(200, 200); background(0);
//Draw line from location (50,50) until (100,150)
line(50, 50, 100, 150); // Draw gray box
stroke(255);
line(p3, p3, p2, p3); line(p2, p3, p2, p2); line(p2, p2, p3, p2); line(p3, p2, p3, p3); // Draw white points stroke(255); point(p1, p1); point(p1, p3); point(p2, p4); point(p3, p1); point(p4, p2); point(p4, p4); 3. Garis
Untuk mengubah warna garis, dapat digunakan perintah stroke(x) atau stroke(r,g,b). Selain itu ketebalan garis dapat kita atur dengan menggunakan
perintah strokeWeight(x) dengan nilai x adalah jumlah ketebalan pixel. Jika ingin merubah tampilan ujung garis, dapat juga kita tambahkan perintah strokeCap(mode). Mode yang digunakan adalah SQUARE, ROUND dan PROJECT. Contoh program:
size(200, 200); background(0);
// Draw white line standart stroke(255);
line(25, 5, 175, 5); // Draw red line stroke(255,0,0);
line(25, 25, 175, 25);
// Draw Green line with 5 points thicknes stroke(0,255,0);
line(25, 50, 175, 50);
//Draw Blue line with 10 thickness and square tip line
stroke(0,0,255); strokeWeight(10); strokeCap(SQUARE); line(25, 75, 175, 75); 4. Lingkaran
Untuk membuat objek bundar dapat menggunakan beberapa cara bentuk, yaitu ellipse dan busur. Untuk bentuk ellipse dapat digunakan perintah ellipse(x,y,width,height) dengan nilai x dan y adalah sebagai pusat ellipse Sedikit berbeda dengan penggunaan busur (arc). Pada ellipse kita dapat membuat bentuk bundar secara utuh, namun pada busur kita dapat membuat bentuk bundar hanya sebagian dalam arti kurva terbuka. Perintah yang digunakan adalah arc(x,y,width,height,start,stop), x dan y adalah posisi pusat busur, width adalah lebar dan height adalah tinggi. Penggunan start pada arc adalah posisi awal penggambaran dan stop adalah posisi akhir penggambaran busur D. Materi dalam Grafika Komputer
Di dalam Grafika Komputer, terdapat materi dasar yang wajib dipelajari, antara lain.
1. Primitive Object 2. Objek 2 Dimensi 3. Transformasi Object 4. Interaksi Keyboard 5. Interaksi Mouse 6. Animasi 7. Object 3 Dimensi 8. Pencahayaan
E. Mengenal library grafis OpenGL
Open GL adalah suatu library grafis standart yang digunakan untuk keperluan pemrograman grafis. Selain OpenGL, library grafis yang banyak digunakan adalah DirectX. OpenGL bersifat opensource, multi-platform dan multi language. Saat ini semua bahasa pemrograman mendukung OpenGL. dan OpenGL bisa bekerja dalam lingkungan Windows, Unix, SGI, Linux, freeBSD dll.
Library dasar dari openGL adalah GLUT, dengan fasilitas yang bisa dikembangkan. Untuk OS Windows,library ini terdiri dari 3 files yaitu :
- Glut.h - Glut32.lib - Glut32.dll Cara Installasi GLUT
Copykan file glut.h ke dalam folder c:\Program Files\Microsoft Visual Studio\VC98\Include\GL
Copykan file glut32.lib di dalam folder c:\ProgramFiles\MicrosoftVisual Studio\VC98\lib
Copykanfile glut32.dll ke dalam folder c:\Windows\System32
F. Mengenal Pemograman Grafis
Pemrograman grafis adalah pemrograman yang digunakan untuk menghasilkan gambar paa komputer menggunakan library yang ada. Teknik-teknik pemrograman grafis ini didasari oleh teknik- teknik menggambar dengan pemakaian geometri sebagai dasar struktur datanya. Hasil dari pemrograman grafis adalah visualisasi grafis.
- Struktur dasar Pemograman Grafis menggunakan bahasa C++
- Struktur Dasar Pemograman Grafis #include <GL/glut.h>
Pemrograman grafis menggunakan OpenGL-GLUT membutuhkan header glut.h yang ada di folder c:\Program Files\Microsoft Visual Studio\VC98\bin\GL
void userdraw(void){
//Disini tempat untuk menggambar }
Fungsi user draw adalah suatu fungsi untuk membuat kode program untuk menghasilkan suatu gambar.
glutInitWindowPosition(100,100); glutInitWindowSize(640,480);
Membuat windows dengan ukuran (640,480) dengan titik kiri atas jendela diletakkan pada posisi (100,100) di layar komputer.
glutCreateWindow(“Drawing by Rizky”);
Memberi judul pada windows dengan “Drawing By Rizky” glClearColor(1.0,1.0,1.0,0.0);
Mendefinisikan warna dari windows yang dibuat dengan warna(1,1,1) yaitu warna putih.
gluOrtho2D(-320.,320.,-240.,240);
Mendefinisikan besarnya sistem koordinat dengan range sumbux adalah [-320,320]. Dan range untuk sumbuy adalah [-240,240]. Hasil dari program :
G. KESIMPULAN
Dari materi diatas dapat kita simpulkan bahwa Grafika komputer merupakan salah satu bidang ilmu komputer yang perkembangannya terbilang sangat pesat. sebagian besar kegiatan manusia memanfaatkan grafika computer. Contohnya saja Indsutri film, televisi, desain grafis dan arsitektur. Pada saat ini industri film dan game adalah yang betul-betul telah merasakan manfaat dari grafika computer.
Adapun manfaat dari grafika komputer adalah : Di Bidang Pendidikan
Grafik komputer pada pendidikan digunakan untuk mempresentasikan objek-objek pada siswa secara nyata, dapat melalui power point ataupun software lainnya.
Di Bidang Hiburan
Tidak memungkiri pada sekarang ini semua acara hiburan di Televisi banyak menggunakan grafik komputer. Mulai dari film kartun, iklan di TV dan sampai acara sinetron sekalipun sudah di selipi oleh grafik computer
Di Bidang Perancangan
Pada bidang ini grafik komputer digunakan untuk membuat berbagai desain dan model objek yang akan dibuat.
Open GL adalah suatu library grafis standart yang digunakan untuk keperluan pemrograman grafis
Library dasar dari openGL adalah GLUT, dengan fasilitas yang bisa dikembangkan. Untuk OS Windows,library ini terdiri dari 3 files yaitu :
- Glut.h - Glut32.lib - Glut32.dll
Grafika komputer adalah bagian dari ilmu komputer yang berkaitan dengan pembuatan dan manipulasi gambar (visual) secara digital.
Bagian dari grafika komputer meliputi:
Geometri, mempelajari cara menggambarkan permukaan bidang
Animasi, mempelajari cara menggambarkan dan memanipulasi gerakan
Rendering, mempelajari algoritma untuk menampilkan efek cahaya
Citra (Imaging), mempelajari cara pengambilan dan penyuntingan gambar
Perkembangan grafika komputer dapat dibagi menjadi 4 (empat) fase, yaitu:
Fase Pertama : tahun 50an
Merupakan era grafika komputer interaktif. Pada mulanya perkembangan grafika komputer interaktif tidak terlalu cepat karena teknologi dan harga komputer yang mahal. Pada tahun 50an MIT mengembangkan komputer whirlwind dengan tabung sinar katode. Komputer ini mampu memaparkan grafik pasif yang digunakan untuk keperluan pertahanan.
Fase Kedua : Dekade 60an
Merupakan zaman penelitian /riset grafika komputer interaktif. Saat ini grafika interaktif moderen berhasil ditemukan oleh Ivan Sutherland dengan sistem penggambaran SKETCHPAD. Beliau juga menggambarkan teknik interaktif dengan sarana keyboard dan pena cahaya. Awal tahun 60-an
dimulainya model animasi dengan menampilkan simulasi efek fisik
Fase Ketiga pada dekade 70an
Pada era ini sektor industri, pemerintahan dan ilmuan mulai sadar akan pentingnya grafika komputer interaktif untuk memperbaiki kualitas desain produk secara cepat dan mudah.
Fase Keempat : Dekade 80an
Pada masa ini grafika komputer berkembang pesat. Banyak orang berlomba untuk menemukan teori dan algoritma baru, penelitian dekade ini bertumpu pada penggabungan dan pengotomatisasian sebagai unsur desain dan pemodelan pejal (solid modeling) hal ini berguna untuk industri masa depan.
BAB 2
SEJARAH OPENGL
Sejarah OpenGL
Tahun 1980-an, mengembangkan perangkat lunak yang
dapat berfungsi dengan berbagai hardware grafis adalah
tantangan nyata. Pengembang perangkat lunak antarmuka dan
kebiasaan menulis driver untuk setiap perangkat keras. Ini
mahal dan mengakibatkan banyak duplikasi usaha.
Pada awal 1990-an, Silicon Graphics (SGI) adalah
seorang pemimpin dalam grafis 3D untuk workstation. Mereka
IRIS GL API dianggap keadaan seni dan menjadi standar
industri de facto, membayangi terbuka berbasis standar PHIGS.
Ini karena GL IRIS dianggap lebih mudah digunakan, dan
karena itu mendukung modus langsung rendering. By contrast,
sebaliknya, PHIGS dianggap sulit untuk digunakan dan
ketinggalan zaman dalam hal fungsionalitas.
SGI’s pesaing (termasuk Sun Microsystems,
Hewlett-Packard dan IBM) juga dapat membawa ke pasar 3D hardware,
didukung oleh ekstensi yang dibuat pada PHIGS standar. Hal
ini pada gilirannya menyebabkan pangsa pasar SGI untuk
melemahkan karena lebih banyak hardware grafis 3D pemasok
memasuki pasar. Dalam upaya untuk mempengaruhi pasar,
SGI memutuskan untuk mengubah IrisGL API menjadi standar
terbuka. SGI menganggap bahwa IrisGL API itu sendiri tidak
cocok untuk membuka karena masalah lisensi dan paten. Juga,
IrisGL memiliki fungsi-fungsi API yang tidak relevan dengan
grafis 3D. Sebagai contoh, termasuk windowing, keyboard dan
mouse API, sebagian karena dikembangkan sebelum Sistem X
Window dan Sun’s NEWS sistem dikembangkan. Selain itu,
SGI memiliki sejumlah besar pelanggan perangkat lunak;
dengan mengubah ke OpenGL API mereka berencana untuk
mempertahankan pelanggan mereka terkunci ke SGI (dan
IBM) hardware untuk beberapa tahun sementara pasar
dukungan untuk OpenGL matang. Sementara itu, SGI akan
terus berusaha untuk mempertahankan pelanggan mereka
terikat pada hardware SGI dengan mengembangkan maju dan
kepemilikan Iris Inventor dan Iris Performer pemrograman
API. Akibatnya, SGI merilis standar OpenGL.
Pengenalan OpenGL
OpenGL adalah sebuah program aplikasi interface yang
digunakan untuk mendefinisikan komputer grafis 2D dan 3D.
Program lintas-platform API ini umumnya dianggap ketetapan
standar dalam industri komputer dalam interaksi dengan
komputer grafis 2D dan juga telah menjadi alat yang biasa
untuk digunakan dengan grafis 3D. Singkatnya, Open Graphics
Library, OpenGL menghilangkan kebutuhan untuk pemrogram
untuk menulis ulang bagian grafis dari sistem operasi setiap
kali sebuah bisnis akan diupgrade ke versi baru dari sistem.
Fungsi dasar dari OpenGL adalah untuk mengeluarkan koleksi
perintah khusus atau executable ke sistem operasi. Dengan
demikian, program ini bekerja dengan perangkat keras grafis
yang ada yang berada pada hard drive atau sumber tertentu
lainnya. Setiap perintah dalam dirancang untuk melakukan
tindakan tertentu, atau memulai efek khusus tertentu yang
terkait dengan grafis.
Membuat perintah dalam OpenGL dapat terjadi dalam dua cara
yang berbeda. Pertama, adalah mungkin bagi programmer
untuk membuat dan menyimpan daftar perintah yang dapat
dieksekusi secara berulang. Ini adalah salah satu cara yang
lebih rutin untuk program interface yang digunakan. Seiring
dengan berkembangnya kelompok perintah yang kurang lebih
permanen, maka memungkinkan untuk membuat dan
menjalankan salah satu perintah dalam batas-batas waktu dari
komputer grafis.
Seiring dengan kemampuan interface dari sistem operasi,
OpenGL juga menyediakan beberapa built-in protokol yang
mungkin berguna bagi pengguna akhir. Di antaranya fitur alat
seperti alpha blending, pemetaan tekstur, dan efek atmosfer.
Alat ini dapat berinteraksi dengan sistem operasi yang sedang
digunakan.
Awalnya dikembangkan oleh Silicon Graphics, OpenGL kini
dianggap standar industri. Interface program aplikasi yang aktif
didukung oleh Microsoft ini, menawarkan download gratis
daftar OpenGL untuk digunakan pada sistem Windows.
OpenGL juga bekerja sangat baik dengan Inventor Open,
sebuah pemrograman berorientasi obyek alat juga diciptakan
oleh Silicon Graphics.
OpenGL adalah suatu library grafis standart yang
digunakan untuk keperluan-keperluan pemrograman grafis.
Sebenarnya ada banyak library pemrograman grafis disini
selain openGL, misalnya DirectX. OpenGL ini bersifat
Open-Source, multi-platform dan multi-languange. selain itu openGL
mendukung semua bahasa pemrograman dan dapat bekerja di
lingkungan Windows, Unix, SGI, Linux, freeBSD, dll.
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
yangmemerlukan
mendukung
implementasi
penuh fitur opengl set (menggunakan software
emulation jika diperlukan).
Evolusi OpenGL
Pendahulu openGL adalah IRIS GL dari Silicon
Grapics. Pada mulanya adalah library grafis 2D, yang
berefolusi menjasi 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 akn
memudahkan adaptasi ke hardware platform dan sistem operasi
lain.
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.
Letak openGL dalam aplikasi gambar di atas pada
umumnya 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 Devise Interfase, 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.
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 dimensi.S ebagai
tambahan,openGL mendukung lighting, shading, texture
mapping, blending, transparancy, dan banyak kemampuan efek
khusus lainnya.
OpenGL mempunyai banyak fungsi dan penggunaan
perintah yang sangat luas, penggunaan openGL membutuhkan
library tambahan yang harus di letakkan pada direktori system
dari windows (OS),yaitu :
Glu32.dll
Glut32.dll
BAB 3
INSTALASI OPENGL
Instalasi GLUT pada Windows
1. Copykan file glut.h ke dalam folder c:\Program
Files\Microsoft Visual Studio\VC98\Include\GL
2. Copykan file glut32.lib di dalam folder c:\Program
Files\Microsoft Visual Studio\VC98\lib
3. Copykan
file
glut32.dll
di
dalam
folder
c:\Windows\System32
Perlu kawan-kawan ketahui bahwa instalasi GLUT ini
dilakukan setelah instalasi Microsoft Visual C++
.
Gambar 1. File dll di Windows System32
1. File header(gl.h, glaux.h, glu.h, dan glut.h) harus
ditempatkan di folder tempat MS VC++ di instal dan harus diletakan di subfolder Include/ GL. File gl.h, glaux.h, dan glu.h akan otomatis terpasang ketika instalasi MS VC++ dilakukan.
Gambar 2. File header OpenGL
2. File lib (glaux.lib, glu32.lib, glut.lib, glut32.lib dan
opengl32.lib) harus tersedia di subfolder Lib. File glaux.lib, glu32.lib dan opengl32.lib akan terpasang ketika instalasi MS VC++.
Gambar 3. File glut32 di Windows System32 Membuat Dokumen Baru.
1. Buka program Microsoft Visual C++ 2008.
2. Klik tab menu file New Project Gambar 4. Membuat File Baru
3. Lalu akan muncul tampilan seperti berikut. Lalu klik Next.
4. Pilih Radiobutton Console Application. Lalu pilih cekbox Empty project. Lalu klik Finish.
Gambar 6. Setting Aplikasi
5. Lalu Klik kanan pada file Latihan. Lalu klik Add New Item.
6. Lalu klik pilihan C++ File(.cpp). Tulis nama filenya. Lalu klik Add.
Gambar 8. Memberi nama File 7. Lalu klik kanan pada menu latihan.cpp. Lalu Klik
properties.
8. Lalu klik pilihan C/C++. Kemudian klik Additional Include Directories.
Gambar 9. Setting Include Directional 9. Lalu klik box titik-titik.
10. Pilih file dalam folder Include. Klik OK.
11. Lalu klik OK.
12. Lalu kita bisa menulis syntax pada layar yang sudah disediakan.
KESIMPULAN;
Perkembangan teknologi komputer grafik dari masa ke masa harus juga diikuti dengan perkembangan teknologi display yang berfungsi sebagai alat keluaran dari grafik yang dibentuk agar dapat dinikmati oleh kita semua. Saat ini teknologi display yang paling populer dan paling banyak digunakan adalah LCD (Liquid Crystal Display), namun sebelum orang mengenal teknologi tersebut, ada beberapa teknologi lainya yang sempat merajai dunia teknologi display seperti CRT, saat ini juga terdapat beberapa teknologi display terbaru yang mulai bermunculan seperti LED, FED dan OLED
OpenGL adalah sebuah program aplikasi interface yang digunakan untuk mendefinisikan komputer grafis 2D dan 3D. Program lintas-platform API ini umumnya dianggap ketetapan standar dalam industri komputer dalam interaksi dengan komputer grafis 2D dan juga telah menjadi alat yang biasa untuk digunakan dengan grafis 3D. Singkatnya, Open Graphics Library, OpenGL menghilangkan kebutuhan untuk pemrogram untuk menulis ulang bagian grafis dari sistem operasi setiap kali sebuah bisnis akan diupgrade ke versi baru dari sistem.
BAB 4
TEKNOLOGI GRAFKOM
SEJARAH MONITOR
Paparan komputer peribadi yang terawal merupakan Monitor monokrom yang digunakan untuk pemproses kata dan sistem komputer berdasarkan teks pada dekade 1970-an. Pada tahun 1981, IBM memperkenalkan sistem paparan Penyesuai Grafik Warna (CGA). Sistem paparan ini berupaya memberikan empat warna, dan mempunyai peleraian maksimum 320 piksels datar dan 200 piksel tegak. Walaupun CGA mencukupi untuk kegunaan permainan komputer yang mudah seperti permainan solitaire dan permainan dam, ia tidak mencukupi untuk pemprosesan kata, penerbitan atas meja ataupun penggunaan grafik yang canggih.
Pada tahun 1984, IBM memperkenalkan sistem paparan Penyesuai Grafik Tertingkat (EGA) yang dapat memberikan sehingga 16 warna yang berlainan dan peleraian sehingga 640 x 350. Ini memperbaiki kelihatannya berbanding paparan yang lebih awal, dan memungkinan pembacaan teks dengan mudah. Bagaimanapun, EGA tidak memberikan peleraian imej yang mencukupi untuk kegunaan-kegunaan tahap tinggi seperti reka bentuk grafik dan penerbitan atas meja. Mod ini kini sudah usang, walaupun ia kekadang masih boleh didapati di pemprosesan lama dan komputer peribadi di rumah kediaman.
Pada tahun 1987, IBM memperkenalkan sistem paparan Tatasusunan Grafik Video (VGA). Kini, ini telah merupakan piawai minimum yang dapat diterima untuk komputer peribadi. Peleraian maksimum tergantung kepada bilangan warna yang dipaparkan.
Pengguna boleh memilih antara enam belas warna pada 640 x 480, ataupun 256 warna pada 320 x 200.
Pada tahun 1990, IBM memperkenalkan sistem paparan Tatasusunan Grafik Terluas (XGA) sebagai waris untuk paparan 8514/A. Versi yang berikut, iaitu XGS-2, memberikan peleraian 800 x 600 piksel dalam warna yang benar (16 juta warna) dan peleraian 1024 x 768 dalam 65,536 warna. Kedua-dua tahap peleraian imej ini mungkin merupakan jenis yang terpopular di kalangan individu dan perniagaan kecil pada hari ini.
Persatuan Piawai-Piawai Elektronik Video (VESA) telah mengasaskan antara muka pengaturcaraan piawai untuk paparan Tatasusunan Grafik Video Super (SVGA) yang digelarkan Sambungan BIOS VESA ("VESA BIOS Extension"). Lazimnya, paparan SVGA dapat mendukung palet sehingga 16 juta warna, tergantung kepada jumlah ingatan video yang tersedia dalam sesuatu komputer yang akan menghadkan bilangan warna yang dapat dipaparkan. Spesifikasi peleraian imej berbeza-beza. Pada umumnya, lebih besar skrin Monitor SVGA, lebih banyak piksel dapat dipaparkan secara datar dan tegak.
Tahap perkembangan monitor computer yang digunakan saat ini sebenarnya terbagi dua fase. Fase pertama pada tahun 1855 ditandai dengan penemuan tabung sinar katoda oleh ilmuwan dari Jerman, Heinrich Geißler. Ia merupakan bapak dari monitor tabung. Lalu, 33 tahun kemudian, ahli kimia asal Austria, Friedrich Reinitzer, meletakkan dasar pengembangan teknologi LCD dengan menemukan kristal cairan. Teknologi tabung sejak awalnya memang dikembangkan untuk merealisasikan monitor. Namun, Kristal cairan masih menjadi fenomena kimiawi selama 80 tahun berikutnya. Saat itu, tampilan atau frame rate pun belum terpikirkan.
Selama ini, banyak yang menganggap bahwa Karl Ferdinand Braun sebagai penemu tabung sinar katoda. Sebenarnya, ia merupakan pembuat aplikasi pertama untuk tabung, yaitu osiloskop pada tahun 1897. Perangkat inilah yang menjadi basis
pengembangan perangkat lain, seperti televisi atau layar radar. Pada tahun yang sama, Joseph John Thomson menemukan elektron, yang mempercepat pengembangan teknik tabung.
Monitor CRT pertama (Cathode Ray Tube) dikembangkan untuk menerima siaran televisi. Milestone-nya adalah tabung televise pertama dari Wladimir Kosma Zworykin(1929), full electronic frame rate dari Manfred von Ardenne (1930), dan pengembangan tabung sinar katoda pertama yang dapat direproduksi oleh Allen B. Du Mont (1931).
Pada generasi awal komputer, belum menggunakan monitor khusus seperti sekarang ini. Komputer waktu itu terhubung dengan TV keluarga sebagai layar penampil dari pengolahan data yang dilakukannya. Yang cukup menjadi masalah adalah bahwa resolusi monitor TV saat itu hanya mampu menampilkan 40 karakter secara horisontal pada layar.
Monitor khusus untuk komputer dikeluarkan oleh IBM PC, yang pada awalnya memiliki resolusi 80 X 25 dengan kemampuan warna “green monochrome”. Monitor ini sudah mampu menampilkan hasil yang lebih terang, jelas dan lebih stabil.
Pada generasi berikutnya muncul mono graphics (MGA/MDA) yang memiliki 720x350. Selanjutnya di awal tahun 1980-an muncul jenis monitor CGA dengan range resolusi dari 160x200 sampai 640x200 dan kemampuan warna antara 2 sampai 16 warna. Monitor EGA muncul dengan resolusi yang lebih bagus yaitu 640x350. Monitor jenis ini cukup stabil sampai berikutnya munculnya generasi komputer Windows.
Semua jenis monitor ini menggunakan digital video - TTL signals dengan discrete number yang spesifik untuk mengatur warna dan intensitas cahaya. Antara video adapter dan monitor memiliki 2, 4, 16, atau 64 warna tergantung standard grafik yang dimiliki.
Selanjutnya dengan diperkenalkannya standard monitor VGA, tampilan grafis dari sebuah Personal Computer menjadi nyata. VGA dan generasi-generasi yang berhasil sesudahnya seperti PGA,
XGA, atau SVGA merupakan standard analog video dengan sinyal R (Red), G (Green) dan B (Blue) dengan continuous voltage dan continuous range pada pewarnaan. Secara prinsip analog monitor memungkinkan penggunaan full color dengan intensitas yang tinggi.
Generasi monitor terbaru adalah teknologi LCD yang tidak lagi menggunakan tabung elektron CRT tetapi menggunakan sejenis kristal liquid yang dapat berpendar. Teknologi ini menghasilkan monitor yang dikenal dengan nama Flat Panel Display dengan layar berbentuk pipih, dan kemampuan resolusi yang tinggi.
Dengan perkembangannya yang sangat pesat, saat ini terdapat empt jenis teknologi monitor. Keempat golongan teknologi tersebut adalah CRT (Cathode Ray Tube), Liquid Crystal Display (LCD), Plasma gas dan OLED (organic Lighting Emitter Diode).
Perkembangan teknologi komputer grafik dari masa ke masa harus juga diikuti dengan perkembangan teknologi display yang berfungsi sebagai alat keluaran dari grafik yang dibentuk agar dapat dinikmati oleh kita semua. Saat ini teknologi display yang paling populer dan paling banyak digunakan adalah LCD (Liquid Crystal Display), namun sebelum orang mengenal teknologi tersebut, ada beberapa teknologi lainya yang sempat merajai dunia teknologi display seperti CRT, saat ini juga terdapat beberapa teknologi display terbaru yang mulai bermunculan seperti LED, FED dan OLED
CRT
Pada tahun 1897 Karl Ferdinand Braun, seorang ilmuwan Jerman yang membuat televisi (TV) tabung (cathode ray tube/CRT).
Sebuah monitor CRT mengandung jutaan kecil merah, hijau, dan biru fosfor titik-titik yang bercahaya ketika diserang oleh suatu berkas elektron yang bergerak di layar untuk membuat gambar yang jelas. Gambar di bawah menunjukkan bagaimana ini bekerja di dalam sebuah CRT.
Dalam tabung sinar katoda, yang "katoda" adalah filamen dipanaskan. Filamen yang dipanaskan dalam menciptakan ruang hampa di dalam sebuah gelas "tabung." The "sinar" adalah sebuah aliran elektron yang dihasilkan oleh senapan elektron yang secara alamiah tuangkan dari katoda yang dipanaskan ke dalam vakum. Elektron negatif. Anoda adalah positif, sehingga menarik elektron mengalir dari katoda. Layar ini dilapisi dengan fosfor, bahan organik yang terpancar ketika dikejutkan oleh berkas elektron. Ada tiga cara untuk menyaring berkas elektron untuk mendapatkan gambar yang benar pada layar monitor: bayangan masker, aperture grill dan slot masker. Teknologi ini juga berpengaruh ketajaman layar monitor. Mari kita lihat lebih dekat sekarang ini....
Prinsip kerja monitor konvensional, monitor CRT (Cathode Ray Tube), sama dengan prinsip kerja televisi yang berbasis CRT. Elektron ditembakkan dari belakang tabung gambar menuju bagian dalam tabung yang dilapis elemen yang terbuat dari bagian yang memiliki kemampuan untuk memendarkan cahaya. Sinar elektron tersebut melewati serangkaian magnet kuat yang membelok-belokkan sinar menuju bagian-bagian tertentu dari tabung bagian dalam.
Begitu sinar tersebut sampai ke bagian kaca tabung TV atau monitor, dia akan menyinari lapisan berpendar, menyebabkan tempat-tempat tertentu untuk berpendar secara temporer.
Setiap tempat tertentu mewakili pixel tertentu. Dengan mengontrol tegangan dari sinar tersebut, terciptalah teknologi yang mampu mengatur pixel-pixel tersebut untuk berpendar dengan intensitas cahaya tertentu. Dari pixel-pixel tersebut, dapat dibentuklah gambar. Teorinya, untuk membentuk sebuah gambar, sinar tadi menyapu sebuah garis horizontal dari kiri ke kanan, menyebabkan pixel-pixel tadi berpendar dengan intensitas cahaya sesuai dengan tegangan yang telah diatur. Proses tersebut terjadi pada semua garis horizontal yang ada pada pixel layar, dan ketika telah sampai ujung, sinar tersebut akan mati sementara untuk mengulang proses yang sama untuk menghasilkan gambar yang berbeda. Makanya Belia dapat nonton objek yang seolah-olah bergerak di layar televisi atawa monitor. Pada masa awal-awal kelahira nteknologi televisi, para ilmuwan yang merancang televisi dan tabung gambar menemui hambatan teknis. Seperti yang Belia tahu, TV zaman baheula belumlah sekeren dan secanggih sekarang, eh maksudnya belum mampu menampilkan detail gambar seperti sekarang.
Dulu, lapisan yang berpendar dalam tabung gambar kualitasnya nggak sebaik sekarang. Jadi kualitas pixel yang dihasilkan juga tidak seoptimal sekarang. Kini, seiring dengan perkembangan teknologi komputer yang membutuhkan kualitas TV dan monitor tabung yang lebih baik, untungnya kualitas lapisan berpendar dalam tabung monitor telah lebih baik.
Hasilnya diperoleh tabung gambar yang mampu menghasilkan gambar dengan resolusi yang lebih tinggi. Wajar aja, soalnya
komputer banyak berurusan dengan text, dan itu membutuhkan detil gambar yang tinggi.
Sayangnya, teknologi monitor dengan tabung CRT ini ditengarai memiliki banyak pengaruh buruk bagi kesehatan penggunanya. Sejumlah riset mengindikasikan bahwa ekspos berlebihan monitor pada mata dapat menyebabkan penurunan kualitas penglihatan. Hal ini disebabkan oleh radiasi sinar elektron pada tabung gambar monitor atau televisi tabung.
a. Kelebihan Monitor CRT
Harganya lebih murah dibandingkan monitor LCD
Kualitas gambar yang lebih tajam dan cerah dibandingkan monitor LCD
Mampu menghasilkan resolusi gambar yang lebih tinggi dibandingkan dengan monitor LCD
Memiliki sudut viewable lebih baik dibandingkan monitor LCD
b. Kekurangan Monitor CRT
Menimbulkan efek radiasi yang bisa mengganggu kesehatan. Dimensinya menyita ruangan yang cukup besar. Apalagi bila
ukurannya makin besar
Menimbulkan efek kedip (flicker) yang mengganggu mata Butuh konsumsi listrik yang lebih tinggi dibandingkan LCD Sinyal gambar analog
Area layarnya tidak optimum karena harus dialokaskan untuk bezel/frame
Bentuknya kurang sedap dilihat dibandingkan dengan monitor LCD.
LCD
Teknologi LCD sebetulnya bukan
barang baru. LCD pertama kali
diujicoba di laboratorium
perusahaan elektronik RCA di
Amerika Serikat, oleh
George Heilmeier pada tahun
1968. Dia mengujicoba LCD berbasis dynamic scattering mode (DSM). Setahun kemudian, perusahaan milik Heilmeier yakni Optel lantas memproduksi LCD.
LCD biasa digunakan untuk men-display audio visual. LCD ini melakukan kontrol elektrik pada cahaya dengan mempolarisasi kristal cair yang ada pada sel-sel media yang mengaplikasikan LCD itu. Polarisasi tersebut dilakukan setelah ada kontak elektrik pada cairan-cairan yang ada pada sel-sel di TV.
LCD sekarang ini diaplikasikan tidak hanya di TV tetapi juga di beberapa peranti misalnya, ponsel dan kamera digital. Pengaplikasian LCD itu dengan melakukan mode reflektif dan transmissive. Metode reflektif itu biasanya yang biasa ada pada arloji dan kalkulator, display LCD pada barang-barang ini tidak membutuhkan daya konsumsi energi tinggi sehingga tidak memboroskan baterai. Sementara yang menggunakan transmissive butuh daya banyak, contoh dari pengaplikasian ini adalah pada telepon seluler (ponsel).
Dalam layar LCD, warna terbagi dalam tiga warna utama yakni dalam filter merah, hijau dan biru. Pendeskripsian warna berikutnya tergantung pada pembacaan alat pen-display LCD itu dengan brightnesses yang dipunyainya. Komponen warna, berikutnya akan diatur dalam cara yang berbeda tergantung jumlah pixelnya.
Karenanya terkadang kita dihadapkan pada resolusi pixel misalnya 640 x 480 dan sebagainya. Semakin besar resolusi pixelnya, semakin kaya warna.
Pada dasarnya prinsip kerja LCD adalah dengan memancarkan sinar yang terang ke panel 3 LCD. Panel LCD inilah yang kemudian menampilkan gambar/image bergerak dan memproyeksikan gambar melalui lensa pembesar ke kaca yang dapat merefleksikan gambar tersebut di layar televisi.
Sistem tiga LCD juga memiliki kemampuan mengolah gambar yang lebih baik, sehingga menghasilkan gambar yang lebih baik pula. Sinyal-sinyal gambar/image yang ditangkap LCD, dengan kaca diacroic pilahkan citra atau gambar warna merah, biru hijau (RGB). Warna yang terpisah ini kemudian disatukan kembali oleh prisma dan kemudian dipantulkan ke kaca untuk selanjutnya bisa dinikmati di layar televisi.
Untuk resolusi warna media yang lebih besar, seperti untuk monitor komputer dan televisi, sistem yang digunakan adalah active-matrix LCD. Pada bidang ini, panel LCD disamping mempolarisasikan kristal cair juga matrix dari thin film transistor (TFT). Sistem ini akan menghasilkan gambar lebih tajam dan terang. Panel LCD pada TV ini biasanya memiliki transistor defective yang bisa memberikan efek gelap dan terang pada pixel.
Nematic liquid crystal
Jenis kristal cair yang digunakan dalam pengembangan teknologi LCD adalah tipe nematic (molekulnya memiliki pola tertentu dengan arah tertentu). Tipe yang paling sederhana adalah twisted nematic (TN) yang memiliki struktur molekul yang terpilin secara alamiah (dikembangkan pada tahun 1967). Struktur TN terpilin secara alamiah 90. Struktur TN ini dapat dilepas pilinannya (untwist) dengan menggunakan arus listrik.
Pada gambar 2, kristal cair TN (D) diletakkan di antara dua elektroda (C dan E) yang dibungkus lagi (seperti sandwich) dengan dua panel gelas (B dan F) yang sisi luarnya dilumuri lapisan tipis polarizing film. Lapisan A merupakan cermin yang dapat memantulkan cahaya yang berhasil menembus lapisan-lapisan sandwich LCD. Kedua elektroda dihubungkan dengan baterai sebagai sumber arus. Panel B memiliki polarisasi yang berbeda 90 dari panel F.
Begini cara kerja sandwich ajaib ini. Cahaya masuk melewati panel F sehingga terpolarisasi. Saat tidak ada arus listrik, cahaya lewat begitu saja menembus semua lapisan, mengikuti arah pilinan molekul- molekul TN (90), sampai memantul di cermin A dan keluar kembali. Akan tetapi, ketika elektroda C dan E (elektroda kecil berbentuk segi empat yang dipasang di lapisan gelas) mendapatkan arus, kristal cair D yang sangat sensitif terhadap arus listrik tidak lagi terpilin sehingga cahaya terus menuju panel B dengan polarisasi sesuai panel F. Panel B yang memiliki polarisasi yang berbeda 90 dari panel F menghalangi cahaya untuk menembus terus. Dikarenakan cahaya tidak dapat lewat, pada layar terlihat bayangan gelap berbentuk segi empat kecil yang ukurannya sama dengan elektroda E (berarti pada bagian tersebut cahaya tidak dipantulkan oleh cermin A).
Sifat unik yang dapat langsung bereaksi dengan adanya arus listrik ini dimanfaatkan sebagai alat ON/OFF LCD. Namun, sistem ini masih membutuhkan sumber cahaya dari luar. Komputer dan laptop biasanya dilengkapi dengan lampu fluorescent yang diletakkan di atas, samping, dan belakang sandwich LCD supaya dapat menyebarkan cahaya (backlight) sehingga merata dan menghasilkan tampilan yang seragam di seluruh bagian layar.
Mudah bukan? Akan tetapi, tunggu dulu, perancangan dan pembuatan LCD tidak semudah konsepnya. Masalah pertama disebabkan oleh tidak ada satu pun senyawa TN yang sudah ditemukan yang dapat memberikan karakteristik paling ideal. Wah, ini berarti kristal cair yang digunakan harus merupakan campuran berbagai senyawa TN. Untuk mencampur senyawa-senyawa ini, diperlukan percobaan untuk menentukan formulasi terbaik, dan hal ini bukan hal mudah. Kadang-kadang dibutuhkan sampai 20 macam senyawa TN untuk mendapatkan karakteristik yang diinginkan. Bayangkan, mencampur dua macam senyawa saja sudah sangat sulit karena karakteristik masing-masing (misalnya rentang suhu) saling memengaruhi. Belum lagi penentuan titik leleh campuran yang terbentuk. Selain itu, kristal cair TN yang terpilin sebesar 90 membutuhkan beda potensial sebesar 100 persen untuk mencapai posisi untwist (posisi ON). Wow!!! Besar sekali! Dan, sangat tidak efisien! Lalu, bagaimana jalan keluarnya?
Super-twisted nematic dan thin-film transistor
Pada tahun 1980, Colin Waters (Inggris) memberikan solusi bagi masalah ini. Ia bersama Peter Raynes menemukan bahwa semakin besar derajat pilinan, beda potensial yang dibutuhkan semakin kecil. Pilinan yang menunjukkan beda potensial paling kecil adalah 270. Penemuan ini menjadi dasar dikembangkannya super-twisted
nematic (STN) yang sampai sekarang digunakan pada telepon seluler sampai layar laptop.
Pada waktu yang hampir bersamaan pula, Peter Le Comber dan Walter Spear (juga dari Inggris) menemukan solusi lain dengan cara menggunakan bahan semikonduktor silikon amorf untuk membuat thin-film transistor (TFT) pada tiap pixel TN. Metode ini menghasilkan tampilan dengan kualitas tinggi, tetapi memerlukan biaya produksi yang sangat mahal dan melibatkan proses pembuatan yang rumit. Tentu saja rumit! Karena, untuk menghasilkan gambar dengan kualitas 256 subpixel, diperlukan sejumlah 256 pixel warna merah x 256 pixel biru x 256 pixel hijau. Tunggu sebentar! 256 x 256 x 256 = 16.8 juta. 16.8 juta transistor super mini harus dibuat dan dilekatkan ke lapisan TN? Rumit dan melelahkan! Tentu saja biayanya menjadi sangat mahal!
Akan tetapi, seiring dengan semakin majunya teknologi, biaya pembuatan TFT sedikit demi sedikit bisa ditekan karena ada penyederhanaan proses pembuatannya. Namun, STN pun tidak mau kalah saingan! Kualitas tampilan STN semakin lama pun semakin baik sehingga keduanya terus bersaing ketat dan mendominasi pasar. Perkembangan teknologi LCD semakin pesat dalam dekade terakhir. Kepopuleran LCD terutama karena kualitas gambar yang baik, konsumsi energi yang kecil, serta kekuatan materi kristal cair yang tidak pernah mengalami degradasi. Penelitian lanjut terus dikembangkan untuk mencapai target yang sangat bervariasi, mulai dari usaha memproduksi LCD untuk ukuran layar yang semakin besar sampai kemungkinan alternatif komponen dengan bahan plastik yang lebih ringan. Sasaran utama yang paling dikejar sebagian besar produsen adalah LCD yang tidak lagi menggunakan backlight.
a. Kelebihan Monitor LCD Konsumsi listrik rendah
Tidak menghasilkan radiasi elektromagnet yang mengganggu kesehatan
Tidak menimbulkan efek kedipan (flicker free)
Area layarnya optimum karena tidak termakan untuk bezel/frame
Dimensinya tidak akan menyita ruangan terlalu besar dan ringan untuk dijinjing
Bentuknya stylish dan enak dilihat Sinyal gambar digital
b. Kekurangan Monitor LCD
Harganya lebih mahal dibandingkan dengan monitor CRT Kualitas gambar yang dihasilkan belum sebaik monitor CRT Resolusi gambar yang dihasilkan lebih rendah dibandingkan
monitor CRT
Sudut viewable-nya terbatas. Begitu kita mengeset sudut pandang, gambar terlihat akan berubah di mata kita.
OLED
Informasi warna TV OLED diproduksi menggunakan campuran carbon-based organik, yang memancarkan [cahaya/ ringan] merah, biru dan hijau sebagai jawaban atas arus elektrik. OLED Beda paling dari LCD di (dalam) yang tidak ada backlight dan tidak (ada) “ menjadi bengkok” kristal. Tidak ada sumber [cahaya/ ringan] tambahan yang diperlukan untuk memberi tenaga campuran warna yang organik, oleh karena itu mereka menggunakan dengan sangat lebih sedikit [kuasa/ tenaga] dan dapat dihasilkan dengan suatu profil [yang] tipis/encer. panel TV OLED datang dengan baik dua maupun tiga lapisan yang campuran yang organik ditempatkan; terletak satu lapisan [yang] tipis/encer hebat “ gelas/kaca”. Panel didukung oleh
suatu [sulit/keras] plexiglass yang material juga melindungi material bagian dalam yang sensitip. Ingat CRT ( tabung sinar katode) TEVE? Pajangan OLED menggunakan suatu lapisan katode untuk memperkenalkan elktron kepada lapisan dasar [dari;ttg] molekul organik. Apakah di/tersebar ke seberang suatu flat-panel menyaring atau yang ditempatkan jantungnya suatu proyektor, semua LCD pajangan datang dari latar belakang teknologi yang sama. Suatu acuan/matriks thin-film transistor ( TFTS) voltase persediaan ke sel liquid-crystal-filled menyisipkan dua lembar;seprai gelas/kaca. Ketika dipukul dengan suatu [beban/ tugas] elektrik, kristal menguraikan [bagi/kepada] suatu derajat tingkat tepat untuk menyaring cahaya putih yang dihasilkan oleh suatu lampu di belakang layar ( untuk/karena flat-panel TEVE) atau sese]orang memproyeksikan melalui suatu LCD chip kecil ( untuk/karena TEVE proyeksi). LCD TEVE reproduksi warna melalui suatu proses pengurangan: Mereka membuat perencanaan panjang gelombang warna tertentu dari spektrum cahaya putih sampai mereka (ada)lah meninggalkan dengan warna sekedar kebenaran. Dan, adalah kuat cahaya diijinkan untuk menerobos acuan/matriks hablur cair ini yang memungkinkan LCD televisi untuk memajang gambaran chock-full colors-or gradasinya.
BAB 5
PRIMITIF OBJEK
Primitif objek terdiri atas :- Titik, yaitu Vertex, dimana vertex merupakan acuan dasar - Garis, yaitu Line/Edge
- Bangun 2D (Face)
Fungsi Dasar Menggambar Titik
Berikut adalah beberapa fungsi didalam menggambar suatu titik:
glVertex2i(x,y), yaitu suatu fungsi untuk menggambar titik pada koordinat x dan y, dengan nilai satuan berupa integer. Contoh glVertex2i(10,10);
glVertex2f(x,y), yaitu suatu fungsi untuk menggambar titik pada koordinat x dan y, dengan nilai satuan berupa float. Contoh glVertex2f(10.0,10.0);
glVertex2d(x,y), yaitu suatu fungsi untuk menggambar titik pada koordinat x dan y, dengan nilai satuan berupa double. Contoh glVertex2d(10.0,10.0);
Berikut adalah primitive objek yang akan dipergunakan didalam pembuatan suatu objek :
# define GL_POINTS, Primitif objek ini dipergunakan untuk menciptakan suatu titik.
# define GL_LINES, Primitif objek ini adalah suatu primitive objek guna menciptakan suatu garis.
Rumus :
∑vertex = 2N
# define GL_LINE_LOOP # define GL_LINE_STRIP
Rumus pada line strip :
# define GL_TRIANGLES, Triangle atau segitiga adalah tiga buah titik yang terhubung menjadi suatu segitiga dengan blok di tengahnya.
Pada penggunaan primitive objek ini kita harus menggunakan minimal 3 buah vertex guna membentuk suatu objek.
Rumus :
∑vertex = N + 1
Keterangan :
N = Jumlah Segitiga
# define GL_TRIANGLES_STRIP, Pada triangles strip jumlah vertex yang dipergunakan adalah 4 buah vertex. # define GL_TRIANGLE_FAN, Triangles fan adalah
pembuatan suatu objek dengan menggunakan segitiga dimana hanya menggunakan 1 titik pusat saja.
# define GL_QUADS, Quad atau segempat adalah empat buah titik yang terhubung menjadi suatu segempat dengan blok di tengahnya.
# define GL_QUADS_STRIP, Pada quads strip 4 buah vertex merupakan 1 kelompok.
Langkah rendering pada quads strip :
a. Nomor yang berhadap (membentuk 2 garis yang sejajar) b. Nomor ganjil dengan nomor ganjil dipertemukan c. Nomor genap dengan nomor genap dipertemukan d. Garis yang tersisa akan dipertemukan
# define GL_POLYGON, Polygon merupakan suatu fungsi yang mirip dengan polyline, tetapi menghasilkan kurva tertutup dengan blok warna (fill). Rendering yang dimiliki oleh GL_POLYGON sama dengan GL_TRIANGLE_FAN Catatan :
a. glLineWidth yaitu suatu fungsi yang berfungsi untuk mengatur tebalnya garis
b. glPointSize yaitu suatu fungsi yang berfungsi untuk mengatur besarnya suatu objek
c. gluOrtho2D yaitu suatu fungsi untuk mengatur proyeksi hasil eksekusi dan mendefinisikan besarnya sistem koordinat dengan urutan kiri-kanan dan bawah-atas
3. Color
Untuk memberi warna pada objek, seperti titik atau garis, dapat dilakukan dengan menggunakan fungsi à glColor3f(red,green,blue); Di mana red, green, blue berada pada 0 sampai dengan 1, yang menunjukkan skala pencerahan dari masing-masing skala.
Berikut adalah beberapa fungsi color : 1. glColor3f(0,0,0);//black 2. glColor3f(0,0,1);//blue 3. glColor3f(0,1,0);//green 4. glColor3f(0,1,1)//cyan 5. glColor3f(1,0,0)//red 6. glColor3f(1,0,1)//magenta 7. glColor3f(1,1,0);//yellow 8. glColor3f(1,1,1);//white 4. SegiEmpat
Proses Rendering :
SegiEmpat (posx, posy, w, h) Maka sintaks pembuatan segiempat : glBegin (GL_QUADS);
glVertex2i (posx, posy); glVertex2i (posx-w, posy); glVertex2i (posx-w, posy-h); glVertex2i (posx,posy-h);
OUTPUT PRIMITIF
Gambar dapat dijelaskan dengan beberapa cara, bila menggunakan raster display, gambar ditentukan oleh satu set intensitas untuk posisi display pada display. Sedangkan dengan scene tampilan gambar dengan loading array dari pixel ke dalam buffer atau dengan mengkonversikan scan dari grafik geometri tertentu ke dalam pola pixel. Paket grafika dilengkapi dengan fungsi untuk menyatakan scene dalam bentuk struktur. Paket pemrograman grafika dilengkapi dengan fungsi untuk menyatakan scene dalam bentuk struktur dasar geometri yang disebut output primitif, dengan memasukkan output primitif tersebut sebagai struktur yang lebih kompleks.
1. Titik dan Garis
Pembentukan titik dilakukan dengan mengkonversi suatu posisi titik koordinat dengan program aplikasi ke dalam suatu operasi
tertentu menggunakan output. Random-scan (vektor ) system menyimpan instruksi pembentukan titik pada display list dan nilai koordinat menentukan posisi pancaran electron ke arah lapisan fosfor pada layer. Garis dibuat dengan menentukan posisi titik diantara titik awal dan akhir dari suatu garis.
Algoritma pembentukan garis
Persamaan garis menurut koordinat Cartesian adalah : y = m.x+b dimana m adalah slope (kemiringan) dari garis yang dibentuk oleh dua titik yaitu (x1, y1) dan (x2, y2). Untuk penambahan x sepanjang garis yaitu dx akan mendapatkan penambahan y sebesar : ∆y = m. ∆X
a. Algoritma garis DDA
DDA adalah algoritma pembentukan garis berdasarkan perhitungan x dan y, menggunakan rumus y = m. x. Garis dibuat dengan menentukan dua endpoint yaitu titik awal dan titik akhir. Setiap koordinat titik yang membentuk garis diperoleh dari perhitungan, kemudian dikonversikan menjadi nilai integer. Langkah-langkah pembentukan menurut algoritma DDA, yaitu :
1. Tentukan dua titik yang akan dihubungkan.
2. Tentukan salah satu titik sebagai titik awal (x0, y0) dan titik akhir (x1, y1).
4. Tentukan step, yaitu jarak maksimum jumlah penambahan nilai x maupun nilai y dengan cara :
bila nilai |∆y| > |∆x| maka step = nilai |∆y|. bila tidak maka step = |x|.
5. Hitung penambahan koordinat pixel yaitu x_increment = x / step dan y_increment = y / step.
6. Koordinat selanjutnya (x+x_incerement, y+y_increment).
7. Posisi pixel pada layer ditentukan dengan pembulatan nilai koordinasi tersebut.
8. Ulangi step 6 dan 7 untuk menentukan posisi pixel selanjutnya, sampai x = x1 dan y = y1.
Contoh : Untuk menggambarkan algoritma DDA dalam pembentukan suatu garis yang menghubungkan titik (10,10) dan (17,16), pertama-tama ditentukan dx dan dy, kemudian dicari step untuk mendapatkan x_increment dan y_increment.
∆x = x1 - x0 = 17-10 = 7 ∆y = y1 - y0 = 16 -10 = 6
selanjutnya hitung dan bandingkan nilai absolutnya. |∆x| = 7
|∆y| = 6
karena |∆x| > |∆y|, maka step = |∆x| = 7, maka diperoleh : x_inc = 7/7= 1
Algoritma Garis Bressenhem
Prosedur untuk menggambar kembali garis dengan membulatkan nilai x atau y kebilangan integer membutuhkan waktu, serta variable x,y dan m merupakan bilangan real karena kemiringan merupakan nilai pecahan. Bressenham mengembangkan algoritma klasik yang lebih menarik,
karena hanya menggunakan perhitungan matematika dengan bilangan integer. Dengan demikian tidak perlu membulatkan nilai posisi setiap pixel setiap waktu. Algoritma garis Bressenhem disebut juga midpoint line algorithm adalah algoritma konversi penambahan nilai integer yang juga dapat diadaptasi untuk menggambar sebuah lingkaran. Langkah-langkah untuk membentuk garis menurut algoritma ini adalah :
1. Tentukan dua titik yang akan dihubungkan dalam pembentukan garis.
2. Tetukan salah satu titik disebelah kiri sebagai titik awal (x0, y0) dan titik lainnya sebagai titik akhir (x1, y1). 3. Hitung ∆x, ∆y, 2∆x, dan 2∆y – 2∆x.
4. Hitung parameter p0 = 2∆y – ∆x.
5. Untuk setiap xk sepanjang jalur garis, dimulai dengan k = 0
bila pk <0 maka titik selanjutnya (xk+1, yk) dan pk+1 = pk +2y
bila tidak maka titik selanjutnya adalah (xk +1, yk +1)dan
pk+1 = pk +2y–2x.
6. Ulangi langkah nomor 5 untuk menentukan posisi pixel selanjutnya, sampai x = x1 dan y = yk.
Contoh : Untuk menggambarkan algoritma Bressenham dalam pembentukan suatu garis yang menghubungkan titik
(10,10) dan (17,16), pertama-tama ditentukan bahwa titik (10,10) berada disebelah kiri merupakan titik awal, sedangkan (17,16) merupakan titik akhir. Posisi yang membentuk garis dapat ditentukan dengan perhitungan sebagai berikut :
∆x = x1 – x0 dan ∆y= y1 – y0 ∆x = 7 dan ∆y = 6 parameter p0 = 2y – x p0 = 5 increment 2∆y = 12 2∆y – 2∆x = -2
Algoritma Pembentukan Lingkaran
Pada umumnya, lingkaran digunakan sebagai komponen dari suatu gambar. Prosedur untuk menampilkan lingkaran dan elips dibuat dengan persamaan dasar dari lingkaran x2+y2=r2 . Lingkaran adalah kumpulan dari titik-titik yang memiliki jarak dari titik pusat yang sama untuk semua titik. Lingkaran dibuat dengan menggambarkan seperempat lingkaran, karena bagian lain dapat dibuat sebagai bagian yang simetris. Penambahan x dapat dilakukan dari 0 ke r sebesar unit step, yaitu menambahkan ± y untuk setiap step. Simetris delapan titik Proses pembuatan lingkaran dapat dilakukan dengan menentukan satu titik awal. Bila titik awal pada lingkaran (x,y), maka terdapat tiga posisi lain, sehingga dapat diperoleh delapan titik. Dengan demikian, hanya diperlukan