Download presentation
Presentation is loading. Please wait.
1
俄罗斯方块 制作: 华凌锋
2
参考对象: 1.精灵动画 2.俄罗斯核心算法 3.音乐的播放
3
制作简介 一 游戏窗口的生成 1 生成一个HELLO WORLD 的win32窗口
2定义游戏窗口的宽,高,并且在InitInstance函数里更改W,H从而得到你想要窗口的大小 二 定义画方块函数 1 .void Drawfg(HDC hdc,int l,int t,int r,int b)此函数用于画出小方格.调用POLAYGON(); 2. void DrawBlock(HDC hdc,int block[4][2],int j,int k )此函数用于出现小方格组成的形状.
4
3.void Cover (HDC hdc ,int org[4][2],int j,int k)此函数用于擦除上图形次留下的痕迹.
三 消息函数连接并调用上述函数 1.自定义消息,WM_USER+1;用于定义方格所组成的7种图形.从而DrawBlock()函数能画出所要的图形.并且处理检查是否有某一行全部被【方格】都填满. 2.自定义消息函数WM_USER+2;用与实现函数void DrawBlock(HDC hdc,int block[4][2],int j,int k ), 即在屏幕上画出图形. 3.在窗口初始化消息函数WM_CREATE,定义图形所允许出现的范围.
5
4.在WM_TIME消息函数中实现图形每隔n秒时间向下移动一个单元格.以及如何判断游戏结束.
5.在WM_KEYDOWN中实现图形的左移,右移,加速. 6.在WM_PAINT中实现收取方格后的重画. 四 添加动画 1.在原文件的目录上加入精灵动画的3个文件”ddutil.cpp,ddutil.h,dinput.h”,再加入库文件ddraw.lib dxguid.lib, 2.制作几张图片用于做背景,开场之用 3.初始化,定义Directdraw所要的函数,变量等等(详情请看精灵动画).
6
4. 定义函数WM_LBUTTONDOWN,WM_MOUSEMOVE. 用于实现开场动画
4.定义函数WM_LBUTTONDOWN,WM_MOUSEMOVE.用于实现开场动画.当变量aa==0,调用第一张图片当aa==1时调用第二张.
7
难点要点 1.next的实现 2.闪烁问题 3.清空对象 4.刷屏问题
Similar presentations