毕业设计(论文)基于OpenGL的雪粒子系统设计与实现.doc





《毕业设计(论文)基于OpenGL的雪粒子系统设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于OpenGL的雪粒子系统设计与实现.doc(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、毕业设计论文基于OpenGL的雪粒子系统设计与实现 西 南 交 通 大 学本科毕业实习软件工程文档基于OpenGL的雪粒子系统设计与实现年 级 专 业 计算机软件指导教师 小组成员2021 年 1 月院 系 软件学院 专 业 计算机软件 题 目 基于OpenGL的雪粒子系统设计与实现 小组成员 指导教师评语指导教师 签章 成 绩 辩论委员会主任 签章 年 月 日毕业实习任务书学号姓名班级学号姓名班级学号姓名班级学号姓名班级发题日期2021 年 9 月 6 日完成日期2021 年 12 月 31 日题目基于OpenGL的雪粒子系统设计与实现实习目标任务及主要内容采用常规的曲面来表达焰火云烟等非常
2、不规那么的自然界形体是很困难的事情这些自然界形体外观形状极其不规那么常常带有很大的随机性并可能不断发生变化而粒子系统可以对树云火焰等进行动态建模和绘制粒子系统是一种随机模型它用大量的粒子图元 Particle 比方小球椭球立方体或其它形状来描述景物每个粒子的位置取向及动力学性质都是由一组预先定义好的随机过程来说明 本毕业实习拟将粒子系统的关键方法和OpenGL纹理映射技术相结合利用粒子系统对雪粒子的属性和运动特征进行建模再利用纹理映射技术显示计算得到的每个雪粒子从而实现对雪粒子的绘制系统可比拟真实地模拟降雪现象技术路线VCOpenGL指导教师提供的资料1计算机图形学相关参考资料 2粒子系统相关
3、参考资料 3OpenGL相关参考资料应提交的最终成果1系统分析设计文档包括需求报告概要设计报告详细设计报告 2毕业实习论文程序清单以及演示光盘进度安排共16周阶段周数任务应提交的成果一6查阅资料学习掌握计算机图形粒子系统技术及OpenGL实习日志二4系统分析设计相关软件工程文档三4系统实现及调试实现功能需求的可运行系统四2撰写实习文档评阅和辩论标准的毕业实习文档五指导教师签字 20 年 月 日学院专家组审核意见审批人签字20 年 月 日 目录一需求分析报告61 引言611 编写目的712 开发目的及意义713 预期读者和阅读建议914 OPenGL 工作渲染流程102 系统功能需求1221 系
4、统功能1222 设计和实现上的限制123 外部接口与运行环境需求1331 用户界面1332 运行环境134 其它非功能需求1341 性能需求1342 用户文档13二概要设计报告141 引言1411 编写目的1412 预期读者和阅读建议152 设计概述1521 设计原那么和设计要求1522 开发环境与平台163 系统逻辑设计1631 系统架构图1632系统处理流程174 系统出错处理设计18三详细设计报告191引言1911 编写目的1912 预期读者和阅读建议202 系统详细设计20四软件测试报告261 引言2611 目的262 测试条件263 测试方案2631 人员方案2632 进度方案264
5、 总体测试方案265 系统测试内容2751 系统测试任务277 性能测试内容28五用户操作手册291引言2911 编写目的2912 预期读者和阅读建议302 软件概述3021 功能3022 性能303 运行环境3031 硬件3032 支持软件314 使用说明3141 安装和初始化3142 主要功能使用举例3143 出错和恢复315用户操作手册31六工程开发总结报告32七参考文献33一需求分析报告1 引言在虚拟场景中自然景物的模拟一直是计算机图形学领域中的热点研究内容喷泉瀑布火焰水流雨雪等自然景物与传统的规那么几何物体不同它们拥有大量的细节信息和形状的随机变化因此这些自然景物的模拟相比照拟困难需
6、要借助粒子系统建模使其充分表达自然景观中模糊物体的随机性和动态性以便到达良好的模拟效果粒子系统理论经历多年的开展和完善已被广泛应用于虚拟现实三维仿真游戏开发电影特效可视化等领域本文结合这一实际情况以前人的研究工作为背景和根底以真实感和系统实时性以及友好的人机交互性为目标在深入分析粒子系统理论根底上结合Windows 7操作系统和Microsoft VC编译环境为开发平台基于OpenGL图形库设计并实现了一个用于自然景物模拟的粒子特效系统完成了雪花场景模拟主要工作如下 1 深入研究粒子系统理论及其应用详细分析粒子系统的根本原理总结粒子系统根本模型粒子系统通用结构和粒子系统的算法框架 2 简化雪景
7、的数学模型总结出雪粒子系统模型 3 设计并实现一个用于常见自然景物模拟的粒子特效系统 4 通过模拟雪花场景验证系统的有效性和实时性这款是利用了最新的语言进行编写可以说是一款新的语言他完全实现了面向对象的开发环境遵循 环境的编程语言它在实现交互性数据处理以及其他功能这份文档的编写目的既是为了明确本开发过程中所有既定设计问题也是为了帮助在保证工作效率和内容与设计者意图一致这份文档将对进行详细的说明致力于使阅读者和能通过该文档对整个有一个全面的了解1可以应用在商业上创立虚拟商店虚拟房地产漫游建筑物可视化虚拟旅游景点漫游虚拟博物馆等例如日本就出现了可以帮助顾客买房购房的虚拟现实效劳在日本松下公司的虚拟
8、厨房里顾客可以把自己想买的设备和餐具安置在厨房的相应地方看看是否适宜虽然认识到这一切都是虚拟的但还是会被它的那逼真的效果所迷惑一不小心就会全身心的投入进去并且最终买走了自己满意的商品虚拟现实技术为人们提供了一种理想的教学手段目前己被广泛应用在军事教学体育训练和医学实习中对于第一次走上手术台的医生来说通过虚拟现实技术的帮助他们可以在显示器上一遍一遍的模拟手术移动人体内的器官寻找最正确手术方案这种模拟器显示的人体结构可以到达乱真的程度在航天领域VR技术也大有用武之地例如失重是航天技术中的一个必须克服的困难因为在失重情况下物体的运动难以预测因此为了在太空中进行精确的操作需要进行长时间的仿真训练以适应
9、失重时操作的特点VR技术就是实现该操作的适宜的选择再如美国宇航局Ames研究中心的科学家将探索的火星数据进行处理后得到了火星的虚拟现实图像研究人员可以看到全方位的火星外表景象高山平川河流以及纵横的沟壑里被风化的斑斑的巨石都显得十分清晰逼真而且不管你从哪个方向看这些图视野中的景象都会随着你的头的转动而改变就好似真的置身于火星上漫游随着计算机与计算机图形学技术的开展仿真从最早的数字仿真开展到了今天的可视化仿真多媒体仿真与虚拟现实仿真虚拟现实技术是在综合计算机图形技术计算机仿真技术传感技术显示技术等多种学科技术的根底上开展起来的是九十年代计算机领域的最新技术之一它以仿真的形式给用户创造一个反映实体对
10、象变化与相互作用的三维图形环境通过头盔显示器数据手套等辅助传感设备使人可以进入这种虚拟的环境直接观察事物的内在变化并与事物发生相互作用给人一种身临其境的真实感可视化仿真技术的目标是把由数值计算或实验获得的大量数据按照其自身的物理背景进行有机地结合用图像的方式来展示数据所表现的内容和相互关系便于把握过程的整体演进发现其内在规律丰富科学研究的途径缩短研究周期可视化仿真就是将数据结果转换为图形或动画形式使仿真结果可视化并具有直观性2多媒体仿真技术是指计算机综合处理各种媒体信息包括文字图形动画图像声音视频等在各种信息间建立逻辑连接并集成一个有交互功能的多媒体系统多媒体的本质不仅是信息的集成而且也是设备
11、和软件的集成并通过逻辑连接形成一个有机整体又可实现交互控制所以说数字化集成性和交互性是多媒体的核心3虚拟现实技术是指计算机产生的三维交互环境在使用中用户是投入到这个环境中去让用户在人工合成的环境中获得进入角色的休验虚拟现实技术的主要内容是实时三维图形生成技术多传感器交互技术以及高分辨显示技术在需求牵引和技术推动下近年来虚拟现实已经取得的一些技术成果并已集成了一些很有实用前景的应用系统而且智能虚拟世界也在不断地开展本课题研究的主要内容是基于Windows 7平台和OpenGL图形库利用粒子系统的根本理论开发一个用于模拟下雪场景的粒子系统本课题首先通过阅读和分析大量的参考文献总结了粒子系统的根本原
12、理和粒子系统的根本模型进而得出了粒子系统的通用结构简化了雪景的数学模型总结出了雪景和喷泉的粒子系统模型基于OpenGL设计并实现了一个用于自然景物模拟的3D粒子特效系统并完成了对雪花特效的实时模拟13 预期读者和阅读建议本文档是针对于及编程人员在操作及编写过程中可能碰见的各种问题及如何解答由于是该工程是我第一次进行实际的编写势必会有这样或那样的缺乏因此并不一定会成为市场产品我们的最初设想是将该免费发布于网上作为一种网络资源供后来者参考阅读该文档的用户会从该文档中了解到开发过程中各个细节包括流程及各种性能的要求对于不同的阅读用户我们提出了不同的建议如下通过该问题了解的背景及操作方法设计人员这是一
13、款初学者做的通过这个我们可以了解流程及控制机制信息与的语言的响应关系及的编写过程中的各种细节流程是一款不错的图1-1 OpenGL在Windows环境中的工作过程图1-2 OpenGL渲染流水线 1 显示列表显示列表可以储存几何数据和像素数据等到执行显示列表时再一并将数据发送出去我们称之为间接模式也可以立即对数据进行相应的操作和处理这种处理模式为直接模式显示列表在被执行时就像应用程序中的直接模式发送一样显示列表中存储的数据被发送出去 2 求值程序求值程序提供了一种根绝控制点导出描述曲面的顶点的叫多项式映射 Polynomial Mapping 的方法可以根据控制点生成纹理坐标颜色值和空间坐标值
14、 3 顶点操作顶点操作主要负责将顶点转换成图元对顶点数据进行矩阵变换假设使用了纹理映射将执行纹理坐标生成并对纹理坐标进行变换假设启用光照功能将执行光照计算根据变换后的顶点面法线和其他光照信息计算颜色值 4 图元装配图元装配的主要任务是删除集合体中位于半空间之外的局部半空间由一个平面定义 5 像素操作像素操作主要执行像素缩放偏移映射和截取等操作然后将其封装成适宜的格式存储到内存中 6 纹理装配OpenGL实现可能有提高纹理映射性能的专有资源这种情况下酒需要设置纹理对象的优先级以控制使用这种珍贵而有限的资源 7 光栅化光栅化是将几何数据和像素数据转换为片元每个片元都对应用于帧缓存中的一个像素将顶点
15、接成直线或者计算机填充多边形内部像素时需要考虑直线和多边形的点画模式线宽点的大小着色模型机用于支持反走样的覆盖率计算这个阶段确定了每个片元的颜色和深度值 9 片元操作将片元值写入帧缓存之前将执行一系列的操作他们可能修改甚至丢弃片元第一个操作可以是纹理映射接下来执行雾计算然后是裁剪测试alpha测试模板测试和深度测试之后执行混合抖动逻辑运算和屏蔽最后经过处理后的片元被绘制到适宜的帧缓存变成像素2 系统功能需求粒子系统理论已广泛应用于虚拟现实游戏开发电影特效可视化等领域粒子系统主要用于模拟火焰烟火等的动态效果光影闪电等的特效雪景雨景等的降落过程液体气体的流动过程等本课题研究的3D特效粒子系统主要用
16、于常见自然景物雪花喷泉的模拟需要具备以下几点特性 1 场景逼真性真实感和逼真性是三维物体建模和自然景物模拟最根本和重要的特性也是该系统的最根本要求 2 系统实时性由于第一个需求的存在粒子模拟中想要得到真实度较高的渲染效果势必爱来大量粒子在场景中存在的情况如此带来了系统渲染效率的负担因为只有高性能的计算低消耗的内存高效的处理才能连贯逼真的模拟随机动态变化的自然景物 3 用户交互性粒子系统中任一参数的改变都将可能对最终的粒子模拟效果产生极大的影响同时由于粒子系统的特殊性存在众多的参数设置用户往往不能在预操作时期一次性的通过参数设置是模拟效果到达所需的最正确状态因此在系统的总体设计中我们需要充分的考
17、虑人机之间的良好交互性21 系统功能本系统的功能主要包括背景音乐雪花种类更换雪花下降速度控制雪花前后左右飘动控制雪花粒子数量设置雪花粒子大小设置等22 设计和实现上的限制由于现阶段使用电脑的运行速度和内存等问题本系统只能尽量模仿雪花效果不能完全到达真实环境中的粒子数量3 外部接口与运行环境需求运行环境需要在支持OPenGL的电脑上运行需要进行OPenGL环境配置31 用户界面用户运行系统程序以后直接是可以看到的夜色背景然后雪花从上面象下雪一样往下降没有按钮用户通过键盘进行控制32 运行环境硬件PC机P4 17G以上512M内存40G硬盘支持OPenGL的独立显卡或图形加速器软件Windows
18、7如需调试需要对系统环境进行OPenGL的配置4 其它非功能需求本系统只对特定的键位进行响应对按下其他键位系统将不作出任何反响在输入数据的地方有提示输入范围如果输入超出特定范围将提示错误并重新输入41 性能需求存储器因为粒子数量多所以内存和显存需求较大磁盘空间只需要10MB即可进行运行因为每个粒子都是单独的处理并加以计算所以CPU和GPU运算速度需求较大42 用户文档安装指南纸质文档用户手册纸质文档在线帮助相关电子文档与软件产品一同分发配置二概要设计报告1 引言引言是对这份软件系统概要设计报告的概览是为了帮助阅读者了解这份文档是如何编写的并且应该如何阅读理解和解释这份文档在虚拟场景中自然景物的
19、模拟一直是计算机图形学领域中的热点研究内容喷泉瀑布火焰水流雨雪等自然景物与传统的规那么几何物体不同它们拥有大量的细节信息和形状的随机变化因此这些自然景物的模拟相比照拟困难需要借助粒子系统建模使其充分表达自然景观中模糊物体的随机性和动态性以便到达良好的模拟效果粒子系统理论经历多年的开展和完善已被广泛应用于虚拟现实三维仿真游戏开发电影特效可视化等领域本文结合这一实际情况以前人的研究工作为背景和根底以真实感和系统实时性以及友好的人机交互性为目标在深入分析粒子系统理论根底上结合Windows 7操作系统和Microsoft VC编译环境为开发平台基于OpenGL图形库设计并实现了一个用于自然景物模拟的
20、粒子特效系统完成了雪花场景模拟主要工作如下 1 深入研究粒子系统理论及其应用详细分析粒子系统的根本原理总结粒子系统根本模型粒子系统通用结构和粒子系统的算法框架 2 简化雪景的数学模型总结出雪粒子系统模型 3 设计并实现一个用于常见自然景物模拟的粒子特效系统 4 通过模拟雪花场景验证系统的有效性和实时性这款是利用了最新的语言进行编写可以说是一款新的语言他完全实现了面向对象的开发环境遵循 环境的编程语言它在实现交互性数据处理以及其他功能这份文档的编写目的既是为了明确本开发过程中所有既定设计问题也是为了帮助在保证工作效率和内容与设计者意图一致这份文档将对进行详细的说明致力于使阅读者和能通过该文档对整
21、个有一个全面的了解本文档是针对于及编程人员在操作及编写过程中可能碰见的各种问题及如何解答由于是该工程是我第一次进行实际的编写势必会有这样或那样的缺乏因此并不一定会成为市场产品我们的最初设想是将该免费发布于网上作为一种网络资源供后来者参考阅读该文档的用户会从该文档中了解到开发过程中各个细节包括流程及各种性能的要求对于不同的阅读用户我们提出了不同的建议如下通过该问题了解的背景及操作方法设计人员这是一款初学者做的通过这个我们可以了解流程及控制机制信息与的语言的响应关系及的编写过程中的各种细节流程是一款不错的2命名规那么在该的设计过程中会出现的需要命名的内容包括工程文档类场景元素整体工程为各个类根据不
22、同场景不同功能以最简单英文进行命名边界设计原那么整个工程有数值的输入与输出要求针对这种情况设定数值边界为正整数系统易操作性要求在整个的设计过程中各个环节都应该着重突出操作提示从而保证在过程中操作简便和顺畅系统可维护性要求对各个模块的相对独立设计保证修改时对整体的改动尽量减小22 开发环境与平台221 硬件平台 PC机P4 17G以上512M内存40G硬盘支持OPenGL的独立显卡或图形加速器222 软件平台操作系统为Windows 7操作系统编译程序为VC2021编译环境需要对系统进行OPenGL的配置具体配置方法如下1glut是一个win32 dynamic lib先下载glutdlls37
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 OpenGL 粒子 系统 设计 实现

限制150内