3D游戏图形引擎设计

来源 :电子科技大学 | 被引量 : 0次 | 上传用户:kocis2815
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
数字游戏是计算机行业中最有价值和发展潜力的领域之一,它同时有着非常高的技术要求。它集中体现了计算机科学在图形处理、网络通信、实时运算和人工智能等方面的最新成就,它的需求反过来又推动了这几个领域的发展。由于数字游戏的广泛普及和巨大利润,从它诞生以来,资金和技术在这里就一直呈现出高速增长的趋势,这一趋势还在继续。3D游戏是数字游戏发展的趋势,它已渐渐开始成为主流。它在体现逼真现实世界的同时对技术提出了巨大的挑战。3D游戏实现的关键在于游戏引擎技术,而图形引擎是其中最重要的部分之一。 本文在分析3D游戏引擎的结构及工作流程的基础上,构建了一个完整的3D游戏图形引擎Trial3D,它以三角形为建模和处理的基本几何图元,可以接受应用广泛的QuakeII模型及WorldCraft关卡编辑器生成的关卡,渲染和管理室内和室外的动态、静态场景,支持多种类型的光源,支持Gouraud着色方式,支持透视修正纹理映射,支持碰撞检测。Trial3D主要采用了以下技术实现较高的渲染速度和帧频:对室内场景,用BSP树实现在世界坐标空间中的多边形级剔除和碰撞检测,并将其与扫描线技术结合实现无重绘;对室外场景采用分区算法,同时用OSP技术实现世界坐标空间中的物体剔除和碰撞检测;在世界空间内实现了物体及多边形的剔除、背面消除;实现了空间裁剪和像素裁剪。此外,Trial3D以1/z缓冲代替z缓冲实现正确的深度缓冲和透视纹理映射,并将该技术用到动态场景管理中,弥补了BSP树和OSP树只能针对静态场景管理的缺陷。它还将仿射纹理映射和完美透视修正纹理映射分段混合使用,实现了表面纹理真实性和效率的兼顾。 Trial3D是一个采用软件渲染方式的引擎,所有的空间变换、光照、纹理映射以及光栅化都用程序代码实现。它使用了DirectX的2D图形API和输入API。Trial3D可以用于Windows平台的3D游戏。 本文对引擎各部分的多种实现方式进行了比较和讨论,并对实际运行的效果作出了评测。在文章最后,本文对后续工作的内容,包括Mipmapping、阴影、广告牌技术、粒子系统、多重纹理和凹凸映射分别作出了探讨。
其他文献
查询处理是任何信息管理系统的重要特征和组成部分。语义Web领域的智能查询处理问题已经成为研究热点,其与已有的查询处理工作最大的不同点是:使得基本的RDF数据存储具有重要
随着电信市场竞争的加剧,业务已经成为电信运营商参与市场竞争的关键元素。下一代网络以业务为驱动力,通过开放业务体系架构能够同时支持话音、数据和多媒体等多元化的业务。而
三维图形引擎是计算机硬件和软件开发的最新技术,实时性,交互性以及强大的漫游功能是其主要特点。三维图形引擎目前在很多领域内都有很广泛的应用,如军方的模拟实战系统以及
集数据采集、处理及通信于一体的无线集成传感器网络以其低廉的价格、便利的部署方式正得到越来越广泛的使用,对传感器网络各个方面的研究也成为目前学术界非常活跃的课题。
在大量的数据库应用中,如面向 Web 的数据集成、电子商务、数据仓库、数据库设计等,都需要用到模式信息。而操作模式信息的一个最基本的操作就是匹配,即将两个模式作为输入,产生
随着数据获取方式的多样性,数据挖掘和机器学习使用的数据集规模越来越大。而随着时间的推移,在大规模数据集的基础上,新的数据也在不停的加入进来,同时,数据集中已有的记录
分布式并行计算可以提供相对廉价且强大的处理能力,在研究和应用领域都得到了广泛的关注。负载平衡是影响分布式并行计算性能的重要因素之一,负载平衡策略的效率直接关系到分
随着社会的进步、科技的发展,互联网早已深入到人们日常生活的方方面面,成为人们生活中不可或缺的一部分。但是目前互联网面临着诸如扩展性、地址空间、端到端高性能传输、实
传统基于角色的访问控制(RBAC)系统需要在业务逻辑代码中加入访问控制逻辑来实现访问控制的细粒度。这种实现方式会导致系统代码的分散和缠绕,而面向方面的程序设计(AOP)可以
本文首先概述了Web的产生及其发展历程,从而引出了网络检索问题,并分析了目前搜索引擎的工作原理及其研究现状。由于Web上海量的信息处于不断的变化中,通用搜索引擎己经很难