FEAR编译备忘
1.FEAR是什么?
FEAR 是由aigame开发的AI Engine。
官网 http://fear.sourceforge.net/
wiki http://en.wikipedia.org/wiki/F.E.A.R.
可以参照FEAR0.4 中FEAR/documentation/guide/Guide.html【1】编译、安装、运行。
以下是我参照这个文档后,自己的实际步骤。
2.编译运行FEAR所需的文件
a)Fear0.4 (http://sourceforge.net/project/showfiles.php?group_id=51070)
b)QUAKE2
(在迅雷下载quake2.zip(118M),里面有*.bsp文件。如果按照【1】中所说下载q2-314-demo-x86.exe的话,里面是没有*.bsp文件的,最后是没办法运行的)
c)boost1.34.1
(需要用到boost_filesystem-vc80-mt-gd-1_34_1.lib(for debug mode) 和boost_filesystem-vc80-mt-1_34_1.lib(for release mode) )
3.解压缩(安装)
a)安装quake2到QUAKE2_ROOT/
a)Fear0.4.exe安装到FEAR_ROOT。
安装时会提示指定quake2的所在目录,输入QUAKE2_ROOT。这个很重要,在后续编译链接阶段,会自动将生成的*.dll拷贝到QUAKE2_ROOT/下的相应目录。
安装之后QUAKE2_ROOT/下会有个fear/目录。
安装程序自动设置环境变量FEAR_PLATFORM=QUAKE2_ROOT。如果没有,需手动设置。
4.编译FEAR
a)打开FEAR_ROOT/FEAR.dsw,提示“Visual SourceSafe login”,点击Cancel。又有个对话框弹出,点击Yes。
b)alt+F7,设置包含目录:
i )在Include Dir 中为每一个project添加Boost所在的目录BOOST_ROOT.(例如BOOST_ROOT=E:/MyTools/Boost/boost_1_34_1_BAK)
ii)在Link Dir中,把以下两个boost的lib文件所在路径包含进去:
boost_filesystem-vc80-mt-gd-1_34_1.lib(for debug mode) 和 boost_filesystem-vc80-mt-1_34_1.lib(for release mode)
iii)在*.dsw中,排除C++ Framework 工程中的如下文件(因为boost中没有这些文件,编译时无法通过)
convenience.cpp
convenience.hpp
execption.cpp
exception.hpp
operation_posix_windows.cpp
path_posix_windows.cpp
scoped_array.hpp
但是,需要在C++ Framework 工程中加入operations.cpp;否则Quake2Fear工程(Quake2.dsp)链接时无法通过。
iv)包含库文件:
boost_filesystem-vc80-mt-gd-1_34_1.lib(for debug mode)
boost_filesystem-vc80-mt-1_34_1.lib(for release mode)
编译生成的*.dll文件会自动拷贝到QUAKE2_ROOT/fear/和QUAKE2_ROOT/fear/modules和目录下。
5.运行
依照【1】所说
QUAKE2_ROOT/fear/GAMEX86.DLL是编译生成的,名称必须为GAMEX86.DLL。
a)启动server端
i)1个人在单机上玩的话,可以运行:
quake2.exe +set game fear +set dedicated 1 +set deathmatch 1 +map ZTN2DM1
ii)N个人玩的话,在server端可以运行:
quake2.exe +set game fear +set dedicated 1 +set maxclients N +set deathmatch 1 +map ZTN2DM1
ZTN2DM1是指QUAKE2_ROOT/BASEQ2/MAPS/ZTN2DM1.bsp,也可指定其他地图;
当出现“-------- FEAR Initialisation --------”时,说明FEAR加载正确。
b)启动client端:
quake2.exe +set game fear +connect 127.0.0.1 +exec config.cfg
config.cfg是指QUAKE2_ROOT/fear/config.cfg
END.