mooc遊戲設計基礎(自學)6

2021-10-07 02:23:16 字數 1616 閱讀 5075

mooc自學**:

第六章中的小遊戲是「移動方塊」,玩家需要將方塊移動到隨機出現的方塊位置上面,每完成一次加一分。(類似於貪吃蛇)

(1)先建立乙個新的桌面應用專案,取名為「brick」(磚塊)。

(2)分析一下遊戲需要的函式功能:隨機位置、建立磚塊、判斷重疊,然後在函式前向宣告下對這三個函式進行建立:

int

randpos()

//隨機生成函式

void

drawbrick

(hdc hdc,

int x,

int y,

int s,

int bplayer)

//磚塊繪製函式(環境控制代碼,磚塊位置,磚塊尺寸,玩家敵人標記)

intiscollider

(int x1,

int y1,

int x2,

int y2,

int s)

//判斷重疊函式(玩家和敵人磚塊的座標、磚塊尺寸)

(3)設定全域性變數,包括玩家和敵人磚塊的位置、磚塊尺寸和分數:

int xp,yp,xe,ye;

const

int size=80;

//磚塊尺寸設定為常量,保證每次操作執行都不會變

int score;

(4)進行預定義設定,給變數賦初值:

xp=

randpos()

;//玩家磚塊初始外接

yp=randpos()

;xe=

randpos()

;//敵人磚塊初始位置

ye=randpos()

;score=

0;

(5)新增互動,方向鍵的設定和重疊的觸發機制:

case wm_keydown:

invalidaterect

(hwnd,

null

,true)

;//觸發重繪函式

switch

(wparam)

(6)繪圖設定,繪出分數和兩個磚塊即可:

wchar str[16]

;//文字顯示

swprintf

(str,

16,l"你的得分:%d"

,score)

;textout

(hdc,0,

0,str,

wcslen

(str));

drawbrick

(hdc,xe,ye,size,0)

;//磚塊顯示

drawbrick

(hdc,xp,yp,size,1)

;endpaint

(hwnd,

&ps)

;

(7)課後拓展:

mooc遊戲設計基礎(自學)3

mooc自學 第三個小遊戲是 小型計算器 即根據使用者輸入進行簡單的四則運算。1 還是先建立乙個新的桌面應用程式專案,命名為 expression 2 定義需要用到的全域性變數,包括兩個數字 字元計數器 操作符 臨時儲存區 計算結果 是否有結果判斷 顯示輸出的字串。float x 0,y 0 int...

mooc遊戲設計基礎(自學)5

mooc自學 第五個小遊戲是製作博德曼分形集合,根據博德曼公式進行迭代,然後將收斂區域部分繪製成黑色,發散區域繪製成白色。分形指的就是一些看似雜亂無章,但其實是用一些函式迭代而成的圖形,曼德博集合屬於其中的逃逸時間分形 1 先建立乙個新的桌面應用程式,取名為 loop 2 設定全域性常量 const...

mooc遊戲設計基礎(自學)7

mooc自學 源自中國傳媒大學韓紅雷老師的課程 第七章學習的小遊戲是 彈彈球 小球會始終在邊框中心產生,並根據與其他小球和邊界的碰撞發生運動變化。其中用到了很多有趣的知識點,包括實事更新達到動畫效果 建立後備緩衝交換機制防止閃爍和擦除 視窗的變化機制 邊界會根據視窗的大小變化而變化 小球的運動碰撞等...