资源预览内容
第1页 / 共40页
第2页 / 共40页
第3页 / 共40页
第4页 / 共40页
第5页 / 共40页
第6页 / 共40页
第7页 / 共40页
第8页 / 共40页
第9页 / 共40页
第10页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
3D游戏引擎 SDL SDL SimpleDirectMediaLayer 是一个自由的跨平台的多媒体开发包 适用于游戏 游戏SDK 演示软件 模拟器 MPEG播放器和其他应用软件 它被广泛的用于许多著名的游戏 最著名的游戏是赢得LIUNX组游戏开发大奖的文明 权利的召唤 Civilization CallToPower 最后 我们来了解一下SDL的版权问题 SDL在GNULGPL2 一个国际上的开源组织 下发布 这个版本允许你将SDL以动态链接库 dynamiclibrary 的形式免费地用于商业游戏软件的开发 可以有多种方法来得到X文件 首先需要使用三维建模软件来建立需要的三维模型 如3DSMax MAYA 接着 可以使用三维建模软件的插件来导出X文件 可以使用的导出插件包括XSkinExp Panda等 从实用角度看 Panda更胜一筹 无论是导出静态模型 还是导出带有骨骼动画的动态模型 一般都不会出问题 这个插件可从下面这个网址下载 http www andytather co uk Panda directxmax aspx Panda针对不同的3DSMax版本 有不同版本的插件与之对应 在使用时只要把PandaDXExport dle 对应的是版本 这个文件放在3DSMas安装目录下的plugins目录中就可以了 3DSMas在启动后会自动识别这个插件 内存池 内存池 MemoryPool 是一种内存分配方式 通常我们习惯直接使用new malloc等API申请分配内存 这样做的缺点在于 由于所申请内存块的大小不定 当频繁使用时会造成大量的内存碎片并进而降低性能 内存池则是在真正使用内存之前 先申请分配一定数量的 大小相等 一般情况下 的内存块留作备用 当有新的内存需求时 就从内存池中分出一部分内存块 若内存块不够再继续申请新的内存 这样做的一个显著优点是尽量避免了内存碎片 使得内存分配效率得到提升 BSP 二叉空间分割BinarySpacePartitioning 树是另一种类型的空间分割技术 其已经在游戏工业上应用了许多年 Doom是第一个使用BSP树的商业游戏 尽管在今天BSP树已经没像过去那么受欢迎了 但现在仍在广泛地采用这项技术 当你看一下BSP在碰撞检测方面那极度干净漂亮和高速的效率 立刻能让你眼前一亮 不但BSP树在多边形剪切方面表现出色 而且还能让我们有效地自由运用world object式的碰撞检测 BSP树的遍历是使用BSP的一个基本技术 碰撞检测本质上减少了树的遍历或搜索 这种方法很有用因为它能在早期排除大量的多边形 所以在最后我们仅仅是对少数面进行碰撞检测 BSP文件格式是QUAKE2用于存储地图的一种文件格式 说得具体点 就是用于渲染Q2世界的 尽管有其他的信息包含在BSP文件中 用于其他游戏部分 如敌人AI 等等 BSP 一般来说 场景中的最主要结构就是SceneGraph 用树表示 用途是管理物体之间的相对位置关系 子节点的运动是相对于父节点的坐标系的 而空间分割的用途是加速视锥裁剪 碰撞检测 深度排序等的效率 例如从O N 下降到O logN 也就是说场景图管理和这些技术的用途不同 两者可以并存
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号