转自:http://blog.csdn.net/rabbit729/article/details/7988743

Assimp(Open Asset Import Library)是一个支持读取多种模型资源的开源库,当前最新的版本是3.0版,支持读取以下类型的3D模型:

  • Collada ( .dae )
  • Blender 3D ( .blend )
  • 3ds Max 3DS ( .3ds )
  • 3ds Max ASE ( .ase )
  • Wavefront Object ( .obj )
  • Industry Foundation Classes (IFC/Step) ( .ifc )
  • XGL ( .xgl,.zgl )
  • Stanford Polygon Library ( .ply )
  • *AutoCAD DXF ( .dxf )
  • LightWave ( .lwo )
  • LightWave Scene ( .lws )
  • Modo ( .lxo )
  • Stereolithography ( .stl )
  • DirectX X ( .x )
  • AC3D ( .ac )
  • Milkshape 3D ( .ms3d )
  • * TrueSpace ( .cob,.scn )Biovision BVH ( .bvh )
  • * CharacterStudio Motion ( .csm )Ogre XML ( .xml )
  • Irrlicht Mesh ( .irrmesh )
  • * Irrlicht Scene ( .irr )
  • Quake I ( .mdl )
  • Quake II ( .md2 )
  • Quake III Mesh ( .md3 )
  • Quake III Map/BSP ( .pk3 )
  • * Return to Castle Wolfenstein ( .mdc )
  • Doom 3 ( .md5* )
  • *Valve Model ( .smd,.vta )
  • *Starcraft II M3 ( .m3 )
  • *Unreal ( .3d )BlitzBasic 3D ( .b3d )
  • Quick3D ( .q3d,.q3s )
  • Neutral File Format ( .nff )
  • Sense8 WorldToolKit ( .nff )
  • Object File Format ( .off )
  • PovRAY Raw ( .raw )
  • Terragen Terrain ( .ter )
  • 3D GameStudio (3DGS) ( .mdl )
  • 3D GameStudio (3DGS) Terrain ( .hmp )
  • Izware Nendo ( .ndo )

支持以下格式的导出:

  • Collada ( .dae )
  • Wavefront Object ( .obj )
  • Stereolithography ( .stl )
  • Stanford Polygon Library ( .ply )

此外还支持对导入的模型做一些常用的处理,如把四边形转换为三角形、计算切线和副法线、将大模型分割为小模型等。

Assimp的主页:http://assimp.sourceforge.net/index.html

读取模型文件的一个例子:

#include <assimp/Importer.hpp>      // 导入器在该头文件中定义
#include <assimp/scene.h>           // 读取到的模型数据都放在scene中
#include <assimp/postprocess.h>     // 该头文件中包含后处理的标志位定义bool Import( const std::string& pFile)
{   // 定义一个导入器 Assimp::Importer importer;   // 使用导入器导入选定的模型文件 const aiScene* scene = importer.ReadFile( pFile,aiProcess_CalcTangentSpace|            //后处理标志,自动计算切线和副法线aiProcess_Triangulate|                //后处理标志,自动将四边形面转换为三角面aiProcess_JoinIdenticalVertices|    //后处理标志,自动合并相同的顶点aiProcess_SortByPType);                //后处理标志,将不同图元放置到不同的模型中去,图片类型可能是点、直线、三角形等//更多后处理标志可以参考Assimp的文档  if( !scene)   {//导入错误,获取错误信息并进行相应的处理//DoTheErrorLogging( importer.GetErrorString());     return false;  }   // 根据需要获取scene中的模型数据,各种数据的获取方式可以参考Assimp的文档//DoTheSceneProcessing( scene);   return true;
}

3D模型读取库:Assimp相关推荐

  1. 现代opengl 设计 3D模型文件导入显示

    利用3D模型导入库assimp, 可以读取很多种格式的3D模型文件,现在我们就用opengl 显示出来.而这需要一个桥,就是数据和opengl 显示,前文我们介绍了网格Mesh类,现在介绍model ...

  2. WPF与3D 模型(一)把Solidworks里的模型导入进WPF程序

    简单研究了一下WPF导入3D模型的方法,了解到大概有以下这几种: 用Helix工具箱在程序码里面导入STL或者OBJ模型 用Helix工具箱在xaml码里粘贴xaml模型代码 不用Helix工具箱在x ...

  3. Alitum designer查看的PCB 3D 渲染图上边没有元器件,怎么办?(如何为3D渲染图中的元器件添加3D模型?)

    现象: 具体原因:因为你的元器件库中,没有添加相应元器件的模型 如何做? 1.为AD 22安装元器件库: (1)拿到原始库文件: _Library_Base_20170106.rar (2)解压: ( ...

  4. 美术 建模3D模型网站推荐

    免费游戏引擎专用商店 Unity 商店:Unity Asset Store - The Best Assets for Game Making Unreal 商城:Marketplace - UE M ...

  5. OpenGL-使用Assimp加载3d模型

    目录 加载前的准备 下载并编译Assimp 配置Assimp .dll文件的配置 .lib文件的配置 assimp文件的配置 举个栗子 代码 Mesh.h Model.h main.cpp 注意项 结 ...

  6. Qt和OpenGL:使用Open Asset Import Library(ASSIMP)加载3D模型

    Qt和OpenGL:使用Open Asset Import Library(ASSIMP)加载3D模型 翻译自:https://www.ics.com/blog/qt-and-opengl-loadi ...

  7. python读取ply格式的3D模型文件

    在研究生的一些项目中,会用python语言读取3D模型,3D模型通常有很多种类,但我的研究领域,通常用到ply格式的文件,因此,我今天晚上写一个博客来实现用python读取3D模型. 我的项目是位姿估 ...

  8. 模型加载库 Assimp

    大家好,接下来将为大家介绍模型加载库 Assimp . 1.Assimp介绍 Assimp 全称为 Open Asset Import Library,可以支持几十种不同格式的模型文件的解析(同样也可 ...

  9. python绘制3d图-python3利用Axes3D库画3D模型图

    Python3利用Axes3D库画3D模型图,供大家参考,具体内容如下 最近在学习机器学习相关的算法,用python实现.自己实现两个特征的线性回归,用Axes3D库进行建模. python代码 im ...

最新文章

  1. Python 属性__getattribute__
  2. SAP Kyma能像SAP BYD那样做field extension吗
  3. 软件测试 学习之路 CSS(一)
  4. FPGA _Verilog HDL_计数器实现数字钟60秒计数设计实验
  5. 三同轴连接器_电子元器件 连接器相关知识
  6. plt导致的_tkinter.TclError: no display name and no $DISPLAY environment variable的问题
  7. Spark集群新增节点方法
  8. ​观点|我离开AI行业的5个理由
  9. Laravel使用腾讯云COS服务
  10. 系统账号自动退出时长哪里设置
  11. ETL数据抽取 全量 增量
  12. 使用阿里iconfont unicode格式图标
  13. 六月福师计算机应用基础在线作业,19春福师《计算机应用基础》在线作业一答案满分...
  14. linux中解压文件到root,linux(centos8):使用zip/unzip压缩和解压缩文件
  15. 郑州轻工业大学计算机学院书记,郑州轻工业大学计算机与通信工程学院导师教师师资介绍简介-陈浩然...
  16. 基于图像的虚拟试衣:CloTH-VTON:Clothing Three-dimensional reconstruction for Hybrid image-based Virtual Try-On
  17. 有不有比加密更强的加密呢,有.拼音加密
  18. 拼多多双滑块识别/拼多多空间点选/验证码本地库识别
  19. 网页PDF下载,有了这3种方法,文档随便下
  20. 2022年全球程序员收入报告出炉:字节跳动成国内唯一上榜公司

热门文章

  1. 【详细】Python基础(一)
  2. 5610连接MMMB并显示隐藏文件夹的方法
  3. 魔力宝贝手机版服务器暂时无法登陆,《魔力宝贝手机版》服务器全面开启!
  4. Python leveldb
  5. Java最后一课*启点
  6. Win 10配置VPN代理时遇到的问题:500 Internal Privoxy Error
  7. ios如何介入苹果广告_苹果公司的iOS 14广告股票面临新的重大挑战
  8. 移动设备管理(MDM)与OMA OTA DM协议向导(四)——GSM 系统
  9. 使用Process Monitor对病毒进行行为分析
  10. 中国知网查重技巧与综述