Visual C 遊戲程式設計基礎之透明動畫

2021-09-24 04:41:20 字數 1781 閱讀 1227

1.利用前面學過的透明處理,這一次相當於是對每一幀進行透明處理,如第一次迴圈對第一幀進行透明處理,接著顯示;第二次對第二幀透明處理,接著顯示,直到最後一幀,然後再從第一幀開始,就這樣無限迴圈

#include "stdafx.h"

hinstance hinst;

hbitmap dra,bg;//bg為背景圖,dra為恐龍連續跑動,前景圖及遮蔽圖

hdc hdc,mdc,bufdc;//hdc為視窗dc控制代碼;mdc儲存要貼到視窗上的內容,並在此記憶體dc上進行透明處理;bufdc選取點陣圖時用的dc

hwnd hwnd;

dword tpre,tnow;//記錄上一次繪圖的時間;記錄此次準備繪圖的時間

int num,x,y;//通過改變位圖座標,來改變恐龍的運動位置,相當於利用座標更換來重新整理;num用來記錄圖號

atom myregisterclass(hinstance hinstance);

bool initinstance(hinstance, int);

lresult callback wndproc(hwnd, uint, wparam, lparam);

void mypaint(hdc hdc);

int apientry winmain(hinstance hinstance,

hinstance hprevinstance,

lpstr lpcmdline,

int ncmdshow)

while( msg.message!=wm_quit )

else

}return msg.wparam;

}atom myregisterclass(hinstance hinstance)

bool initinstance(hinstance hinstance, int ncmdshow)

movewindow(hwnd,10,10,640,520,true);

showwindow(hwnd, ncmdshow);

updatewindow(hwnd);

hdc = getdc(hwnd);

mdc = createcompatibledc(hdc);

bufdc = createcompatibledc(hdc);

bmp = createcompatiblebitmap(hdc,640,480);//建立空的點陣圖物件bmp

selectobject(mdc,bmp);//將bmp儲存到mdc中

dra = (hbitmap)loadimage(null,"dra.bmp",image_bitmap,760,198,lr_loadfromfile);

bg = (hbitmap)loadimage(null,"bg.bmp",image_bitmap,640,480,lr_loadfromfile);

num = 0; //圖號

x = 640; //貼圖起始x座標,這時候恐龍在視窗的外面

y = 360; //貼圖起始y座標

Visual C 遊戲程式設計基礎之遊戲迴圈

1.函式原型 boolpeekmessage lpmsgipmsg,hwndhwnd,uintwmsgfiltermin,uintwmsgfiltermax,uintwremovemsg 功 能 用於檢測訊息,檢測到了就返回非0值,否則返回0 引數一 接收訊息資訊的msg結構指標 引數二 其訊息被檢...

Visual C 遊戲程式設計基礎之鍵盤訊息

1.虛擬鍵碼 windows系統下所有的按鍵被視為虛擬鍵 包含滑鼠在內 每乙個虛擬鍵都有其對應的虛擬鍵碼 2.鍵盤訊息 1 vm kewdown 按下按鍵訊息 2 vm keyup 鬆開按鍵訊息 3 vm char 字元訊息,當按下的按鍵為定義於ascii碼中的可列印字元時,便發出此字元訊息 3.系...

Visual C 遊戲程式設計基礎之搜尋迷宮出口

1.建立8 8迷宮陣列,使用0,1,2,3初始化,0,1,2,3分別表示牆 通道 入口 出口,使用地圖貼圖知識建立迷宮 2.建立堆疊結構記錄走過的方格編號,即走到某個方格就把該方格編號壓入堆疊 若發現路不通,就把該編號出棧,棧頂元素表示 小球所在的方格編號 3.根據迷宮陣列中的值,在初始化函式中對每...