>重点算法解疑·广阔天地

原创 2006年06月14日 16:55:00
每一个关卡地图都包括二个场景文件,出场对象数据文件.dat和地图障碍模型文件.map,如1*1.dat,1*1.map,场景文件是用LoadMap()来读取的,它的程序作用是用来初始化地图场景,这是大体上的说法,细一点说,它的最终的程序作用是给要出场的各个man[i]的所有分量赋值,.map障碍文件的读取LoadZa()为A*所用,是第七章以后的内容,(书中提到的场景一词就是指.dat中定义的Rs个对象man[i]+卷动中的地面背景,为什么这样说呢,因为.dat中同时定义有地面背景和各个man[i],至于"卷动中的地图"的说法你看我的系列文档的"穿越众林"篇就清楚了,相比之下,.map才是真正的地图数据所在,才是真正的地图主体,因为它指明了地图最本质的特征,即哪里可以去哪里不能去,而.dat只是出场的各个man[i]数据所在,是场景主体,如人或兽,静物等以及它们的特征值,按照OPP用对象和类来描述客观世界的做法,类是一个特殊的数据结构体,它跟普通的数据结构如这里的man[i]不一样,在C++中,类的定义形式跟构造体很为相似,类的概念的提出就是参照构造体来的,但是类在OPP的技术规范里的发展已远远超出了构造体的意义,到后来就是二个在本质上有区别的东西了,假设这本书里的man[i]是以类的形式被定义和以它的实例被构造的,而不是以普通的数据结构形成出现的,那么man[i]在现实中的表示就是一个活生生的人物对象(或者说人物形象),它们各自的属性分量决定了它们的外表,它们的成员函数决定了它们的动作行为,而它在计算机内存中的表示只是man[i]对应的内存块,这个实体的内存块由man[i]的各个分量,也就是变量构成,我们知道变量就是内存单元,去学习OPP的对象模型学吧)由于.dat是文件方式的文件,可以手写也可以用地图编辑器达成)注意:人始终是每个场景第一个出场的man[i],此时man[i]=man[0],LoadMap()是如何通过读取对应的.dat来达到初始化所有的man[i]的各个属性值的呢(即man[i]结构的各个分量如fw,js等)?这个函数用了标准的从一个.txt文件中读取数据到变量的方法(.dat也是.txt文件),这个方法在66页读取偏移值时也用过,这里有大量的数据要读,Rs越多对应的出场对象也就越多,man[i]结构分量初始化的工作量也就越大,在MFC中,.txt文件的读写存在一个"读写头"的概念,由于每个man[i]的特征值都有很多(97页),要对Rs个man[i]的每个分量都通过这个函数赋于初始值(这些初始值是变量,以后可能会发生变化),读取.dat文件中的对应数据只完成了部分特征值的赋于,另外的就要靠程序来赋于,再来谈"读写头",读写头首先在第4行,第5行转到第10行,在一个循环里(实际上LoadMap()对各个man[i]的各个属性赋值的工作是由这个循环体和循环体外的代码这二部分来共同完成的,前面说到的读取.dat只完成了部分属性值的赋于,实际上.dat文件的读取就是由这个循环完成的,.dat文件只给出了大部分的属性值,另外的属性值就由循环体外的代码来手工赋于)给各个对象(man[0]~man[rs])的jisu,lb,js,p,xix,yiy赋值..

学VC编游戏-07.广阔天地

  • 2008年11月24日 10:34
  • 13KB
  • 下载

python 中re库(正则表达式)的一些困惑解疑

正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。 疑惑1: 首先要明...

YUV数据格式解疑

一般我们在YUV格式上进行画面的数据进行分析,比如一些视频分析算法。对此,为了对以后该方面的算法做一些知识储备,先总结对自己了解到的相关YUV知识进行总结,认识。  同样,首先贴出该篇文章的参考连接...
  • xpbob
  • xpbob
  • 2015年06月26日 13:06
  • 660

解疑性能测试之集合点

解疑性能测试之集合点    一、     Q:并发用户数和集合点有必然联系吗?在性能测试中必须使用集合点来测试吗?     A:并发用户数,顾名思义,就是同时操作的用户,这里的“操作”可以指对系...

电脑小技巧解疑

死机、病毒、快捷方式、装卸、运行速度、个性装扮——你是否一直在为电脑各种层出不穷的小问题而困惑?时不时地麻烦别人,不仅不能及时解决问题,还担心自己太惹人讨厌……口袋为你精心准备了今日的专题,里面有既丰...

Facebook工程师解疑:AlphaGo为啥这么厉害?

2016-03-14 11:09:44  出处:雷锋网  最近AlphaGo的世纪大战引发关注,2场比赛都打败李世石,它究竟厉害在哪里?内容来自Facebook人工智能研究员田渊栋,曾就职于...

RESTful软件架构风格解疑

REST风格的优势是什么?  作者:张立理 链接:http://www.zhihu.com/question/33959971/answer/57593571 来源:知乎 阮一峰的...

POI 技术解疑

  • 2013年04月09日 18:25
  • 1.83MB
  • 下载

Hbase--Hadoop关于Hbase副本解疑

HBase——强一致性详解 Hbase是一个强一致性数据库,不是“最终一致性”数据库,官网给出的介绍: “Strongly consistent reads/writes: HBa...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:>重点算法解疑·广阔天地
举报原因:
原因补充:

(最多只允许输入30个字)