可视化 π 银牌收录

算法实现可视化 π,能调节精度,理论上可以计算到任意位数,精度越高计算越慢,越高的精度需要辅助判断的位数就越多,屏幕大小可以调节。动画结束后可以鼠标拖动移动地图,滚轮缩放地图。

[C++14]线程池 铜牌收录

线程的创建和销毁会带来不必要的开销,本文实现一个C++14即可使用的线程池,可以像使用 std::thread 一样多线程并行,并有更多的功能

刮刮乐(掩码图的范例) 银牌收录

这个程序模拟了刮刮乐的刮卡操作,按下鼠标左键并移动可以刮开刮卡层。刮卡操作是通过掩码图实现的,一张隐藏的待刮开背景图,一张掩码图。刮卡的时候,是在黑色的掩码图上画线,显示的时候,通过掩码图将背景图显示出来。

七彩连珠益智小游戏 银牌收录

还记得当年经典的 winlinez 小游戏吗?没错,它的规则很简单:通过移动彩球,使相同颜色的彩球以横、竖、斜的方式连成一条线,达到五个或者以上便可自动消除,每移动一次如果没有彩球消除则会自动增加三个彩球,随机分布在棋盘上。 所以,你要做的就是尽可能的减少消除小球所移动次数,策略第一。

用相机观察线条 银牌收录

有两种投影方法,一种是平行投影,一种是透视投影。如果是平行投影观察一条线,可以直接把线条的每一个端点的位置求出来,然后判断这条线有没有某一部分出现在屏幕上再画,但是透视投影不能这么轻松地求出端点位置,因为是根据顶点距离相机的 Z 轴上的距离作为除数的,除数不能为 0 但是顶点距离相机的距离可以为 0,还有一种情况是顶点在相机背后,这距离一除朝向直接相反。为了解决这个问题,不能单纯根据顶点投影到摄像机屏幕上的坐标来画线,应该对线进行裁剪得到线在屏幕内的部分

魔尺 银牌收录

魔尺小游戏,鼠标左键拖动能观察各个角度下的魔尺,鼠标左键点击能拧动魔尺块。24块魔尺块,可以拧成一颗球。

魔方 银牌收录

三维魔方,左键拖动能从不同角度观察一个魔方,右键拖动能拧动魔方。拧动的方式有三种,以 x 轴为旋转轴、以 y 轴为旋转轴、以 z 轴为旋转轴。

泡泡龙 银牌收录

泡泡龙,游戏玩法是玩家从下方中央的弹珠发射台射出彩珠,多于3个同色珠相连则会消失,悬空彩珠也会跟随消失。