Senin, 10 Desember 2012

MEMBUAT ANIMASI GELAS BUKA TUTUP DENGAN C++



Kali ini saya akan memberikan artikel tentang bagaimana MEMBUAT ANIMASI GELAS BUKA TUTUP DENGAN C++, dengan sedikit kebingungan yang saya alami, akhirnya saya dapat juga menyelesaikan ini tugas, ok untuk mempersingkat waktu belajar kalian sekarang silahkan copy koding di bawah ini,

#include "stdlib.h"
#include "gl/glut.h"

int x=0;
int z=0;
int z2=90;


void drawQuad1(void)
{
glBegin (GL_POLYGON);
glColor3f(1.0,0.0,0.0); //R
glVertex2i(0,1);
glVertex2i(-100,0);
glColor3f(1.0,1.0,0.0); //Y
glVertex2i(-100,20);
glVertex2i(0,20);
glEnd();
}

void botol(void)
{
                glBegin (GL_POLYGON);
                glColor3f(1.0,0.0,0.0); //R
                glVertex2i(0,1);
                glColor3f(1.0,1.0,0.0); //Y
                glVertex2i(-100,0);
                glColor3f(0.0,0.0,1.0); //B
                glVertex2i(-100,-100);
                glColor3f(1.0,1.0,0.0); //Y
                glVertex2i(0,-100);
                glEnd();
}

void renderScene()
{
glClear(GL_COLOR_BUFFER_BIT);
glClearColor(0,0,0,0);
glLoadIdentity();
botol();
glRotatef(x,0,0,1);
if (z <= 90)
{
                x-=1;
                z+=1;
}
if (z > 90)
{
                x+=1;
                z2-=1;
}
if (z2 < 0)
{
                x-=1;
                z=0;
                z2=90;
}
drawQuad1();
glFlush();
}

void timer (int value)
{
glutPostRedisplay();
glutTimerFunc(10,timer,0);
}

void reshape(int w,int h)
     {
     glViewport(0,0,(GLsizei)w,(GLsizei)h);
     glMatrixMode(GL_PROJECTION);
     gluOrtho2D(-320,320.0,-320,320);
     glMatrixMode(GL_MODELVIEW);
     }

void main(int argc, char **argv){
glutInit(&argc, argv);
glutInitWindowPosition (100,100);
glutInitWindowSize (500,500);
glutCreateWindow ("Candra Wahyu Arifin");
//glViewport(-300,300,-300,300);
glutDisplayFunc(renderScene);
glutReshapeFunc(reshape);
glutTimerFunc(1,timer,0);
glutMainLoop();
}

Nah sedikit trik dari saya, untuk memudahkan mengetahiu koordinat gambar, silahkan menggunakan Ms Excel, untuk menggambar koordinat terlebih dahulu,
Mungkin itu saja yang hanya bisa saya berikan di artikel Membuat animasi gelas di C++ ini, silahkan tinggalkan komentar atau pertanyaan di bawah bila ada yang belum dimengerti..

1 komentar:

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More