1. GLUT (OpenGL Utility Toolkit)
Dikembangkan oleh Mark Kilgard. GLUT merupakan pengembangan dari OpenGL
dimana memiliki keunggulan sebagai berikut:
· Mudah, portable
window manager, menggunakan callback functions untuk menambahkan interaksi dari
user.
· Didesain untuk aplikasi dengan level kecil
hingga menengah.
·
Distribusi library
bebas tetapi tidak open source.
2.
Pemrograman
berbasis event
GLUT pada dasarnya dibangun untuk menciptakan aplikasi grafis
menggunakanpemrograman yang bersifat prosedural. Di dalamnya terdapat fungsi main
loop yang diatur oleh GLUT dan looping yang terjadi dalam aplikasi
bertujuan untuk penanganan fungsi-fungsi callback sebagai input dari
user seperti fungsi redraw, mouse, keyboard, joystick, dll.
3.
Instalasi GLUT pada
windows dan aplikasi pengembangan Visual Studio 2008 Express
GLUT tidak secara otomatis dapat diaplikasikan karena membutuhkan
beberapa file tambahan antara lain glut.h, glut32.lib, glut32.dll yang
harus disimpan pada lokasi tertentu sesuai dengan aplikasi pengembangan yaitu
Visual Studio 2008 Express.
Glut (GL
Utility Toolkit) adalah hasil pengembangan dari openGL yang didesain dengan
level kecil dan menengah yang menggunakan function untuik menambah interaksi
dari user. Jika pemrogaman openGl menggunakan C++, maka diperlukan library
tambahan seperti Glut.h yang nantinya akan disalin ke drive :\Progam
Files\Microsoft Visual Studio\Vc\include\GL, Glut32.lib yang akan disalin ke
drive:\Progam Files\Microsoft Visual Studio\Vc\llb, Glut32 yang harus di salin
di ke drive :\Windows\System
Setiap fungsi di
atas memiliki code-code tersendiri dalam pengaplikasiannya pada grafika
komputer. Antara lain :
1. Fungsi
Dasar Menggambar Titik
Berikut adalah
beberapa fungsi didalam menggambar suatu titik :
a. glVertex2i(x,y)
Yaitu suatu fungsi
untuk menggambar titik pada koordinat x dan y, dengan nilai satuan berupa
integer. Contoh glVertex2i(10,10);
b. 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);
c. 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);
2. Membuat
suatu objek
Berikut adalah primitive objek yang akan dipergunakan
didalam pembuatan suatu objek :
a. # define GL_POINTS
Fungsi di atas digunakan untuk menciptakan suatu titik.
b. # define GL_LINES
Fungsi di atas digunakan untuk menciptakan suatu garis
c. # define GL_TRIANGLES
Triangle adalah tiga buah titik yang terhubung menjadi suatu
segitiga dengan blok di tengahnya.
d. # define GL_TRIANGLES_STRIP
Pada triangles strip jumlah vertex
yang dipergunakan adalah 4 buah vertex.
Ilustrasi :
e. # define GL_TRIANGLE_FAN
Triangles fan digunakan untuk pembuatan suatu objek dengan
menggunaka segitiga dimana hanya menggunakan 1 titik pusat saja.
Ilustrasi :
f. # define GL_QUADS
Quad atau segempat merupakan empat buah titik yang terhubung
menjadi suatu segi empat dengan blok di tengahnya.
g. # define GL_QUADS_STRIP
Pada quads strip 4 buah
vertex merupakan 1 kelompok
Ilustasi :
Langkah rendering pada quads strip :
1.
Nomor yang berhadap (membentuk 2 garis yang sejajar)
2.
Nomor ganjil dengan nomor ganjil dipertemukan
3.
Nomor genap dengan nomor genap dipertemukan
4.
Garis yang tersisa akan dipertemukan
h. #
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
Namun ada beberapa catatan yang
berhubungan dalam membuat poligon, meliputi :
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
contoh program GLUT:
SCRIPT:
OUTPUT:
contoh program GLUT:
SCRIPT:
#include <stdlib.h>
#include <glut.h>
void renderScene(void)
{
/*...*/
}
void main(int argc,
char **argv){
glutInit(&argc,argv);
/*...*/
glutCreateWindow("Pemrograman
Grafika GLUT");
glutDisplayFunc(renderScene);
glutMainLoop();
}
OUTPUT:
Keren mbak postingannya bisa buat referensi
BalasHapusterimakasih dik semoga bermanfaat.. :)
Hapus