Tampilkan postingan dengan label grafika komputer. Tampilkan semua postingan
Tampilkan postingan dengan label grafika komputer. Tampilkan semua postingan

Rabu, 01 Mei 2013

Animasi 2 Dimensi



Animasi 2 dimensi artinya membuat objek grafik 2-D menjadi bergerak. Animasi yang dilakukan adalah memindahkan posisi gambar. Pada system koordinat kartesian animasi akan bergerak liner(translasi), pada system koordina polar akan berefek gerakan berputar(rotasi). Pemindahan ini bias dengan translasi, maupun dengan rotasi.
Rotasi pada glut :
glRotatef (sudut, x, y, z), glRotated (sudut, x, y, z)
parameter sudut digunakan untuk besar sudut putaran. Sudut rotasi adalah besaran yang menentukan seberapa jauh sebuah titik akan diputar. Parameter x digunakan untuk untuk putaran berdasarkan sumbu x, parameter y untuk putaran berdasarkan sumbu y, parameter z untuk putaran berdasarkan sumbu z.
Gambar 1. Ilustrasi Rotasi

Translasi pada glut :
glTranslatef (x, y, z), glTranslated (x, y, z)
Translasi merupakan memindahkan posisi suatu objek, baik pada sumbu x, sumbu y, maupun sumbu z. parameter x digunakan untuk menentukan arah dan seberapa jauh suatu benda akan dipindahkan berdasarkan sumbu x. y digunakan untuk menentukan arah dan seberapajauh suatu benda akan dipindahkan berdasarkan sumbu y. Sedangkan parameter z digunakan untuk menentukan arah dan seberapajauh suatu benda akan dipindahkan berdasarkan sumbu z.
Gambar 2. Ilustrasi Translasi

Pembuatan Animasi dengan Menggunakan Timerfunction pada glut
Void Timer (int value){
      glutPostRedisplay();
      glutTimerFunc(insigned milis, GLUT function (callback), int value);
}
Fungsi dari glutRedisplay adalah mengirimkan perintah untuk mengaktifkan display secara barkala (looping).
Fungsi glutTimerFunc digunakan untuk mengatur waktu objek untuk pindah posisi dari titik awal ke titik tujuan.

Pada fungsi main ditambahkan :
Void main (int argc, char ** argv){
/*……………………………………………..*/
glutTimerFunc(unsigned millis, GLUT function (callback), int value);
}

GLUT (OpenGL Utility Toolkit)


       OpenGL adalah suatu graphic library yang sebagian bersifat open source, dipakai pada banyak platform (windows, linux) dan dapat digunakan pada berbagai jenis compiler seperti C++ atau Delphi. OpenGL bukanlah bahasa pemrograman tetapi merupakan suatu Application Programming Interface (API). Sintaks perintah OpenGL mengikuti aturan penulisan dari library dimana fungsi tersebut berasal, format penulisan fungsi OpenGL adalah :
<awalan library><perintah><optional jumlah argumen><optional tipe argumen>

    Semua perintah OpenGL menggunakan awalan gl diikuti dengan huruf kapital pada setiap kata membentuk nama perintah (sebagai contoh glClearColor). Untuk mendefinisikan konstanta diawali dengan GL_, dengan menggunakan huruf kapital dan garis bawah untuk memisahkan kata (seperti GL_POLY_STIPPLE). Terkadang beberapa huruf dan angka ditambahkan pada akhir perintah (seperti 3f pada glVertex3f). Dalam hal ini angka 3 menunjukkan berapa banyak argumen yang harus ada pada perintah tersebut dan akhiran huruf f menunjukkan jenis datanya yaitu floating.

     OpenGL menyediakan set perintah untuk menggambar dan semua penggambaran yang lebih tinggi tingkatnya harus dilakukan dengan mengambil fungsi dasar dari perintah ini. Maka dari itu dapat dibuat library itu sendiri di atas program OpenGL yang mempermudah pemrograman lebih lanjut.

      Fungsi asli dari OpenGL sendiri selalu diawali dengan GL yang terdapat pada library opengl32.dll dan file header gl.h. Sedangkan beberapa library yang telah ditulis untuk menyediakan fungsi-fungsi tambahan pada OpenGL adalah :

1.     OpenGL Utility Library (GLU) yang didalamnya terdapat sejumlah rutin yang menggunakan level bawah dari perintah OpenGL. Rutin-rutin ini mempunyai awalan glu. Library ini digunakan sebagai bagian dari implementasi OpenGL.
2.       OpenGL Extension untuk X-Windows yang menyediakan fungsi untuk menciptakan OpenGL context dan mengasosiasikannya dengan mesin yang menggunakan X-Windows. Rutin-rutin ini mempunyai awalan glx.
3.       Auxiliary atau aux library terdapat pada library glaux.lib dan file header glaux.h. Perintah yang akan digunakan selalu menggunakan awalan aux
4.        OpenGL Utility Toolkit (GLUT) adalah toolkit untuk sistem windows yang ditulis oleh Mark Kilgard untuk menyembunyikan perintah API sistem windows yang kompleks.

A.  Pengenalan GLUT
Sistem Koordinat didalam laptop ada 3 yaitu :
-    Open GL
-    Sistem Operasi

Mengikuti resolusi (variabel)
-    Fisik  (bersifat statis)

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 menggunakan pemrograman 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, dan lain-lain.