首页 > 编程语言 >常规游戏编程指导规范 (zz)

常规游戏编程指导规范 (zz)

时间:2023-06-09 17:07:28浏览次数:48  
标签:10 代码 编程 常规 zz 使用 编写 优化 2012


    章节名:常规游戏编程指导规范
    2012-03-21 20:48:41 鱼雷 (左手程序右手诗)

//z 2012-4-10 17:34:53 PM IS2120


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


    嗯嗯。


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



标签:10,代码,编程,常规,zz,使用,编写,优化,2012
From: https://blog.51cto.com/u_16156420/6449398

相关文章

  • How to: Configure Express to accept remote connections zz
    作者写于2005,针对的是sqlserver2005express.Updated配置sqlserver2005以允许远程连接TheinformationinthispostingissupersededbythefollowingKBArticle:914277 HowtoconfigureSQLServer2005toallowremoteconnectionshttp://support.microsoft.com/d......
  • 站在巨人的肩膀上 -- 书籍推荐 (zz)
    站在巨人的肩膀上--书籍推荐//z2012-5-1316:39:07PMIS212随着这个世界越来越依赖我们的实践,作为计算机行业的从业人员,对计算机行业的science实在有必要给与应有的尊重。行动的第一步,就是阅读一些经典的著作,掌握前人/前辈/行业大家们总结出来的知识和行之有效的实践,在......
  • .NET Developer Tools - What you should (could) have in your toolbox zz
    .NETDeveloperTools-Whatyoushould(could)haveinyourtoolboxSubmittedbyDenDelimarskyonSun,2010/12/26-9:26pm//z2011-12-202:34PMis2120@ScottHanslemanhasaprettydecentlistofsoftwaretoolsthatmightbeusefulfordeveloperandregul......
  • The specified DSN contains an architecture mismatch between the Driver and Appli
    ThespecifiedDSNcontainsanarchitecturemismatchbetweentheDriverandApplication如果希望DSN使用32位的驱动,应该使用c:\windows\sysWOW64\odbcad32.exe//z2013-01-1612:45:[email protected][T21,L319,R11,V383]1.Icreatedsystemdsninodbc32......
  • fgetws 讀取Unicode文件 (zz.IS2120@BG57IV3)
    //z2012-11-2218:48:[email protected][T4,L45,R0,V24]fgetws讀取Unicode文件fgetws_fgetts读取中文乱码unicode双字节多字节最近要讀取一個unicode文件做額外處理,但是透過fgetws去讀取檔案,利用WriteConsole顯示在console畫面......
  • 痛苦造就性格(也许还造就坏产品)(zz.IS2120)
    JamieZawinski//z2012-09-2622:22:[email protected][T50,L1560,R32,V428]他是一个非常传奇的人,高中都没有毕业,却是世界上最好的程序员之一,Netscape公司的主力程序员,划时代产品”网景浏览器”的主要开发者。他在公司里就是一身摇滚明星的打扮,留长发、穿皮夹克、戴......
  • 北京划定63处禁止开发区域 总面积逾3千平方公里 (zz)
    本报北京10月14日电备受关注的《北京市主体功能区规划》近日浮出水面。其中除了人们熟悉的首都功能核心区、城市功能拓展区、城市发展新区、生态涵养发展区四类功能区域外,首次设立“禁止开发区域”,并明确在该区域内,除必要的交通、保护、修复、监测及科学实验设施外,禁止......
  • Handling Invalid Characters in an XML String (zz.IS2120.BG57IV3)
    Thereare5predefinedentityreferencesinXML://z2013-08-2018:03:[email protected][T191,L2147,R75,V2925]<<lessthan>>greaterthan&amp;&ampersand &apos;'apostrophe""quotationmark//z2014-04-1017:47......
  • 更法第一 (zz)
    更法第一题记:此篇记载了秦国实行变法之前革新派与守旧派围绕该不该变法,为什么要变法的问题展开的争论。原文孝公平画,公孙鞅、甘龙、杜挚三大夫御于君。虑世事之变,讨正法之本求使民之道。君曰:“代立不忘社稷,君之道也;错法务明主长,臣之行也。今吾欲变法以治,更礼以教百姓,恐天下......
  • Jamie Zawinski访谈:在折腾中成长 (zz.IS2120)
    //z2012-09-2622:24:[email protected][T51,L1560,R32,V428]Zawinski:那终究只是理论。Seibel:是的,不过有时这个理论也能成真,只要主事者有良好的判断力,框架也不是太过精致,的确能节省时间。你能讲讲自己属于哪一类吗?Zawinski:虽然是陈词滥调,不过我还是要重提:更差就是......