如何在线重装win7系统盘

==============================================
网络游戏核心技术与实战 案例游戏
==============================================
●关于案例游戏
onlineGameBook-sampleCode文件夹内收录的文件是《网络游戏核心技术与实战》一书第4章和第5章的参考/辅助资料。
由于篇幅所限,本书部分章节使用了伪代码,这里准备了可以实际运行的代码,供大家参考。
案例游戏包括MMO类型(C/S MMO)和MO类型(P2P MO)的两种游戏。代码可以作为书中的运行示意图或者刊载代码的参考资料,帮助读者理解编程方法。
README.txt
VCE-License.txt
:通信中间件VCE的使用条件/利用规则
onlineGameBook-sampleCode内:
:和第4章相关。收录了MMO类型的案例游戏的文件夹
:和第5章相关。收录了MO类型的案例游戏的文件夹
※其他文件夹请参考下文
使用上述案例游戏程序时,请务必先阅读一下以下章节——“关于通信中间件VCE和VCE程序启动时间”和“使用须知”。
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
※ 使用本压缩包内收录的案例游戏,
※ 需要了解UNIX系统的基本操作等基础知识。
※ 下面的文档是在默认大家在了解这些知识的基础上进行的说明。 ※
※ 如果没有UNIX系统的相关经验,请参考相关文档。
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
●游戏视频的说明
可以参考下列动画来确认上述两种类型的游戏运行时的情况。
游戏视频和其他内容可以参考这里
【URL】http://gihyo.jp/magazine/wdpress/plus
●关于通信中间件VCE和VCE程序启动时间
上述MMO类型的案例游戏使用的通信中间件VCE的著作权等知识产权归史克威尔艾尼克斯公司所有。为了提升业界的技术水平和振兴游戏行业,史克威尔艾尼克斯公司特地为《网络游戏核心技术与实战》一书提供了特别授权。
购买本书的读者,可以访问稍后的文本附加信息中的URL,在遵守技术评论社网站的附属规定的前提下,方可得到授权使用VCE(技术评论社授权版)。
另外,本书案例游戏的压缩包中所含的VCE程序为试用版,在启动最多一小时后会无法继续通信。敬告读者,对于使用VCE所造成的后果,史克威尔艾尼克斯公司、原书作者、技术评论社、人民邮电出版社以及译者不承担任何责任。
※※※请仔细阅读※※※
●使用须知
? 案例游戏的压缩包中附带的数据和程序只是作为本书正文相关内容的参考和辅助材料。请不要用作其他目的。
? 对于使用本书案例游戏程序或数据所造成的后果,史克威尔艾尼克斯公司、程序或者数据的作者、开发者/提供者、原书作者、技术评论社、人民邮电出版社以及译者不承担任何责任。请读者周知。
? 请提前确认并同意技术评论社网站上相关的利用规则后再下载和使用压缩包内附带的通信中间件VCE(技术评论社授权版)。VCE的使用条件和利用规则可以参考VCE-License.txt文件。此外,包括本文件在内的其他压缩包内的程序的著作权一般都属于原作者或者开发者所有。使用时请确认拥有合适的软件授权。
? 压缩包内的案例游戏相关的程序代码是完全开源的,可以不经过授权自由使用。
? 使用关于本书所收录的软件、程序前请注意,对于相关软件的信息和使用方法,我们不提供包括电话在内的任何方式的技术支持。
●案例游戏的内容介绍
MMO类型的游戏内容:
? 在广阔的区域内敌人随机出现(突然出现)
? 通过键盘操作追击敌人,双击方向键“攻击”并造成伤害
? 受到一定伤害后可以击毙敌人并获得经验,提升等级,强化能力
单纯地模仿了一般MMORPG的典型设定。
游戏难度非常低,可以像挤泡沫般轻松地击败敌人。
案例程序比较出彩的地方是全部的游戏进度管理都在专门的服务器程序(gmsv)中进行,游戏客户端只是做单纯的显示,就像一般的网页游戏一样。
游戏视频也展示出两个同时启动的客户端的画面基本是相同的。
和两个画面相差很大的MO类型的游戏视频比较一下,可以很容易看出差别。
MO类型的游戏内容:
? 从侧面出现的敌人不断地射击玩家
? 通过键盘(上/下/左/右键或者W/A/S/D键)控制游戏角色躲避攻击
? 鼠标发射子弹攻击敌人
? 是一种僵尸设计类型的TPS(Third Person Shooting Game、Third-Person Shooter)游戏
经验值达到100时,可以提升等级。
游戏难度类似于20世纪70年代的美国游戏。
和现在的游戏相比,它在碰撞检测等地方还有很大的提升空间。
测试了一下,要达到等级3可能还需要一定技巧。
SyncValue类的使用方法是代码的亮点。
●案例游戏的运行环境
为了正常运行本书的案例游戏,需要确保具备以下软件环境。使用时请确认拥有合适的软件授权。
? Mac OS X v10.6(Snow Leopard以上版本)
? 通信中间件VCE ※在vce文件夹中。请在遵守使用条件/利用规则的前提下使用
? gcc 4.2.1※Snow Leopard系统安装的版本
? Boost 1.41.0 ※本压缩包收录了必要的部分
软件授权URL http://www.boost.org/LICENSE_1_0.txt
? SDL 1.2.14 ※收录在压缩包的SDL-1.2.14文件夹下(包含-arch x86_64 binary的版本)
软件授权URL http://www.libsdl.org/license-lgpl.php
? MySQL 5 14.14, distrib: 5.1.40
? MacPorts ※在安装MySQL时使用
参考URL:http://www.macports.org/install.php
? Django 1.1.1 ※通过源代码安装
参考URL:/en/dev/topics/install/
●MMO类型案例游戏的使用方法
MMO类型的案例游戏的动作确认时,先按照下面的准备步骤并且编译,然后启动服务器,再执行autocli和cli。请参考下列操作步骤,相同的软件可能会因为电脑环境的不同而无法正常运行,所以下面的说明并不能保证在读者的机器上一定可以正常运行。
准备步骤和编译程序的例子:
1) 在MacPorts上安装MySQL和准备
% sudo /opt/local/bin/port insall mysql5
※个别环境需要追加安装mysql5-devel和mysql5-server-devel,并设定/opt/local/var/run/mysql5/mysqld.sock
2) 移动到SDL-1.2.14目录下编译并安装
% ./configure && make
% sudo make install
3) 使用代码安装Django
从/download/下载Django-1.1.1.tar.gz
% tar zx Django-1.1.1.tar.gz
% cd Django-1.1.1
% sudo setup.py install
4) 编译案例游戏代码
-(a)移动到dbsv ./dbsv
-(c)移动到gmsv
-(e)移动到cli ./cli
5) MySQL的准备
% sudo -u mysql mysql_install_db5
% sudo /opt/local/share/mysql5/mysql/mysql.server start
% mysql5 -u root
mysql> grant all on *.* to storage@localhost
% mysqladmin5 -u storage reload
下述服务器启动出现错误时,请按照错误信息的提示操作。例如,必要时按照下面的方法,手动创建数据库k。
% mysql5 -u root
服务器启动的例子:
1) 移动到dbsv(编译完成后移动)
2) 执行make tbl生成必要的表
3) 启动./dbsv
4) 启动./dbcl并测试。如果一直在运行就没问题。
5) 移动到gmsv
6) 启动./gmsv 0。0是区域服务器ID。从端口29000开始等待接受请求。
autocli和cli的运行例子:
1) 启动./autocli并测试bot客户端
※ 执行autocli后,根据运行时间点的不同出现assertion failure错误的情况比较多,这时可以再次运行autocli程序或者注释掉出错的代码再去掉注释并反复尝试。
2) 运行cli文件夹下的cli程序
3) 几十秒测试后,如果出现bot test success!,则表示测试成功。
●MO类型案例游戏的使用方法
MO类型的案例游戏的动作确认基本上只需要执行cli程序(上述MMO类型动作确认时已经导入了SDL,所以只需要进行以下两步就可以运行游戏)。
动作确认的例子:
1) 无需参数直接运行./cli!使用TCP 29900端口等待接受请求。
2) 通过./cli localhost指定主机地址,本身的程序作为guest程序启动并连接主机。如果连接不成功则自动退出。
技术评论社 第一编辑部一日一篇boost之一
使用的boost版本是1.41.0;采用的编译器是VS2003。其实应该可以再各种编译器下编译通过。首先是windows系统
boost的官方首页下载最新版本的boost包和bjam.地址:http://www.boost.org/&
网上很多文章说要把bjam编译出来,其实在下载的时候载个编译好的版本直接使用就好了。我用的bjam是3.1.17-1-ntx86。一般每个版本的boost都会对应相同可用的bjam
解压boost包。把bjam的可执行程序放到boost根目录下,就是有boost,libs,doc这些文件夹的目录。WINDOWS启动cmd后找到boost目录,运行bjam就可以。bjam的选项有很多,如果你没什么特殊要求,直接运行就可以编译好。
(3)关于bjam的选项
一个例子:
bjam stage --toolset=msvc-7.1 --without-mpi --without-wave
--without-graph --stagedir="E:\boost\bin" link=static
runtime-link=shared threading=multi debug release
具体参数的意义
stage/install:stage表示只生成库(dll和lib),install还会生成包含头文件的include目录。推荐使用stage,因为install生成的这个include目录实际就是boost安装包解压缩后的boost目录(比include目录多几个非hpp文件,都很小),所以可以直接使用,而且不同的IDE都可以使用同一套头文件,这样既节省编译时间,也节省硬盘空间。
toolset:指定编译器,可选的如borland、gcc、msvc(VC6)、msvc-9.0(VS2008)等。
without/with:选择不编译/编译哪些库。wave、graph、math、regex、test、program_options、serialization、signals这几个库编出的静态lib都非常大,所以不需要的也可以without掉。这可以根据各人需要选择,默认是全部编译。但是需要注意,如果选择编译python的话,是需要python语言支持的,应该到python官方主页http://www.python.org下载安装。
stagedir/prefix:stage时使用stagedir,install时使用prefix,表示编译生成文件的路径。
build-dir:编译生成的中间文件的路径。默认就在根目录下,目录名为bin.v2,等编译完成后可将这个目录全部删除(没用了),所以不需要去设置。
link:生成动态链接库/静态链接库。生成动态链接库需使用shared方式,生成静态链接库需使用static方式。一般boost库可能都是以static方式编译,因为最终发布程序带着boost的dll感觉会比较累赘。
runtime-link:动态/静态链接C/C++运行时库。同样有shared和static两种方式,这样runtime-link和link一共可以产生4种组合方式,各人可以根据自己的需要选择编译。一般link只选static的话,只需要编译2种组合即可,即link=static
runtime-link=shared和link=static runtime-link=static。
threading:单/多线程编译。一般都写多线程程序,当然要指定multi方式了;如果需要编写单线程程序,那么还需要编译单线程库,可以使用single方式。
debug/release:编译debug/release版本。一般都是程序的debug版本对应库的debug版本,所以两个都编译。
(4)关于生成库文件的使用
首先是库文件名的命名方式
Boost官网的《Geting Started On
Windows》()提到了Boost库的命名,摘录如下:
libboost_regex-vc71-mt-d-1_34.lib 为例:
前缀:除了Microsoft
Windows之外,每一个Boost库的名字都以此字符串开始。在Windows上,只有普通的静态库使用lib前缀;导入库和DLL不使用。
boost_regex&
库名称:所有boost库名文件以boost_开头。
Toolset 标记:标识了构建该库所用的toolset和版本。
Threading 标记:标识构建该库启用了多线程支持。不支持多线程的库没有-mt。
ABI标记:编码了影响库和其他编译代码交互的细节。对于每一种特性,向标记中添加一个字母:&
Use this library when:
静态链接到C++标准库和编译器运行时支撑库
使用标准库和运行时支撑库的调试版本
使用Python的特殊调试构建
构建代码的调试版本
使用STLPort标准库而不是编译器提供的默认库
使用STLPort已被弃用的“native
iostreams”
版本标记:完整的Boost发布号,下划线代替点。例如,1.31.1版本将被标记为“-1_31_1”。
扩展名:取决于操作系统。在大多数unix平台上,.a是静态库,.so是共享库。在Windows上,.dll表示共享库,.lib是静态或导入库。
在使用的时候,注意与你项目的编译选项匹配,多线程的需要项目的时候选择C++-&代码生成-&运行时库进行设置,比如mt-gd对应多线程调试DLL
(5)用到代码中
#include&boost/asio.h&
#pragma comment(lib,"boost_lib_system.lib")
--伪代码,ASIO需要system,thread,time,bind等库的支持
然后就可以开始使用了
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。&&BOOST库中文帮...
扫描二维码,下载文件到手机
相关文档推荐
当前文件信息
浏览:322次
下载:54次
您的VIP会员已过期,是否续费?
用户应遵守著作权法,尊重著作权人合法权益,不违法上传、存储并分享他人作品。举报邮箱:
京网文[0号 京ICP证100780号}

我要回帖

更多关于 电脑怎么装系统win7 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信