Translate

tutorial graphic halaman 10

Selamat datang di eagleboot dan selamat membaca.

pfd.iLayerType=PFD_MAIN_PLANE; iFormat=ChoosePixelFormat(*hDC,&pfd); SetPixelFormat(*hDC,iFormat,&pfd); /*createandenabletherendercontext(RC)*/ *hRC=wglCreateContext(*hDC); wglMakeCurrent(*hDC,*hRC); } /****************** *DisableOpenGL ******************/ voidDisableOpenGL(HWNDhWnd,HDChDC,HGLRChRC) { wglMakeCurrent(NULL,NULL); wglDeleteContext(hRC); ReleaseDC(hWnd,hDC); } 

Hasil eksekusi program di atas akan menggerakkan sebuah kotak berjalan secara diagonal dari pojok kiri bawah ke kanan atas secara terus menerus. Akan tetapi jika ada penekanan mouse di taskbar maka kotak berhenti, jika penekanan dilepas kotak jalan lagi. Untuk selesai bisa menggunakan tombol ESCape.  

11.5. Dasar-dasar Game

 Untuk memahami pembuatan game contoh program di atas bisa dimodifikasi bagian glTranslatef(). Argumen dalam glTranslatef () dibuat variabel theta untuk argumen pertama, alpha untuk argumen kedua. Theta untuk mengatur gerak horisontal dan alpha untuk mengatur gerak vertikal. Dengan mengubah- ubah nilai variabel tersebut kita bisa menggerakkan obyek tersebut secara bebas sesuai dengan kehendak. Pada saat obyek bergerak bisa juga diatur perubahan warna atau dikombinasi sehingga menjadi warna- warni. Untuk lebih jelasnya ikuti program berikut:  Program 11.7
 #include<windows.h> #include<gl/gl.h> /************************** *FunctionDeclarations **************************/ LRESULTCALLBACKWndProc(HWNDhWnd,UINTmessage,  WPARAMwParam,LPARAMlParam); voidEnableOpenGL(HWNDhWnd,HDC*hDC,HGLRC*hRC); voidDisableOpenGL(HWNDhWnd,HDChDC,HGLRChRC); /************************** *WinMain **************************/ intWINAPIWinMain(HINSTANCEhInstance, HINSTANCEhPrevInstance, LPSTRlpCmdLine, intiCmdShow) { WNDCLASSwc; HWNDhWnd; HDChDC; HGLRChRC; MSGmsg; BOOLbQuit=FALSE; floattheta=‐0.8f; floatalpha=‐0.8f; intcount=0; floatr,g,b; /*registerwindowclass*/ wc.style=CS_OWNDC; wc.lpfnWndProc=WndProc; wc.cbClsExtra=0; wc.cbWndExtra=0; wc.hInstance=hInstance; wc.hIcon=LoadIcon(NULL,IDI_APPLICATION); wc.hCursor=LoadCursor(NULL,IDC_ARROW); wc.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH); wc.lpszMenuName=NULL; wc.lpszClassName="GraphGL"; RegisterClass(&wc); /*createmainwindow*/ hWnd=CreateWindow( "GraphGL","OpenGLGraphics", WS_CAPTION|WS_POPUPWINDOW|WS_VISIBLE, 0,0,512,512, NULL,NULL,hInstance,NULL);

Next read halaman 11.

Share this

Related Posts

Previous
Next Post »