基于ogre的三维场景渲染本科学位论文.doc

上传人:知****量 文档编号:91686736 上传时间:2023-05-27 格式:DOC 页数:72 大小:6.55MB
返回 下载 相关 举报
基于ogre的三维场景渲染本科学位论文.doc_第1页
第1页 / 共72页
基于ogre的三维场景渲染本科学位论文.doc_第2页
第2页 / 共72页
点击查看更多>>
资源描述

《基于ogre的三维场景渲染本科学位论文.doc》由会员分享,可在线阅读,更多相关《基于ogre的三维场景渲染本科学位论文.doc(72页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、摘要基于Ogre的三维场景渲染专 业: 学 号: 学生姓名: 指导教师: 摘要 三维渲染引擎编辑系统主要包括三维场景的构建和三维场景的编辑以及场景文件的载入和保存。三维场景渲染引擎编辑系统是3D游戏、虚拟现实、计算机动画、计算机图形学中的一个重要研究内容,也是该领域内的研究热点和难点。它在3D游戏、电影特效制作和多媒体创作等领域中有着广阔的应用前景。 在作品中简单介绍了OGRE 的特性及基于它的三维仿真场景建模原理,在此基础上阐述一个简单三维仿真场景的实现过程,其中包括地形创建、天空设置、模型导入实现的部分代码。 关键词:Ogre图像渲染引擎;三维场景;模型IAbstract3D-Scene

2、Rendering based on Ogre EngineAbstractEditing system of three-dimensional rendering engine is an important research content in 3D games,virtual reality, computer animation,and computer graphicsAnd it is also seemed as the research focus and difficulty in this fieldIt has broad application prospects

3、in areas such as 3D games,film special effects production and multimedia creation This article briefness introduces the character of OGRE and the principium of the three-dimensional emul-tional scence based on it . It also explains a scences realization process , including some code of the terrain f

4、onding , the sky set ting and the model importing. Keyword: Ogre engine;Three-dimensional;model II 目录目录摘要IABSTRACTII第一章 绪论11 .1 课题研究的背景及意义11 .2 国内外研究现状及发展趋势21 .3 论文主要研究方案31 .4 论文主要结构4第二章 3D渲染引擎简介52 .1 3D渲染简介52 .1 .1 OpenGL简介72 .1 .2 DirectX简介92 .2 3D建模简介102 .2 .1 3Ds Max简介112 .2 .2 Maya简介122 .2 .3 M

5、aya与3Ds Max的差异区别132 .3 3D引擎简介14第三章 OGRE渲染引擎163 .1 OGRE引擎163 .1 .1 Ogre简介163 .1 .2 Ogre的渲染流程173 .2 OGRE的场景管理193 .2 .1 Ogre场景图系统203 .2 .2 Ogre场景管理器213 .2 .3 Ogre材质简介223 .3 OGRE引擎的装配22第四章 系统设计254 .1 绪论254 .2 整体架构254 .3 天空模块264 .4 地面模块264 .5 光线模块274 .6 模型导入28第五章 3D场景渲染的实现295 .1 绪论295 .2 天空模块295 .3 地面模块3

6、05 .3 .1 地面构建305 .3 .2 草地构建315 .3 .3 动态效果345 .4 光线模块355 .5 模型导入365 .6 测试运行385 .6 .1 准备工作385 .6 .2 运行38第六章 总结与展望416 .1总结416 .2展望41致谢42参考文献43参考文献第一章 绪论 1 .1 课题研究的背景及意义 本论文是对三维渲染引擎编辑系统的研究,所谓渲染,就是将计算机中的三维数据展现在二维的画面上,比如显示器。渲染引擎的作用就是要优化遍历和展示三维模型,三维渲染引擎编辑系统是渲染引擎的辅助工具,它能够实现对三维模型、三维场景等三维数据的编辑,并能够将编辑后的数据保存以便供

7、基于该款渲染引擎的三维应用程序所使用。如果没有渲染引擎编辑系统,那么所有的三维数据都要通过代码实现,这不仅对开发人员水平有很高的要求,而且效率也很低下。而有了编辑系统作为辅助开发工具,不仅可以降低开发成本,也可以提高工作效率,而且由于编辑系统提供的是可视化编辑,制作出来的场景将更漂亮而且效果更真实。 随着计算机硬件技术的不断进步发展,渲染技术的发展完善,三维虚拟现实技术不断快速,已经从早期的纸上理论中彻底解放走出,开始广泛地应用于到各行各业之中,并开始创出造巨大的经济效益。因此,三维虚拟现实技术也开始越来越受到开发者们的关注1。目前,通过上层高度抽象封装调用底层驱动API,组织资源,并对I/O

8、,UI进行完善的响应,并基于GPU运算产生实时场景的3D程序,正成为其中一个热门的开发方向2。其中,3D游戏开发正是这一方面应用的典型代表。随着计算机和网络的不断普及,从不断节节攀升的市场规模可以看出网络游戏正越来越成为人们的一种日常休闲娱乐方式。 3D游戏是当前游戏的主流,其核心技术是3D图形的渲染。一般说来,从事3D游戏开发不外乎两种方法,一种是利用已有的具有世界项级水平的3D引擎进行开发;另一种是自行开发3D引擎。前者因为容易上手,成为大多数游戏人的选择;后者则对图形渲染算法有很高的要求。由于国内研究3D图形渲染起步较晚,以至于到现在还没有一款高质量的渲染引擎供国内的游戏行业使用。国内的

9、绝大部分有影响力的游戏公司都是购买国外的高价引擎后再进行游戏开发,这样有三个弊端:第一:成本昂贵,价格是大多数中小型游戏丌发商无法承受之重;第二:国外厂商对国内市场重视程度不够,很难保证良好的售后服务;第三:人员的沟通不便,出现技术问题不能得到及时的解决。 OGRE渲染引擎是国外的开源渲染引擎,它在三维渲染方面表现出了良好的性能和渲染效果,还有庞大的社团长期支持着渲染引擎的升级更新。由于该渲染引擎是开源的并且又具备良好的性能,所以越来越多的国人也开始研究这款渲染引擎。在不久的将来,就会有国内的游戏公司利用OGRE开发出高质量的游戏。本课题是在研究国外开源渲染引擎OGRE的基础上开发渲染引擎编辑

10、系统,本编辑系统充分利用了国外开源的OGRE第三方插件库,目的是最大限度的增强三维场景编辑效果和渲染效果2。 1 .2 国内外研究现状及发展趋势在国外,开始研究三维图形渲染的时间比较早,而三维图形编辑的历史也比较悠久,三维图形编辑软件中最成功的莫过于3Ds Max了。3Ds Max是美国Autodesk公司的电脑三维模型制作和渲染软件,3Ds Max 90是其具有显著提高的最新版本。将广泛应用于视觉效果,角3色动画及下一代的游戏开发领域。至今3dsmax获得过65个以上的业界奖项,而3ds max9将继承以往的成绩并加入新的角色动画IK体系,为下一代游戏设计提供交互图形界面。同时3ds max

11、9提供了与高级渲染器的连接,比如Mentalray和Renderman,来产生更好渲染效果如全景照亮,聚焦及分布式渲染3。国内图形研发一直落后于国外;3D引擎更由于研发时间长、投入高、风险大而致使很少公司问津。相对于国外数十年的游戏引擎发展史,国内仍处于落后阶段。2000年初,中国网络游戏市场丌始发展起来,国内3D游戏引擎的研究也由之开始迅速发展起来。比如目标软件的GFX3D引擎,盛大的3D引擎,网易的“风魂”引擎,锦天科技的AURORA引擎,可乐吧的FancyBox等,还有一些游戏工作组的3D引擎,比如Origo系列等等。虽然在国内的3D引擎上己经可以开发相关的游戏或应用,但也仅仅是针对某一

12、个或某一类型的游戏,要真正达到引擎的通用性和可扩展性,还需要很长的路要走。目前国内网络游戏虽然有着巨大的需求,但国人自主知识产权的3D引擎却很少;因此研发国人自主知识产权的引擎是大势所趋。各大游戏公司也加大了自主研发的力度;同时国家863项目也明确将自主知识产权通用游戏引擎的研发列入其中,这都将大大推动我国3D引擎开发的发展。我国当前仍处于相对落后的位置,起步晚,技术力量上的薄弱,国内的渲染引擎厂商正面临着自主研发上的窘境,一方面3D游戏市场热火朝天,但真正属于国人的游戏却少之又少,国内玩家普遍倾向于日韩欧美的游戏。有关国家部门也对此相当地关注,通过政策,资金,教育甚至863计划来大力扶植国内

13、三维渲染技术力量的发展。 1 .3 论文主要研究方案本项目主要以目前最流行的Microsoft Visual Studio 2010为开发环境,Ogre为主要渲染引擎。通过对场景的设计,天空、地面、景物的构建,Ogre引擎的渲染操作获得场景的呈现。初步计划构建一个飘动白云的天空、有摇曳草地的地面与放置在场景中间的绿色吉普车的场景。有一个可以随鼠标移动的视角,可通过键盘上的W、A、S、D四个键来控制位置。天空的白云与绿色的地表通过贴图平铺实现,地表小草通过代码随机排列,吉普车是通过贴图立体组成的mesh文件。由于地表场景小草较多,需要较高显示硬件配置。 1 .4 论文主要结构 三维渲染引擎编辑系

14、统是3D游戏、虚拟现实、计算机动画、计算机图形学中的一个重要研究内容,也是该领域内的研究热点和难点。它在3D游戏、电影特效制作和多媒体创作等领域中有着广阔的应用前景。三维渲染引擎编辑系统主要包括三维场景的构建和三维场景的编辑以及场景文件的载入和保存。论文的主要结构也源于以上思想结构: 第一章主要介绍了国内外渲染引擎以及渲染引擎编辑系统的发展现状。出了本文的研究的背景与意义、国内外研究的发展现状,以及本论文的主要的研究内容。第二章主要了解了3D渲染引擎的基本概念,以及部分渲染工具的简介。第三章介绍渲染引擎简介,介绍了渲染引擎的特性、框架结构以及Ogre引擎的简介、渲染流程与管理以及Ogre引擎的

15、安装与配置。 第四章讲述渲染引擎编辑系统的总体设计和设计过程。 第五章详细讲述了渲染引擎编辑系统的实现过程。 论文最后总结了整个研究和学习过程,同时对今后的工作和研究进行了展望。第二章 3D渲染引擎简介 2 .1 3D渲染简介 渲染(Render)在电脑绘图中,是指:用软件从模型生成图像的过程。模型是用严格定义的语言或者数据结构对于三维物体的描述,它包括几何、视点、纹理以及照明信息。图像是数字图像或者位图图像。渲染这个术语类似于“艺术家对于场景的渲染”3。另外渲染也用于描述:计算视频编辑文件中的效果,以生成最终视频输出的过程。 渲染是三维计算机图形学中的最重要的研究课题之一,并且在实践领域它与

16、其它技术密切相关。在图形流水线中,渲染是最后一项重要步骤,通过它得到模型与动画最终显示效果。自从二十世纪七十年代以来,随着计算机图形的不断复杂化,渲染也越来越成为一项重要的技术。 渲染的应用领域有:计算机与视频游戏、模拟、电影或者电视特效以及可视化设计,每一种应用都是特性与技术的综合考虑。作为产品来看,现在已经有各种不同的渲染工具产品,有些集成到更大的建模或者动画包中,有些是独立产品,有些是开放源代码的产品。从内部来看,渲染工具都是根据各种学科理论,经过仔细设计的程序,其中有:光学、视觉感知、数学以及软件开发。 三维计算机图形的预渲染或者实时渲染的速度都非常慢。预渲染的计算强度很大,通常是用于

17、电影制作;实时渲染经常用于三维视频游戏,通常依靠带有三维硬件加速器的图形卡完成这个过程。 渲染的图像有许多显著的特性,渲染研究的领域,也主要集中在寻找:高效模拟这些特性的方法。有些特性只与特定的算法有关,有些却与多个算法相关。浓淡处理 表面颜色与亮度随光照的变化纹理映射 在表面生成细节的方法凸凹纹理映射 在表面模拟小凸凹的方法距离模糊 光照穿过不清澈的大气时的模糊阴影 阻挡光照的效果柔和阴影 模拟光的衍射下的阴影反射 镜子或者非常光滑的反射透明 固体明显允许光线穿过半透明 光线通过固体高度散射折射 与透明相关的光线弯曲间接照明 表面由其它表面反射的光照亮,而非光源直接照亮焦散(caustics

18、) 间接照明的一种形式,光滑物体反射的光线或者通过透明物体生成的聚焦光线在其它物体上形成照亮区域景深 当物体在焦距物体前后太远时出现模糊运动模糊 由于物体高速运动或者照相机运动而导致的物体模糊真实感渲染 看起来较像现实世界的三维渲染 研究人员已经研究出了许多渲染算法,渲染软件可以使用多种不同的技术,以生成最终图像。对场景中的每束光线进行跟踪不太现实,并且需要耗费大得惊人的时间。如果没有采样进行很好的约束,即使是一部分光线的跟踪以生成图像也需要非常大量的时间。所以,大致可以分为四类的更加高效的光线传输模型技术就应运而生。第一类是栅格化,包括扫描线渲染,这种方法考虑场景中的物体并将它们投影一幅图像

19、,但是缺乏一些高级的视觉效果;第二类是光线投射,将场景从不同视角观察,只根据几何与反射强度的基本光学原理计算观察到的图像,也可能使用蒙特卡罗方法减少人为噪声;第三类是辐射着色,使用有限元分析方法模拟光线在表面的散射;第四类是光线跟踪,类似于光线投射,但是使用了更加先进的光学模拟方法,并且通常使用蒙特卡罗方法以实现更加真实的结果,但是这样做的代价通常是速度的大幅度降低。大多数高级软件使用多种技术的组合,以在合理的开销范围内,实现足够好的结果7。 图2-1 渲染系统实现 一个典型的三维渲染程序包括渲染系统和外部应用模块。其中渲染系统又包括渲染引擎,设备管理模块和虚拟设备(Directx、OpenG

20、L)。2 .1 .1 OpenGL简介 OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言、跨平台的编程接口的规格,它用于三维图象(二维的亦可)。OpenGL是个专业的图形程序接口,是一个功能强大,调用方便的底层图形库。其自诞生至今已催生了各种计算机平台及设备上的数千优秀应用程序。OpenGL 是独立于视窗操作系统或其它操作系统的,亦是网络透明的。在包含CAD、内容创作、能源、娱乐、游戏开发、制造业、制药业及虚拟现实等行业领域中,OpenGL 帮助程序员实现在 PC、工作站、超级计算机等硬件设备上的高性能、极具冲击力的高视觉表现力图形处理软件的开发。 图2-

21、2 Windows图形OpenGL服务 OpenGL的前身是SGI公司为其图形工作站开发的IRIS GL。IRIS GL是一个工业标准的3D图形软件接口,功能虽然强大但是移植性不好,于是SGI公司便在IRIS GL的基础上开发了OpenGL。OpenGL的英文全称是“Open Graphics Library”,顾名思义,OpenGL便是“开放的图形程序接口”。虽然DirectX在家用市场全面领先,但在专业高端绘图领域,OpenGL是不能被取代的主角。 OpenGL是个与硬件无关的软件接口,可以在不同的平台如Windows 95、Windows NT、Unix、Linux、MacOS、OS/2

22、之间进行移植。因此,支持OpenGL的软件具有很好的移植性,可以获得非常广泛的应用。由于OpenGL是图形的底层图形库,没有提供几何实体图元,不能直接用以描述场景。但是,通过一些转换程序,可以很方便地将AutoCAD、3DS/3DSMAX等3D图形设计软件制作的DXF和3DS模型文件转换成OpenGL的顶点数组。 在OpenGL的基础上还有Open Inventor、Cosmo3D、Optimizer等多种高级图形库,适应不同应用。其中,Open Inventor应用最为广泛。该软件是基于OpenGL面向对象的工具包,提供创建交互式3D图形应用程序的对象和方法,提供了预定义的对象和用于交互的事

23、件处理模块,创建和编辑3D场景的高级应用程序单元,有打印对象和用其它图形格式交换数据的能力。 OpenGL的发展一直处于一种较为迟缓的态势,每次版本的提高新增的技术很少,大多只是对其中部分做出修改和完善。1992年7月,SGI公司发布了OpenGL的1.0版本,随后又与微软公司共同开发了Windows NT版本的OpenGL,从而使一些原来必须在高档图形工作站上运行的大型3D图形处理软件也可以在微机上运用。1995年OpenGL的1.1版本面市,该版本比1.0的性能有许多提高,并加入了一些新的功能。其中包括改进打印机支持,在增强元文件中包含OpenGL的调用,顶点数组的新特性,提高顶点位置、法

24、线、颜色、色彩指数、纹理坐标、多边形边缘标识的传输速度,引入了新的纹理特性等等。OpenGL 1.5又新增了“OpenGL Shading Language”,该语言是“OpenGL 2.0”的底核,用于着色对象、顶点着色以及片断着色技术的扩展功能。 OpenGL 2.0标准的主要制订者并非原来的SGI,而是逐渐在ARB中占据主动地位的3DLabs。2.0版本首先要做的是与旧版本之间的完整兼容性,同时在顶点与像素及内存管理上与DirectX共同合作以维持均势。OpenGL 2.0将由OpenGL 1.3的现有功能加上与之完全兼容的新功能所组成(如图一)。借此可以对在ARB停滞不前时代各家推出的

25、各种纠缠不清的扩展指令集做一次彻底的精简。此外硬件可编程能力的实现也提供了一个更好的方法以整合现有的扩展指令。 OpenGL是一个开放的三维图形软件包,它独立于窗口系统和操作系统,以它为基础开发的应用程序可以十分方便地在各种平台间移植;OpenGL可以与Visual C+紧密接口,便于实现机械手的有关计算和图形算法,可保证算法的正确性和可靠性;OpenGL使用简便,效率高。它具有七大功能: 1.建模:OpenGL图形库除了提供基本的点、线、多边形的绘制函数外,还提供了复杂的三维物体(球、锥、多面体、茶壶等)以及复杂曲线和曲面绘制函数。 2.变换:OpenGL图形库的变换包括基本变换和投影变换。

26、基本变换有平移、旋转、变比镜像四种变换,投影变换有平行投影(又称正射投影)和透视投 影两种变换。其变换方法有利于减少算法的运行时间,提高三维图形的显示速度。 3.颜色模式设置:OpenGL颜色模式有两种,即RGBA模式和颜色索引(Color Index)。 4.光照和材质设置:OpenGL光有辐射光(Emitted Light)、环境光(Ambient Light)、漫反射光(Diffuse Light)和镜面光(Specular Light)。材质是用光反射率来表示。场景(Scene)中物体最终反映到人眼的颜色是光的红绿蓝分量与材质红绿蓝分量的反射率相乘后形成的颜色。 5:纹理映射(Text

27、ure Mapping)。利用OpenGL纹理映射功能可以十分逼真地表达物体表面细节。 6:位图显示和图象增强图象功能除了基本的拷贝和像素读写外,还提供融合(Blending)、反走样(Antialiasing)和雾(fog)的特殊图象效果处理。以上三条可使被仿真物更具真实感,增强图形显示的效果。 7:双缓存动画(Double Buffering)双缓存即前台缓存和后台缓存,简言之,后台缓存计算场景、生成画面,前台缓存显示后台缓存已画好的画面。 此外,利用OpenGL还能实现深度暗示(Depth Cue)、运动模糊(Motion Blur)等特殊效果。从而实现了消隐算法。OpenGL设备运用,

28、目前瑞芯微2918芯片和英伟达芯片Tegra2 就是采用OpenGL 2.0技术进行图形处理,而基于瑞芯微2918芯片方案代表是台电T760和微蜂X7平板电脑所采用到8。2 .1 .2 DirectX简介DirectX,(Direct eXtension,简称DX)是由微软公司创建的多媒体编程接口。由C+编程语言实现,遵循COM。被广泛使用于Microsoft Windows、Microsoft Xbox和Microsoft Xbox 360电子游戏开发,并且只能支持这些平台2。最新版本为DirectX 11,创建在最新的Windows 7上。 DirectX加强3d图形和声音效果,并提供设计

29、人员一个共同的硬件驱动标准,让游戏开发者不必为每一品牌的硬件来写不同的驱动程序,也降低用户安装及设置硬件的复杂度。从字面意义上说,Direct就是直接的意思,而后边的X则代表了很多的意思,从这一点上我们就可以看出DirectX的出现就是为了为众多软件提供直接服务的。 举个例子,骨灰级玩家以前在DOS下玩游戏时,可不像我们现在,安装上就可以玩了,他们往往首先要先设置声卡的品牌和型号,然后还要设置IRQ(中断)、I/O(输入与输出)、DMA(存取模式),如果哪项设置的不对,那么游戏声音就发不出来。这部分的设置不仅让玩家伤透脑筋,而且对游戏开发者来说就更头痛了,因为为了让游戏能够在众多电脑中正确运行

30、,开发者必须在游戏制作之初,便需要把市面上所有声卡硬件数据都收集过来,然后根据不同的 API(应用编程接口)来写不同的驱动程序,这对于游戏制作公司来说,是很难完成的,所以说在当时多媒体游戏很少。微软正是看到了这个问题,为众厂家推出了一个共同的应用程序接口DirectX,只要这个游戏是依照Directx来开发的,不管你是什么显卡、声卡、统统都能玩,而且还能发挥更佳的效果。当然,前提是你的显卡、声卡的驱动程序也必须支持DirectX才行。 DirectX是由很多API组成的,按照性质分类,可以分为四大部分,显示部分、声音部分、输入部分和网络部分。 显示部分显示部分担任图形处理的关键,分为Direc

31、tDraw(DDraw)和Direct3D(D3D),前者主要负责2D图像加速。它包括很多方面:我们播放mpg、DVD电影、看图、玩小游戏等等都是用的DDraw,你可以把它理解成所有划线的部分都是用的DDraw。后者则主要负责3D效果的显示,比如CS中的场景和人物、FIFA中的人物等等,都是使用了DirectX的Direct3D。 声音部分:声音部分中最主要的API是DirectSound,除了播放声音和处理混音之外,还加强了3d音效,并提供了录音功能。我们前面所举的声卡兼容的例子,就是利用了DirectSound来解决的。 输入部分:输入部分DirectInput可以支持很多的游戏输入设备,

32、它能够让这些设备充分发挥最佳状态和全部功能。除了键盘和鼠标之外还可以连接手柄、摇杆、模拟器等。 网络部分:网络部分DirectPlay主要就是为了具有网络功能游戏而开发的,提供了多种连接方式,TCP/IP,IPX,Modem,串口等等,让玩家可以用各种连网方式来进行对战,此外也提供网络对话功能及保密措施9。 2 .2 3D建模简介 3D建模通俗来讲就是通过三维制作软件通过虚拟三维空间构建出具有三维数据的模型。D建模大概可分为:NURBS和多边形网格。 NURBS对要求精细、弹性与复杂的模型有较好的应用,适合量化生产用途 。多边形网格建模是靠拉面方式,适合做效果图与复杂场景动画.综合说来各有长处

33、。建模方法1、使用计算机描述一个系统的行为。例如,电子表格程序可以用来处理财务数据,代表公司的行为;开发商业计划;评估公司经营改变可能造成的影响。 2、使用计算机以数学方法描述物体和它们之间的空间关系。例如,计算机辅助设计 (CAD) 程序可在屏幕上生成物体,使用方程式产生直线和形状,依据它们相互之间及与所在的二维或三维空间的关系精确放置。 3、应用程序和数据建模是为应用程序确定、记录和实现数据和进程要求的过程。这包括查看现有的数据模型和进程,以确定它们是否可被重复使用,并创建新数据模型和进程,以满足应用程序的独特要求。 建模过程中的主要活动包括:确定数据及其相关过程 图2-3 3D模型(如实

34、地销售人员需要查看在线产品目录并提交新客户订单)。 定义数据(如数据类型、大小和默认值)。确保数据的完整性(使用业务规则和验证检查)。 定义操作过程(如安全检查和备份)。选择数据存储技术(如关系、分层或索引存储技术)。一定要知道建模通常会以意想不到的方式涉及公司的管理。例如,当对哪些数据元素应由哪些组织来维护有新的见解时,数据所有权(以及数据维护、准确性和及时性的隐含责任)通常会遭到质疑。数据设计常常促使公司认识到企业数据系统是如何相互依存的,并且鼓励公司抓住协调后的数据规划所带来的效率提高、成本节约和战略性机遇。 在结束建模时,您已经完全定义了应用程序的要求,确定了可能被其他企业级应用程序重

35、复使用的数据和服务,并为将来扩展奠定了强有力的基础。3D建模常用的软件主要有Autodesk公司的3ds max和Maya10。2 .2 .1 3Ds Max简介 3D Studio Max,常简称为3ds Max或MAX,是Autodesk公司开发的基于PC系统的三维动画渲染和制作软件。其前身是基于DOS操作系统的3D Studio系列软件,最新版本是2012。在Windows NT出现以前,工业级的CG制作被SGI图形工作站所垄断。3D Studio Max + Windows NT组合的出现一下子降低了CG制作的门槛,首选开始运用在电脑游戏中的动画制作,后更进一步开始参与影视片的特效制作

36、。 在应用范围方面,广泛应用于广告、影视、工业设计、建筑设计、多媒体制作、游戏、辅助教学以及工程可视化等领域。拥有强大功能的3DS MAX被广泛地应用于电视及娱乐业中,比如片头动画和视频游戏的制作,深深扎根于玩家心中的劳拉角色形象就是3DS MAX的杰作。在影视特效方面也有一定的应用。而在国内发展的相对比较成熟的建筑效果图和建筑动画制作中,3DS MAX的使用率更是占据了绝对的优势。根据不同行业的应用特点对3DS MAX的掌握程度也有不同的要求,建筑方面的应用相对来说要局限性大一些,它只要求单帧的渲染效果和环境效果,只涉及到比较简单的动画;片头动画和视频游戏应用中动画占的比例很大,特别是视频游

37、戏对角色动画的要求要高一些;影视特效方面的应用则把3DS MAX的功能发挥到了极致12。 主要特点: 1功能强大,扩展性好。 建模功能强大,在角色动画方面具备很强的优势,另外丰富的插件也是其一大亮点 2操作简单,容易上手。 与强大的功能相比,3ds max可以说是最容易上手的3D软件 3和其它相关软件配合流畅 4做出来的效果非常的逼真2 .2 .2 Maya简介 Maya是美国Autodesk公司出品的世界顶级的三维动画软件,应用对象是专业的影视广告,角色动画,电影特技等。Maya功能完善,工作灵活,易学易用,制作效率极高,渲染真实感极强,是电影级别的高端制作软件。Maya 集成了Alias

38、Wavefront 最先进的动画及数字效果技术。它不仅包括一般三维和视觉效果制作的功能,而且还与最先进的建模、数字化布料模拟、毛发渲染、运动匹配技术相结合。Maya 可在Windows NT与 SGI IRIX 操作系统上运行。在目前市场上用来进行数字和三维制作的工具中,Maya 是首选解决方案。 很多三维设计人应用Maya软件,因为它可以提供完美的3d建模、动画、特效和高效的渲染功能。另外Maya也被广泛的应用到了平面设计(二维设计)领域。Maya软件的强大功能正是那些设计师、广告主、影视制片人、游戏开发者、视觉艺术设计专家、网站开发人员们极为推崇的原因。Maya将他们的标准提升到了更高的层

39、次。 Maya主要应用的商业领域有: 1、平面设计辅助、印刷出版、说明书 3d图像设计技术已经进入了我们生活的重要部分。这些都让无论是广告主、广告商和那些房地产项目开发商都转向利用3d技术来表现他们的产品。而使用Maya无疑是最好的选择。因为它是世界上被使用最广泛的一款三维制作软件。当设计师将自己的二维设计作品打印前他们比解决如何在传统的、众多竞争对手的设计作品中脱颖而出。Maya的特效技术加入到设计中的元素,大大的增进了平面设计产品的视觉效果。同时Maya的强大功能可以更好的开阔平面设计师的应用视野,让很多以前不可能实现的技术,能够更好的、出人意料的、不受限制的表现出来。 2、电影特技 目前

40、Maya更多的应用于电影特效方面。从今年来众多好莱坞大片对Maya的特别眷顾,可以看出Maya技术在电影领域的应用越来越趋于成熟。Alias|Wavefront公司在1998年才推出的三维制作软件。被广泛用于电影、电视、广告、电脑游戏和电视游戏等的数位特效创作。曾获奥斯卡科学技术贡献奖等殊荣。2005年10月2 .2 .3 Maya与3Ds Max的差异区别 Maya是目前世界上最为优秀的三维动画的制作软件之一,是相当高尖而且复杂的三维电脑动画软件,它是Alias|Wavefront公司在1998年才推出的三维制作软件。被广泛用于电影、电视、广告、电脑游戏和电视游戏等的数位特效创作。曾获奥斯卡

41、科学技术贡献奖等殊荣。2005年10月4日,生产3D Studio Max的Autodesk(欧特克)软件公司宣布正式以1.82亿美元收购生产Maya的Alias。所以Maya现在是Autodesk的软件产品。它的应用领域主要包括四个方面;一、平面图形可视化,它大增进平面设计产品的视觉效果,强大功能开阔平面设计师的应用视野,二、网站资源开发,三、电影特技(蜘蛛侠、黑客帝国、指环王),四、游戏设计及开发学习内容:MAYA软件在影视动画行业有广泛的运用,学习MAYA基础操作及基本建模技术,掌握MAYA基本角色、贴图、动画制作方法,了解并掌握MAYA动力学系统,表达式的应用及MAYA涂刷效果、MAY

42、A毛发、部分MAYA插件。现在maya有三种版本:maya终极版(Maya Unlimited)、maya完全版(Maya Complete)、个人学习版(maya personal learning edition).Maya Complete包含了Maya的大部分功能,Maya Unlimited则包含了Maya的所有功能。Maya Unlimited刚推出时,价钱贵到令一般家庭使用者却步,但目前的价钱已经跟其他三维运算软件不相上下。Autodesk 3ds Max 82005年10月11日,Autodesk宣布其3ds Max软件的最新版本3ds Max 8正式发售。Autodesk 3

43、ds Max 9Autodesk在Siggraph 2006 User Group大会上正式公布3ds Max 9 与 Maya 8 首次发布包含32位和64位的版本。Autodesk 3ds Max 20082007年10月17号在加利福尼亚圣地亚哥Siggraph 2007上发布,该版本正式支持Windows Vista操作系统。Vista 32 位和 64 位操作系统以及 Microsoft DirectX® 10 平台正式兼容的第一个完整版本。 Maya和3dmax的区别: MAYA是高端3D软件,3dsmax是中端软件,易学易用,但在遇到一些高级要求时(如角色动画/运动学模拟

44、)方面远不如MAYA强大。 3Ds Max的工作方向主要是面向建筑动画,建筑漫游及室内设计。 MAYA 的用户界面也比3dsmax要人性化点,Maya 是 Alias|Wavefront ( 2003 年 7月 更名为 Alias )公司的产品,作为三维动画软件的后起之秀,深受业界欢迎和钟爱。 MAYA软件应用主要是动画片制作、电影制作、电视栏目包装、电视广告、游戏动画制作等。3dsmax软件应用主要是动画片制作、游戏动画制作、建筑效果图、建筑动画等。 MAYA的基础层次更高,3dsmax属于普及型三维软件,有条件当然学MAYA。 Maya的CG功能十分全面,建模、粒子系统、毛发生成、植物创建

45、、衣料仿真等等。可以说,当3dsmax用户匆忙地寻找第三方插件时,Maya用户已经可以早早地安心工作了。可以说,从建模到动画,到速度,Maya都非常出色。Maya主要是为了影视应用而研发的。 2 .3 3D引擎简介 3D引擎是将现实中的物质抽象为多边形或者各种曲线等表现形式,在计算机中进行相关计算并输出最终图像的算法实现的集合。 3D引擎就像是在计算机内建立一个“真实的世界” 通常来说,3D引擎作为一种底层工具支持着高层的图形软件开发。你可以把它看成是对3D API的封装,对一些图形通用算法的封装,对一些底层工具的封装。我无法准确的定义3D引擎的含义和作用,因为针对不同的用户和开发项目,3D引

46、擎完成的功能可能都有不同。因此,我将从功能的角度来定义3D引擎,这种定义法也许能更确切的表达出一个3D引擎的真实含义1。 3D引擎最基本的功能应该包括: 1. 对3维场景的数据管理这里的数据管理是一个比较广泛的定义,不同的3D引擎也许会拥有其中一个或多个功能。这些功能包括:场景管理,对象系统,序列化,数据与外部工具的交互,底层3维数据的组织和表示。 场景管理:这个名称相信对3D引擎有一定认识的朋友都很熟悉了。通常它和SceneGraph同时存在于一些架构方面的资料中。由于3D引擎可能会用来管理一些庞大的3D世界,在这个世界中物体与物体之间通常存在一些 相关/从属/影响与被影响关系,如何组织这些

47、关系,并确切的将这些关系与3D引擎的其他功能联系起来,就是场景管理需要完成的工作。常有朋友问我场景管理是用的哪种算法。从我的理解来讲,场景管理是一种设计模式,而不是一个具体的算法,也许你会最终选择BSP/QuadTree/Portal/.作为场景管理树的结构,但是这些已经是实现层面的东西了,而且它们也远远不是场景管理的全部。因此我认为Scene Manager 和Scene Graph manager 这两个概念还是分开理解比较好。 场景管理首先需要考虑如果表达场景中物体的关联关系,这部分通常是由场景图来实现的。通过一个一对多的树形结构已经可以满足要求,当然考虑到数据层的共享和维护,允许子树进行Clone也是前期设计时需要考虑的一个方面实际上在整个引擎中你所涉及到的各种算法和设计,都或多或少的会和场景管理发生联系。比如在一个实现动态光影的引擎中

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com