单链DNA

换了个地址:http://www.cnblogs.com/vizhen/

 

《WINDOWS游戏编程大师技巧》学习笔记--学海无涯

终于等到在网上买的了,虽然这书时代有点老,但还是觉得还是有价值,应该好好读一读,仔细阅读当然是要做些笔记啦。

学习前的准备工作:
    这本书的例子用的是VC++ 6.0+DirectX 7.0,所以先得到网上下载DirectX 7.0 SDK(8.0亦可),解压,把Include 和lib 下的文件全部拷贝到Vc ++的对应目录下,然后,我就试着编译了第一章的一个例子游戏---打砖块的游戏,发现连接不了外部文件!无奈,百度一下,原来还得对编译器做些工作:在Project/Settings   /link     Object/library  添加 ddraw.lib dxguid.lib 。

第一章 学海无涯
    讲解游戏诞生的整个过程,Windows下面的游戏运行整个过程和游戏编程中的规范。
   “ 一个简化游戏的结构:第一步,初始化
                                            第二步,进入游戏循环
                                            第三步:获得玩家的输入信息
                                            第四步:执行人工智能和游戏逻辑
                                            第五步:渲染下一帧图像
                                            第六步:同步显示
                                            第七步:循环
                                            第八步:关闭 ”
    啊哈原来一个游戏程序简单点就是这样运行的,游戏也并不是那么神秘额。

 另外的收获就是游戏编程一些规范和技巧:

        1.“你不应当在对运行时间或内存要求特别严格的代码段中式用高层API。特别是与游戏内循环有关的代码大多需要手工编写,否则游戏多半会遇到严重的速度和性能的问题。当然,这并不一位着就不能信任DirectX等 API,因为DirectX的设计目的就是兼顾高性能和“thin”原则。但就通常来讲,应当避免频繁调用高层的函数。”----这点是有点不太明白,作者是对API的性能不太信任?还是另有原因,暂且放在这里,等整体看完再研究之。

       2.“不要害怕使用全局变量。”“由于参数要被压栈和出栈,执行这个函数体所需时间小于调用函数所需的时间,在这种情况下,更好的方法可以是设立一些全局变量,然后再调用前进行赋值以传递参数”——时间是如此的重要!

       3.“使用内联函数”--呵呵,这个上C++课时老师讲啦。虽然使编译后的程序变大了,但却有效的提高运行速度。

       4.“尽量使用32位的变量而不是8位或16位变量。”
      “struct   CPOINT
         { 
             short x,y;
             unsigned char c;
          } // end CPOINT”
          “注意,定义这个结果看上去不错,但实际并非如此!首先,结构本身是一个5字节长的结构——(2*sizeof(short)+sizeof(char))=5 字节。这太糟了额,由于没注意字节对齐,内存寻址的时候会出大问题。”——这点确实不知道!标记之。

      5.“以类似RISC的方式来编程。换句话来说,尽量简化你的代码,而不是是他更复杂。”——以前一直想,能一句完成,就不要写多几行,原来简单句子,执行的更快。“使用二进制移位运算来进行乘数是2的幂的简单整数乘法。”

      6.“不要为简单的对象定义太多复杂的数据结构。链表结构很好用,但并不意味着当你所需要的其实是大约有256个固定数组的时候,你也该使用链表”

      7.最后有一个小游戏,但是我对里面的碰撞算法,不太理解啊,真是有点难度啊。


posted on 2009-12-27 01:21 Geek.tan 阅读(1896) 评论(5)  编辑 收藏 引用 所属分类: 学习笔记

评论

# re: 《WINDOWS游戏编程大师技巧》学习笔记--学海无涯 2009-12-27 02:46 liuliu

有好多建议都过时了吧。现在所有的编译器都能处理例如变*2为移位操作之类的。  回复  更多评论   

# re: 《WINDOWS游戏编程大师技巧》学习笔记--学海无涯 2009-12-27 10:02 Goteet

e...学校开c++课啊,真幸福  回复  更多评论   

# re: 《WINDOWS游戏编程大师技巧》学习笔记--学海无涯 2009-12-27 13:46 新海网

你好,欢迎添加友情连接 http://www.xiw.org.ru/index.shtml  回复  更多评论   

# re: 《WINDOWS游戏编程大师技巧》学习笔记--学海无涯 2009-12-27 14:52 Geek.tan

@liuliu
因为原版书出得比较早,好像刚好是xp上市的时候出的  回复  更多评论   

# re: 《WINDOWS游戏编程大师技巧》学习笔记--学海无涯 2009-12-27 17:57 Touchsoft

能学习到一些不错的原理,我前阵日子刚读了。
虽然没读完。  回复  更多评论   

# re: 《WINDOWS游戏编程大师技巧》学习笔记--学海无涯[未登录] 2009-12-28 10:06 current

这书有点老了 嘿嘿   回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

统计

公告

coding是我的寂寞,我是谁的寂寞

随笔分类(40)

随笔档案(48)

搜索

积分与排名

最新评论

评论排行榜