Anda di halaman 1dari 20

Pertemuan Pertama: Pengenalan OpenGL

Praktikum Komputer Grafik


Departemen Ilmu Komputer
Fakultas Matematika dan Ilmu Pengetahuan Alam
Institut Pertanian Bogor
http://revengeofthefilmnerds.com/wp-content/uploads/2011/09/Lotro-Free-Wallpaper-1.jpg
Praktikum Komputer Grafik
Akan ada proyek akhir yang dikerjakan secara
berkelompok.
Proyek akhir akan dipresentasikan sebelum UAS.
Asisten
Asisten untuk P1
Muhammad Abrar
Asisten untuk P2
Endang Purnama Giri


Agenda
Perkembangan OpenGL.
Instalasi library Open GL Utility Toolkit (GLUT) di
Dev-C++.
Pengenalan fungsi-fungsi dasar GLUT.
Pengenalan beberapa objek primitif yang dapat
dibuat dengan GLUT.
OpenGL?
OpenGL? (Buck 2012)
OpenGL?
http://scm-l3.technorati.com/11/06/19/45691/webgl.jpg
OpenGL di web:
WebGL
Menggunakan
JavaScript pada
HTML 5 canvas
Instalasi Library
Tools Package Manager.
Install Pilih berkas library GLUT (tersedia di LMS).
Kemudian, lakukan instalasi library.

Membuat Project OpenGL
File New Project.
Pilih Multimedia glut.
Masukkan nama project, tekan OK.
Proyek Default GLUT
Proyek Default GLUT (Run)
Struktur Program Sederhana
#include <GL/glut.h>
#include <stdlib.h>

void display() {
//Insert something to draw here
}

void init(){
//Inset the program settings here
}

int main(int argc, char **argv){
//One function to wrap them all
}
Kosongkan proyek yang Anda buat, kemudian
ketikkan kode berikut:
Fungsi Display
void display() {
glClear( GL_COLOR_BUFFER_BIT);
glColor3f( 0.0, 1.0, 0.0);

glBegin( GL_POLYGON);
glVertex2f( -0.7, -0.7);
glVertex2f( 0.7, -0.7);
glVertex2f( 0, 0.7);
glEnd();

glFlush();
}
Fungsi Init
void init() {
glClearColor( 0.0, 0.0, 0.0, 0.0);

glMatrixMode(GL_PROJECTION);

glLoadIdentity();

gluOrtho2D(-1.0, 1.0, -1.0, 1.0);

glMatrixMode(GL_MODELVIEW);
}
Fungsi Main
int main(int argc, char **argv) {
glutInit(&argc, argv);
glutInitWindowSize(400, 400);
glutInitWindowPosition(200, 100);

glutCreateWindow("Green Triangle");
glutDisplayFunc(display);

init();
glutMainLoop();
return 0;
}
Segitiga Hijau
Objek Primitif
Fungsi Display
void display() {
glClear( GL_COLOR_BUFFER_BIT);
glColor3f( 0.0, 1.0, 0.0);

glBegin(GL_LINE_LOOP);
glVertex2f( -0.7, -0.7);
glVertex2f( 0.7, -0.7);
glVertex2f( 0, 0.7);
glEnd();

glFlush();
}
Ubahlah parameter fungsi glBegin dengan jenis
objek primitif lainnya.
Tugas 1
Buatlah sebuah program OpenGL sederhana yang
menampilkan nama Anda. Gunakan objek-objek
primitif sesuai kreativitas Anda.
Rumit pun tidak masalah. Anda bebas
menggunakan teknik yang belum diajarkan di
praktikum :)
Terima Kasih