OpenGL (Pendahuluan)
OpenGL adalah suatu
perangkat pembuat grafis standard yang digunakan untuk keperluan – keperluan
pemrograman grafis. 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 . 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 menginstall (Dev C++ dan OpenGL)
Apa bila
komputer anda tidak terinstal Dev C++, lalu instal Dev C++ seperti halnya
menginstal aplikasi lainnya. lalu untuk menjalankan / membuat file OpenGL anda
harus memiliki Headernya , anda bisa mendownloadnya, dan untuk menginstal
header OpenGL berikut adalah langkahnya :
1. Masuk kedalam Dev C++
2. Klik menu
tools > Pilih Package manager seperti gambar di bawah :
3.
Klik Install seperti gambar di bawah :
4. ganti Files of Type menjadi (generic packages) ada
file berekstensi (.rar atau .zip ) terbaca.
5. Klik
open,lalu ikuti langkah-langkahnya sampai selesai terinstal.
Lalu setelah selesai menginstal Dev c++ dan header
openGL, selanjutnya kita mencoba untuk langsung membuat tugas program sederhana
kita,cara membuat file baru adalah :
- Klik menu File > Pilih New > Project .
- Pada bagian ini pilih tag Multimedia > lalu klik OpenGL dan beri nama Project.
Membuat garis Vertikal
Untuk membuat garis
vertikal , lihat pada project. begitu kita selesai membuat project pasti yang
muncul adalah bukan lembar kerja kosong pada umumnya,tetapi lembar kerja yang
sudah terisi source code untuk openGL ini. yang harus kita lakukan adalah
mencari bagian yang bertuliskan /* OpenGL animation code goes here */ . untuk
mengerjakan program dengan file multimedia OpenGL kita cukup mengubah-ubah pada
bagian ini saja
Untuk membuat garis vertikal kita bisa tuliskan koding
seperti gambar di bawah ini :
atau apabila
gambar tidak terlihat jelas bisa dilihat source code dibawah ini :
/*Untuk
membuat garis Vertikal*/
glClearColor
(0.0f, 0.0f, 0.0f, 0.0f); untuk memilih warna yang
digunakan untuk membersihkan latar dalammode RGBA lalu ada glClear GL_COLOR_BUFFER_BIT; digunakan untuk membersihkan layar latar belakang dengan
warna hitam lalu ada glPushMatrix(); Membuat baris kode menjadi tidak berlaku
untuk bagian luar glClearColor (1,1,1,0); untuk menentukan warna
garis/titik
glColor3f (1,1,1); untuk menentukan warna
garis/titik glBegin(GL_LINES); untuk menggambar garis dari titik
yang digunakan glColor3f (1,1,1);
glVertex3f (0.10,10.0,13.13); untuk menentukan titik awal yang
digunakan
glVertex3f (0,0,0.0); untuk menentukan titik akhir yang
digunakan
glEnd(); untuk mengakhiri gambar garis
dititik akhir
glPopMatrix(); Membuat baris kode menjadi tidak
berlaku untuk bagian luar
SwapBuffers
(hDC); digunakan untuk menukar bagian belakang buffer
menjadi buffer layar
Setelah selesai menuliskan code pada bagian yang sudah
saya beri tahu,coba jalankan file dengan mengcompile dengan menekan tombol F9 ,
file yang akan di compile akan meminta untuk di save, untuk itu save file dan
beri nama lalu jalankan dengan menekan tombol yang sama F9. jika tidak terdapat
error makan program langsung berjalan dan menghasilkan output :
Membuat garis Horizontal
Untuk membuat garis horizontal
kita bisa tuliskan koding seperti gambar di bawah ini :
// Untuk
membuat garis Horizontal //
glClearColor
(0.0f, 0.0f, 0.0f, 0.0f); untuk memilih warna yang
digunakan untuk membersihkan latar dalammode RGBA lalu ada glClear GL_COLOR_BUFFER_BIT; digunakan untuk membersihkan layar latar belakang dengan
warna hitam lalu ada glPushMatrix(); Membuat baris kode menjadi tidak berlaku
untuk bagian luar glClearColor (1,1,1,0); [untuk menentukan warna
garis/titik
glColor3 f(1,1,1); untuk menentukan warna garis/titik glBegin(GL_LINES); untuk menggambar garis dari titik yang digunakan glColor3f (-0.6f,0.0f,0.0f);
glVertex3f (0.6f,
0.0f, 0.0f); untuk
menentukan titik awal yang digunakan
glColor3f(0.0f,
0.0f, 1.0f); untuk
menentukan titik yang digunakan
glVertex3f(0.6f,
0.0f, 0.0f); untuk
menentukan titik akhir yang digunakan
glEnd(); untuk mengakhiri gambar garis
dititik akhir
glPopMatrix(); Membuat baris kode menjadi tidak
berlaku untuk bagian luar
SwapBuffers
(hDC); digunakan untuk menukar bagian belakang buffer
menjadi buffer layar
Setelah selesai menuliskan code pada bagian yang sudah
saya beri tahu,coba jalankan file dengan mengcompile dengan menekan tombol F9 ,
file yang akan di compile akan meminta untuk di save, untuk itu save file dan
beri nama lalu jalankan dengan menekan tombol yang sama F9. jika tidak terdapat
error makan program langsung berjalan dan menghasilkan output :
Membuat garis vertikal
Untuk membuat garis horizontal
kita bisa tuliskan koding seperti gambar di bawah ini :
//
Untuk
membuat garis Horizontal //
glClearColor
(0.0f, 0.0f, 0.0f, 0.0f); untuk memilih warna yang
digunakan untuk membersihkan latar dalammode RGBA lalu ada glClear GL_COLOR_BUFFER_BIT; digunakan untuk membersihkan layar latar belakang dengan
warna hitam lalu ada glPushMatrix(); Membuat baris kode menjadi tidak berlaku
untuk bagian luar glClearColor (1,1,1,0); [untuk menentukan warna
garis/titik
glColor3 f(1,1,1); untuk menentukan warna garis/titik glBegin(GL_LINES); untuk menggambar garis dari titik yang digunakan glColor3f (-0.6f,0.0f,0.0f);
glVertex3f (10.10,10.0,13.13); untuk menentukan titik awal yang
digunakan
glColor3f (1,1,1); untuk menentukan titik yang
digunakan
glVertex3f (0,0,0.0); untuk menentukan titik akhir yang
digunakan
glEnd(); untuk mengakhiri gambar garis
dititik akhir
glPopMatrix(); Membuat baris kode menjadi tidak
berlaku untuk bagian luar
SwapBuffers
(hDC); digunakan untuk menukar bagian belakang buffer
menjadi buffer layar
Setelah selesai menuliskan code pada bagian yang sudah
saya beri tahu,coba jalankan file dengan mengcompile dengan menekan tombol F9 ,
file yang akan di compile akan meminta untuk di save, untuk itu save file dan
beri nama lalu jalankan dengan menekan tombol yang sama F9. jika tidak terdapat
error makan program langsung berjalan dan menghasilkan output :