3D游戏引擎

上传人:资****亨 文档编号:130139401 上传时间:2020-04-25 格式:PPT 页数:40 大小:945KB
返回 下载 相关 举报
3D游戏引擎_第1页
第1页 / 共40页
3D游戏引擎_第2页
第2页 / 共40页
3D游戏引擎_第3页
第3页 / 共40页
3D游戏引擎_第4页
第4页 / 共40页
3D游戏引擎_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《3D游戏引擎》由会员分享,可在线阅读,更多相关《3D游戏引擎(40页珍藏版)》请在金锄头文库上搜索。

1、 3D游戏引擎 SDL SDL SimpleDirectMediaLayer 是一个自由的跨平台的多媒体开发包 适用于游戏 游戏SDK 演示软件 模拟器 MPEG播放器和其他应用软件 它被广泛的用于许多著名的游戏 最著名的游戏是赢得LIUNX组游戏开发大奖的文明 权利的召唤 Civilization CallToPower 最后 我们来了解一下SDL的版权问题 SDL在GNULGPL2 一个国际上的开源组织 下发布 这个版本允许你将SDL以动态链接库 dynamiclibrary 的形式免费地用于商业游戏软件的开发 可以有多种方法来得到X文件 首先需要使用三维建模软件来建立需要的三维模型 如3

2、DSMax MAYA 接着 可以使用三维建模软件的插件来导出X文件 可以使用的导出插件包括XSkinExp Panda等 从实用角度看 Panda更胜一筹 无论是导出静态模型 还是导出带有骨骼动画的动态模型 一般都不会出问题 这个插件可从下面这个网址下载 http www andytather co uk Panda directxmax aspx Panda针对不同的3DSMax版本 有不同版本的插件与之对应 在使用时只要把PandaDXExport dle 对应的是版本 这个文件放在3DSMas安装目录下的plugins目录中就可以了 3DSMas在启动后会自动识别这个插件 内存池 内存池

3、 MemoryPool 是一种内存分配方式 通常我们习惯直接使用new malloc等API申请分配内存 这样做的缺点在于 由于所申请内存块的大小不定 当频繁使用时会造成大量的内存碎片并进而降低性能 内存池则是在真正使用内存之前 先申请分配一定数量的 大小相等 一般情况下 的内存块留作备用 当有新的内存需求时 就从内存池中分出一部分内存块 若内存块不够再继续申请新的内存 这样做的一个显著优点是尽量避免了内存碎片 使得内存分配效率得到提升 BSP 二叉空间分割BinarySpacePartitioning 树是另一种类型的空间分割技术 其已经在游戏工业上应用了许多年 Doom是第一个使用BSP树

4、的商业游戏 尽管在今天BSP树已经没像过去那么受欢迎了 但现在仍在广泛地采用这项技术 当你看一下BSP在碰撞检测方面那极度干净漂亮和高速的效率 立刻能让你眼前一亮 不但BSP树在多边形剪切方面表现出色 而且还能让我们有效地自由运用world object式的碰撞检测 BSP树的遍历是使用BSP的一个基本技术 碰撞检测本质上减少了树的遍历或搜索 这种方法很有用因为它能在早期排除大量的多边形 所以在最后我们仅仅是对少数面进行碰撞检测 BSP文件格式是QUAKE2用于存储地图的一种文件格式 说得具体点 就是用于渲染Q2世界的 尽管有其他的信息包含在BSP文件中 用于其他游戏部分 如敌人AI 等等 BSP 一般来说 场景中的最主要结构就是SceneGraph 用树表示 用途是管理物体之间的相对位置关系 子节点的运动是相对于父节点的坐标系的 而空间分割的用途是加速视锥裁剪 碰撞检测 深度排序等的效率 例如从O N 下降到O logN 也就是说场景图管理和这些技术的用途不同 两者可以并存

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号