Sabtu, 02 April 2011

Komputer Grafik dengan OpenGL dan C


Komputer Grafik dengan OpenGL dan C

Komputer Grafik adalah segala aspek yang terkait dengan pembuatan images menggunakan komputer baik berupa software, hardware maupun applications, contoh sebagai ilustrasi adalah bagaimana kita menggambar sebuah bola worldcup dalam komputer dengan cahaya kemilau, software atau hardware apa yang kita perlukan,

Basic Graphic System adalah bagaimana proses sebuah citra dapat ditampilkan di komputer, adalah pertama melalui sebuah input device kemudian melalui prosesor yang bekerja sama dengan memory dan diteruskan oleh sebuah frame buffer kemudian baru dikeluarkan ke sebuah alat output(monitor).


CRT (monitor) digunakan sbg perangkat line-drawing (callgraphic) ataupun untuk menampilkan contents dari sebuah frame buffer (raster mode).

Awal perkembangan komputasi komputer grafik :
  • Strip charts
  • Pen plotters
  • Simple displays using A/D converters to go from computer to calligraphic CRT
Cost of refresh bagi CRT terlalu tinggi
Økomputer lambatmahalkurang handal (unreliable)

Computer Graphics: 1960-1970

§Grafika Wireframe
ØDraw only lines
§Sketchpad
§Display Processors
§Storage tube

Sketchpad
Ivan Sutherland’s PhD thesis at MIT
Dikenalinya potensi interaksi antara manusia-mesin
-loop
--Display something
--User moves light pen
--Computer generates new display
sutherland berhasil mengemukakan beragam algoritma yang hingga saat ini banyak digunakan
pada komputer grafik

Kemajuan dalam komputer grafis adalah berasal dari seorang mahasiswa MIT, Ivan Sutherland. Pada tahun 1961 Sutherland menciptakan program komputer untuk menggambar yang disebut Sketchpad*. Dengan menggunakan Light Pen, Sketchpad dapat menggambar bentuk sederhana pada layar komputer, menyimpan mereka dan bahkan bisa memanggil mereka lagi nanti. Light pen itu sendiri memiliki sel fotolistrik kecil di ujungnya. Sel ini dipancarkan pulsa elektronik setiap kali ditempatkan di depan layar komputer dan pistol elektron layar itu ditembakkan langsung dalam. Dengan waktu yang singkat pulsa elektronik ini tahu dimana lokasi electron gun, ini mudah untuk menentukan persis di mana pena ini di layar pada saat tertentu. Begitu yang ditentukan, komputer kemudian bisa menggambar kursor di lokasi itu.

Sutherland tampaknya terus mencari solusi yang sempurna untuk banyak masalah grafis yang dihadapinya. Bahkan saat ini, banyak standar grafis komputer interface mulai mendapatkan masalah dengan program Sketchpad awal. Salah satu contoh dari hal ini adalah dalam batasan menggambar. Jika seseorang ingin menggambar persegi misalnya, ia tidak perlu khawatir tentang menggambar empat baris sempurna untuk membentuk tepi kotak. Satu hanya dapat menentukan bahwa ia ingin menggambar kotak, dan kemudian tentukan lokasi dan ukuran kotak. Perangkat lunak kemudian akan membangun sebuah kotak yang sempurna, dengan dimensi yang tepat dan di lokasi yang tepat. Contoh lain adalah bahwa perangkat lunak Sutherland model objek - tidak hanya gambar objek. Dengan kata lain, dengan model mobil, orang bisa mengubah ukuran ban tanpa mempengaruhi sisa mobil. Itu bisa meregangkan tubuh mobil tanpa deformasi ban. 

*Sketchpad adalah suatu program revolusioner yang ditulis oleh Ivan Sutherland pada tahun 1963 untuk disertasi Phd-nya. Program tersebut membantu merubah cara orang berinteraksi dengan komputer. Sketchpad dianggap sebagai nenek moyang dari program Computer Aided Drafting (CAD) dan menjadi suatu terobosan utama di dalam pengembangan grafik komputer secara umum. Ivan Sutherland mempertunjukkan grafik komputer dapat digunakan untuk tujuan teknis dan artistik.

Display Processor
-Display processor (DPU), sebuah komputer yang memiliki tugas khusus untuk refresh display, hal ini lebih efisien dibandingkan penggunaan host computer
-Graphics stored in display list (display file) on display processor
-Host compiles display list and sends to DPU


Direct View Storage Tube
+Dibuat oleh Tektronix
 -Tidak membutuhkan constant refresh
 -Standard interface to computers
 -Allowed for standard software
 -Plot3D in Fortran
 +Relatively inexpensive
 -Opened door to use of computer graphics for CAD community

Computer Graphics: 1970-1980
  • Raster Graphics
  • Beginning of graphics standards
Ø  IFIPS (International Federation of Information Processing Societies)
          GKS: European effort
        Becomes ISO 2D standard
          Core: North American effort
         3D but fails to become ISO standard
  • Workstations and PCs


Raster Graphic

  • Image diproduksi sebagai array (the raster) dari picture elements (pixels) pada suatu frame buffer
  • Dimungkinkaannya beranjak dari mode lines dan wire frame images menuju pembentukan filled polygons
PCs and Workstation
  • Meskipun tidak dinyatakan secara gamblang perbedaaan diantara workstations dan PCs, secara history keduanya berkembang dari akar yang berbeda
Ø  Early workstations characterized by
          Networked connection: client-server model
          High-level of interactivity
Ø  Early PCs included frame buffer as part of user memory
          Easy to change contents and create images

OpenGL adalah sebuah software antarmuka yang berguna untuk pemgraman grafis hardware, singkatan GL bearti adalah graphic Library, yang mana berguna untuk membuat interaktif program yang menghasilkan perpindahan gambar berwarna 3D, dengan OpenGL, kita dapat mengontrol grafik komputer untuk menghasilkan suatu gambar yang realistis,