欢迎来到天天文库
浏览记录
ID:36474801
大小:352.41 KB
页数:5页
时间:2019-05-11
《VC环境下基于OpenGL与3DS的三维场景重建》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、万方数据ISSN1∞9-3044ComputerKnowledgeandTechnology电奠知识与技术V01.6。No.35,December2010。PP.10131-10133,10144VC环境下基于OpenGL与3DS的三维场景重建李国超,刘爽,张延超,常洪强E—mail:eduf@ecec.net.enhttp://www.dnzs.net.en'rel:+86—55l一5690963.5690964(大连民族学院计算机科学与T程学院.辽宁大连116605)摘要:通过三维建模软件可以进行快速三维建模.但用户的实时交互一直是三维建模软件的最大缺陷。以三维建模软件3DMax的3DS
2、文件为数据源,说明了3DS内部数据结构及读取流程,重点讨论了如何有效的解析三维数据,并以合理的数据结构进行保存;在MFC+OpenGL框架下,以3DS文件数据为基础完成三维重建。并通过OpenGL绘图命令实现用户的实时交互。关键词:三维建模;用户交互;3DS数据;VisualC++:OpenGL中圈分类号:TP311文献标识码:A文章编号:1009-3044(2010冯5-10131-n3ThreeDimensionalModelingBased011OpenGLand3DSLIGuo—chao,LIUShuang,ZHANGYah—chao。CHANGHong—qiang(Collegeo
3、fComputerScience&Engineering,DalianNationalitiesUniversity。Dalian116605,China)Abstract:ThreedimemionalmodelingsoftwarehelpstOconstructthreedimensionalmodelsquickly,butmaindisadvantageofthiskindofsol晌vareisitsreal-timeinteractionwithUSers.Basedon3DSfileof3DMaxsoftwareasdatasource.detailof3DSinnerdat
4、astructureandaccessingprocessareexplained.HowtoparsethreedimensionaldataeffectivelyandhowtOsavethesedatausingreasonabledatastructurearediscussedindetail.Under缸rleworkofMFCandOpenGL,threedimemionalmodelingiscomtructedbasedon3DSdatafile。whileusingOpenGLdrawingfunctiontOimplementreal—timeinteractionwi
5、thusers.Keywords:threedimensionalmodeling;interactionwithusers;3DSdata;VisualC++:OpenGLOpenGL是一种强大的三维图形开发工具III.用户可以通过OpenGL命令根据已有的三维数据交互式的创建所需对象及控制视角或物体的移动。在虚拟现实系统中。需要构造一些复杂的模型,人们往往直接利用专业建模软件例如3DSM芦x建立需要的模型121。然而其匮乏的人机交互能力也限制着模型的有效利用。本文介绍了如何在利用3DSMax完成建模的情况下结合MFC+OpenGL开发环境直接获取3DS模型数据.然后在OpenGL中进行交
6、互绘制并控制的方法。这种方法一方面可以利用专业建模软件较快地建立比较复杂的模型的优点.另一方面利用OpenGL的编程接El对建立的模型进行实时绘制和交互控制,提高建模效率,加快系统开发进程。本文主要针对3DS文件的数据进行分析.并解释如何在获取数据后通过OpenGL进行绘制。l3DS文件数据结构1.13DS文件数据结构简析3DS格式作为老字号的三维建模文件格式131.其内部包含大量的数据信息。读取3DS文件首先是理清文件的内部数据结构。3DS文件内部是以“块”为单位的。所谓“块”就是指相同类型数据信息的集合。但是并不是所有的块都是三维重建所需要的.因此需要对需要的块进行挑选.幸运的是3DS文
7、件中所有的块都是以一个块头为起始的.所谓“块头”是指由两个字节保存的块的ID及四个字节保存的块的长度的信息构成的。如表l。因此只需要知道对应块的lD即可获取该块的数据信息.而3DS文件中所有的块以树形结构结合在一起.就是说大块中包含小块,最后归结到一起,就是“祖块”.其块名为0x4D4D.因此可以通过判断文件起始的两个字节是否为Ox4D4D来判断文件是否为3DS格式.祖块的长度即为文件的长度。三维重建所需的块
此文档下载收益归作者所有