API
API singkatan dari Application Program Interface. API adalah interface yang digunakan oleh aplikasi-aplikasi 3D (tiga dimensi). Seperti contohnya game 3D atau aplikasi lain yang memberikan tampilan 3D. Untuk saat ini, ada dua macam API yang sangat umum digunakan yaitu OpenGL dan DirectX . Selain keduanya masih ada dua API lagi, yaitu Glide dari Voo doo dan Redline. Namun kedua yang terakhir ini sudah sangat jarang muncul.
Open GL
OpenGL (Open Graphics Library) adalah spesifikasi standar yang mendefinisikan sebuah cross-bahasa, cross-platform API untuk menulis aplikasi yang menghasilkan komputer 2D dan 3D grafis. Antarmuka terdiri dari lebih dari 250 panggilan fungsi yang berbeda yang dapat digunakan untuk menggambar tiga dimensi yang kompleks adegan-adegan dari primitif sederhana. OpenGL dikembangkan oleh Silicon Graphics Inc (SGI) pada tahun 1992 [2] dan secara luas digunakan dalam CAD, virtual reality, visualisasi ilmiah, visualisasi informasi, dan simulasi penerbangan. Hal ini juga digunakan dalam video game, di mana bersaing dengan Direct3D on Microsoft Windows platform (lihat vs OpenGL Direct3D). OpenGL dikelola oleh sebuah teknologi nirlaba konsorsium yaitu Khronos Group.
OpenGL adalah suatu library grafis standard yang digunakan untuk keperluan-keperluan
pemrograman grafis. Selain OpenGL, library grafis yang banyak digunakan adalah DirectX.
OpenGL bersifat Open-Source, multi-platform dan multi-language. Saat ini semua bahasa
pemrograman mendukung OpenGL. Dan OpenGL bisa bekerja dalam lingkungan Windows, Unix, SGI, Linux, freeBSD dll.
Library dasar dari OpenGL adalah GLUT, dengan fasilitas yang bisa dikembangkan. GLUT dipilih karena di dalamnya telah terdapat banyak fungsi yang dapat dipakai untuk pembuatan application window. Disamping itu, windowing pada GLUT juga bersifat independen terhadap sistem operasi, sehingga kita tidak perlu repot-repot untuk mengubah kode program jika diterapkan pada sistem operasi yang berbeda.
Untuk sistem operasi Windows, library bini terdiri dari 3 files yaitu:
- glut.h
- glut32.lib
- glut32.dll
Untuk membuat aplikasi menggunakan OpenGL, terlebih dahulu kita membutuhkan suatu konsepsi interfacing dalam implementasinya. Salah satu cara yang sudah umum digunakan adalah dengan membuat window-based OpenGL. Untuk dapat membuat konsep windowing pada OpenGL, kita memerlukan tool tertentu.
Berikut adalah contoh gambar sederhana yang dibuat dengan visual studio c++
Berikut adalah contoh gambar sederhana yang dibuat dengan visual studio c++
#include "stdafx.h"
#include "glut.h"
void Draw() {
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0, 0.0, 1.0);
glBegin(GL_TRIANGLES);
glVertex3f(0.20, 0.5, 0.0);
glVertex3f(0.2, 0.8, 0.0);
glVertex3f(0.8, 0.8, 0.0);
glEnd();
glFlush();
}
void Initialize() {
glClearColor(1.0, 1.0, 1.0, 0.0);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
}
int main(int iArgc, char** cppArgv) {
glutInit(&iArgc, cppArgv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(200, 200);
glutInitWindowPosition(150, 150);
glutCreateWindow("Segitiga");
Initialize();
glutDisplayFunc(Draw);
glutMainLoop();
return 0;
}