rmapc.v0.4

所属分类:游戏
开发工具:Visual C++
文件大小:99KB
下载次数:50
上传日期:2009-02-01 15:11:15
上 传 者shiqinghua
说明:  3D游戏开发需要用到BSP树来经行场景渲染的管理。本代码包含完整的BSP及文件生成实现
(3D game development needed to BSP tree rendering scenes by line management. The code contains the complete realization of BSP and documents generated)

文件列表:
rmapc.v0.4 (0, 2008-12-15)
rmapc.v0.4\bugs.txt (279, 2008-12-15)
rmapc.v0.4\rmapc.exe (69632, 2008-12-14)
rmapc.v0.4\rvisc.exe (18944, 2008-12-15)
rmapc.v0.4\src (0, 2008-12-15)
rmapc.v0.4\src\bitstring.h (2476, 2008-12-13)
rmapc.v0.4\src\brush.cpp (2236, 2008-09-24)
rmapc.v0.4\src\brush.h (1755, 2008-09-23)
rmapc.v0.4\src\bsp.cpp (2576, 2008-09-24)
rmapc.v0.4\src\bsp.h (890, 2008-10-07)
rmapc.v0.4\src\bspbrush.cpp (5439, 2008-10-05)
rmapc.v0.4\src\bspbrush.h (3360, 2008-09-29)
rmapc.v0.4\src\bspconv.cpp (6692, 2008-12-14)
rmapc.v0.4\src\bspconv.h (5070, 2008-11-04)
rmapc.v0.4\src\bspdata.h (2674, 2008-10-07)
rmapc.v0.4\src\bspfilter.cpp (704, 2008-09-29)
rmapc.v0.4\src\buildbsp.cpp (5502, 2008-11-04)
rmapc.v0.4\src\buildbsp.h (1192, 2008-09-24)
rmapc.v0.4\src\clist.h (325, 2008-07-15)
rmapc.v0.4\src\cmdlib.h (456, 2008-09-23)
rmapc.v0.4\src\gamesys.h (216, 2008-12-14)
rmapc.v0.4\src\hashtable.h (2147, 2008-07-23)
rmapc.v0.4\src\hashtablevec.h (1868, 2008-09-23)
rmapc.v0.4\src\keyvalpair.h (1241, 2008-08-23)
rmapc.v0.4\src\lexer.cpp (4294, 2008-09-23)
rmapc.v0.4\src\lexer.h (1125, 2008-08-17)
rmapc.v0.4\src\list.h (1179, 2008-07-06)
rmapc.v0.4\src\log.cpp (1957, 2008-12-13)
rmapc.v0.4\src\log.h (695, 2008-09-24)
rmapc.v0.4\src\main.cpp (505, 2008-12-14)
rmapc.v0.4\src\map.cpp (1580, 2008-12-14)
rmapc.v0.4\src\map.h (1951, 2008-11-04)
rmapc.v0.4\src\math.cpp (9055, 2008-10-05)
rmapc.v0.4\src\math.h (8899, 2008-12-14)
rmapc.v0.4\src\matrix.asm (1821, 2008-10-05)
rmapc.v0.4\src\memalloc.cpp (63, 2008-08-17)
rmapc.v0.4\src\memalloc.h (862, 2008-08-17)
rmapc.v0.4\src\memcopy.h (117, 2008-06-24)
rmapc.v0.4\src\memcpy.asm (1933, 2008-10-05)
... ...

rmapc 2008 Rouslan Dimitrov Intent ------ This project is my educational tool to deepen my knowledge in computer architecture, computer graphics, game engine technology, compiler design, and programming. Acknowledgements ---------------- This work is strongly influenced and inspired by id's Quake 3. The sources have greatly helped me in my attempt to dive into the art of game programming. Although influenced by id Software's quake map compiler q3map, rmapc is developed from scratch and does not reuse code with similar utilities. Issues ------ Quake 3 compatibility issue 1 (plane equation): Quake uses Ax + By + Cz - D = 0 and this compiler uses "+ D". Quake 3 compatibility issue 2 (brush sides): The game expects every brush to have at least 6 sides (order: left, right, bottom, top, far, near), even though some are never reachable. The only way to optimize this is to set sBSPBrush.numSides to less then 6, but still sBSPBrush.firstSide to index into at least 6 valid brush sides. While not perfect, this could still save some work. Note: this way, all left brush sides are always checked, but we could get a speed-up from not reachable near sides.

近期下载者

相关文件


收藏者