CHANGES 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607
  1. ----------------------------------------------------------------------
  2. CHANGELOG
  3. ----------------------------------------------------------------------
  4. 4.1.0 (2017-12):
  5. - FEATURES:
  6. - Export 3MF ( experimental )
  7. - Import / Export glTF 2
  8. - Introduce new zib-lib to eb able to export zip-archives
  9. - FIXES/HOUSEKEEPING:
  10. - Added missing include to stdlib.h and remove load library call
  11. - Fix install for builds with MSVC compiler and NMake.
  12. - Update list of supported file formats.
  13. - Add TriLib to the official list of supported ports.
  14. - Re-enabling PACK_STRUCT for MDL files.
  15. - Use std.::unique_ptr
  16. - Update D3MFExporter.h
  17. - Update MD3Loader.cpp, using index
  18. - Fix all warnings on MSVC14
  19. - Copy assimp dll to unit folder on windows
  20. - Update jvm port supported formats
  21. - Add support for building Mac OS X Framework bundles
  22. - Check for nullptr dereferencing before copying scene data
  23. - Update ValidateDataStructure.h, typo
  24. - Enable data structure validation in cases where it doesn't cause failures
  25. - Remove some dead assignments
  26. - fast_atof: Silence some uninitialized variable warnings
  27. - Check for area test if the face is a triangle.
  28. - Set mNumUVComponents to 0 when deleting texture coordinate sets
  29. - Only scale the root node because this will rescale all children nodes as well.
  30. - Issue 1514: Fix frame pointer arithmetic
  31. - Prevent failing stringstream to crash the export process
  32. - powf -> pow
  33. - add Defines.h to include folder for install.
  34. - Android:
  35. - Fix android build
  36. - Fix assimp for cross compile for android
  37. - Use define for D_FILE_OFFSET_BITS only for not-android systems.
  38. - FBX:
  39. - Fix handling with embedded textures
  40. - FBX 7500 Binary reading
  41. - Remove dead assignment
  42. - Fix export of deleted meshes; Add LazyDict::Remove method
  43. - Log an error instead of letting the fbx-importer crash. ( issue 213 )
  44. - Replace bad pointer casting with memcpy
  45. - Remove useless const qualifier from return value
  46. - Add explicit instantiation of log_prefix so other FBX source files can see it
  47. - add missing inversion of postrotation matrix for fbx.
  48. - FIReader: Silence uninitialized variable warning
  49. - Update version check in FBX reader to check for version >= 7500
  50. - Use actual min/max of anim keys when start/stop time is missing
  51. - GLTF1:
  52. - Fix output of glTF 1 version string
  53. - Fix delete / delete[] mismatch in glTFAsset
  54. - Don’t ignore rgba(1,1,1,1) color properties
  55. - glTF2 primitives fixes
  56. - Don’t ignore rgba(1,1,1,1) color properties
  57. - Fix delete / delete[] mismatch in glTFAsset
  58. - Remove KHR_binary_glTF code
  59. - glTF nodes can only hold one mesh. this simply assigns to and check’s a Node’s Mesh
  60. - version in glb header is stored as uint32_t
  61. - GLTF2:
  62. - node name conflict fix
  63. - Fix transform matrices multiplication order
  64. - Preserve node names when importing
  65. - Add support for tangents in import
  66. - Fix typo on gltf2 camera parameters
  67. - Moved byteStride from accessor to bufferView
  68. - Implemented reading binary glTF2 (glb) files
  69. - Fix signed/unsigned warning
  70. - Add postprocess step for scaling
  71. - Fix shininess to roughness conversion
  72. - Prefer “BLEND” over “MASK” as an alphaMode default
  73. - Approximate specularity / glossiness in metallicRoughness materials
  74. - Diffuse color and diffuse texture import and export improvements
  75. - Addressed some mismatched news/deletes caused by the new glTF2 sources.
  76. - Fix delete / delete[] mismatches in glTF2 importer
  77. - use correct name of exporter to gltf2
  78. - Fix possible infinite loop when exporting to gltf2
  79. - Fix glTF2::Asset::FindUniqueID() when the input string is >= 256 chars
  80. - Fix glTF2 alphaMode storage and reading
  81. - Fix glTF 2.0 multi-primitive support
  82. - Load gltf .bin files from correct directory
  83. - Add support for importing both glTF and glTF2 files
  84. - ampler improvements; Add new LazyDict method
  85. - Changes to GLTF2 materials
  86. - Remove Light, Technique references
  87. - Start removing materials common, and adding pbrSpecularGlossiness
  88. - Use !ObjectEmpty() vs. MemberCount() > 0
  89. - Working read, import, export, and write of gltf2 (pbr) material
  90. - Check in gltf2 models to test directory
  91. - Remove un-needed test models
  92. - Start managing and importing gltf2 pbr materials
  93. - Update glTF2 Asset to use indexes
  94. - Duplicate gltfImporter as gltf2Importer; Include glTF2 importer in CMake List
  95. - glTF2: Fix animation export
  96. - use opacity for diffuse alpha + alphaMode
  97. - STL:
  98. - Restore import of multi mesh binary STLs
  99. - Blender:
  100. - Silence warning about uninitialized member
  101. - MDLImporter:
  102. - Don't take address of packed struct member
  103. - assimp_cmd:
  104. - Fix strict-aliasing warnings
  105. - Open3DGC:
  106. - Fix strict-aliasing warnings
  107. - Add assertions to silence static analyzer warnings
  108. - Remove redundant const qualifiers from return types
  109. - Fix some uninitialized variable warnings
  110. - Remove OPEN3DGC and compression references
  111. - unzip:
  112. - Remove dead assignment
  113. - Bail on bad compression method
  114. - Fix possibly uninitialized variables
  115. - clipper:
  116. - Add assertion to silence a static analyzer warning
  117. - OpenDDLExport:
  118. - Reduce scope of a variable
  119. - Remove dead variable
  120. - Remove dead assignment
  121. - Fix another potential memory leak
  122. - X3DImporter:
  123. - Add assertions to silence static analyzer warnings
  124. - Add missing unittest
  125. - Workaround for buggy Android NDK (issue #1361)
  126. - TerragenLoader:
  127. - Remove unused variable
  128. - SIBImporter:
  129. - Add assertions to silence static analyzer warnings
  130. - IFC:
  131. - Remove dead code
  132. - Add explicit instantiation of log_prefix so IFCMaterial.cpp can see it
  133. - PLY:
  134. - Remove dead assignment and reduce scope of a variable
  135. - fix vertex attribute lookup.
  136. - OpenGEX:
  137. - Add assertion to silence a static analyzer warning
  138. - Fix for TextureFile with number in file name
  139. - Return early when element is TextureFile
  140. - NFF:
  141. - Add assertions to silence static analyzer warnings
  142. - Split up some complicated assignments
  143. - Raw: Fix misleading indentation warning
  144. - Reduce scope of a variable
  145. - LWO
  146. - Reduce scope of a variable
  147. - IRRLoader:
  148. - Fix confusing boolean casting
  149. - AssbinExporter:
  150. - Add assertion to silence a static analyzer warning
  151. - ASE:
  152. - Add assertion to silence a static analyzer warning
  153. - AMFImporter:
  154. - Add assertion to silence a static analyzer warning
  155. - Add a block
  156. - OptimizeGraph:
  157. - Fix possible null pointer dereference
  158. - RemoveRedundantMaterials:
  159. - Add assertion to silence a static analyzer warning
  160. - ImproveCacheLocality:
  161. - Add assertion to silence a static analyzer warning
  162. - RemoveRedundantMaterials:
  163. - Set pointer to nullptr after deleting it
  164. - Travis:
  165. - Disable unit tests in scan-build config
  166. - Move slower builds earlier to improve parallelization
  167. - Add static analysis to build
  168. - Remove unused branch rule for travis.
  169. - Add Clang UBSan build configuration
  170. - Treat warnings as errors, without typos this time
  171. - Unittests:
  172. - Add VS-based source groups for the unittests.
  173. - Collada:
  174. - export <library_animations> tag
  175. - Update ColladaExporter.cpp
  176. - Silence uninitialized variable warning
  177. - Add support for line strip primitives
  178. - Obj Wavefront:
  179. - check in exporting against out-of-bounds-access .
  180. - Issue 1351: use correct name for obj-meshname export for groups.
  181. - fix mem-lead: face will be not released in case of an error.
  182. - Anatoscope obj exporter nomtl
  183. - Raise exception when obj file contains invalid face indices
  184. - Added alternative displacement texture token in OBJ MTL material.
  185. - Obj: rename attribute from exporter.
  186. - Fix OBJ discarding all material names if the material library is missing
  187. - Step:
  188. - use correct lookup for utf32
  189. - MD2:
  190. - Fix MD2 frames containing garbage
  191. - STL
  192. - add missing const.
  193. - Fix memory-alignment bug.
  194. - Fix issue 104: deal with more solids in one STL file.
  195. - CMake
  196. - Fix issue 213: use correct include folder for assimp
  197. - Doxygen
  198. - Fix issue 1513: put irrXML onto exclucde list for doxygen run
  199. - PyAssimp:
  200. - Search for libassimp.so in LD_LIBRARY_PATH if available.
  201. - Fix operator precedence issue in header check
  202. - Split setup.py into multiple lines
  203. - Detect if Anaconda and fixed 3d_viewer for Python 3
  204. - created a python3 version of the 3dviewer and fixed the / = float in py3
  205. - Blender:
  206. - Fix invalid access to mesh array when the array is empty.
  207. - Fix short overflow.
  208. - Silence warning about inline function which is declared but not defined
  209. - JAssimp
  210. - Changed license header for IHMC contributions from Apache 2.0 to BSD
  211. - Add Node metadata to the Jassmip Java API
  212. - Added supported for custom IO Systems in Java. Implemented ClassLoader IO System
  213. - Added a link to pure jvm assimp port
  214. - Clang sanitizer:
  215. - Undefined Behavior sanitizer
  216. - Fixed a divide by zero error in IFCBoolean that was latent, but nevertheless a bug
  217. - B3DImporter:
  218. - Replace bad pointer casting with memcpy
  219. - AppVeyor:
  220. - Cleanup and Addition of VS 2017 and running Tests
  221. - Fixed File Size reported as 0 in tests that use temporary files
  222. - x86 isn't a valid VS platform. Win32 it is, then.
  223. - Replaced the worker image name, which doesn't work as generator name, with a manually created generator name.
  224. - Cleaned up appveyor setup, added VS 2017 to the build matrix and attempted to add running of tests.
  225. - Treat warnings as errors on Appveyor
  226. - Disable warning 4351 on MSVC 2013
  227. - OpenGEXImporter:
  228. - Copy materials to scene
  229. - Store RefInfo in unique_ptr so they get automatically cleaned up
  230. - Fix IOStream leak
  231. - Store ChildInfo in unique_ptr so they get automatically cleaned up
  232. - improve logging to be able to detect error-prone situations.
  233. - AMFImporter:
  234. - Fix memory leak
  235. - UnrealLoader:
  236. - Fix IOStream leak
  237. - Upgrade RapidJSON to get rid of a clang warning
  238. - zlib:
  239. - Update zlib contribution
  240. - Removed unnecessary files from zlib contribution
  241. - Replaced unsigned long for the crc table to z_crc_t, to match what is returned by get-crc_table
  242. - MakeVerboseFormat:
  243. - Fix delete / delete[] mismatches in MakeVerboseFormat
  244. - MaterialSystem:
  245. - Fix out-of-bounds read in MaterialSystem unit test
  246. - SIB:
  247. - Added support for SIB models from Silo 2.5
  248. - AssbinExporter:
  249. - Fix strict aliasing violation
  250. - Add Write specialization for aiColor3D
  251. - DefaultLogger:
  252. - Whitespace cleanup to fix GCC misleading indentation warning
  253. - MDP:
  254. - Fix encoding issues.
  255. - PreTransformVertices:
  256. - fix name lost in mesh and nodes when load with flag
  257. - C4D:
  258. - Fixes for C4D importer
  259. - Unzip:
  260. - Latest greatest.
  261. 4.0.1 (2017-07-28)
  262. - FIXES/HOUSEKEEPING:
  263. - fix version test.
  264. - Not compiling when using ASSIMP_DOUBLE_PRECISION
  265. - Added support for python3
  266. - Check if cmake is installed with brew
  267. - Low performance in OptimizeMeshesProcess::ProcessNode with huge numbers of meshes
  268. - Elapsed seconds not shown correctly
  269. - StreamReader: fix out-of-range exception
  270. - PPdPmdParser: fix compilation for clang
  271. 4.0.0 (2017-07-18)
  272. FEATURES:
  273. - Double precision support provided ( available via cmake option )
  274. - QT-Widget based assimp-viewer ( works for windows, linux, osx )
  275. - Open3DGC codec supported by glFT-importer
  276. - glTF: Read and write transparency values
  277. - Add Triangulate post-processing step to glTF exporters
  278. - Update rapidjson to v1.0.2
  279. - Added method to append new metadata to structure
  280. - Unittests: intoduce a prototype model differ
  281. - X3D support
  282. - AMF support
  283. - Lugdunum3D support
  284. - Obj-Importer: obj-homogeneous_coords support
  285. - Obj-Importer: new streaming handling
  286. - Added support for 64 bit version header introduced in FbxSdk2016
  287. - Travis: enable coverall support.
  288. - PyAssimp: New version of the pyASSIMP 3D viewer, with much improved 3D controls
  289. - Morph animation support for collada
  290. - Added support for parameters Ni and Tf in OBJ/MTL file format
  291. - aiScene: add method to add children
  292. - Added new option to IFC importer to control tessellation angle + removed unused IFC option
  293. - aiMetaData: introduce aiMetaData::Dealloc
  294. - Samples: add a DX11 example
  295. - travis ci: test on OXS ( XCode 6.3 ) as well
  296. - travis ci: enable sudo support.
  297. - openddlparser: integrate release v0.4.0
  298. - aiMetaData: Added support for metadata in assbin format
  299. FIXES/HOUSEKEEPING:
  300. - Introduce usage of #pragma statement
  301. - Put cmake-scripts into their own folder
  302. - Fix install pathes ( issue 938 )
  303. - Fix object_compare in blender importer( issue 946 )
  304. - Fix OSX compilation error
  305. - Fix unzip path when no other version was found ( issue 967 )
  306. - Set _FILE_OFFSET_BITS=64 for 32-bit linux ( issue 975 )
  307. - Fix constructor for radjson on OSX
  308. - Use Assimp namespace to fix build for big-endian architectures
  309. - Add -fPIC to C Flags for 64bit linux Shared Object builds
  310. - MDLLoader: fix resource leak.
  311. - MakeVerboseFormat: fix invalid delete statement
  312. - IFC: fix possible use after free access bug
  313. - ComputeUVMappingprocess: add missing initialization for scalar value
  314. - Fix invalid release of mat + mesh
  315. - IrrImporter: Fix release functions
  316. - Split mesh before exporting gltf ( issue 995 )
  317. - 3MFImporter: add source group for visual studio
  318. - IFC: Switch generated file to 2 files to fix issue related to <mingw4.9 ( Thanks Qt! )
  319. - ObjImporter: fix test for vertices import
  320. - export scene combiner ( issues177 )
  321. - FBX: make lookup test less strict ( issues 994 )
  322. - OpenGEX-Importer: add import of vertex colors ( issue 954 )
  323. - fix bug when exporting mRotationKeys data
  324. - fix mingw build (mingw supports stat64 nowadays)
  325. - cfileio: fix leaks by not closing files in the destructor
  326. - Fix OBJ parser mtllib statement parsing bug.
  327. - Q3BSP-Importer: remove dead code
  328. - Fix BlenderDNA for clang cross compiler.
  329. - ScenePreprocessor: fix invalid index counter.
  330. - Fix compiler warnings ( issue 957 )
  331. - Fix obj .mtl file loading
  332. - Fixed a compile error on MSVC14 x64 caused by the /bigobj flag failing to be set for the 1 and 2-suffixed versions introduced in commit 0a25b076b8968b7ea2aa96d7d1b4381be2d72ce6
  333. - Fixed build warnings on MSVC14 x64
  334. - Remove scaling of specular exponent in OBJFileImporter.cpp
  335. - use ai_assert instead of assert ( issue 1076 )
  336. - Added a preprocessor definition for MSVC to silence safety warnings regarding C library functions. This addresses all warnings for MSVC x86 and x64 when building zlib, tools and viewer as a static lib
  337. - fix parsing of texture name ( issue 899 )
  338. - add warning when detecting invalid mat definition ( issue 1111 )
  339. - copy aiTexture type declaration instead of using decltype for declaration to fix iOS build( issue 1101 )
  340. - FBX: Add additional material properties
  341. - FBX: Correct camera position and clip planes
  342. - FBX: Add correct light locations and falloff values
  343. - fix typo ( issue 1141 )
  344. - Fix collada export. Don't duplicate TEXCOORD/NORMALS/COLORS in <vertices> and <polylist> ( issue 1084 )
  345. - OBJParser: set material index when changing current material
  346. - OBJ: check for null mesh before updating material index
  347. - add vertex color export support ( issue 809 )
  348. - Fix memory leak in Collada importer ( issue 1169 )
  349. - add stp to the list of supported extensions for step-files ( issue 1183 )
  350. - fix clang build ( Issue-1169 )
  351. - fix for FreeBSD
  352. - Import FindPkgMacros to main CMake Configuration
  353. - Extended support for tessellation parameter to more IFC shapes
  354. - defensice handling of utf-8 decode issues ( issue 1211 )
  355. - Fixed compiler error on clang 4.0 running on OSX
  356. - use test extension for exported test files ( issue 1228 )
  357. - Set UVW index material properties for OBJ files
  358. - Fixed no member named 'atop' in global namespace issue for Android NDK compilation
  359. - Apply mechanism to decide use for IrrXML external or internal
  360. - Fix static init ordering bug in OpenGEX importer
  361. - GLTF exporter: ensure animation accessors have same count
  362. - GLTF exporter: convert animation time from ticks to seconds
  363. - Add support for reading texture coordinates from PLY meshes with properties named 'texture_u' and 'texture_v'
  364. - Added TokensForSearch in BlenderLoader to allow CanRead return true for in-memory files.
  365. - fix wrong delete ( issue 1266 )
  366. - OpenGEX: fix invalid handling with color4 token ( issue 1262 )
  367. - LWOLoader: fix link in loader description
  368. - Fix error when custom CMAKE_C_FLAGS is specified
  369. - Fast-atof: log overflow errors
  370. - Obj-Importer: do not break when detecting an overflow ( issue 1244 )
  371. - Obj-Importer: fix parsing of multible line data definitions
  372. - Fixed bug where IFC models with multiple IFCSite only loaded 1 site instead of the complete model
  373. - PLYImporter: - optimize memory and speed on ply importer / change parser to use a file stream - manage texture path in ply
  374. import - manage texture coords on faces in ply import - correction on point cloud faces generation
  375. - Utf8: integrate new lib ( issue 1158 )
  376. - fixed CMAKE_MODULE_PATH overwriting previous values
  377. - OpenGEX: Fixed bug in material color processing ( issue 1271 )
  378. - SceneCombiner: move header for scenecombiner to public folder.
  379. - GLTF exporter: ensure buffer view byte offsets are correctly aligned
  380. - X3D importer: Added EXPORT and IMPORT to the list of ignored XML tags
  381. - X3D Exporter: fixed missing attributes
  382. - X3D importer: Fixed import of normals for the single index / normal per vertex case
  383. - X3D importer: Fixed handling of inlined files
  384. - X3D importer: fixed whitespace handling (issue 1202)
  385. - X3D importer: Fixed iterator on MSVC 2015
  386. - X3D importer: Fixed problems with auto, override and regex on older compilers
  387. - X3D importer: Fixed missing header file
  388. - X3D importer: Fixed path handling
  389. - X3D importer: Implemented support for binary X3D files
  390. - fix build without 3DS ( issue 1319 )
  391. - pyassimp: Fixed indices for IndexedTriangleFanSet, IndexedTriangleSet and IndexedTriangleStripSet
  392. - Fixes parameters to pyassimp.load
  393. - Obj-Importe: Fixed texture bug due simultaneously using 'usemtl' and 'usemap' attributes
  394. - check if all exporters are disabled ( issue 1320 )
  395. - Remove std functions deprecated by C++11.
  396. - X-Importer: make it deal with lines
  397. - use correct path for compilers ( issue 1335 )
  398. - Collada: add workaround to deal with polygon with holes
  399. - update python readme
  400. - Use unique node names when loading Collada files
  401. - Fixed many FBX bugs
  402. API COMPATIBILITY:
  403. - Changed ABI-compatibility to v3.3.1, please rebuild your precompiled libraries ( see issue 1182 )
  404. - VS2010 outdated
  405. 3.3.1 (2016-07-08)
  406. FIXES/HOUSEKEEPING:
  407. - Setup of default precision for 17 exporters
  408. - Fix xcode project files
  409. - Fix BlenderTesselator: offsetof operator
  410. - Invalid version in cmake file
  411. - Update pstdint.h to latest greatest
  412. 3.3.0 (2016-07-05)
  413. FEATURES:
  414. - C++11 support enabled
  415. - New regression-test-UI
  416. - Experimental glTF-importer support
  417. - OpenGEX: add support for cameras and lights
  418. - C4D: update to latest Melange-SDK
  419. - Add a gitter channel
  420. - Coverity check enabled
  421. - Switch to <...> include brackets for public headers
  422. - Enable export by pyAssimp
  423. - CI: check windows build
  424. - Add functionality to perform a singlepost-processing step
  425. - many more, just check the history
  426. FIXES/HOUSEKEEPING:
  427. - Fix of many resource leaks in unittests and main lib
  428. - Fix iOS-buildfor X64
  429. - Choosing zlib manually for cmake
  430. - many more, just check the history
  431. 3.2.1 (2016-010-10)
  432. FEATURES:
  433. - Updated glTF exporter to meet 1.0 specification.
  434. FIXES/HOUSEKEEPING:
  435. - Fixed glTF Validator errors for exported glTF format.
  436. ISSUES:
  437. - Hard coded sampler setting for
  438. - magFilter
  439. - minFilter
  440. - void* in ExportData for accessor max and min.
  441. 3.2.0 (2015-11-03)
  442. FEATURES:
  443. - OpenDDL-Parser is part of contrib-source.
  444. - Experimental OpenGEX-support
  445. - CI-check for linux and windows
  446. - Coverity check added
  447. - New regression testsuite.
  448. FIXES/HOUSEKEEPING:
  449. - Hundreds of bugfixes in all parts of the library
  450. - Unified line endings
  451. API COMPATIBILITY:
  452. - Removed precompiled header to increase build speed for linux
  453. 3.1.1 (2014-06-15)
  454. FEATURES:
  455. - Support for FBX 2013 and newer, binary and ASCII (this is partly
  456. work from Google Summer of Code 2012)
  457. - Support for OGRE binary mesh and skeleton format
  458. - Updated BLEND support for newer Blender versions
  459. - Support for arbitrary meta data, used to hold FBX and DAE metadata
  460. - OBJ Export now produces smaller files
  461. - Meshes can now have names, this is supported by the major importers
  462. - Improved IFC geometry generation
  463. - M3 support has been removed
  464. FIXES/HOUSEKEEPING:
  465. - Hundreds of bugfixes in all parts of the library
  466. - CMake is now the primary build system
  467. API COMPATIBILITY:
  468. - 3.1.1 is not binary compatible to 3.0 due to aiNode::mMetaData
  469. and aiMesh::mName
  470. - Export interface has been cleaned up and unified
  471. - Other than that no relevant changes
  472. 3.0 (2012-07-07)
  473. FEATURES:
  474. - new export interface similar to the import API.
  475. - Supported export formats: Collada, OBJ, PLY and STL
  476. - added new import formats: XGL/ZGL, M3 (experimental)
  477. - new postprocessing steps: Debone
  478. - vastly improved IFC (Industry Foundation Classes) support
  479. - introduced API to query importer meta information (such as supported
  480. format versions, full name, maintainer info).
  481. - reworked Ogre XML import
  482. - C-API now supports per-import properties
  483. FIXES/HOUSEKEEPING:
  484. - hundreds of bugfixes in all parts of the library
  485. - unified naming and cleanup of public headers
  486. - improved CMake build system
  487. - templatized math library
  488. - reduce dependency on boost.thread, only remaining spot
  489. is synchronization for the C logging API
  490. API COMPATIBILITY:
  491. - renamed headers, export interface, C API properties and meta data
  492. prevent compatibility with code written for 2.0, but in
  493. most cases these can be easily resolved
  494. - Note: 3.0 is not binary compatible with 2.0
  495. 2.0 (2010-11-21)
  496. FEATURES:
  497. - Add support for static Blender (*.blend) scenes
  498. - Add support for Q3BSP scenes
  499. - Add a windows-based OpenGL sample featuring texturing & basic materials
  500. - Add an experimental progress feedback interface.
  501. - Vastly improved performance (up to 500%, depending on mesh size and
  502. spatial structure) in some expensive postprocessing steps
  503. - AssimpView now uses a reworked layout which leaves more space
  504. to the scene hierarchy window
  505. - Add C# bindings ('Assimp.NET')
  506. - Keep BSD-licensed and otherwise free test files in separate
  507. folders (./test/models and ./test/models-nonbsd).
  508. FIXES:
  509. - Many Collada bugfixes, improve fault tolerance
  510. - Fix possible crashes in the Obj loader
  511. - Improve the Ogre XML loader
  512. - OpenGL-sample now works with MinGW
  513. - Fix Importer::FindLoader failing on uppercase file extensions
  514. - Fix flawed path handling when locating external files
  515. - Limit the maximum number of vertices, faces, face indices and
  516. weights that Assimp is able to handle. This is to avoid
  517. crashes due to overflowing counters.
  518. - Updated XCode project files
  519. - Further CMAKE build improvements
  520. API CHANGES:
  521. - Add data structures for vertex-based animations (These are not
  522. currently used, however ...)
  523. - Some Assimp::Importer methods are const now.
  524. 1.1 (2010-04-17)
  525. This is the list of relevant changes from the 1.0 (r412) release to 1.1 (r700).
  526. FEATURES:
  527. - Vastly improved Collada support
  528. - Add MS3D (Milkshape 3D) support
  529. - Add support for Ogre XML static meshes
  530. - Add experimental COB (TrueSpace) support
  531. - Automatic test suite to quickly locate regressions
  532. - D bindings (`dAssimp`)
  533. - Python 2.n bindings (`PyAssimp`)
  534. - Add basic support for Unicode input files (utf8, utf16 and utf32)
  535. - Add further utilities to the `assimp` tool (xml/binary dumps, quick file stats)
  536. - Switch to a CMAKE-based build system including an install target for unix'es
  537. - Automatic evaluation of subdivision surfaces for some formats.
  538. - Add `Importer::ReadFileFromMemory` and the corresponding C-API `aiReadFileFromMemory`
  539. - Expose further math utilities via the C-API (i.e. `aiMultiplyMatrix4`)
  540. - Move noboost files away from the public include directory
  541. - Many, many bugfixes and improvements in existing loaders and postprocessing steps
  542. - Documentation improved and clarified in many places.
  543. - Add a sample on using Assimp in conjunction with OpenGL
  544. - Distribution/packaging: comfortable SDK installer for Windows
  545. - Distribution/packaging: improved release packages for other architectures
  546. CRITICAL FIXES:
  547. - Resolve problems with clashing heap managers, STL ABIs and runtime libraries (win32)
  548. - Fix automatic detection of file type if no file extension is given
  549. - Improved exception safety and robustness, prevent leaking of exceptions through the C interface
  550. - Fix possible heap corruption due to material properties pulled in incorrectly
  551. - Avoid leaking in certain error scenarios
  552. - Fix 64 bit compatibility problems in some loaders (i.e. MDL)
  553. BREAKING API CHANGES:
  554. - None -
  555. MINOR API BEHAVIOUR CHANGES:
  556. - Change quaternion orientation to suit to the more common convention (-w).
  557. - aiString is utf8 now. Not yet consistent, however.