Kamis, 25 November 2010

Coding Untuk Membuat Orang-Orangan Sawah Dengan Menggunakan Program Pelles C

LISTING PROGRAM

#include

#include

#include

#include

voidmulaiOpenGL(void);

int main(void)

{

//

// mRunning = TRUE, aplikasimasihberjalan

// mRunning = FALSE, ???:p

GLuintmRunning = GL_TRUE;

//

// inisialisasi GLFW

if(glfwInit() == GL_FALSE )

{

MessageBox( NULL, "ERROR :: gagalmenginisialisasi GLFW", "Error!", MB_OK);

return(0);

}

//

// buatsebuah window yang akandigunakanuntukmenggambar.

if(glfwOpenWindow( 640, 480, 0, 0, 0, 0, 24, 0, GLFW_WINDOW ) == GL_FALSE )

{

MessageBox( NULL, "ERROR :: gagalmembuat window", "Error!", MB_OK );

glfwTerminate();

return(0);

}

//

// Set judul yang ada di window dan Swap interval.

glfwSetWindowTitle( "PraktikumGrafikKomputerLabTI" );

glfwSwapInterval( 1 );

//

// mulai OpenGL (melakukan setting awal OpenGL)

mulaiOpenGL();

//

// mulai looping utama program

while(mRunning )

{

//

// bersihkanlayardan depth buffer

glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );

glLoadIdentity();

//

// lakukanpenggambaran di sini

//------------------------------------------------------------------------------------

gluLookAt(0,0,20,0,0,0,0,1,0);

glBegin(GL_QUADS);

glColor3f(0,0,0);

glVertex2f(3,3);

glVertex2f(3,7);

glVertex2f(9,7);

glVertex2f(9,3);

glVertex2f(6,7);

glVertex2f(4,9);

glVertex2f(6,11);

glVertex2f(8,9);

glEnd();

glBegin(GL_LINES);

glColor3f(0,0,0);

glVertex2f(0,5);

glVertex2f(3,5);

glVertex2f(9,5);

glVertex2f(12,5);

glVertex2f(3,1);

glVertex2f(6,3);

glVertex2f(9,1);

glVertex2f(6,3);

glColor3f(1,1,1);

glVertex2f(4,9);

glVertex2f(8,9);

glEnd();

//------------------------------------------------------------------------------------

//

// tampilkankelayar (swap double buffer)

glfwSwapBuffers();

//

// check input ,apakahtombol esc ditekanatautombol "close" diclick

mRunning = !glfwGetKey( GLFW_KEY_ESC ) &&glfwGetWindowParam( GLFW_OPENED );

}

glfwTerminate();

return(0);

}

voidmulaiOpenGL(void)

{

//

// Set viewport keresolusi 640x480 viewport bisadiibaratkan

// layar monitor anda

glViewport( 0, 0, 640, 480 );

//

// Set mode OpenGL ke mode pryeksi (Projection) dan set proyeksi

// menggunakanproyeksi perspective, dengansudutpandang (Field Of

// View) 60 derajat

glMatrixMode( GL_PROJECTION );

glLoadIdentity();

gluPerspective( 60.0f, 640.0f/480.0f, 0.1f, 1000.0f );

glMatrixMode( GL_MODELVIEW );

glLoadIdentity();

//

// Set mode gradasiwarnahalus (Smooth)

glShadeModel( GL_SMOOTH );

//

// warna yang digunakanuntukmembersihkanlayar

glClearColor( 1.0f, 1.0f, 1.0f, 0.0f );

//

// nilaiuntukmembersihkan depth buffer.

glClearDepth( 1.0f );

//

// Depth test digunakanuntukmenghindari polygon yang

// tumpangtindih.

glEnable( GL_DEPTH_TEST );

glDepthFunc( GL_LEQUAL );

//

// beritahu OpenGL untukmenggunakanperhitungan perspective

// yang terbaik (perhitunganinitidakbisaselalu 100% akurat)

glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST );

}


Tidak ada komentar:

Posting Komentar