Membuat Aplikasi Grafis Sederhana dengan OpenGL di C++

Codeblocks,Komputer Grafik

OpenGL (Open Graphics Library) adalah salah satu pustaka grafis yang paling banyak digunakan untuk pemrograman grafis 2D dan 3D. Dengan OpenGL, kita dapat membuat aplikasi grafis yang mendukung tampilan visual yang sangat menarik. Pada artikel ini, kita akan membuat aplikasi grafis menggunakan OpenGL dan bahasa pemrograman C++.

Persiapan

Sebelum kita mulai, pastikan Anda sudah menginstal beberapa hal berikut:

  1. Dev C++ atau MinGW: Untuk menjalankan kode C++.
  2. OpenGL: Untuk menggambar grafik.
  3. FreeGLUT: Untuk mengelola jendela dan input dalam aplikasi OpenGL.

Langkah pertama adalah membuat program C++ sederhana menggunakan OpenGL. Berikut adalah contoh kode untuk membuat segitiga sederhana:

Kode Program C++

#include<windows.h>
#include<gl\glut.h>

// Fungsi untuk menggambar segitiga
void Display(){
    glClear(GL_COLOR_BUFFER_BIT); // Bersihkan layar
    glBegin(GL_TRIANGLES);        // Mulai menggambar segitiga
    glColor3f(0.0, 1.0, 0.0);    // Warna hijau
    glVertex2d(10., 10.);         // Titik pertama segitiga
    glVertex2d(10., 110.);        // Titik kedua segitiga
    glVertex2d(150., 110.);       // Titik ketiga segitiga
    glEnd();                      // Selesai menggambar
    glFlush();                    // Mengupdate tampilan
}

// Fungsi untuk mengatur ukuran jendela
void reshape(int w, int h){
    glViewport(0, 0, (GLsizei)w, (GLsizei)h); // Set ukuran viewport
    glMatrixMode(GL_PROJECTION); // Set mode proyeksi
    glLoadIdentity();            // Reset proyeksi
    gluOrtho2D(0.0, 320.0, 0.0, 240.0); // Set area tampilan
}

// Fungsi inisialisasi
void init(){
    glClearColor(1.0, 0.0, 0.0, 1.0); // Warna latar belakang merah
}

// Fungsi utama program
int main(int args, char* argv[]){
    glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); // Inisialisasi mode tampilan
    glutInitWindowSize(320, 240);                // Ukuran jendela
    glutCreateWindow("Windows OpenGL Pertama Saya"); // Nama jendela
    init();                                      // Panggil fungsi inisialisasi
    glutDisplayFunc(Display);                    // Set fungsi tampilan
    glutReshapeFunc(reshape);                    // Set fungsi reshape
    glutMainLoop();                              // Masukkan dalam loop utama
}

Penjelasan Kode

  1. Include Header Files:

    • windows.h: Digunakan untuk menangani operasi sistem Windows.
    • glut.h: Digunakan untuk mengelola jendela dan input dengan OpenGL.
  2. Fungsi Display: Fungsi ini bertanggung jawab untuk menggambar objek pada layar. Di sini, kita menggambar sebuah segitiga dengan tiga titik yang ditentukan oleh fungsi glVertex2d(). Warna segitiga diset menggunakan glColor3f().

  3. Fungsi reshape: Fungsi ini dipanggil ketika ukuran jendela berubah. Di sini, kita mengatur viewport dan proyeksi 2D agar objek yang digambar tetap dalam batas yang sesuai.

  4. Fungsi init: Fungsi ini digunakan untuk menginisialisasi pengaturan awal, seperti pengaturan warna latar belakang jendela menjadi merah.

  5. Fungsi main:

    • glutInitDisplayMode() digunakan untuk memilih mode tampilan, seperti mode warna RGB dan satu buffer.
    • glutCreateWindow() digunakan untuk membuat jendela dengan ukuran tertentu dan judul "Windows OpenGL Pertama Saya".
    • glutDisplayFunc() digunakan untuk menetapkan fungsi Display sebagai callback untuk menggambar objek.
    • glutReshapeFunc() digunakan untuk menetapkan fungsi reshape yang menangani perubahan ukuran jendela.
    • glutMainLoop() memulai loop utama, yang menjaga agar jendela tetap berjalan.

Menjalankan Program

  1. Compile Kode: Setelah menulis kode di atas, simpan file dengan ekstensi .cpp. Lalu, kompilasi dan jalankan di IDE atau menggunakan perintah di terminal.

  2. Output: Program akan menampilkan jendela dengan segitiga berwarna hijau di tengah-tengah jendela berwarna merah.

  3. Codeblocks,Komputer Grafik,

Kesimpulan

Dengan menggunakan kode sederhana di atas, Anda sudah dapat membuat aplikasi grafis dasar dengan OpenGL dalam bahasa C++. Kode ini menggambar segitiga di layar dengan menggunakan fungsi-fungsi dasar OpenGL, dan Anda dapat mengembangkan lebih jauh dengan menambahkan objek atau interaksi lainnya. OpenGL adalah alat yang sangat kuat, dan artikel ini hanya mencakup dasar-dasar dari penggunaannya. Selamat mencoba!


Komentar