`
rcfalcon
  • 浏览: 228546 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
HGE游戏引擎是一个开源2D游戏引擎,基于directX。 它的渲染及逻辑是基于帧回调的框架模式, 其提供一些基本的图像操作和输入控制功能。 我在之前写一个2D游戏的时候对它整个框架进行了一次封装,很多地方写得比较恶心, ...
我觉得C语言中 最具有科幻色彩的一个函数就是 memcpy 了, 这个函数应该是人尽皆知了,它能把一段地址上的内容直接拷贝到另一段地址上。 memcpy即memory copy,可以理解为内存拷贝,也可以翻译成记忆拷贝。 还记得好像有一年高考 哪里的语文作文题好像就是“假如记忆可以复制”…… 假如以后能够访问到人的大脑记忆,那么我们能用memcpy复制到其他一个地址段。。 或者将一些已有的知识memcpy到人的大脑深处,那么人就不需要学习了。。那就牛X了。 假如能基于人的大脑结构移植一个JAVA虚拟机、语言编译器、脚本解释器之类的玩意。。那么甚至可以memcpy一 ...
今天瞎逛几个国内的ONLINE JUDGE,在PKU的RANK LIST上看到大学隔壁宿舍一哥们的ID。。。顿生景仰之情啊,我靠。 RANK 13,solved 1538 很有感慨,自己整个大学都没有去参加ACM,可能也是高中的OI让我很不爽。 回想一下当年自己高三上学期的时候,整天泡在学校机房,当时是做 TOJ(同济大学的ONLINE JUDGE)和USACO。 当时TOJ是国内少有的中文的题库,而且也是新开不久,用户不多,RANK LIST上的ID也不像那么吓人。就跟网游开了个新服务器一样,于是我和班上一哥们XIEHE开始在上面冲排名。可惜当时自己还是很菜的,冲得比较 ...
今天为了一些已有数据导入MYSQL的数据库,我写了一个很简单的PHP程序。 程序思路很简单,就是读一条数据,然后往MYSQL里插入一条。 结果总是发现 每次导入只能导入2000条,就自动停止了,而且没有任何提示。 在网上搜解决方案各种搜不到。 刚开始怀疑是内存缓冲给少了,调了一下,还是不行。。 最后发现一个规律,就是每次对数据库操作到60秒的时候程序就自动中止了。 查了一下,最后修改了php.ini的 max_input_time参数。 该参数说明如下 ; Maximum amount of time each script may spend parsing r ...
之前在写一个TCP/UDP通信程序的时候, 我想试验这样一个结构: 子结构通过父结构的的STL函数间接自杀。。 结果当时得出了一个结论,是可行的。 后来又在其他平台上报错,总之各种危险,以后还是不要写这种跟编译器、平台相关的危险代码。 后来的经验是,对于STL里的类实例(或者大STRUCT)最好都用指针统一管理。具体管理方法我将会另外写篇经验心得。 附上代码: //为了试验在子结构中能否通过调用父结构的STL函数删除自身 //结论:能! //补充,某些时候不能……找不到原因,该方法最好不要使用 #include <iostream> ...
当时为了测试类的静态成员函数在多线程的工作机制以及运行过程中强制结束线程, 自己写了个小程序。 直接强制结束还是很危险的,很可能由于互斥锁而导致死锁。 还可能会导致线程的资源无法释放,存在内存垃圾。 OK。贴一下,供需要的人参考 //结论:类静态成员函数可以被多线程多次启用,互不干涉 //运行过程中可以强制结束线程,但是要慎用!很可能由于互斥锁导致死锁 //网上说用该方法还可能导致资源无法正常释放(可能也是由于互斥问题) #include <windows.h> #include <iostream> using namespace ...
在这几天的工作过程中,需要实现PHP在服务器端能与其他程序通信。和老何俩人研究了半天,终于大致弄出了一个用WINDOWS的命名管道通信的方法。 有几点需要注意的: PHP服务器端我们每次都是重新挂接命名管道。(这样写,PHP端代码量极其少,而且也很方便。) 那么我们用C/C++写的命名管道服务器则需要每次通信都创建一次管道(方法很恶心,但是暂时能实现,而且对效率要求不是那么高。我们就这么用了。) 如果不是每次都创建管道的话,会出现109错误——这个问题我们调了N久…… 还有一个时序问题,在管道SERVER端每次关闭后,需要等PHP端从管道中取完数据,再重新创建管道。 ...
练琴的时候把RIFF叫做一个曲子的小片段,那么我自己定义一下程序的RIFF就是一小段程序吧,放一些这几天自己写的,以后也长期更新,作为自己积累和今后编程的参考。 1. 格式化网址,若没有HTTP头则插入HTTP头 <?php //add http head to url function AddHttpHead( &$s ) { $exist = strstr( $s,"http://" ); if( !$exist ) $s = "http://".$s; } ?> 2. 链接M ...
年底了,本来打算提前一周请假回家的,领导也批了,但是临时又有了任务,需要在年前搭一个演示系统,于是被扣下了。。 需要做一个多机通信的系统,我这边的任务大概就是需要管理员用户能对数据库内容进行编辑,并且 ...
大概三个月前,我在试着用几款2D游戏引擎。 第一款是SDL,这是同事推荐给我的一款跨平台的2D游戏引擎。这款引擎评价很高,总的来说是因为它够底层,实现的功能非常基本,又提供了一套平台无关的接口。所以开发人员在此之上可以天马行空的开发。不过我不是那么热衷底层……于是我在写了几个实验性的程序之后放弃了他。呵呵,当时研究它主要是因为自己也在做嵌入式,对跨平台很感兴趣。但是当时看一个老外,好像叫lazyfoo,写的开发教程让我学到了很多游戏开发方面基本的知识。 然后第二款是HGE,它是基于driectX的一款开源2D游戏引擎,也是提供较底层的功能。最核心的大概是它提供基于帧的逻辑和渲染回 ...
前阵子我在公司换了一个部门,总的来说自己还是很满意的。现在有时间研究自己喜欢的东西,从原来繁重的编码任务中解脱出来,做技术新颖的东西,很有意思。 最近主要做了这样一些事: 1. 小小的玩了一下linux。 说来惭 ...
今天看到一篇大肆宣扬SDL的文章,介于我也小小的研究过一会这个2D游戏引擎,而国内对于这个引擎又推广不够,在此抛砖引玉 小小翻译一个吧。很多地方可能理解不对,大家多多包涵。 先说说我对SDL的一些理解 1.SDL是一 ...
YACHY给了个游戏战斗计算公式,比较复杂。。。 复杂的系统很难平衡,所以为了测试公式是否合适,我写了个测试机,实现两个机器人基于该设定PK,暂时给定 男一号 :张无忌 男二号:段誉。 测试结果不太满意,然后我修改 ...
这个周末在家闷了一天,思考和编写战棋类游戏地图的核心功能。 所谓核心功能我的理解就是抽象于具体游戏之上,引擎级别的东西。之前也没有参考过别人的代码,就按自己的构思和理解来吧。现在已经实现了如下功能 1.逻辑地图的创建 逻辑地图只包含整个战场的地图数据。负责处理整个战场的逻辑。每个地图块抽象到最高层就只包含一个属性:该地图块能否被角色移动到其上。比如一个块为墙壁,角色当然不能移动到这个块上面。 2.角色系统 该地图上所有的角色,角色的具体战斗数据(如HP) 和角色的基本数据分离(如MAXHP)。这里我用的bind(绑定),就是创建一个具体角色的时候可以去bind一个角色基本数据。 3. ...
如果你生活在一个虚拟的世界中,你可以发现自己处在这个虚拟世界中么?这个问题。。我曾经想过。也许就是有一道门,通往世界以外的世界,当你穿过这道门你就能站在一个更高的高度来看待整个世界。 这个问题实际上可以归结为coding下的这个问题: 一个程序可以发现自己是在虚拟机中执行的么? 网上给的结论可以说众说纷纭,但是可以确定的是,没有方法可以让一个程序来识别其是否在虚拟机中运行。(即使可以识别,也只是针对某一种或者几种固定的提供某种可被程序读到的“标识”的虚拟机。) 所以这就跟现实世界中一样,至少暂时看来,人是不能发现宇宙以外的世界的。 研究这个问题有什么意义呢?——举一个简单的例 ...
Global site tag (gtag.js) - Google Analytics