基于DirectX的粒子模拟与实现.doc

资料分类:计算机信息 上传会员:紫色烟火 更新时间:2022-06-02
需要金币1000 个金币 资料包括:完整论文 下载论文
转换比率:金额 X 10=金币数量, 例100元=1000金币 论文字数:7443
折扣与优惠:团购最低可5折优惠 - 了解详情 论文格式:Word格式(*.doc)

摘要:随着计算机图形学的发展,真实感渲染逐渐成为了一个热门的话题。其中流体模拟由于其广泛的应用而一直被视为仿真模拟中极为重要的一部分。

本文将详细讲述以光滑粒子流体动力学理论为核心的流体模拟系统的实现。使用C++加上DirectX 11来进行主要的渲染工作,编写效果文件来实现水的各种视觉效果,同时将详细讲解用于水面三维建模的Marching Cube算法的原理和实现方法。本文还将详细讲述开发过程中遇到的种种问题以及解决方案,针对计算量较大的部分提出的优化算法等。

 

关键词:流体模拟;三维建模;C++;DirectX;水渲染

 

目录

摘要

Abstract

1.绪论-1

1.1 背景及意义-1

1.2 开发中使用的技术-1

1.2.1 C++语言-1

1.2.2 DirectX-1

1.2.3 CEGUI-2

1.3 主要工作内容-2

1.3.1 粒子系统构建-2

1.3.2 三维建模-2

1.3.3 渲染框架设计-2

1.3.4 UI设计-3

2 相关理论及算法-4

2.1光滑粒子流体动力学理论-4

2.1.1 主要的运算公式-4

2.1.1.1 粒子的加速度-5

2.1.1.2 密度-5

2.1.1.3 压力-5

2.1.1.4 粘稠力-5

2.1.2 计算流程-6

2.1.3 法线的计算-6

2.2 Marching Cube算法-6

2.2.1基本概念-6

2.2.2 算法介绍-6

2.2.3 二维空间解释-7

2.2.4扩展到三维空间-9

2.2.5 算法流程-10

3 具体实现及功能-11

3.1粒子系统-11

3.2 三维表面构建-11

3.3 水渲染-11

4 问题-13

4.1 运行效率低下-13

4.2 墙壁问题-13

4.3 水粒子触碰障碍物运动异常-13

4.4 Marching Cube算法优化问题-13

4.5 Marching Cube 生成表面不全问题-14

4.6渲染水时部分视觉效果实现的问题-14

4.7 UI输入规范化的问题-14

5 项目成果测试-15

5.1公告牌模式下的效果-15

5.2 Marching Cube 生成的表面效果-16

5.3渲染模式下的效果-16

结    论-18

致    谢-20

相关论文资料:
最新评论
上传会员 紫色烟火 对本文的描述:在C++中,类已经成为了一种规范,它描述了这种新型的数据格式,对象则是在这种规范的基础上特定出的数据结构。为了解决C语言在开发中具有的诸多问题,OOP(Object-Oriented Programming)提......
发表评论 (我们特别支持正能量传递,您的参与就是我们最好的动力)
注册会员后发表精彩评论奖励积分,积分可以换金币,用于下载需要金币的原创资料。
您的昵称: 验证码: