quake3使用虚拟机的方式或者共享库的方式,实现引擎和具体游戏的解耦。

引擎文件为quake3.exe

而游戏实现又分为client ,server,ui 三部分,格式及其实现方式为dll和qvm

引擎中和

客户端有关的函数前缀为CL

服务器有关的函数前缀为SV

UI有关的函数前缀为UI

游戏程序中和

客户端相关的函数前缀为CG

服务器相关的函数前缀为G

quake3的脚本系统以命令的方式实现。

命令存放在CBuf中,使用CBuf_AddText往命令BUF中添加命令。

使用CBuf_Execute批量执行CBuf中的命令。

命令使用Cmd_AddCommand添加到系统中,并绑定命令的相关函数,其中exec命令是把命令文件一般是cfg后缀的文件加载到CBuf中运行。

Cbuf_AddText ("exec default.cfg/n");

// skip the q3config.cfg if "safe" is on the command line
if ( !Com_SafeMode() )

{
        Cbuf_AddText ("exec q3config.cfg/n");
}

Cbuf_AddText ("exec autoexec.cfg/n");

Cbuf_Execute ();

这个是系统Com_Init()函数中最先执行的几个脚本文件。


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zlstone/archive/2009/10/10/4650006.aspx

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐