您现在的位置:网站首页答辩论文工学论文电子论文

基于Directx的三维图形立体变换的实现

  • 简介:基于Directx的三维图形立体变换的实现 (毕业设计52页、19598字) 摘要:目前在世界上三维图形大量的被应用到日常生活中,它是许多媒体应用程序和游戏的主体部分,所以掌握最新的三维技术是很有必要的。本文首先研究了利用C#和Directx9编程以及立体几何技...
    • 请与管理员联系购买资料 QQ:5739126
  • 论文简介
  • 相关论文
  • 论文下载

基于Directx的三维图形立体变换的实现 (毕业设计52页、19598字)

摘要:目前在世界上三维图形大量的被应用到日常生活中,它是许多媒体应用程序和游戏的主体部分,所以掌握最新的三维技术是很有必要的。本文首先研究了利用C#和Directx9编程以及立体几何技术,数学变换和几何图形技术来制作三维立体图形的方法,掌握了利用API接口创建窗口实现消息传递以及对坐标系,缓存,矩阵坐标变换的知识。其次,利用3DS Max创建三维立体图形,加载到所编写的三位图形立体变换程序中,并进行调试。设计主要完成了对绘制出来的电视机的平移,旋转和缩放技术的处理,最后通过程序对图形进行渲染使其更具有可观性。

关键词:API;Visual C#.Net;Direct3D;3DS Max

 


 
The Realization of Three-Dimensional Graph Three-Dimensional Transformation Based on Directx

Abstract:In the world of nowadays, the three -dimensional graphics are applying to daily life in a large number. It is the main part of the game and applications of many media. So, it's necessary to master the latest 3-D technology.Firstly, this thesis researches on using C # and the Directx9 programming as well as the three-dimensional geometric technology, the mathematical manipulation and the geometric figure technology to manufacture the three-dimensional graphics. Mastering the use of the API interfaces to create a window that can realize message transmission. Acquainting the knowledge on the coordinate system, the texture and the matrix coordinate transformation. Secondly, the 3D models of the system were created by 3dsmax, then prepared to load the stereo 3D graphics transformation process, and debugging. The translation, the rotation and scaling of TV which have mapped out were completed in this design. Finally, by embroidering in procedure, the graphics were more arresting.

Key words:  API,  Visual C#.Net,  Direct3D,  3DS Max

 


目    录

第1章  绪论 1
1.1  三维技术的现状 1
1.2  编程语言简介 2
1.3  三维图形立体变换的设计分析 2
1.3.1  设计需求分析 2
1.3.2  设计性能要求 2
第2章  DirectX9.0技术 3
2.1  DirectX9.0的概念 3
2.1.1  Direct3D的构架 3
2.1.2  设计规划 4
2.2  DirectX 9.0函数简介 5
2.2.1  窗口类的处理 6
2.2.2  创建IDirect3D接口 7
2.2.3  创建IDirect3DDevice界面 8
2.2.4  开始渲染 9
2.2.5  顶点属性与顶点格式 10
2.2.6  顶点缓冲 10
2.2.7  索引缓冲 12
2.2.8  D3D中的图元简介 13
2.2.9  向量 14
2.2.10  矩阵的操作 15
第3章  主体程序的设计与实现 19
3.1  三维图形立体变换的设计 19
3.2  三维图形立体变换设计具体实现 19
3.2.1  利用.X文件图像获取 19
3.2.2  利用画点画线函数生成图像 23
3.2.3  图像的缩放 33
3.2.4  图像的旋转 34
3.2.5  图像保存为.TXT文挡 37
3.2.6  渲染功能实现 38
3.2.7  光源和观察矩阵的实现 39
3.2.8  键盘的控制 39
3.3  程序运行的调试 40
总结 41
4.1  设计开发小结 41
4.2  项目改进方向和未来展望 41
致谢 42
参考文献 43
附录 44


 
第1章  绪  论
1.1  三维技术的现状
在计算机屏幕上绘图的最基本单位是点,点构成线,线又构成多边形,还可以朝空间发展,构成立体图行,如正方体、立方体、锥体、球等。用高级语言绘图的尝试基本就到此为止了,以为学过计算机图形学的人都知道,绘制真实的图形非常复杂,诸如着色、光照、运动等操作都涉及到大量的数学变换,没有高深的数学理论和高超的编程技巧是无法构建出漂亮的三维场景的[10]。
不过,现在已经有大量的软件能够完成一些复杂的图形操作,如做平面设计的Photoshop,做三维立体设计的AutoCAD,做三维动画设计的3DS Max等。使用这些软件,可以比较容易地绘制出精彩的图形效果,只要有艺术细胞,就不怕作不出想要的效果。
说到DirectX,大部分读者都会认为这是一个专门为图形服务的API(Application Program Interface)—应用程序接口。实际上,DirectX是用途极为广泛的API,它并不局限于显示领域。目前的DirectX中包含有Direct Graphics(Direct 3D+Direct Draw)、Direct Input、Direct Play、Direct Sound、Direct Show、Direct Setup、Direct Media Objects等多个组件,它提供了一整套的多媒体接口方案。只是由于目前DirectX版本的更新主要在3D图形技术上,因此DirectX才给人一种图形API的感觉。
DirectX是为游戏而诞生,而且伴随着不同版本的DirectX推出,就会有相应的显卡产品支持。从DirectX1.0到DirectX3.0,微软让它的DirectX开始在游戏领域树立起3D的标杆,尽管当时的3D很粗糙,但是雏形已初步形成,到DirectX7开始,随着OpenGL和Glide势力日渐衰弱,DirectX的霸气初现。
DIRECT3D是Microsoft公司推出的三维图形编程API,它主要用于三维游戏的编程。众多优秀的三维游戏都是由这个接口实现的。与OpenGL一样,Direct3D的实现主要使用C++和C#语言。DIRECT3D主要运用到现在众多的网络游戏中,越优越的网络游戏运用到DIRECT3D技术越先进。在我国由于国产大型网络游戏软件在质量、性能、可玩性等方面较国外品牌明显缺乏竞争力,目前,韩国和日本等国的游戏产品在我国网络游戏市场竞争中已占据主动。业者认为,无论从经济利益还是文化角度出发,我国都应尽快打破网络游戏产品主要依赖国外进口的被动局面,真正建立起研发、运营销售一条龙的产业链条,从根本上促进网络游戏产业的成熟。
1.2  编程语言简介
C#语言自C/C++演变而来。但是,它现代、简单、完全面向对象和类型安全。如果您是C/C++程序员,学习曲线将会很平坦。许多C#语句直接借用您所喜爱的语言,包括表达式和操作符。假如不仔细看,简直会把它当成C++。
关于C#最重要的一点:它是现代的编程语言。它简化和现代化了C++在类、名字空间、方法重载和异常处理等领域。屏弃了C++的复杂性,使它更易用、更少出错。
对C#的易用有贡献的是减少了C++的一些特性,不再有宏、模板和多重继承。特别对企业开发者来说,上述功能只会产生更多的麻烦而不是效益。
使编程更方便的新功能是严格的类型安全、版本控制、垃圾收集(garbage collect)等等。所有的这些功能的目标都是瞄准了开发面向组件的软件。
简单、现代、面向对象、类型安全、版本控制、兼容和灵活是C#至关重要的各种要素[20]。
1.3  三维图形立体变换的设计分析
近年来,3D世界飞速的发展。虚拟制造技术具有诱人的应用前景,促使发达国家对其进行深入研究,并已出现许多成功的应用范例。3D技术已逐渐作为人们生活的一个重要部分而融入在人们的日常生活当中去。这次毕业设计是要利用Directx 9.0和C#语言编程实现对三维立体图形的旋转,平移和缩放等操作,并能对立体图行进行渲染,光源设置以及保存成.txt文档。
1.3.1  设计需求分析
现今的社会,电脑已经落入千家万户。我们这个设计只需要一台支持Directx 9. 0电脑以及相关的软件就可以实现,相关软件有C#,3DS MAX, Directx SDK。
1.3.2  设计性能要求
(1)绘制出一个三维立体的电视机
(2)实现对电视机的旋转,平移和缩放.
(3)实现对.TXT文档的打开,显示和保存.
(4)对绘制的电视机进行渲染和光源设置

查看评论 已有0位网友发表了看法
  • 验证码: