自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

HoneyCat的月光浴场

我在很多世界的交叉点

  • 博客(87)
  • 资源 (6)
  • 收藏
  • 关注

翻译 Practical Common Lisp学习笔记——之保存文件

保存你的工作退出Lisp再重新启动后,函数定义就无效了。像定义了一个好函数后我们希望保存我们的工作。很简单的,我们需要一个文件保存定义式。在Emacs中我们能使用C-x C-f创建新文件,当Emacs提示的时候输入文件名。Common Lisp的源文件习惯上用.lisp后缀名,有些也用.cl。一旦创建了文件,就能输入之前在REPL中的定义式。需要注意的是在输入正括号和DEFUN后,在Emacs的底部窗口,SLIME会告诉我们需要的参数。具体的依赖于使用什么Common Lisp实现,看起来会像这样:    

2011-01-08 02:52:00 5409

翻译 Practical Common Lisp学习笔记——之HelloWorld

在REPL中实验Lisp中最简单的表达式就是一个数字。输入10会返回10:       CL-USER> 10       10Lisp的读取器在REPL中的R,读取了”10”的文本后,会创建一个Lisp对象表示数字10。这个对象是一个self-evaluating(自求值)对象,意思是把它给求值器在REPL中的E时,得到的值就是它本身。这个值再给打印器,所以在它后面打印出10。输入(+ 2 3):       CL-USER> (+ 2 3)       5在圆括号之中的任何东西都是一个列表,这里的表有3

2011-01-08 02:51:00 3540

翻译 Practical Common Lisp学习笔记——之准备环境

2.泡沫,洗涤,重复:REPL的一个巡回使用LispBox作为开发环境,使用Emacs提供文本编辑和SLIM。选择一个Lisp实现Lisp不像Perl,Python,VB,C#和Java,有固定的实现,Common Lisp只由一个标准定义。而且不像Perl和Python由一个机构控制单个实现,也不像VB,C#和Java由一个公司控制典型实现。Common Lisp由ANSI管理标准,任何人想通过阅读标准制造编译器都是可以的而且是免费的。事实上Common Lisp的标准让你在各个编译器实现中,不论是开源还

2011-01-08 02:48:00 4546

翻译 Practical Common Lisp学习笔记——之前记

《Practical Common Lisp》笔记记录:邱涛风轻炫舞 HoneyCatEmail:qiutaoleo@163.comBlog:http://blog.csdn.net/honeycat/QQ:241855668说明:学习Common Lisp的读书笔记,与其说是笔记不如说是记录下一些自己感觉重要的部分,免得忘记了又到处找。写的有些杂乱,有兴趣的可以看下,Thanks.1.介绍:为什么Lisp?Lisp哲学最新的座右铭:“可编程程序语言”本书适合不管读者是以何种心态了解Lisp,读完本书都会得

2011-01-08 02:45:00 2249 4

原创 Lisp编程环境——手记

<br /> 以前查找人工智能相关资料的时候无意接触到Lisp,感觉很有些兴趣,后来找到只有Common Lisp还在继续。<br />寻找它的编译器,在SourceForge上有很多,跨平台的也不少,现在仍有商业的。<br />不过编辑环境不像C++这样的图形化,商业版的没试过,在Mac上也有免费的图形化的样,没那系统。在Linx和Windows上大部分都说通用的Emacs和vim。这两个编辑器确实很强大但是却比较难上手。<br />SLIME是辅助Lisp编程的Emacs插件,那个也是不怎好上手。<br

2011-01-08 02:43:00 7064 1

原创 设计和扩展

设计或许不是为了,以不变应万变。很多书都说不去修改既有代码,都是认为修改的理由不正当。要想想一个万全之策来对应以后变化的情况,非常困难,也许根本没有,除非能明确限定以后的需求不会变动。既然修改、完善、扩展是不可避免的,那设计的让改动一个地方时不牵扯其他地方,减低相互的依赖性、耦合性。也是让代码本身就能更好表达作者的意图,比如去除magic number等。其实这不是说设计不重要,反而是设计很重要,需要明确描述代码应该的关联和不应该的关联,这样在扩展和修改时就能控制在一个有效范围内。当然修改代码需要切实正当的

2010-12-01 23:39:00 956 2

原创 程序设计突然有感

<br />程序首先是正确性,其次是可读性、扩展性,最后才是效率问题。<br />软件的结构性和编码的简单性可能不能同时保障,某些原因会需要某些结构,这可能造成编码时候的复杂性。<br />设计时候使用自上而下的方式,更贴切,也是很按需求来。<br />开发时候感觉迭代的方式比较好。

2010-11-04 23:33:00 907 1

原创 9月手记

<br />    哈哈~心情好今天来写两句.想国庆节耍的时候不东想西想,今天就把东西弄完了,努力写了一天的代码,90%左右代码都一次性通过了,嘿嘿,心情好啊~~<br />    想哈,这个月开始时候弄空间管理,八叉树,场景图,然后,修正了些现有bug,又把地形的那个线性查询修正了哈,然后就弄草草,简单的也不麻烦.<br />    哎,有时举得做事情还是动作搞快点好些,慢悠的自己觉得老火.<br />    国庆耍切了 哈哈哈哈

2010-09-29 20:02:00 707 1

原创 LittleGame——贪吃蛇

本来以前刚学C++时候说练手就写——贪吃蛇,结果后来一直都没有写,昨天拿irrlicht(鬼火)引擎来写了个3D显示的,不过运动方式还是2D,自己做的模型方块蛇,哈哈。

2010-08-28 20:36:00 3116 1

原创 3D地形编程——之地形射线查询(修正)

地形射线查询,也可以叫地形拾取(Terrain picking),在射线与地形碰撞检测中用到,计算射线与地形的交点,使用中点画线算法得到邻近顶点,取得三角形与射线计算相交,求交点。

2010-07-12 19:21:00 2143 2

原创 Ubuntu 10.04构建——C++开发环境 手记

虚拟机用的Sun的VirtualBox3.2.6,C++集成开发环境(IDE)选的Code::Blocks 10.05。我用的ubuntu 10.04所以下载codeblocks-10.05-1-debian-i386.tar.bz2,下载好codeblocks中文语言包Chinese MO file,先安装wxWidgets,然后安装codeblocks,再设置环境选择中文语言。整个就完成了。

2010-07-03 02:07:00 3276 2

原创 话说工作一年了

<br />好久没写了<br />话说一不小心工作一年了<br /> <br />想当年原以为工作一年以后会怎么怎么样<br />现在感觉也不怎么样<br /> <br />有时觉得困在程序的思维里面好老火<br />眼睛看电脑久了也好痛<br /> <br />有些想做的事做不到而且又紧到弄不完<br />有时好像忙完了又突然不晓得该干啥子<br /> <br />生活在电脑的世界里面久了<br />都忽视了身边的事<br /> <br />哎 感觉不一样了

2010-06-28 09:53:00 926

原创 游戏内存管理——初探(上)

      游戏中的内存管理,也可以叫做内存池,好像有些也叫对象池,其实方法不少。我就讲哈我自己做的点点经验和想法。      对应不同的类,使用模板类是肯定的。有些类可能不需要自动调用构造和析构,内存分配器就分出来了,就只负责分配对象的内存。方便起见,还是要有new和delete功能的对应方法,那就另外用一个模板类包装内存分配器,是外部使用的类,New函数取得对象内存后再调用构造函数,也要有ma

2010-05-10 18:58:00 1698

原创 游戏AI引擎设计——设想

       好久没写了,一直对AI比较感兴趣,最近看了些书对AI引擎的设计有点感觉和想法,不过现在只是有了一些想法,并没有实现和测试,先发出来免得以后搞忘了。       这里针对的AI是解决决策性问题,不包含具体执行问题。例如:A角色和角色B战斗,那么A的行为判断将由AI负责,AI决定是继续奋战到底,还是逃跑,引诱,等。行为执行过程使用更简单和成熟的计算方式,逃跑路线,躲避、追踪目标的具体

2010-04-28 14:40:00 5594 2

原创 一不小心——工作半年了

    从毕业出来开始工作到今天刚好半年了。    时间过的好快,总的来说是有黑多改变。    接触到很多新的东西,学到了黑多东西。    也渐渐适应了这种方式,从开始的迷茫到后来的反感,再现在的专注。    大概的生活 人生之类的 稍微晓得些了        上个月做的东西比较杂,这个月主要就是场景方面的,游戏场景显示和逻辑的衔接部分。    有时突然发现有些东西变的

2009-12-25 11:59:00 1029

原创 好耍的>模板偏特化<——改变创建对象的类型

     试验性的玩了下,嘿嘿,前2天看到Traits关键的字眼,在网上找到点介绍Boost的模板特性技术的文章,看了下。    今天突然想起某种编程“目标”(当添加新功能时,能对已有的东西不做修改,直接附加上去的扩展性),想试下不修改创建父类指针的代码,就能让它创建一个子类赋给父类指针。用模板偏特化来试下。        情况一:    例如:    struct TTA;

2009-11-21 20:24:00 933

原创 图形层——纹理功能

    好久没写了,昨天天气不错,今天周末,写2句。    啊,上次的场景编辑器里面的物件放置弄完了。要开始改造现在的引擎内容,按我们理所当然的想法进行了图形层的划分。我就开始做纹理功能部分,真是好多呀,需要使用的纹理类型不说,而且像素格式也是好多种,转换函数都好多。    参考其他资料和按我理所当然的想法,由于是封装DX的纹理接口,我就另外有一个图像类存2维像素图,一个纹理接口类和D

2009-10-17 10:33:00 1165 1

原创 规律?混乱——习惯

    出来上班有段时间。不过总感觉有些怪怪的不在状态。虽然,有些和之前在家做毕业设计时候的情况有些相似但,感觉没有像小时候,或者以前晚饭时的放松的心情。一直都是一种有点紧张,但又浑浑噩噩的感觉。一晃一晃的昏昏忽忽的就过了一天。    想起来,从小到大一直早起上学,上学的作息时间和一般的生活规律已经有了。或许还是那样比较好吧,以前不一直是这样的么?    明天开始按正常的作息时间和生活

2009-08-14 22:41:00 777

原创 结束,新的开始

    大学毕业了,有时想起还是有些舍不的。咋那么快!而且,好像毕业时候的感觉怎么还没有看以前别人毕业时候伤感,那时想到自己会怎样,结果没怎样!=。= 哎。。。就这样。。吧。。^_^    到这边上班了,感觉和在家时候做毕业设计蛮像的。房间 和 自己控制的时间。就是没有在家那么耍的多了,哈哈哈。    到这边第一个事做3D地形编辑器的放置物体功能。先熟悉了引擎再修改和添加,只是开始做的时候

2009-07-09 16:23:00 1178 1

原创 毕业了

好久没写日志了...毕业了 大学三年的生活结束了!!!~~~原本毕业的时候应该比较伤感的不过这次好像 没那么伤感也许是因为别的是掩盖了 也许是之前伤感完了也许....也许....不过这次回来学校想做的事 都完成了..基本上没啥子遗憾了 ^_^不过还是有些舍不得 也是出去一个人会不习惯 在学校和其他人 聊天热闹的场景一起昏天黑地的 玩一起醉生梦死的 喝

2009-06-19 22:08:00 887

原创 毕业设计---完结

    从3月中旬开始做毕业设计,现在终于结束了。    本来打算4月初就完成了然后5月看下AI方面的,6月时候再选择图形或者AI再继续看。结果东整西整费了好多时间,也低估了复杂程度。作品的第一版在4月底就完成了,但是不理想。现在的是5月后重新做的。     地形高度图文件太大了16MB,还专门把float32位转换成float16位,再用zlib压缩了,体积缩小到了4MB~7MB。

2009-06-17 11:03:00 1076

原创 3D游戏场景DEMO——添加水体效果

    好久没写了,5月初就把地形弄差不多了,后来几天把天空穹改了下,弄了多重纹理云彩飘动。    之后一直在做水体的实现,发现水体太烦了。原以为比较简单没地形复杂,结果一查阅资料,天呐~~比地形复杂多了。和地形也有相似的地方LOD之类的,也许是本来对图形方面的不了解。看了海水生成的方式——2D水波方法、正弦波叠加、FFT(快速博立叶变换)、柏林噪声、还有《游戏编程精髓6》上的“GPU交互式流

2009-05-23 17:56:00 2627 2

原创 毕业设计——GPU地形雾化效果

    刚晚上无事,想起白天的雾化思路,试了下。    对地形“低洼”地方,以及距离摄像机远的地方都雾化。    想起打时候联盟任务有个镇打鬼魂的地方(地名忘了=。=),一到那个区域视野中所有东西都会被雾化。也尝试着实现了下那个效果。    不清楚DX自身的雾化是咋做的,我还是用VS和PS测试和改了下效果还不错。。。^_^ 高处俯视 效果 中高地平视 

2009-05-01 23:44:00 1567

原创 毕业设计——GPU地形高度查询

    参照游戏编程精髓6>书上的内容,摄像机对地形的高度查询方法使用“渲染到纹理”的方式。实现时费了不少时间。结果效率还不好。。哎。。。    方法是通过创建一张1×1大小的纹理,一个1个大小的动态顶点缓冲,动态设定xz坐标(对应纹理的uv坐标区间是[0,1)),然后把纹理作为渲染目标,进行渲染。在像素着色器里面把D3DFMT_R32F高度图对应uv点的高度值作为输出的像素值返回到纹理。再通

2009-05-01 02:43:00 1401

原创 毕业设计——地形使用GPU改良效果

    不知不觉都4月底了,4月有不少其他事耽搁了不少时间,现在进度还是慢了啊。。。55555。    之前考虑到GeoMipMap地形需要渲染管理和加大尺寸,把上次的直接多次创建几个后效率就不行了,优化的不好啊。当时想用四叉树做场景管理的,但当时写时没注意有个严重的BUG,所以考虑直接采用四叉树LOD地形。    这个在上上个星期弄好了,但效率还是太低了,因为作为三角伞形渲染DP调用次数

2009-04-28 23:36:00 3836

原创 毕业设计——阶段性成果展示

    3月中旬开始弄毕业设计,现在弄了一部分了,进度比预计的慢了点点,但是剩余的时间还是很充足的。    都没使用shader,只大概晓得,没仔细研究,估计很费时间。用了RTT(渲染到纹理)。 这是LOD地形的用的简单的Geomipmap,贴图光照什么的还没弄。  天空穹也弄了天空盒的,动态云彩还没加,没纹理。  地形不同块的平滑缝合衔接,2个

2009-03-29 20:47:00 8743 1

原创 迷惘还是迷惑

    现在大3要毕业了,大一刚来学校时候的想法不断的冒出来,想到名侦探柯南中剧场版《贝尔街亡灵》中,那个超强的人工智能体就兴奋不已。    那时选择游戏程序开发,准备先学C++再是DX或者OPENGL然后,再汇编。    大一下期开始想和同学弄自己的引擎,随后逐渐是DX占据更多,图形方面占了不少。    大二下期开始徘徊在以后是选择人工智能还是图形学方面,老师说图形更好,而我似乎对人

2009-03-23 12:08:00 1281

翻译 3D地形编程——之GeoMipMap基础(6)

到这里《Focus on 3D Terrain Programming》第5章内容就结束了,阅读完这个确实理解了不少。提供了一些不错的思路。但其中演示代码渲染是采用的单个三角形,这样效率很低了。我根据他的方法想改用顶点和索引缓冲,当然用DX9.域时(看图5.21)。在图中,块的近似区域的值用黑园点标记出来了。 图5.21 低级别块的许多顶点,近似高细节的块的值。

2009-03-08 23:38:00 2015

翻译 3D地形编程——之GeoMipMap基础(5)

块的邻接结构的信息我们之前填充的,在块边缘的扇形被渲染时使用,展示如下: //if this fan is in the left row, we might need to//adjust its rendering to prevent cracksif( x==fHanlfSize )      fanNeighbor.m_bLeft= patchNeighbor.m_b

2009-03-08 23:33:00 2235

翻译 3D地形编程——之GeoMipMap基础(4)

  m_pPatches[iPatch].m_iLOD= 0; else if( m_pPatches[iPatch].m_fDistance     m_pPatches[iPatch].m_iLOD= 1; else if( m_pPatches[iPatch].m_fDistancem_pPatches[iPatch].m_iLOD= 2; else if

2009-03-08 23:29:00 9599

翻译 3D地形编程——之GeoMipMap基础(3)

 图5.10为了防止与右边图块断裂,需要移除最右边列的扇面的右边顶点的图块。 实现Geomipmapping仅是稍微弱地CLOD你知道Geomipmapping基础背后的理论,但是现在我们需要实现它。这应该不会使你脑袋很头痛。难的部分已经完结了,象往常一样,我们将每一次谈论一步。拿一些咖啡,锁上你的门,放一些好的音乐,开始吧! 拼凑它因为Geomipmapping是

2009-03-08 23:23:00 2894

翻译 3D地形编程——之GeoMipMap基础(2)

 图5.4 在Geomipmapping算法中,随着图块远离观看者,选择更低的细节级别。  图5.5 Geomipmapping白皮书中呈现的作为图块渲染的三角形排列方式。 这种排列可能看起来像是一个比较好的主意,并且它在很多地方使用。(警告:我会在这里稍微转变下话题。)如果你计划用顶点缓冲渲染块,三角形带将有明确的传送路线,这是我给你的建议。然而,因为实现顶点缓冲渲染

2009-03-08 23:15:00 3740

原创 毕业设计---之 初识 高低地形 Terrain (效果)

上次没注意图片的格式没能传上来,现在来传上来看下。^_^第一次弄地形的,全是最高细节的,还没使用任何加速算法,纹理也是静态根据高度而自己生成的。光照是静态的根据面片的斜度预先计算的。这次是把摄像机高度添加进去了,根据地形高低摄像机会上下移动。还加了个地形自己旋转时,摄像机跟随当前点地形高低而升降。 有纹理的效果,比较粗糙,没做高级处理,右边的线是我坐标轴的。 

2009-03-08 23:07:00 3964

翻译 3D地形编程——之GeoMipMap基础(1)

HoneyCat游戏编程学习笔记---之3D地形编程原著《Focus on 3D Terrain Programming》翻译:邱涛 风轻炫舞 HoneyCatEmail:qiutaoleo@163.comBlog:http://blog.csdn.net/honeycat/QQ:241855668说明:英语水平有限,在自己学习时候同时记录下来的,希望能与大家技术交流互相学

2009-03-08 22:48:00 4641

原创 内存特征码查找--摸索

下午在广海论坛看到别人的一个关于游戏内存特征码查找的帖子,有了些兴趣。想研究下其原理,看了下Ollydb和CE之类的软件,其中对内存的显示都是16进制的字符形式。也想试下那种效果。 个人感觉这个查找是字符串匹配问题,特征码就是子串,而源串是游戏内存了。考虑到内存太大了,所以觉得还是KMP算法好啊,呵呵。 网上找到个现成的,修改了下就OK了,为了结合函数参数一致,所以写了

2009-03-02 22:06:00 8195

原创 毕业设计---之 初识 高低地形 Terrain

    这个世界上没有偶然,有的只是必然.-----以前看的动漫里面的话语     不知不觉就大3了,就要开始最后的毕业设计了,课题选来选去没什么适合的,最终选了个,估计这个和我们设想的游戏比较接近吧.    首先,想做下高低地形,还好教材书上有例子,也就是.从学校回家的火车上看了下,前天心血来潮,写代码了,昨天晚上完成的差不多了,今天修改了下OK了.    完成的和书上内容一致,

2009-02-20 02:23:00 1208

原创 第一次工作体会

       话说2008年12月24日平安夜前几天,想到学校呆不下去了,极其厌倦的学校的生活,简直浪费时间该出来工作了。        25日来到公司签3方协议了,之前已经联系过了。        27号以百分期待的心情来到了公司这边,结果一来就有不顺,汽车好不容易的晚点。运气很好的还是很不好的,同学回家去了他租的地方没人,我的东西在我白跑一次到同学住的地方后,又随我到公司这里。星期6加班人并不

2009-01-04 15:02:00 1854

原创 11月1日到11月14日的成果

        11月初育碧开始校园招聘了,去参加了。费力八劲的写测试题。        一个方面是考虑的太多了,还有方面是以前的没积累整理好,结果很费时间。以及想要运用现有资源的时候,感觉反而缓慢了,因为需要去理解了再改造,还不如按自己的思路来构造来的快。        也就是用自己熟悉的方式来做,比用先进、现成,但不熟悉的东西来的快。        总的来说,一个感触就是积累要做好

2008-11-17 22:43:00 932

原创 神奇的日子记录下今天10月27日

        今天上午本来是第一次关机不带电话(学校信号不好的很,带了也没啥子用),然后中午回寝室上email发现错过了一个招聘回复电话,我简历电话打不通,要我回复电话号码.下午回复了马上电话就打过来了.果然啊这就是大公司的效率和负责啊.有些公司貌似一次打不通电话就会不理睬?        还好没有一时事情还是多突然的,还是应该要准备下.好远的.上海=.=    

2008-10-27 21:50:00 1109

原创 一些画图智力题

        今天和学校同学做的思维扩展题.简单的9个点用4条线连接起来不起笔,这个再很多地方都看到有的.        还有12个点用5条线,还有16个点用6条线.哈哈哈.        还有一个是用6条线围成7个三角形不重复,本来同学意思是可以起笔.嘿嘿        结果我做的时候没起笔,再上面的再加个条件不起笔用6条线画7个三角形,这个就难一点了.不过我做的时候是看到前面的几

2008-10-26 16:14:00 7200

超简单as脚本解释器代码.rar

ATA is atlantis's script 大概13年上半年做页游时候,ActionScript3不方便弄脚本,突发奇想自己写个脚本来跑,按照简单的C语言语法,看了下编译原理,手写递归下降,实现了一个很简单的解释器,懒了运行时没做栈执行,后来由于各种原因,也没用上,前几天忽然翻出来了,就当是看编译原理的一个简单作业.

2020-06-17

3dsmax 2012 md5导出插件(32/64)

md5格式导出插件,支持3ds max 2012版本。mesh文件中加了部分自定义信息,并且版本信息为"MD5Version 4843",使用其他预览器的时候需要注意导出时勾上Doom Version。 支持将mesh按照引用的骨骼数进行分割。 支持无骨骼导出。 不支持无材质导出。 开源地址https://github.com/qiutaoleo/md5Exporter

2014-04-24

3dsmax 2011 md5导出插件(32/64)

md5格式导出插件,支持3ds max 2011版本。mesh文件中加了部分自定义信息,并且版本信息为"MD5Version 4843",使用其他预览器的时候需要注意导出时勾上Doom Version。 支持将mesh按照引用的骨骼数进行分割。 支持无骨骼导出。 不支持无材质导出。 开源地址https://github.com/qiutaoleo/md5Exporter

2014-04-24

3dsmax 2010 md5导出插件(32/64)

md5格式导出插件,支持3ds max 2010版本。mesh文件中加了部分自定义信息,并且版本信息为"MD5Version 4843",使用其他预览器的时候需要注意导出时勾上Doom Version。 支持将mesh按照引用的骨骼数进行分割。 支持无骨骼导出。 不支持无材质导出。 开源地址https://github.com/qiutaoleo/md5Exporter

2014-04-24

3dsmax 2012 32位 md5导出插件

md5格式导出插件,目前针对3ds max 2012开发。mesh文件中加了部分自定义信息,并且版本信息为"MD5Version 4843",使用其他预览器的时候需要注意导出时勾上Doom Version。 支持将mesh按照引用的骨骼数进行分割。 不支持无材质导出,无骨骼导出。 开源地址https://github.com/qiutaoleo/md5Exporter

2013-06-04

3dsmax 2012 64位 md5导出插件

md5格式导出插件,目前针对3ds max 2012开发。mesh文件中加了部分自定义信息,并且版本信息为"MD5Version 4843",使用其他预览器的时候需要注意导出时勾上Doom Version。 支持将mesh按照引用的骨骼数进行分割。 不支持无材质导出,无骨骼导出。 开源地址https://github.com/qiutaoleo/md5Exporter

2013-06-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除