WhyEngine游戏合集2014贺岁版
WhyEngine游戏合集2014贺岁版
自去年9月份开始写我的第一个小游戏,到现在为止,共实现了14个小游戏,10个屏保程序,7个DEMO程序.开发环境是VS2008,渲染使用的是D3D,所有代码都是我一个人完成的.我是一边写游戏功能,一边完善自己的游戏引擎WhyEngine.过年这几天为其添加了一套UI界面,用于选择游戏以及显示加载的所有游戏模块,如下图所示:
软件的运行需要VS2008和D3D的运行时库,通常机器已经装好了,不需要再自行安装.运行时库的下载地址:http://www.betaflare.com/runtime-library.html
文件"WhyCore.dll"为引擎核心模块,负责模块管理,内存管理,多线程管理,消息事件管理等.
文件夹"WhyDll"为引擎模块,主要是一些基础通用的功能,比如渲染模块,MESH创建模块等.
文件夹"PlugDll"为游戏模块,里面每一个DLL都是一个独立的游戏.
在程序启动时会加载WhyDll和PlugDll下的所有DLL文件.有时由于某种原因,可能导致DLL加载失败,比如:缺少相关的依赖DLL或杀毒软件的禁止加载.如果是WhyDll中的DLL加载失败,可能导致所有游戏无法正常运行,如果是PlugDll中的DLL加载失败,则只是其对应的游戏无法正常运行.感觉自己的引擎模块化管理还算不错,所以这么多游戏集成到一起像搭积木一样,具体的功能模块以插件的形式加载,可有可无,方便扩展.软件启动后会生成文件"WhySystem.log",打开可查看相应的DLL是否加载成功.
文件夹"Doc"为游戏说明文档,每一个游戏DEMO都有其自己的说明文档.
文件夹"GameImages"为游戏切图,每一个游戏DEMO都有其切图,用于主界面的游戏选择.
文件夹"shotcut"为软件的运行截图,可以删除.
文件"WhyCore.ini"为配置文件.
文件夹"Technique"内存放着着色器技术文件.目前只有一个几何实例化的DEMO使用了可编程管线,其他所有的渲染都是采用固定管线.所以我的游戏渲染方面朴素了些.
软件运行时如果发生崩溃,会生成DMP文件,在"WhySystem.log"中也会输出相应的崩溃信息.如果有崩溃发生,请与我联系.
F2,F3,F4引擎性能分析界面的相关设置,F2开关性能分析界面,F3暂停性能分析,F4性能分析界面背景的透明,半透明,不透明设置,如上图所示:
F11设置全屏.再按F11则恢复.
F12打开当前选中游戏的帮助文档.
ESC退出全屏,退出当前游戏回到主界面.
游戏:
(1)HelloColor
(2)打方块
(3)弹球敲方块
(4)俄罗斯方块
(5)滚弹躲方块
(6)滚弹围方块
(7)极速躲方块
(8)极速切方块
(9)连泡泡
(10)魔方
(11)切方块
(12)贪吃虫
(13)贪吃蛇
屏保程序:
(1)画圈圈屏保
(2)三角形屏保
(3)魔方屏保
(4)线圈屏保
(5)网格屏保
(6)汉诺塔屏保
(7)N皇后屏保
(8)彩盘屏保
(9)排色榜屏保
(10)贪吃蛇屏保
DEMO程序
(1)Widget
(2)LineFlower
(3)几何图形
(4)实例化
(5)Bullet物理
(6)圆盘抽奖
(7)网格寻路
如果运行时,报有木马病毒什么的,请相信我,这绝对是杀毒软件的误报,自己写的程序由于没有得到杀毒软件的认证,被报有危险是正常的.
由于自己的时间精力有限,很多功能都是点到为止,比如游戏连泡泡,泡泡间的实时碰撞有时会出现抖动.弹球敲方块功能实现后没有再做玩法上的调整.
下载地址:
https://files.cnblogs.com/WhyEngine/WhyWorld.zip
------------------------------------------------------------------------------------------------------------------------------------------
20140302更新版
(1)提高游戏刷帧率
(2)优化性能分析模块,可以对每一帧的性能消耗进行分析
(3)增加三个小游戏:
小飞球躲方块
打泡泡
掐泡泡
下载地址:
https://files.cnblogs.com/WhyEngine/WhyWorld_20140302.zip
------------------------------------------------------------------------------------------------------------------------------------------
最新版本
2014-03-28更新版
(1)优化UI界面
(2)增加两个游戏和两个小DEMO:
下载地址: