* Squash development commits for PR
* Fix failing build on armeabi-v7a via android NDK
* Update with blendshape support
* Migrate to auto-cloning and patching tinyusdz (instead of manually copying files)
* Update to latest rendermesh-refactor branch commit
* Remove tracked file
* Update to use recent commit to "dev" branch
"rendermesh-refactor" was merged to "dev" around 9 May 2024 but merge
was not obvious from commit messages
* Add UNUSED() macro
(cherry picked from commit d89fe8f034c353cc5cc5b3ac78cd8845e006de38)
* Update tinyusdz branch
* Prevent per-ABI (x86, x86_64 etc) clone on android
* Add verbose logging cmake option
* Fix macro and patch
* Address compiler warnings
* Address compiler warnings
* Address compiler warnings
* Attempt prevent re-clone/re-patch once downloaded by any ABI build
* Disable tinyusdz clone/build by default
assimp github PR auto-CI checks clone/build the tinyusdz code, and reject PR
due to compiler warnings in the 3rd party external tinyusdz project
---------
Co-authored-by: Steve M <praktique-tellypresence@yahoo.com>
The following changes were tested against building with a master copy.
For a more detailed report, please read the followings below:
The flags that were checked were the ones checked by default + the following:
ASSIMP_BUILD_ASSIMP_VIEW
ASSIMP_BUILD_SAMPLES
The list of compilable projects in Visual Studio were the following:
- assimp
- assimp_cmd
- assimp_simpleogl
- assimp_simpletextureddirectx11
- assimp_simpletexturedogl
- assimp_viewer
- INSTALL
- IrrXML
- uninstall
- unit
- UpdateAssimpLibsDebugSymbolsAndDLLs
- ZERO_CHECK
- zlib
- zlibstatic
The solution that was generated with the new changes comprised the same number of projects as the one from the master, unmodified. All projects except UpdateAssimpLibsDebugSymbolsAndDLLs were built without any error. All tests were run.
UpdateAssimpLibsDebugSymbolsAndDLLs could not be built because of the reasons explained in issue #3004.
Changed copyright end year to 2020 in every reference "Copyright (c) 2006-XXXX, assimp team".
Changed copyright end year to 2020 in every reference "Copyright (c) 2006-XXXX, ASSIMP Development Team".
Changed copyright end year to 2020 in LICENCE.rtf.
Changed copyright end year in CMakeFiles.txt files and any other places referencing Assimp with a copyright start and end year.
Actually, both OpenGL and DirectX specify a matrix layout where the base vectors and the translational
part is consecutive in memory.
OpenGL uses post-multiplication of column-vectors and stores the matrix in column-major storage format:
| X1 Y1 Z1 T1 | | a |
| X2 Y2 Z2 T2 | | b |
| X3 Y3 Z3 T3 | | c |
| 0 0 0 1 | | 1 |
DirectX on the other hand uses row-major storage format but also pre-multiplication of
row-vectors
| a b c 1 | | X1 X2 X3 0 |
| Y1 Y2 Y3 0 |
| Z1 Z2 Z3 0 |
| T1 T2 T3 1 |
So a matrix is stored the same way in both frameworks and both times the translational part is consecutive,
which is not the format that Assimp uses.
The columns of the matrix are the images of the standard base vectors rather than the base vectors themselves. Added some
description of the row-major storage format.
Some are doxy comments, some are just trivial source comment typos.
Found using `codespell -q 3 --skip="./contrib" -I ../assimp-whitelist.txt`
whereby whitelist contained:
```
childs
iff
lod
nto
ot
whitespaces
```
check on doc/CMakeLists since is already checked on main CMakeLists.
At same time, Doxygen becomes required as no documentation can be built
without it.
Output directory now uses the user defined HTML_OUTPUT instead of
forced dir.
- Added included GNUInstallDirs on same UNIX check, avoiding duplication
of checks
Current documentation lacks a proper directory handling and switch for
Unix like systems.
The option BUILD_DOCS are added as disable by default, even so the
Doxyfile file is generated for a manual build.
Option HTML_OUTPUT are made cached to be properly replaced, as usually
done by some Linux distributions
Microsoft CHM option is enabled if MSVC is detected.