欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    零起点VC-14课.ppt

    • 资源ID:6148695       资源大小:199.50KB        全文页数:37页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    零起点VC-14课.ppt

    第14课 俄罗斯方块游戏,本课要点具体要求本课导读上机练习,本课要点,游戏原理分析游戏制作过程完善应用程序界面,具体要求,了解俄罗斯方块游戏原理掌握俄罗斯方块数据结构掌握俄罗斯方块的显示掌握俄罗斯方块游戏的键盘控制熟悉使用界面库完善程序界面,本课导读,随着现代社会生活节奏愈发加快,游戏已经普遍成为大多人为缓解工作压力和生活压力的消遣对象,游戏制作也愈发显得重要。本课时将制作一个相对简单的俄罗斯方块游戏,并对其原理以及算法进行详细讲解。,14.1 游戏原理分析,前面的课时已经基本上介绍完了Visual C+程序设计的语言基础、可视化设计以及一些高级应用等知识,本课时将利用已学的知识制作一个综合实例俄罗斯方块游戏。,14.1 游戏原理分析,14.1.1 实例效果预览14.1.2 实例制作分析,14.1.1 实例效果预览,14.1.2 实例制作分析,俄罗斯方块的游戏规则比较简单,游戏开始时按下键盘上的某些按键对下落的方块进行左移、右移或旋转等操作,使下落的方块依次填满游戏主界面的行即可获得相应的奖励分数,同时被填满的行将被消去,位于该行上方的行依次往下降一行。另外得到足够的分数后,游戏的级别也将发生相应变化,级别越高,方块下落的速度越快。游戏中使用的方块是由4个正方形小方块根据不同的摆放组成的,本实例使用的方块形状有7种,其中6种基本方块又可以按上、下、左、右4个方向旋转变成不同的形状。通过分析可知,只需定义7个三维数组即可表示方块。本实例将要制作的俄罗斯方块游戏是基于MFC对话框应用程序的。为了使得应用程序界面比较美观,本案例将使用一个按钮界面库来制作特效按钮。,14.2 游戏制作过程,本实例的制作过程大体上分为4部分,下面分别进行讲解。,14.2 游戏制作过程,14.2.1 创建应用程序14.2.2 定义方块数据结构14.2.3 绘制方块图像14.2.4 游戏流程及其控制,14.2.1 创建应用程序,由于本案例是基于对话框的,因此首先应创建MFC对话框应用程序,其具体操作参见图书内容。,14.2.2 定义方块数据结构,由小节分析得出,每种基本方块可以使用一个三维数组来表示,为了体现面向对象编程的特点,本案例采用类的方式为每种基本方块定义一个类,然后在类中定义一个三维数组存储方块数据。首先定义一个方块基类,并在其构造函数中将三维数组元素初始化为0。定义了方块基类后,7种基本方块类可直接派生于该基类,并在各自的构造函数中对三维数组PieceMap进行初始化。,14.2.3 定义方块数据结构,1定义方块 类2定义方块 类3定义方块 类4定义方块 类5定义方块 类6定义方块 类7定义方块 类,1定义方块 类,该方块旋转后可以得出两种不同的形状,定义时需添加的代码参见图书内容。,2定义方块 类,该方块旋转后可以得出四种不同的形状,定义时需添加的代码参见图书内容。,3定义方块 类,该方块旋转得出的方块形状只有一种,定义时需添加的代码参见图书内容。,4定义方块 类,该方块旋转后可以得出两种不同的形状,定义时需添加的代码参见图书内容。,5定义方块 类,该方块旋转后可以得出两种不同的形状,定义时需添加的代码参见图书内容。,6定义方块 类,该方块旋转后可以得出两种不同的形状,定义时需添加的代码参见图书内容。,7定义方块 类,该方块旋转后可以得出两种不同的形状,定义时需添加的代码参见图书内容。,14.2.3 绘制方块图像,定义了方块的数据结构后,就可以在主对话框的客户区对方块进行绘制。方块的绘制区域包括两个部分,第一部分是游戏主界面区,第二部分是预览界面区,并且实现方块的形状和颜色的随机产生。方块的绘制原理是根据三维数组的值来确定的,如果元素值为1则绘制正方形小方块,为0则不画,其具体操作参见图书内容。,14.2.4 游戏流程及其控制,初始化了游戏主界面和预览界面后,就可以对游戏流程和游戏控制进行设计。该部分内容是整个游戏制作的关键,涉及的内容大体上包括动态显示方块、键盘控制方块移动或旋转、游戏的开始、暂停以及停止等。,14.2.4 游戏流程及其控制,1动态显示方块2键盘控制3游戏的开始、暂停及停止,1动态显示方块,首先从定义的基本方块类中获得方块对象,然后设置计时器让方块往下落并重画游戏主界面,当方块不能下落时填充游戏主界面,最后从预览界面获得下一个下落的方块,具体操作请参见图书内容。,2键盘控制,本实例将使用键盘上的4个方向键和空格键来控制方块的移动或旋转,其中按下左或右方向键实现方块向左或向右移动一格,按下向上方向键实现方块的旋转,按下向下方向键或空格键实现方块的快速或最快下落,其具体操作请参见图书内容。,3游戏的开始、暂停及停止,游戏的开始、暂停及停止是控制游戏进程的基本功能,本实例将使用按钮的方式实现这些功能,其具体操作请参见图书内容。,14.3 完善应用程序,俄罗斯方块游戏已经制作完毕,但是我们发现其界面比较粗糙,功能也比较少。本节将讲解应用程序界面和功能的完善。,14.3 完善应用程序,14.3.1 完善界面14.3.2 完善功能,14.3.1 完善界面,该部分内容包括修改应用程序图标和光标、制作特效按钮等,下面分别对它们进行讲解。,14.3.1 完善界面,1修改应用程序图标和光标2制作特效按钮,1修改应用程序图标和光标,要修改应用程序图标,只需把该图标删掉,然后把新的图标放在该文件夹下,并将文件名改为“TETRIS.ico”即可。修改应用程序的光标可以按下面两个步骤进行。(1)选择【插入】【资源】命令,在打开的对话框的【资源类型】栏中选择【Cursor】项,然后单击【导入】按钮,将需要的光标文件添加到工程。(2)在主对话框类CTETRISDlg的成员函数OnInitDialog中输入代码。,2制作特效按钮,本实例将使用一个界面库类CButtonST来实现按钮的特效,如透明、图标按钮以及具有提示功能的按钮等特效。制作特效按钮的具体操作请参见图书内容。,14.3.2 完善功能,该部分内容包括游戏的初始级别设置以及动态修改应用程序的背景色等功能,主要是使用类CButtonST的成员函数SetMenu为 按钮关联下拉菜单实现,下面分别对它们进行讲解。,14.3.2 完善功能,1设置游戏初始级别2动态修改应用程序窗口背景色,1设置游戏初始级别,开始游戏前可以单击 按钮设置级别,而不是每次都只能从级别1开始游戏,其具体操作参见图书内容。,2动态修改应用程序窗口背景色,应用程序窗口的背景可以在程序运行后动态设置修改,而不是一成不变的。该功能可以调用一个颜色选择对话框类CColorDialog的成员函数GetColor来获得选择的颜色,然后重新绘制界面来实现,其具体操作参见图书内容。,14.4 上机练习,本次练习将为俄罗斯方块游戏添加一个列表视图,用来保存用户游戏的历史记录。操作思路:列表视图对应的MFC类为CListCtrl。,

    注意事项

    本文(零起点VC-14课.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开