
这是模仿球球大作战写的小游戏,有食物、敌人、外面的毒圈。
操作很简单,用 A S D W 四个键控制球的移动方向。
地图大小是屏幕的16倍,吃完所有敌人就胜利。记住不要被敌人吃掉哦!
想和我交流的可以加我 QQ:2190038793
贪婪球 2.0 做了许多升级,详见这里:https://codebus.cn/contributor/post/greedy-ball-2
执行效果如下:
完整的 VC++ 源代码如下:
///////////////////////////////////////////////////
// 程序名称:贪婪球 1.6
// 编译环境:Microsoft Visual studio 2017,EasyX_20200727
// 作 者:奶酪
// 邮 箱:2190038793@qq.com
// 发布日期:2019-2-10
// 最后修改:20
...

想起之前看的一部鬼片,里面闪电效果和BGM营造了一种阴森恐怖的气氛。所以,突然想试试用简约的风格绘出这样的气氛。
目标:绘画出 简单的随机街道 ,
街道上空出现 各种形态的闪电 ,
并实现街道在闪电时的 闪光变化
效果动态图:
代码如下:
/************************************************************
* 程序名称: 随机街道闪电效果
* version : Release x86-1.0
* 程序目标: 制作简单的随机街道上空出现闪电,并实现街道在闪电时的闪光变化
* 编写系统: win10 1809专业版 x64
* 编译环境: VS2017 + EasyX_20200727
* 作者 : 星羽
* 邮箱 : 1479245050@qq.com
* QQ : 1479245050
* 最后修改: 2019年2月13日
...
游戏说明:
矿井里的电路又出问题了。迅速借助你的头灯,在漆黑的矿井里找到出口逃出去吧。
控制说明:
- 方向键:移动
- A/S/D/W:移动
- 鼠标:控制照射方向
- F2:重来一局
- ESC:退出游戏
就不放抓图了,有兴趣的运行一下代码看看效果吧,【点这里下载编译后的 exe 文件】。
以下是全部源代码:
///////////////////////////////////////////////////
// 程序名称:矿井逃生
// 编译环境:Visual C++ 6.0 / 2010,EasyX_20200727
// 作 者:yangw80 <yw80@qq.com>
// 最后修改:2013-11-15
//
#include <graphics.h>
#include <time.h>
#include
...
这个程序将图片转换为马赛克效果。
算法原理:求出每个小方块内所有像素的颜色平均值,然后用来设置为该小方块的颜色。依次处理每个小方块,即可实现马赛克效果。
完整代码如下:
/////////////////////////////////////////////////////////
// 程序名称:将图片转换为马赛克效果
// 编译环境:Visual C++ 6.0 / 2010,EasyX_20200727
// 作 者:krissi <zh@easyx.cn>
// 最后修改:2013-4-22
//
#include <graphics.h>
#include <conio.h>
// 将图片转换为马赛克效果
// 参数:
// pimg: 待处理的 IMAGE 对象指针
// tilesize: 马赛克的尺寸
// startx: 马赛克的平铺起始位置 x 坐标
// starty: 马赛克的平铺起始位置 y 坐标
vo
...
这个程序实现将图片转化成底片效果。
底片效果使用如下公式:
R = 0xFF - GetRValue(pMem[i]);
G = 0xFF - GetGValue(pMem[i]);
B = 0xFF - GetBValue(pMem[i]);
完整代码如下:
/////////////////////////////////////////////////////////
// 程序名称:底片效果
// 编译环境:Visual C++ 6.0 / 2010,EasyX_20200727
// 作 者:krissi <zh@easyx.cn>
// 最后修改:2013-1-20
//
#include <graphics.h>
#include <conio.h>
// 底片效果
void ColorInvert(IMAGE *pimg)
{
...
这个程序原本是测试 HTML 5 效果的一个演示程序,动态效果很是漂亮。现在,我把这个精彩的程序移植到了 VC 上。
以下是完整的 VC 源代码:
///////////////////////////////////////////////////
// 程序名称:流体(Liquid)
// 编译环境:Visual C++ 6.0 / 2010,EasyX_20200727
// 原 作 品:http://spielzeugz.de/html5/liquid-particles.html (HTML5)
// 移植作者:krissi <zh@easyx.cn>
// 发布日期:2012-4-5
//
#include <graphics.h>
#include <math.h>
#include <time.h>
#define WIDTH 1024 // 屏幕宽
#define HEIGHT 576 // 屏幕高
#define
...

模拟火焰效果的程序。
执行效果抓图如下:
通过修改色系,本程序可以实现红色火焰、蓝色火焰、绿色火焰三种效果,在 InitFire() 函数中取消相应行注释可以实现不同色系的火焰效果。
完整的源代码如下:
///////////////////////////////////////////////////
// 程序名称:火焰模拟程序
// 编译环境:VC6.0 / VC2010,EasyX_20200727
// 作 者:yangw80 <yw80@qq.com>
// 最后修改:2012-1-21
// PS: 核心算法参考的微软范例,在此感谢。
//
#include <graphics.h>
#include <conio.h>
#include <time.h>
// 宏常量
#define WIDTH 640
#define HEIGHT 480
#def
...

这是个有趣的程序,同时是一个全屏模糊处理的范例。
其中,点的非直线自由运动的部分,是用的我在高中时候用 QuickBasic 实现的一种简单方法,看到这部分代码有点让人怀念过去。
简单说明一下:
1. 为了使范例更清晰,全屏模糊处理的代码我做了简化,将第一行和最后一行忽略掉了。通过代码可以清晰地看到,所谓全屏模糊,其实就是对每个点与相邻的几个点的颜色做平均处理(可以自己决定每个点的权重)。
2. 这个模糊函数只处理了每个点的上、下、左、右共 5 个点。为了获得不同的效果,可以试试将周围八个点一起处理,或者上、下、左、右方向上的两个点一起处理。
3. 严格来说,每个点在运算时,所使用的左边和上边的点,其实已经不是原来的点了,而是模糊后的点。所以这样的模糊处理对于单个点来说,右边和下边颜色要淡一些。如果需要精确的模糊,可以借助 IMAGE 实现,这里就不再多说了。
4. 延时没有用常用的 Sleep 实现,而是使用的精确延时,详见文章《精确延时的实现》
下面是运行动画的截图:
...