论基于OpenGL技术的三维建模设计
作者:佚名; 更新时间:2014-12-05
  [论文关键词]三维重构 OpenGL 3ds文件
  [论文摘要]OpenGL即开放性图形库,它是一种高性能的开放式且功能强大的3D图形库,具有几百个指令和函数。本文讨论了两种将常见三维模型转入OpenGL中实现交互的方法,首先对3DS文件进行分析,然后给出转化的思路。从而将三维建模软件产生的三维模型移植到三维场景中,实现仿真。


  OpenGL的英文全称是“Open Graphics Library”即“开放的图形程序接口”,因为其良好的可移植性和跨平台性,已逐渐成为高性能图形开发和交互式视景仿真的国际图形标准。它是一种高性能的开放式且功能强大的3D图形库,具有几百个指令和函数。使用这些指令和函数可以构造出高质量的静止物体模型和动态图像,并且可以实现对模型的实时交互操作过程。但是OpenGL中并没有提供建模的高级命令,其实现过程也是通过基本的几何图元点、线和多边形来建立三维立体模型的,过程比较繁琐,编程量较大。
  现在有许多优秀的三维建模软件如3DS MAX,AUTOCAD等,都可以根据对象很方便地建立物体模型,且不需要编程便可很直观的构造模型,模型的外观更为精细。在OpenGL中使用三维模型一种比较好的方法是先用三维建模软件建立模型,再把这些模型转入OpenGL程序,对其进行控制。本文主要讨论将三维模型转入OpenGL程序常见的两种方法。
  
  一、模型的三维数据格式
  存储三维图形数据的文件格式有很多种,其中比较常见的有: obj格式、3DS格式、WRL格式等。在本文中以3DS格式为例进行介绍。在将三维模型转入OpenGL之前,首先将三维模型保存为3DS格式。在3DS文件中就保存了所建模型模型的所有三维数据信息,包括模型全部顶点、面、材质、法线和纹理等的数据信息。3DS文件是由许多块组成,每个块首先描述其信息类别,即该块是如何组成的。块的信息类别用ID来标识,块还包含了下一个块的相对位置信息,便于跳转。
  
  二、将模型转入OpenGL程序的两种方法
  (一)编写OpenGL程序,将模型转入
  将模型转入OpenGL的程序中总共用到3种主要的数据结构:顶点集(Vertices)、多边形列表(PolyList)、和相关三角形列表(CommonTriangleList)。顶点集是顶点及其法向量的列表,多边形中的顶点将用在下标表示,OpenGL将这个数组视为一个顶点数组。这里存储的法向量是每一个顶点的法向量,而不是多边形的法向量。多边形列表包括一些列的材质,一个材质由这样一组属性组成:漫反射颜色、光照度、和纹理映射等。与每一种材质相对应的是一组三角形,每一个三角形由一组三元整数组表示,它们分别是三角形每个顶点在顶点集中的下标。相关三角形列表与顶点集具有相同的大小,它是一个指向多边形列表每一个包括该顶点的三角形的链表。
核心期刊快速发表
Copyright@2000-2030 论文期刊网 Corporation All Rights Reserved.
《中华人民共和国信息产业部》备案号:ICP备07016076号;《公安部》备案号:33010402003207
本网站专业、正规提供职称论文发表和写作指导服务,并收录了海量免费论文和数百个经国家新闻出版总署审批过的具有国内统一CN刊号与国际标准ISSN刊号的合作期刊,供诸位正确选择和阅读参考,免费论文版权归原作者所有,谨防侵权。联系邮箱:256081@163.com