昨天学生论坛的时候有人问我如何在Linux下画画, 当时我告诉让他自己去看源代码, 这无疑是提高技艺的一个有效方法。
后来想想觉得可以用XProtocol写个XClient(没玩过), 还可以用OpenGL(参见Physics2D以及水波)。
回家后, 网友xqq告诉我有个叫做FrameBuffer的东西可以用来直接画画到屏幕上。
想到前几周我写的一个叫做水波的东西。
这一次, 我尝试操作/dev/fb0文件来输出图像, 使用C++编写。
代码越写越乱, 反正是写完了。
它首先打开/dev/fb0,
然后读取这个文件的参数,
然后mmap映射为内存空间,
然后像数组一样操作就行啦~
测试发现FPS可以达到500+, 效果理想。
顺便大致了解了Makefile的写法, 发现有make真好。
二进制 hrbin.tgz
源代码 hrsrc.txz
1 条评论。