2019春第三次课程设计实验报告
一、实验项目名称:
EasyX反弹球消砖块
二、实验项目功能描述(用自己的语言描述):
综合游戏开发框架和EasyX绘图技术,实现反弹球消砖块,即屏幕下方有一个长方形跳板,有颜色,中间有一个有颜色的小球,实物,上下弹跳,最上方有一排小方块;小球自动上下跳动,通过A、D移动跳板,反弹小球,小球击中方块,方块消失。相比之前的,这次是真正的小球、跳板、方块,而不是用字符类比的。
三、项目模块介绍:
第一部分:游戏框架代码的重构,利用EasyX构成实物小球;
第二部分:绘制静态挡板,利用EasyX绘制挡板;
第三部分:控制挡板接球,通过A、D键控制;
第四部分:消砖块,小球击中方块,方块消失;
模型:
四、实现界面展示:
五、代码托管链接:
Git网页代码
六、实验总结:
问题1:
第一次用visual studio 时,最简单的画一个实心圆都不会运行;
解决方法:
研究了一下书后,发现第四章的代码需要下载一个EasyX什么的才可以运行,下载后可以运行画一个实心圆代码。
如图:
问题2:
当我想再次试验一下多球反弹时,又执行不了了,而且,连画一个实心圆也执行不了了。
如图:
解决方法:
我想了一下,既然之前画一个实心圆已经实现了,为什么现在再创建一个源文件就不行了?我将Text文件夹中的画一个实心圆删掉,只留下一个多球反弹,再次执行后运行成功。
如图(原型是动态的,我只截了个图):
问题3:
当我做本次真正的研究项目时,即EasyX反弹球消砖块时,当时也是出现运行问题,
如图:
解决方法:
先是复制问题百度,百度无果,我看了一下问题,大致知道问题出在‘kbhit’和‘getch’处,看到getch后,我想到教学视频中提到_getch(),然后我将二者前都加了‘_’,并在getch后加‘()’,再次尝试,运行成功。
感想:
本次作业主要由于涉及到了两个新东西:EasyX绘图库和另一种开发工具 Visual studio,导致一开始无从下手,开始时只想着下载VS,没注意到EasyX库的使用。最后游戏做成后,看着运行结果,发现确实比之前用字符类比图形来的更直观一些,更接近游戏本质了。代码方面,这次研究的游戏之前我就搞过,所以感觉大体都没怎么变,但还是变了一些,借助课本和随书资源,运行出来。可能刚开始使用VS,不习惯,总感觉还不如Dev C++来的方便,但VS的确功能强大,多使用使用应该会习惯的。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· 程序员常用高效实用工具推荐,办公效率提升利器!
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 【译】WinForms:分析一下(我用 Visual Basic 写的)