quake代码树结构

(一)运行需要的文件。

botlib 生成botlib.lib

cgame 生成cgamex86.dll

game  生成qagamex86.dll

q3_ui 生成ux86.dll

renderer 生成renderer.lib

splines 生成splines.lib

 

quake3 生成quake3.exe

 

cgame game q3_ui是3个DLL

每个DLL有一个vm_main函数。

int vmMain( int command, int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, int arg8, int arg9, int arg10, int arg11  )

 

 

每个VM中的LOAD次序:

 

VM_Create

Sys_LoadDll

 

每个VM有一个dllEntry和entryPoint

 

VM有两种接口:shared libs and qvm.

qvm文件保存在pak文件中。

 

(二)源代码树各目录的作用

 

lcc/the retargetable C compiler ( produces assembly to be turned into qvm bytecode by q3asm ) 


q3asm/assembly to qvm bytecode compiler 


q3map/map compiler ( .map -> .bsp ) - this is the version that comes with Q3Radiant 200f

q3radiant/Q3Radiant map editor build 200f ( common/ and libs/ are support dirs for radiant

 

(三)pak文件

 

研究过pak文件的人都知道,pak文件有个特点:pakx.pak中x=0--9,x越大优先级越高

比如加上新地图,不用修改pak0.pak,打个包放在baseq3下即可

 

tga是一款游戏使用较早格式的图片,她比BMP,JPG的优势就是支持Alpha通道,这样可以轻松的制作出透明效果来;不过我现在觉得PNG比tga格式更好用一些,因为PNG压缩比很高,而且制作也很简单,如果注意一下,hge这款2D引擎使用的很多都是PNG格式的图 片资源。dds也是一款支持Alpha通道的图片格式,而且N显卡对他支持硬件加速,不过制作比较麻烦,而且限制重重,所以我还是青睐使用PNG。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值