浅析几种三维模型格式导入Unity3D的途径

作者:未知

摘 要:Unity3D是现阶段应用最为广泛、功能最为强大的虚拟现实软件之一,但是引入的三维模型通常是由不同软件形成的。现阶段,市面上众多三维建模软件各有千秋,各有特色,但所存储的格式却各不相同,如何更大程度的发挥建模软件的功效,更好的在不同软件之间进行相互转换,是本文讨论的重点内容。

关键词:三维模型;三维格式;转换

中图分类号:TP391 文献标识码:A

1 前言

Unity3D作为虚拟现实软件的后起之秀,跟DirectX和openGL相比,该软件对图形渲染管道进行了高度的优化,即使是比较低端的硬件,也可以流畅的运行漫游展示、虚拟仿真、交互式动画等等,并能够创造出高质量3D仿真系统和真实视觉效果。并且Unity3D起步定位为多平台高端大型游戏开发引擎,能够与Html、Flash等进行良好的交互,并支持C++和JavaScript等多种脚本语言。因此,基于Unity3进行三维展示、虚拟漫游和仿真应用已成为当前的研究热点。

但是,Unity3D软件并不具备复杂的建模功能,因此,要想在其中进行操作首先就要在其他软件中建立好三维模型再导入。Unity3D当前接收到的三维模型主要为.fbx格式,而.fbx格式最大的用途是用在3Dmax、maya等软件间进行模型、材质、动作和摄影机信息的互导。因此,从3Dmax或maya软件中导出fbx模型然后导入Unity3D中是没有问题的,但现在常用的优秀三维建模软件还有很多,这些软件在三维建模方面都有其自身的优势和特点,但保存格式却各不相同,本文将主要讨论在实际操作中如何将不同软件中不同格式的三维模型导入至Unity3D中进行操作。

2 三维模型及格式

现在,三维模型已经应用于各种不同的领域,并得到了长足的发展。科学构想中各种物体的精确三维模型;电影行业中的人物、物体以及虚拟现实场景;建筑业中的设计建筑物和风景表现;教学行业中的各种模拟操作仿真训练;工程界中的设计新设备、交通工具、结构状态;地球科学领域中的三维地质模型,等等。可以说三维模型已经深入到各行各业中,已经成为各行各业中必不可少的重要元素。

目前物体的建模方法有三种,第一种方式利用三维软件建模;第二种方式通过仪器设备测量建模;第三种方式利用图像或者视频来建模。当前基于PC系统的三维软件建模方式尤为快捷和热门。现今,利用三维软件建模的三维模型主要包括网格和纹理两部分。

2.1 网格

点、线和面是用于构造三维模型的基本元素。一个点可以用立体空间中的XYZ位置定义;一条线可以用其两个端点的XYZ位置定义;一条边可由两个邻接的面定义;一个平面可由其边界线的位置定义。三维模型通常由三维建模软件把点、线、面和其它信息集合在一块,所集合数据按照一定的算法生成,并存储于计算机文件中。

2.2 纹理

纹理既包括通常意义上物体表面的纹理即使物体表面呈现凹凸不平的沟纹,同时也包括在物体的光滑表面上的彩色图案,也称纹理贴图。当把纹理按照特定的方式映射到物体表面上的时候能使物体看上去更真实。通过对物体的拍摄所得到的图像加工后,再映射到各个网格上,最终形成三维模型。

3 常用的三维模型格式

目前常用的三维建模软件有3Dmax, UG, Solidworks, Pro/E, Sketchup等。由于软件的不同,以及三维模型的算法、存储方式、信息、结构等等诸多方面的不同导致了三维模型存储的格式也会不同。目前常用的三维模型文件格式包括:.stl,.igs,.prt,.prt,.stp,.3ds等等。

3.1 .stl格式

.stl文件是在计算机图形应用系统中,用三角网格来表现三维模型的一种文件格式。它的文件格式非常简单,是最多快速原型系统所应用的标准文件类型,应用很广泛。目前通过大部分三维建模软件(除CAD,Sketchup外)建立的三维模型都可以导出成.stl格式,并且.stl格式是3Dmax可以导入的格式类型,因此,.stl格式可以作为其他三维建模软件与3Dmax相互转换的通用格式类型。

3.2 .igs格式

.igs是大部分的三维设计软件均能打开或者导入的三维模型文件格式。但是,该格式往往只注意了图形数据转换而忽略了其他信息的转换,因此导致兼容性很差。由不同软件生成的igs文件相互读取的过程中,可能会导致破面、信息不全、无法读出实体等问题出现,并且在实际操作过程中出错率很高。

3.3 .prt格式

.prt格式是一种强大的参数化文档,通常用UG或Pro/E软件打开。

3.4 .stp格式

.stp是一种独立于系统的产品模组交换格式,是三维设计中比较常用的文件格式,该格式兼容性好,在各软件中转换时数据不会丢失的太厉害。

目前通过大部分三维建模软件建立的三维模型都可以导成.stp格式,但是,3Dmax却不兼容此格式,因此其他软件如果生成该格式文件,在3Dmax中将无法导入。

3.5 .3ds格式

.3ds是3Dmax建模软件的衍生格式,可用于渲染。由CAD或Sketchup制作的三维模型可以直接导出为.3ds格式。但其他三维建模软件却无法直接导出该格式文件。

3.6 .obj文件格式

.obj文件很适合用于3D软件模型之间的互导,可以作为3Dmax和maya互相转换的一种格式。

4 常用的三维建模软件

4.1 UG

UG是Unigraphics的缩写,该软件功能强大,可以轻松实现各种复杂实体及造型的建构。目前已经成为模具行业三维设计的一个主流应用。

该软件常用的格式包括.prt,.igs,.stp,.dwg等等,兼容性强。通过UG建立的三维模型可以导出.stl格式,导入3Dmax中继续编辑,出错率很低。

转载注明来源:https://www.xzbu.com/8/view-11420750.htm

unity3d 加载iges_浅析几种三维模型格式导入Unity3D的途径相关推荐

  1. unity3d加载外部图片

    来自:http://www.cnblogs.com/kex1n/p/3415332.html Unity3D论坛最近因为需求加载unity外部图片,所以就小研究了下,下面是自己尝试的集中方法,包括发布 ...

  2. unittest单元测试框架—加载测试用例的3种方法以及测试报告存储管理

    项目结构 测试用例 import unittestclass LoginTestCase(unittest.TestCase):def test_login_success(self):self.as ...

  3. QML for Android 加载图片资源的几种方式

    前言 前段时间用 QML 做一个简单的 android 程序,需要打开 android手机本地图片,原本是一个非常简单的功能,但是碰到一些坑着实的被坑了一把,然而在网上并没有找到相关的文档,这里做个总 ...

  4. 异步加载js的三种方法

    js加载时间线 : 它是根据js出生的那一刻开始记录的一系列浏览器按照顺序做的事,形容的就是加载顺序,可以用来优化什么东西,理论基础,背下来. 1.创建Document对象,开始解析web页面.解析H ...

  5. 用python的五种方式_Python加载数据的5种不同方式(收藏)

    数据是数据科学家的基础,因此了解许多加载数据进行分析的方法至关重要.在这里,我们将介绍五种Python数据输入技术,并提供代码示例供您参考. 作为初学者,您可能只知道一种使用p andas.read_ ...

  6. ajax加载vue数据,详解使用Vue.Js结合Jquery Ajax加载数据的两种方式

    整理文档,搜刮出一个使用vue.js结合jquery ajax加载数据的两种方式的代码,稍微整理精简一下做下分享. 废话不多说,直接上代码 html代码 demo {{message }} 测试jqu ...

  7. python数据加载常规教程_Python加载数据的5种不同方式(收藏)

    数据是数据科学家的基础,因此了解许多加载数据进行分析的方法至关重要.在这里,我们将介绍五种Python数据输入技术,并提供代码示例供您参考. 作为初学者,您可能只知道一种使用p andas.read_ ...

  8. phpcms选择文件无法加载插件怎么办_win7浏览器显示无法加载插件的两种修复方法...

    深度技术win7系统在使用浏览器观看视频,浏览网页的时候,显示无法加载插件,导致浏览器没办法正常使用,给操作带来一定的影响,怎么办?为什么浏览器会显示无法加载插件?针对此疑问,接下去小编给大家分享wi ...

  9. vue.js 动态加载 html,Vue加载组件、动态加载组件的几种方式

    什么是组件: 组件是Vue.js最强大的功能之一.组件可以扩展HTML元素,封装可重用的代码.在较高层面上,组件是自定义的元素,Vue.js的编译器为它添加特殊功能.在有些情况下,组件也可以是原生HT ...

最新文章

  1. JavaScript引擎V8 5.1遵循了更多的ECMAScript规范并支持WASM
  2. 儿童版「微信」要来了?
  3. 交换两个数不引入第三个变量
  4. 【正一专栏】欧洲五大联赛猜想(二)西甲冠绝欧洲英超继续混战
  5. advanced search at idiscover
  6. 学长毕业日记 :本科毕业论文写成博士论文的神操作20170324
  7. a letter and a number(一封信和一个数字)
  8. 论文浅尝 - EMNLP2020 | 低资源跨语言实体链接中的设计挑战
  9. 如何设计一条稳定的应用交付流程?|云效工程师指北
  10. java xml约束_[Java教程]XML约束
  11. Android彻底组件化方案实践
  12. wordpress rest api 登录_Python构建RESTful网络服务[Django篇:生成API文档]
  13. 网页版WebRTC多人聊天Demo
  14. 敏捷个人:免费下载【敏捷个人 –认识自我、管理自我 V0.2.pdf】
  15. 芝麻授权 java调用_手机浏览器怎么调用支付宝进行用户授权呢?
  16. 内部收益率计算公式用计算机,内部收益率计算器
  17. 写一篇靠谱的方案设计文档-之实践问题清单
  18. STN网络官方文档复现
  19. c语言程序设计小球弹跳,C++Dos游戏设计——弹跳小球
  20. java控制台输出图片

热门文章

  1. java 模拟鼠标_java实现简单的模拟键盘鼠标操作
  2. 浅析Flash游戏架构
  3. 方正服务器维修中心电话热线,服务器维修指导书 - 方正维修站.doc
  4. Don’t Shave Yaks,别给耗牛剪毛_kiteseas_新浪博客
  5. Nginx -- 正向代理和反向代理粗解
  6. [数学模型]疯狂的UNO
  7. 【博主个人在uni-app里使用的基本标签样式】
  8. 一款秀气的开源通用书籍阅读APP
  9. html兼容ios8,同步助手Win版兼容iOS8 一键修复闪退
  10. MbedTLS中的Montgomery算法实现解析(三)