使用opengl畫的乙個運動的機械人

2021-06-27 10:08:19 字數 1754 閱讀 7768

#define win32_lean_and_mean

#include

#include

#pragma comment(lib, "opengl32.lib")

#pragma comment(lib, "glu32.lib")

#pragma comment(lib, "glaux.lib")

float angle=0.0f;

hdc g_hdc;

bool fullscreen=false;

float legangle[2]=;

float armangle[2]=;

//繪製單位立方體

void drawcube(float xpos,float ypos,float zpos)

//繪製手臂

void drawarm(float xpos,float ypos,float zpos)

//繪製頭部

void drawhead(float xpos,float ypos,float zpos)

//繪製軀幹

void drawtorso(float xpos,float ypos,float zpos)

//繪製腿

void drawleg(float xpos,float ypos,float zpos)

//繪製機械人

void drawrobot(float xpos,float ypos,float zpos)

//處理場景的繪製

void render()

//為裝置環境設定畫素格式的函式

void setuppixelformat(hdc hdc)

;npixelformat=choosepixelformat(hdc,&pfd);

setpixelformat(hdc,npixelformat,&pfd);

}lresult callback wndproc(hwnd hwnd,uint message,wparam wparam,lparam lparam)

return (defwindowproc(hwnd,message,wparam,lparam));

}int winapi winmain(hinstance hinstance,hinstance hprevinstance,lpstr lpcmdline,int nshowcmd)

}if(fullscreen)

else

adjustwindowrectex(&windowrect,dwstyle,false,dwexstyle);

hwnd=createwindowex(dwexstyle,"myclass",

"opengl robot",

dwstyle|ws_clipchildren|ws_clipsiblings,

0,0,

windowrect.right-windowrect.left,

windowrect.bottom-windowrect.top,

null,

null,

hinstance,

null);

if(!hwnd)

return 0;

showwindow(hwnd,sw_show);

updatewindow(hwnd);

done=false;

while(!done)

else

}if(fullscreen)

return msg.wparam;

**:

OpenGL學習之路2 畫乙個點

放在github上 這一節比上一節 開啟乙個視窗 多了需要使用glew庫和3d數學庫 glew是opengl的擴充套件庫,用於幫助c c 開發者初始化擴充套件 opengl擴充套件功能 並書寫可移植的應用程式。這個可以通過上網搜教程自行安裝引用。3d函式庫可以用網上的,也可以用源教程裡的。這裡我是根...

乙個openGL的函式

最近挺忙很久沒寫東西。目前在寫一些opengl的東西,對於這個在3年前接觸過但是沒學好的語言一直耿耿於懷,其實很喜歡opengl。而且最近也沒事就一直開始寫著,寫opengl檢視模型的時候其實很重要的乙個東西就是它內部的矩陣棧。所以寫了乙個函式,專門用來輸出日誌,我自己覺的挺好用。這個函式的作用是專...

乙個簡單的OpenGL程式

乙個簡單的opengl程式 cheungmine 2009 2 這是乙個windows控制台程式,建立乙個空專案,把下面的檔案新增進去,編譯即可。需要更改的是路徑 依存的庫目錄 win opengl32 inc gl.h,glu.h,glut.h lib glu32.lib,opengl32.lib...