zoukankan      html  css  js  c++  java
  • 常规游戏编程指导规范 (zz)

        章节名:常规游戏编程指导规范
        2012-03-21 20:48:41 鱼雷 (左手程序右手诗)
    //z 2012-4-10 17:34:53 PM IS2120@CSDN
    1.对你所做的工作进行备份
         不备份的代价是巨大的,重新编写角色AI和冲突检测就是悲剧
    2.开始游戏项目时要进行良好的组织
        使用合理的文件名称和目录名称,使用一致的变量命名规则,并尽可能使用单独的目录存储图形和声音数据
    3.使用内嵌函数
         使用inline,可能会使程序变大,但是程序的速度更重要
    4.尽可能使用32位变量而不是8位或16位变量
        奔腾以上的CPU都是32位或64位的,这意味着他们不擅长处理8位和16位数据,更小的数据会造成内存寻址问题,降低程序的速度,例如一个结构体的长度为5个字节,那将导致内存寻址的性能相当糟糕。
    5.不要害怕使用全局变量 (//z 2012-4-10 17:34:53 PM IS2120@CSDN)
        嗯嗯。
    6.以RISC方式进行编程
        使代码尽可能简单,奔腾类处理器适合处理简单指令,简单指令使代码变的更长,但将会使编译器更加容易处理,书中给了一个例子:
        if (x += (2 * buffer[index++])>10)
        {
         //执行处理
        }//这样不好
       应该替换成:
        x += (2 * buffer[index]);
        index ++;
        if(x > 10)
        {
         //执行处理
        }
    7.对于整数乘以2的幂这种简单运算,应使用二进制移位
        (当今时代的编译器会自己做这种优化)
    8.编写高效的算法
         算法永远很重要!
    9.不要在编写代码过程中优化代码
        不要忍不住去在编写代码过程中做优化,这通常是浪费时间。等待已经完成一个主要代码或已经完成游戏编码后,再进行仔细优化(如使用Intel的VTUNE这样的优化工具)。这将会节省大量时间,因为不需要处理那些模糊的代码或不必要的优化。另一方面,在编写的时候也不要写不清晰的代码。
    10.慎用C++
         指的是在没必要的时候不要使用C++的语言特性,比如过度使用类或者重载之类。
    11.如果你发现采取的路线很困难,则应该马上停止,然后备份,并想办法绕过该困难
        注意结构吧,这一条目前还没什么体会。
    12.对于简单对象,不要编写复杂的数据结构
        这条好理解,不要因为链表强大而在知道元素最大为256个的情况下不适用数组而使用链表。
    //z 2012-4-10 17:34:53 PM IS2120@CSDN

  • 相关阅读:
    第四章 Zookeeper技术内幕
    容器--TreeMap
    算法--红黑树实现介绍(二)
    算法---红黑树实现介绍(一)
    容器--WeakHashMap
    基础-WeakReference
    容器--IdentityHashMap
    容器--EnumMap
    容器--HashMap
    容器--Map和AbstractMap
  • 原文地址:https://www.cnblogs.com/IS2120/p/6745917.html
Copyright © 2011-2022 走看看