Commit Graph

2163 Commits (7212ad9f0ec062df332655439d3a3c7dc22c2f5c)

Author SHA1 Message Date
Alexander Gessler 50d5c5c4ef Merge pull request #527 from VirusFree/pr_strtol10_64
fix for strtol10_64
2015-04-05 17:25:50 +02:00
Alexander Gessler 9a7f90220a Merge pull request #526 from VirusFree/pr_OpenGEX_textureCoords_init
[OpenGEXImporter] Correctly initialize m_textureCoords array
2015-04-05 17:05:16 +02:00
George Papadopoulos 54ce3d843f fix for strtol10_64 2015-04-05 16:40:40 +03:00
George Papadopoulos 6a1522ded8 [OpenGEXImporter] Correctly initialize m_textureCoords array 2015-04-05 16:29:33 +03:00
George Papadopoulos da3c347a57 add strtol10_64 and fix FBX text parsing for int_64 (for animation KTime) 2015-04-05 15:19:55 +03:00
Kim Kulling 3fa6882384 generate unique indices for importes vertices in opengex importer.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-04-04 18:52:59 +02:00
Kim Kulling a50fa5f1de add missing doc in obj importer.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-04-04 18:52:24 +02:00
Kim Kulling 65cb05f381 fix invalid index counter.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-04-02 01:10:53 +02:00
Turo Lamminen 681c32d5ec AC3D: Throw DeadlyImportError when too many vertices instead of out-of-memory exception
Valgrind can't throw an exception when running out of memory. The program
wil just crash. This fixes it in some cases but not all.
2015-04-01 20:52:58 +03:00
Turo Lamminen bf5c9413f9 AC3D: Throw exception when encountering a bad vertex index 2015-04-01 16:22:46 +03:00
Turo Lamminen 16c57ab1d3 AC3D: Throw exception on too many vertices instead of crashing 2015-04-01 16:22:06 +03:00
Turo Lamminen 3e728e80eb Obj: Change asserts to exceptions
These can be triggered by malformed input file so they can't be assertions.
2015-04-01 16:13:46 +03:00
Turo Lamminen 4c28f31f43 X: Throw error when scene contains no root node
Otherwise MakeLeftHandedProcess will crash.
2015-04-01 16:11:53 +03:00
Turo Lamminen 8cdf9467c5 MD3: Fix assertion failures when filename doesn't contain '.' 2015-04-01 16:09:59 +03:00
Turo Lamminen 9f9774403d Remove assertion when too long message attempted
Since these can be caused by malformed input files assert is the wrong thing.
2015-04-01 16:03:06 +03:00
Kim Kulling 45cc0b582a fix creation of unused mesh instance.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-31 12:18:57 +02:00
Kim Kulling 754897d1aa add imported meshes from OpenGEX-importer to scene.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-30 23:54:32 +02:00
Kim Kulling 8857f26efb fix: add setup for number of copied vertex attributes.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-30 12:04:28 +02:00
Kim Kulling 7f3b044b83 add import of index array data.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-30 11:55:57 +02:00
Kim Kulling 0e11cfbe6f add copy op for positions, normals and texture coordinates.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-29 18:53:23 +02:00
Kim Kulling 20ad00b5e5 Merge branch 'master' of https://github.com/assimp/assimp 2015-03-28 20:47:17 +01:00
Alexander Gessler 8d3853022a Merge branch 'master' of https://github.com/assimp/assimp 2015-03-28 13:44:11 +01:00
Alexander Gessler a77f9419a2 XGLLoader: set aiImporterFlags_SupportCompressedFlavour flag. 2015-03-28 13:09:18 +01:00
Alexander Gessler 51514994f3 Merge pull request #512 from VirusFree/pr_FBX_Animations
[FBX] add support for multiple animations
2015-03-28 12:56:56 +01:00
Kim Kulling aa9dd6a14b - check property name before setting up the primitive type for meshes.
- fix lookup for vertex attribute type lookup.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-28 12:08:59 +01:00
Léo Terziman 454b85a0ad Improved prototype of Importer & Exporter SetProperty* functions for better integration with tools such as SWIG 2015-03-27 10:56:03 +01:00
Léo Terziman 60d58901a5 Merge remote-tracking branch 'official/master' into contrib
Conflicts:
	code/ColladaParser.cpp
	include/assimp/config.h
2015-03-27 09:55:21 +01:00
Alexander Gessler 6824c8cbfe Merge branch 'master' of https://github.com/assimp/assimp 2015-03-26 22:45:20 +01:00
Alexander Gessler 8666b614c6 Fix non-determinism in XGL importer output due to std::multimap value ordering not guaranteed < C++11.
One step closer to a fully reproducible regression test suite.
2015-03-26 22:45:00 +01:00
George Papadopoulos 08ba782bd5 [FBX] add support for multiple animations (by using LocalStart/LocalStop in takes)
+ change key type from uint to int (fixes bugs from negative int_t becoming a junk uint_t value )
+ detect and ignore channels with no keys in the specified take start/stop window
+ add test model with multiple animations
2015-03-26 23:23:38 +02:00
Kim Kulling b17a1255a1 add setup for mesh primitives and prepare vertex array copy ops.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-26 20:17:26 +01:00
Kim Kulling ca4385fcf2 fix compiler warning ( signed against unsigned ).
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-26 10:11:14 +01:00
Kim Kulling 7a01f77a08 fix invalid lookup for token type in opengex-parser. 2015-03-25 21:35:32 +01:00
Kim Kulling 23b3728254 add setup of transformation information in opengex importer.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-24 00:08:42 +01:00
Alexander Gessler 14324c60cf Add missing ASSIMP_BUILD_NO_C4D_IMPORTER check to C4DImporter.cpp. Fixes #503. 2015-03-22 17:53:53 +01:00
Kim Kulling 0995f3662d prepare handlers for missing nodes.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-20 16:56:28 +01:00
Andreas Henne 816ceeda69 Eliminated error in MSVC. 2015-03-20 14:18:26 +01:00
Kim Kulling 690ebe4f1e fix https://github.com/assimp/assimp/issues/504: use correct define for check if OpenGEX-importer shall be used or not.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-20 13:34:48 +01:00
Andreas Henne 59b0819866 STL loader can now handle more than one mesh in a single ascii file. 2015-03-19 17:27:06 +01:00
Kim Kulling 70aafa478d avoid copying of private struct.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-19 11:38:15 +01:00
Kim Kulling 12efa14777 add openddl_parser directly to assimp.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-19 11:37:58 +01:00
Kim Kulling b0753c38de fix code reading finding: rename definition.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-19 11:37:11 +01:00
Kim Kulling f15d62194b add nodestack to deal with node hierarchy.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-18 21:37:57 +01:00
Kim Kulling 2717d51f7e Merge remote-tracking branch 'origin/master' into opengex_support
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>

Conflicts:
	code/ParsingUtils.h
2015-03-17 14:26:39 +01:00
Kim Kulling 59633d172f implementation for mesh resolving.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-17 14:25:40 +01:00
Kim Kulling 7d7ccfd630 fix compiler warning.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-17 14:24:28 +01:00
Alexander Gessler b304e7b45c Add missing break in switch statement in BlobIOSystem.h. Fixes #438.
This probably didn't affect anyone for real since no on uses relative seeks.
2015-03-16 23:26:41 +01:00
Alexander Gessler adc44d1e83 If caller provides no ExportProperties, pass a pointer to empty properties to the Exporter implementation (instead of a NULL). 2015-03-16 23:09:41 +01:00
Alexander Gessler 4bf090e92c Merge branch 'master' of https://github.com/Madrich/assimp
Conflicts:
	code/ColladaParser.cpp
2015-03-16 23:04:16 +01:00
Kim Kulling 207906f039 first parsing of references and geometry objects.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-03-16 20:34:42 +01:00
ulf fdad4b51a1 Merge branch 'master' of https://github.com/assimp/assimp 2015-03-16 11:35:33 +01:00
ulf dbc7dc005d - IfcLoader now evaluates all curve segments at both start and end. Leads to a lot of duplicates which get filtered out afterwards, but fixes the "cutting corners" phenomen that sometimes appeared in conjunction with trimmed curves 2015-03-16 11:35:07 +01:00
Alexander Gessler dca3f09940 Merge pull request #497 from assimp/regression-ci-test
Regression suite fixes, fix cases of non-deterministic output #1.
2015-03-16 09:15:55 +01:00
Alexander Gessler 7ee5eaafc6 Fix compile: set::erase() returns void prior to C++11. 2015-03-15 23:40:29 +01:00
Alexander Gessler 16880b3dbd Fix build after mis-merge. 2015-03-15 23:31:58 +01:00
Alexander Gessler dc441d09e5 Blender importer: fix accidental use of uninitialized fields in the default material.
IMHO C++03+ guarantees zero initialization here, so it may be a MSVC-specific issue.
2015-03-15 14:42:28 +01:00
Alexander Gessler 1c64c590f2 Blender importer: always sort sets of objects by their name. Previously we accidentally ordered pointers to objects by their memory address, which was non-deterministic and caused regression tests to be flaky. 2015-03-15 01:26:15 +01:00
Alexander Gessler c59878e427 Merge branch 'master' of github.com:assimp/assimp
Conflicts:
	code/ColladaLoader.cpp
2015-03-15 00:18:39 +01:00
Madrich c4eb04bb8c Fix XFile name for $ and {}
Memleak copy constructor
2015-03-14 20:52:53 +01:00
Alexander Gessler ff4e1d9446 Sub-sample axis-angle channels if the delta between two consecutive key-frame angles is >= 180 degrees. Fixes #458. 2015-03-14 19:57:13 +01:00
Madrich edd3ed9e8f Back PretransformVertice Change
Fix Node Name in XFileExport
2015-03-14 19:48:08 +01:00
Madrich 56da80bc6e Copy constructor ExportProperties
Fix name dummy node in PreTransformVertices
2015-03-14 19:03:44 +01:00
Madrich 290a16eea5 Copy constructor for ExportProperties
Export Propertie defines in config.h
Remove unnecessary
2015-03-14 16:31:33 +01:00
Madrich 8b1b12682f Add ExportProperties 2015-03-14 14:03:14 +01:00
ulf ad9d178f0a - Bugfix: IfcLoader lost nodes and geometry when they were stored in subnodes of IfcSpace and the setting "Filter IfcSpace" was enabled 2015-03-13 15:13:53 +01:00
Wil Shipley 90a07713c0 Added 'const' to () operator on CompareVector
So it can build on clang.
2015-03-11 16:55:21 -07:00
Alexander Gessler 163bbc25c7 Merge pull request #486 from DenisMikhalev/issue-2
Adds safety and prevents crashes for damaged files
2015-03-10 16:09:07 +01:00
Léo Terziman f120a75617 Merge remote-tracking branch 'official/master' into contrib 2015-03-10 15:40:03 +01:00
Léo Terziman 18e6a8fbdb improved handling of commas in fast_atof 2015-03-10 15:39:27 +01:00
DenisMikhalev 62676b56aa Adds safety and prevents crashes for damaged files 2015-03-09 19:40:13 +03:00
Turo Lamminen ba4689fd05 Whitespace 2015-03-09 12:33:13 +02:00
Turo Lamminen c342778f42 Fix read past end of buffer after call to TokenMatch
IsSpaceOrNewLine returns true on end of input (NUL character). But if
TokenMatch considers a token at end of input to match it sets "in" to
one past end of buffer. This will lead to reading past the end of
buffer on any subsequent operation.
2015-03-09 12:33:13 +02:00
Léo Terziman 18ef31cc06 Merge remote-tracking branch 'official/master' into contrib 2015-03-09 11:31:15 +01:00
DenisMikhalev c410512173 Use material names, set default direction to UP_Y, process extra tag 2015-03-08 22:37:48 +03:00
Kim Kulling 727888ea10 Merge pull request #480 from turol/subdiv-memory
Free edges map before recursive calls to reduce memory consumption
2015-03-08 10:32:26 +01:00
abma 873ae5db3f addition to c4997f16db
(thanks turol)
2015-03-08 03:26:25 +01:00
Turo Lamminen c89274d366 Free edges map before recursive calls to reduce memory consumption 2015-03-08 00:16:48 +02:00
ulf 76c69205b1 - reintroduced IFC openings to floors and ceilings. Were disabled for some unknown reasons, I hope I didn't break anything. Everything I tested works fine. 2015-03-06 14:14:45 +01:00
ulf 03a7f36858 Merge branch 'master' of https://github.com/assimp/assimp 2015-03-05 20:18:00 +01:00
ulf a2c9904d59 - Bugfix: polygon-bounded half space clipping now assumes plane in correct coordinate space
- Bugfix: closing polygon loop along boundary polygon now correctly projects boundary vertices to polygon plane
2015-03-05 20:17:26 +01:00
ulf 0cdc528e01 - Bugfix: IFC loader tested squared length against non-squared epsilon in RemoveDegenerates() 2015-03-03 15:56:09 +01:00
abma c4997f16db remove "register" keyword:
clang warns: 'register' storage class specifier is deprecated
http://stackoverflow.com/questions/10675072/is-the-register-keyword-still-used
2015-03-02 23:44:02 +01:00
Alexander Gessler b1e8c192db Merge pull request #464 from turol/master
Clean up some warnings
2015-02-28 14:41:26 +01:00
Alexander Gessler f6f8462113 Update IfcLoader to use numeric_limits<uint32_t> instead of UINT32_MAX, fixes gcc build and is more consistent with the rest of the codebase. Fixes #471. 2015-02-28 13:40:10 +01:00
Turo Lamminen 5a74e07f5f Mark some more functions with AI_WONT_RETURN 2015-02-27 23:09:12 +02:00
Turo Lamminen dfd171be6d Remove unnecessary semicolons after FBXDocument property declarations 2015-02-27 23:09:12 +02:00
Turo Lamminen 308884f144 Remove unnecessary semicolons after function definition
Picked up by clang -Wextra-semi
2015-02-27 23:09:12 +02:00
Turo Lamminen e8bcad0840 Silence a warning and add an assertion
Another false positive uninitialized variable. Actually it's only false
if ToOutputVertexIndex does't return NULL which should only happen if
index is out of bounds. Add assertion to make sure of that.
2015-02-27 23:09:03 +02:00
ulf b71ded1ad0 - manually merged C4D importer code from acgessler branch
- manually merged IFC bugfixes and improvements from schrompf branch
2015-02-23 14:23:28 +01:00
Léo Terziman 2274c96e3b Merge remote-tracking branch 'official/master' into contrib 2015-02-18 17:22:44 +01:00
Léo Terziman d9a2293491 Improved handling of transparency in collada importer
+ started preliminary support for RGB_ZERO collada transparency mode
+ added option to manually invert transparency values to deal with broken exporters that don't follow the specs
2015-02-18 17:20:03 +01:00
Alexander Gessler 51b790c482 ColladaLoader: format. 2015-02-15 22:26:59 +01:00
Alexander Gessler ce1302cd71 Fix VC12 warning "empty but controlled statement found". 2015-02-15 22:20:34 +01:00
Alexander Gessler aae0f7e7b1 3DSExporter: export materials first, then meshes. Our own importer requires this. 2015-02-15 22:12:19 +01:00
Kim Kulling 0292868917 add geomentry node handling.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-02-14 16:12:09 +01:00
Turo Lamminen 570d02ff6e Silence more uninitialized variable warnings
These are false positives since aiMaterial::Get will have written to output
if it returns AI_SUCCESS but the compiler can't see that.
2015-02-13 13:15:26 +02:00
Turo Lamminen f708d0b122 Silence some uninitialized variable warnings
These are false positives but the compiler isn't smart enough to see that.
Also it might make more sense to use switch here.
2015-02-13 12:21:59 +02:00
Turo Lamminen 84a9514d4b Fix warning about possibly uninitialized variable
It might be better to move FindEmptyUVChannel call earlier
2015-02-13 12:14:39 +02:00
Kim Kulling bd1168af30 fix invalid line endling handling.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-02-10 20:46:02 +01:00
Kim Kulling 9e87fa178a add property parsing to opengex parser.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-02-10 20:09:26 +01:00
Kim Kulling c3e2fa0761 - untabify obj parser.
- bugfix openddl: latest version

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-02-10 19:31:23 +01:00
OgreTransporter 4e8f7fb802 Fix Visual Studio prefixes 2015-02-08 12:26:29 +01:00
Kim Kulling 124f408976 add property parsing.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-02-07 19:52:06 +01:00
Kim Kulling 303a6893fc fix the build.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-02-07 13:23:32 +01:00
Kim Kulling 20b3ce6a40 replace opengexparser by using openddl-parser.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-02-07 12:47:53 +01:00
Turo Lamminen de66f15a0a Fix division by zero 2015-02-02 16:03:24 +02:00
Turo Lamminen b93bd167ed Fix infinite loop in STL loader error path
It appears that this was never tested since hitting it caused an infinite loop.

Fixes testcase hangs/c2eb1fa3e74c6ffe0cebcb1672b03140
2015-02-01 00:35:00 +02:00
Turo Lamminen fe89773c6f Fix infinite loop in PLY parser
Fixes testcase hangs/9ab979ab256c70aaec9b651f32f051e9
2015-02-01 00:22:32 +02:00
Turo Lamminen 6b9f9afd7a Fix infinite loop in STL loader
If next character was not part of valid token and not whitespace we
would end up spinning in the loop indefinitely. Fix by using do..while
loop which always skips at least one character.

Fixes testcase hangs/73b42cd3b6d05e2ddb5c0fe5888459bc
2015-02-01 00:09:32 +02:00
Alexander Gessler 08ad6ae8fe Merge pull request #450 from turol/afl-fixes
Fix some bugs found with afl
2015-01-31 20:51:07 +01:00
Turo Lamminen 792da49933 Fix out-of-bounds write when STL file node name is too long 2015-01-31 21:36:13 +02:00
Turo Lamminen f971b66c47 Fix out-of-bounds read in invalid compressed X file 2015-01-31 21:36:08 +02:00
Kim Kulling 063b2733fc Merge branch 'master' into opengex_support 2015-01-31 11:09:20 +01:00
Kim Kulling 1ee4c06e4b add openddl-parser to contrib.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2015-01-31 11:07:48 +01:00
Turo Lamminen 95ad827277 Remove bogus delete[] on error path
mBuffer is a pointer inside a std::vector so don't try to delete[] it.
2015-01-29 23:22:56 +02:00
Turo Lamminen 0108d5b1f9 Fix read past end of buffer on malformed LWOB files 2015-01-29 23:22:56 +02:00
Turo Lamminen 16f9ca35d2 Fix out-of-bounds read when OFF file contains no vertices 2015-01-29 23:22:56 +02:00
Turo Lamminen af09e68654 Fix memory corruption when LWO file contains bad-sized points chunk 2015-01-29 23:22:41 +02:00
Turo Lamminen 2f0675ac53 Fix memory corruption when 3DS file has more smoothing groups than faces 2015-01-29 23:18:19 +02:00
Kim Kulling b700cd917f Merge pull request #452 from ricortiz/FixExportedLibraryNameVariable
Fix exported library name variable
2015-01-29 17:24:30 +01:00
Turo Lamminen c5d048a98a Fix crash when 3DS file contains faces but no vertices 2015-01-28 18:37:36 +02:00
Alexander Gessler cc346d3e12 Merge pull request #437 from CasperTech/master
Add support for component controlled matrix transforms, i.e transform(0)...
2015-01-25 19:44:27 +01:00
Alexander Gessler f62d03bd03 Merge pull request #439 from expipiplus1/master
Fix incorrect abs usage
2015-01-25 19:41:46 +01:00
Johnny Dickinson 380021e7c4 Check that zlib initialized correctly in FBX parser
Check the return code of inflateInit() indicates success to avoid
crashing later when zstream contains invalid data.
2015-01-24 00:00:35 -05:00
Ricardo Ortiz a94e668486 Define CMAKE_DEBUG_POSTFIX and use it instead of ASSIMP_DEBUG_PREFIX
to have a consistent library name accross platforms.
2015-01-23 14:19:29 -05:00
Joe Hermaszewski e8d4479344 Squash incorrect abs usage
Replace calls to abs with a float to calls to std::abs. Before int abs(int)
was being called.
2015-01-22 20:03:13 +00:00
Tom Mettam a09de30d83 Add support for component controlled matrix transforms, i.e transform(0)(0) etc. 2015-01-21 01:45:35 +00:00
Kim Kulling 62225f61e4 Merge branch 'master' into opengex_support
Conflicts:
	.gitignore
2015-01-13 20:21:17 +01:00
Léo Terziman b367d9b390 Fixed some warnings related to empty statement when using assert & building in release mode 2014-12-18 11:01:16 +01:00
Léo Terziman 469db95cd5 Merge remote-tracking branch 'official/master' into contrib 2014-12-18 10:42:29 +01:00
abma b1221ade64 fix some errors/warnings found by static code analyzer 2014-12-16 23:41:10 +01:00
Léo Terziman 3303f97f13 Merge remote-tracking branch 'official/master' into contrib 2014-12-16 17:48:30 +01:00
Andreas Henne ab7754ab2a Code style changes. 2014-12-11 23:05:09 +01:00
Andreas Henne 33f9745b62 Formatting changes. 2014-12-05 19:40:09 +01:00
Andreas Henne 4550279629 Added binary ply exporter. 2014-12-05 17:25:18 +01:00
Kim Kulling bc0fd00e96 Merge pull request #414 from l337r007/collada-tristrips
Collada: tristrip support: helps a lot :-). Thanks for that!
2014-12-01 20:48:10 +01:00
Kim Kulling 7a31a68cfc adapt c-api to get ImporterDesc for a given loader ( see https://github.com/assimp/assimp/issues/412 ).
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-12-01 20:34:15 +01:00
Kim Kulling 1f13158b31 fix vs2013 compiler warnings and add missing doxygen tags.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-11-29 12:12:32 +01:00
Kim Kulling 098ddd3a95 make copy constructor and a assignment operator private to avoid misuse of helper class scope guard
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-11-29 11:56:39 +01:00
Kim Kulling 9f80a2a2a9 update parser.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-11-29 11:33:49 +01:00
Wolfgang Herget c08a5581dd ColladaParser::CopyVertex: don't make a local copy of the vertex' indices.
Instead, we address the relevant indices in the main vector directly by
adding the input offsets to the per-vertex base offset.
2014-11-20 17:53:06 +01:00
Wolfgang Herget 8dead93504 ColladaParser: don't arbitrarily limit number of per-vertex attributes. 2014-11-20 16:42:41 +01:00
Wolfgang Herget ca3ce4703d Rename ColladaParser::CopyPrimitive to ::CopyVertex.
That's a bit closer to what the function actually does.
2014-11-20 13:12:09 +01:00
Wolfgang Herget 13a157ea66 For Polylists, manually compute the start offset outside CopyPrimitive. 2014-11-20 13:10:15 +01:00
Johannes Ebersold e568c2df9d ColladaParser::ReadIndexData: don't rely on the specified number of primitives.
Especially TriStrips don't specify triangle count upfront, so one needs to
sum up the count of triangles read from all <p> tags in a tristrip collection.
2014-11-19 14:40:43 +01:00
Johannes Ebersold 72f67ea0cd Whitespace changes 2014-11-19 14:40:42 +01:00
Johannes Ebersold 593484829b Add Function ColladaParser::ReadPrimTriStrips.
This does the index mangling for reading tristrips.
2014-11-19 14:40:42 +01:00
Johannes Ebersold 0f40dcca7e Add calculation for nuber of Primitives for TriStrips 2014-11-19 14:40:42 +01:00
Johannes Ebersold 7c4bf383d7 Move vertex copy operation into switch statement.
We will be adding special handling for Tristrips in an upcoming commit,
which unfortunately doesn't map to a common copy loop as it is.
2014-11-19 14:40:42 +01:00
Johannes Ebersold 4ef244f672 Extract function ColladaParser::CopyPrimitive 2014-11-19 14:40:42 +01:00
Johannes Ebersold 70d2c8571b ColladaParser::ReadPrimitives: get rid of "idx" iterator.
We will be adding non-sequential access to the indices vector in one of the upcoming commits.
2014-11-19 14:04:49 +01:00
Johannes Ebersold 543bd5c0d0 ColladaParser::ReadPrimitives: rename "a" to currentPrimitive 2014-11-19 13:51:22 +01:00
Jared Duke c7b6b5ea2f Support lowercase 'ns' and 'ni' obj material tokens
Previously, the obj material parser would interpret all key tokens
starting with 'n' as 'newmtl' tokens. However, there are other tokens
that can start with 'n', namely 'ns' and 'ni' for material properties.
Make the parser robust to such cases, despite their canonical forms
being uppercase.

Resolves #410.
2014-11-18 16:56:46 -08:00
Kim Kulling dbf9536213 bugfix: add correct handling for metric line end for example file.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-11-02 20:30:45 +01:00
Kim Kulling 1a5695ff48 update: add parsing of metric nodes.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-11-02 19:01:04 +01:00
Kim Kulling 6843c42da1 update:
- merge master into branch
- fix metrix header parsing.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-10-28 21:45:09 +01:00
Kim Kulling f84589fec4 Merge branch 'master' into opengex_support 2014-10-24 15:24:32 +02:00
Kim Kulling cee583db06 bugfix: fix compiler warning: converting double to float.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-10-22 23:05:25 +02:00
Léo Terziman 940414104a Merge remote-tracking branch 'official/master' into contrib 2014-10-13 14:10:11 +02:00
Alexander Gessler b483be3069 Merge pull request #402 from jdduke/disable_bmesh
Temporarily disable Blender BMesh conversion
2014-10-10 22:46:25 -07:00
Jared Duke a1a1bf77a8 Temporarily disable Blender BMesh conversion
Disable BMesh conversion while associated unresolved issues receive due
attention. Referencing #400, #373, #318  #315 and #132.
2014-10-10 14:16:42 -07:00
Kim Kulling 487c9449d2 bugfix: search for token checks for the given tokenlist against the lowercased info coming from the asset file. So we also have to used a lowercased token. Thanks to Robinson for the report.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-10-10 15:59:42 +02:00
Filip Wasil 88f6e8213b Android JNI asset extraction support (API 9+)
- installation fixes

Signed-off-by: Filip Wasil <filip.wasil@tieto.com>
2014-10-07 17:05:14 +02:00
Filip Wasil 7224476ee1 Android JNI asset extraction support (API 9+)
Signed-off-by: Filip Wasil <filip.wasil@tieto.com>
2014-10-07 16:33:43 +02:00
Gargaj 397989e169 Null-terminate string
In theory it shouldn't be necessary since the length is specified but there are parts like https://github.com/assimp/assimp/blob/master/code/MaterialSystem.cpp#L74 that depend on it.
2014-09-26 01:29:23 +02:00
Kim Kulling a5afbcf29c refactoring: remove duplicate code.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-09-23 23:34:05 +02:00
abma 775b26e614 use std:: namespace for most cmath functions:
http://en.cppreference.com/w/cpp/header/cmath
2014-09-23 00:43:33 +02:00
Kim Kulling b359deb7fd update:
- add assert test in obj-import
- fix material token in Obj.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-09-21 20:37:36 +02:00
Jared Duke 4dcd316430 Use strict inequality when validating BMesh uvloop access
Change the inequality to a strict inequality when validating
BMesh uvloop access during face conversion.
2014-09-20 10:23:21 -07:00
Alexander Gessler 6a8f69ad5d Merge pull request #386 from jdduke/rebase_fbx_fov
Rebase FBX regression db entries
2014-09-16 09:37:37 -07:00
Alexander Gessler aac40dd5b8 Merge pull request #385 from jdduke/fix_blend_and_rebase_regression_tests
Fix non-BMesh-containing .blend import
2014-09-16 01:10:53 -07:00
Jared Duke 046b7e5f47 Rebase FBX regression db entries
The FBX importer now properly parses field-of-view tokens. Rebase
only the failing FBX entries to accomodate the fix, also removing
the comment noting the (now incorrect) comment about improper import
of the FOV property.
2014-09-15 18:14:38 -07:00
Jared Duke c482458cae Fix non-BMesh containing .blend import
BlenderBMeshConverter was erroneously asserting that it contained valid
mesh upon construction. The assertion should only occur when
triangulation is requested, allowing non-BMesh blender meshes to load
properly.

Note that this fixes a number of .blend regression tests that are
currently baselined as failures.
2014-09-15 17:19:33 -07:00
Denis Biryukov ab6b5a7b21 Fix gcc warnings. (initialization order) 2014-09-15 23:35:03 +04:00
Jared Duke 35c9a33718 Fix crash for Blender poly to face conversion without UVs
BlenderBMeshConverter assumes that the BMesh has UVs, but that is not
always the case. Handle the non-UV case by only adding a T face when
UVs are present.
2014-09-13 09:43:00 -07:00
Jared Duke 485aa8b39d Fix null check in Q3BSPFileImporter
Reverse the null condition, preventing invalid texture stream
dereferencing. Fixes #380.
2014-09-12 19:37:10 -07:00
Kim Kulling db582ee024 bugfix: replace nullptr with NULL:
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-09-12 18:12:18 +02:00
Kim Kulling 49c9786b0a update: avoid mesh generation on heap, when the mesh will be empty ( obj-loader ).
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-09-12 15:40:50 +02:00
Kim Kulling 7dff0c6d52 refactoring: remove not use iosystem.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-09-12 12:05:42 +02:00
Kim Kulling 75d3c8e9f2 update: metric parsing ongoing.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-09-12 12:00:03 +02:00
Jared Duke 43c82b0b38 Remove std::isnan and std::isinf usage from utFastAtofTest
These functions were added in C++11, and should not be used nakedly
in the current code base. Replace them with suitable C++03 constructs.
2014-09-09 16:34:10 -07:00
Jared Duke 66e608a393 Replace cppunit with the googletest framework
The GTest framework has a more active support base, and natively
supports CMake. Introduce it as an external dependency (using CMake's
ExternalProject_Add), replacing cppunit and porting the associated unit
tests.
2014-09-07 16:52:03 -07:00
Kim Kulling c3b35f3933 update: add endline. 2014-09-06 09:19:28 +02:00
acgessler 185f01963f LWO: replace legacy reinterpret_cast based code by memcpy to solve Android SIGBUS problems due to unaligned accesses. Fixes #351 2014-09-04 20:49:48 -07:00
acgessler 1a594b861a Collada: use a counter instead of clock() to generate unique names. Closes #357 2014-09-04 18:50:37 -07:00
Kim Kulling ed9a466c30 update:
- add OpenGEX parser sceleton
- add base datatypes for OpenGEX support.
2014-09-04 19:41:14 +02:00
George Papadopoulos 8bf26065de [FBX] parse upper cased Int/Enum properties 2014-09-01 19:06:59 +03:00
Adam Petrone 625d2b7c4a Fix #325; Blender UV unwrap issue
The BMesh converter might be missing more details, but this should get basic UVs working for now.
2014-08-30 00:50:26 -04:00
Alexander Gessler 201807f733 Merge pull request #350 from Gargaj/ambientlight
Enable ambient lights
2014-08-28 09:20:04 -07:00
Gargaj d333e08343 add ambient light type, allow collada to load it 2014-08-28 16:27:29 +02:00
Gargaj e2401c8b58 fix va_end call 2014-08-28 15:51:01 +02:00
Gargaj 6f828087f9 add stdarg.h 2014-08-28 15:45:48 +02:00
Gargaj 19de24a442 ...and some more assbin leftovers 2014-08-28 15:42:22 +02:00
Gargaj 8f0208e5a8 whoops, still some residue from ASSBIN 2014-08-28 15:41:17 +02:00
Gargaj c47dc2802e convert assxml exporter 2014-08-28 15:38:57 +02:00
Gargaj 2e9195819a start assxml exporter basics 2014-08-28 15:17:53 +02:00
Kim Kulling 7f45f5fc95 bugfix: fix license.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-08-27 23:01:35 +02:00
Kim Kulling 8126dce94d update: add sceleton for OpenGEX importer.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-08-27 23:00:19 +02:00
unknown 9d04a45088 Collada : Add missing parsing <image> into <effect><profile> markup 2014-08-27 10:15:13 +02:00
Léo Terziman e2d9512275 Merge remote-tracking branch 'official/collada_export_escape' into contrib 2014-08-25 10:51:50 +02:00
acgessler 33ffb0003e Collada Export: escape user-defined strings in XML output. 2014-08-23 15:42:47 -07:00
Alexander Gessler fddae20cb7 Merge pull request #338 from jdduke/fast_atof_fix_final
Gracefully handle NaN/inf values in fast_atoreal_move
2014-08-20 19:29:44 -07:00
Jared Duke ed124ccbab Gracefully handle NaN/inf values in fast_atoreal_move
There are legitimate cases where inf/nan values are embeddded in a mesh.
Such values should not cause loading to fail, and indeed, previous versions of
Assimp supported their existence. Update the new fast_atoreal_move method
to gracefully parse such values, allowing case-insensitive checks for "NAN",
"INF" and "INFINITY" as per the atof guidelines found at
http://en.cppreference.com/w/cpp/string/byte/atof.

Note that the inf/nan text parsing is fairly loose, but is fast for the general
case and should handle most legitimate inf/nan values.
2014-08-20 18:42:37 -07:00
Alexander Gessler 7ff7b783ee Merge pull request #335 from abma/master
fix most warnings with -pedantic
2014-08-17 17:49:21 -07:00
abma 6c5f9ecb06 fix most warnings with -pendantic 2014-08-18 02:09:06 +02:00
Alexander Gessler 6636e596ab Merge pull request #334 from jdduke/fbx_binary_fix
Avoid raw reinterpret_casts in the FBX parser
2014-08-17 17:01:10 -07:00
abma 48a772b20b fix compiler warnings:
- defined but not used
- deprecated conversion from string constant to ‘char*’
2014-08-18 00:46:21 +02:00
abma d795491c48 fix unittests on linux / enable on travis-ci 2014-08-18 00:34:45 +02:00
abma 56ddb4f4af fix some compile warnings:
- passing NULL to non-pointer
- unused vars
- unused function
- order of init
- parentheses
2014-08-17 23:28:00 +02:00
abma aafc8d5f3f CMake: changed cached bools into "option" 2014-08-17 23:10:06 +02:00
Jared Duke 69810a2a07 Avoid raw reinterpret_casts in the FBX parser
As reinterpret_cast can break strict aliasing rules, causing runtime failure
on Android, replace such usage in FBXParser with memcpy.  Also provide a
utility routine for both performing the copy and asserting the validity of
the buffer length relative to the copied region.
2014-08-17 08:41:45 -07:00
Kim Kulling 5e265610fb bugfix: add obj-material handling for <color> 0 instead of <color> r g b.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-08-16 11:39:28 +02:00
Gargaj 58b78fa265 comment 2014-08-08 13:10:05 +02:00
Gargaj fa99aa0d3a add remaining specializations
hopefully i didnt mess this up too bad
2014-08-08 12:56:11 +02:00
Gargaj b712bf1770 Change to looped writes
to avoid struct packing issues
2014-08-08 12:46:29 +02:00
Kim Kulling 9f795c64d5 Merge pull request #326 from Gargaj/newprogresshandler
More elaborate progress handler
2014-08-07 11:45:29 +02:00
Kim Kulling 63a110468f Merge pull request #327 from Gargaj/assbinintegrate
Integrate import/export for .ASSBIN format
2014-08-07 11:41:35 +02:00
Gargaj 5886154247 tweaks according to the comments of kimkulling 2014-08-07 11:30:44 +02:00
Gargaj c3977bd132 unify data types 2014-08-07 09:32:00 +02:00
Gargaj 61ecff3474 missed one 32/64 type conversion 2014-08-07 09:30:20 +02:00
Gargaj b53a425fe4 make templates gcc compatible 2014-08-07 09:28:50 +02:00
Gargaj 2775141da3 #include should be outside 2014-08-07 09:07:09 +02:00
Gargaj 3c172988bb remove BUG notices (discussed with acgessler) 2014-08-07 08:43:52 +02:00
Gargaj df4b17d145 code style 2014-08-07 08:26:34 +02:00
Gargaj aa5c1a1a23 syntax 2014-08-07 08:26:04 +02:00
Gargaj 7925dcadba avoid NULL, just in case
(loader might just probably crash anyway)
2014-08-07 08:25:10 +02:00
Gargaj 523d87bbe7 use 0..fileSize as progress metric (easier for loaders) 2014-08-07 08:22:47 +02:00
Gargaj 061911bdbf add support for compressed, drop support for shortened 2014-08-07 08:05:07 +02:00
Gargaj fb546b694e code style 2014-08-06 15:25:39 +02:00
Gargaj 1aeaef2037 add lights and cameras 2014-08-06 15:01:04 +02:00
Gargaj 97c9ce1d5b add animations and textures 2014-08-06 14:44:06 +02:00
Gargaj 886a704c17 some notes to self 2014-08-06 14:43:47 +02:00
Gargaj 5048793096 add material import 2014-08-06 14:21:53 +02:00
Gargaj f38dd8e6e2 add mesh loader 2014-08-06 14:06:08 +02:00
Gargaj ad298cd84f fix code style 2014-08-06 13:29:09 +02:00
Gargaj ac5c1f9df1 add to cmake 2014-08-06 13:27:09 +02:00
Gargaj 87dff6a00e start importer, load nodes 2014-08-06 13:26:26 +02:00
Gargaj 5b512dd9dd add info + header check 2014-08-06 00:52:05 +02:00
Gargaj 9cdecc780b Fix wrong nesting
Otherwise doesn't compile if ASSIMP_BUILD_NO_3DS_IMPORTER is defined because the #endif is inside the namespace block
2014-08-06 00:44:30 +02:00
Gargaj 0f822d38cd add basic framework for importer 2014-08-06 00:39:54 +02:00
Gargaj cd86818888 - add compression support
- remove unneeded code
- change log warning to exception
- document
2014-08-05 23:18:45 +02:00
Gargaj fc9b4e2adf follow assimp code style (tabs) 2014-08-05 22:55:20 +02:00
Gargaj 2592ff0796 convert exporter from tools/assimp_cmd 2014-08-05 22:54:45 +02:00
Gargaj 3d5e1b5cbc add basic framework (files, etc) 2014-08-05 20:54:38 +02:00
Gargaj 6b8cbe5c83 this isn't needed anymore 2014-08-05 00:10:23 +02:00
Gargaj dbc553343c Granulate file loading too 2014-08-05 00:05:18 +02:00
Gargaj dfe1f03e5b Split off postprocessing progress 2014-08-04 23:57:08 +02:00
acgessler 203d5d6fcc Obj: make mtl importer accept kd, ks etc. as well (Kd, Ks being the correct form). This is for keeping up compatibility with assimp's own Obj exporter, which has been inaccurate about this since inception. 2014-08-02 21:18:21 -07:00
Alexander Gessler f5b9f5cb50 Merge pull request #321 from Gargaj/patch-1
Add FieldOfView token type (fixes #245)
2014-08-02 11:38:23 -07:00
Gargaj e5ed62581d Handle both types of element names
MAX seems to add an "s" to "Binormal" and "Tangent" when exporting
2014-08-02 14:57:43 +02:00
Gargaj 11af0866dc Add FieldOfView token type (fixes #245)
"FieldOfView" has its own token type (basically just one float), if it's missing the camera will keep reverting to default FOV in ASSIMP.
2014-08-02 14:47:59 +02:00
Kim Kulling 5d861a8250 bugfix:
- fix gcc-specific compiler warnings.
2014-07-31 15:09:49 +02:00
Alexander Gessler 9eba139feb Merge pull request #317 from assimp/export-3ds
3DS Exporter
2014-07-23 22:26:58 +02:00
Alexander Gessler a07cde4a81 3DS Exporter: export scene hierarchy. 2014-07-23 22:08:35 +02:00
Alexander Gessler 026f32733d 3DS Export: fix texture export. 2014-07-23 20:14:32 +02:00
Alexander Gessler d5db6f39e6 Fix CI build. 2014-07-23 18:54:05 +02:00
Alexander Gessler 6fde07f7e5 Initial implementation of 3DS Exporter. Hierarchy exporting and smoothing groups missing. 2014-07-23 18:27:22 +02:00
Tyson Grant Nottingham 0c5605d07d Don't use isspace() in OBJ file parser. 2014-07-22 21:59:23 -07:00
Tyson Grant Nottingham 79c56adea4 Don't use isdigit() in fast_atof. 2014-07-22 21:58:41 -07:00
Alexander Gessler 0166518132 Extend StreamWriter to write to a buffer and to allow re-positioning of the write cursor within the buffer. 2014-07-22 20:36:16 +02:00
Alexander Gessler 3419fedb3c Add StreamWriter utility (mostly symmetric to StreamReader). 2014-07-22 17:55:37 +02:00
Tyson Grant Nottingham 36c82fe5b0 Allow several spaces between numbers in OBJ files. 2014-07-21 23:03:08 -07:00
Tyson Grant Nottingham 3e9fab3bfc Allow numbers starting with decimal in fast_atof. 2014-07-21 22:43:13 -07:00
Kim Kulling d655199043 bugfix: fix stupid test introduced by myself.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-07-19 16:22:15 +02:00
Kim Kulling 46ca36cb6f update:
- remove dead code.
- check for a possible division by zero.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-07-19 14:45:21 +02:00
Alexander Gessler 2edccb7f34 fast_atof: If a literal ends with a trailing dot (.), only parse further if the next character is a digit. In cases where the dot ends the literal (i.e. "1.") this would cause strtoul10_64 to throw an exception. To preserve as much of the old behaviour, we still consume trailing dots though. This "regression" was introduced (exposed) by #261, which added the extra check to strtoul10_64 that triggered here. This commit now fixes #304 (IFC file reading broken due to IFC files containing "(1.,1.,1.)" lists. 2014-07-13 15:08:28 +02:00
Alexander Gessler 7e48c1cce9 FBX: fix memory leak, parsed TokenList never released. See #307. 2014-07-13 14:11:58 +02:00
Alexander Gessler 5ae010028b FBX: fix memory leak. Connection objects in Document never freed. See #307 2014-07-13 14:07:19 +02:00
Andrew Short a30ea8e92c Fix overflow in STL header colour reading.
When reading the STL header for a "COLOR=rgb" part, the bytes were treated as signed chars, when in fact they can range from 0-255. This meant that any value greater than 127 would overflow, leading to an incorrect colour.

This change fixes the issue by treating the header as unsigned chars.
2014-07-13 00:34:08 +10:00
Robin ce37d3bcad Fixed possible bug with map_emmissive keyword and removed second check for ambient texture keyword 2014-07-11 08:11:54 +02:00
Robin afa2d3da94 Improved texture map data in mtl exporter (in most cases an upper first character is used) 2014-07-10 08:26:32 +02:00
Robin 47e7667071 Added alpha texture map (map_d) 2014-07-09 15:51:09 +02:00
Kim Kulling 231e4e0cd0 update: commit not saved changes.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-07-04 00:23:02 +02:00
Kim Kulling c6b516b68b bugfix: handling possible nullptr access.
update: replace clear be resize( 0 ) at some places to avoid double allocations ( only a micro optimization ).

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-07-04 00:22:13 +02:00
Kim Kulling b3b732c12b update: some micro improvements, replace post-increment operator with pre-increment operator.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-07-03 20:33:52 +02:00
Léo Terziman 6d16a5a5b7 Merge remote-tracking branch 'official/master' into contrib 2014-07-03 10:25:47 +02:00
Kim Kulling 0856ff9659 update: replace some clear / push-back by resize( 0 ) / push_back to avoid redundat allocations.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-06-29 21:16:37 +02:00
Alexander Gessler 7abfcd1a4d Merge pull request #300 from eyethereal/fix-obj-exporter-vertex-references
Fixed vertex reference output format in face element for OBJ exporter
2014-06-21 18:55:51 +02:00
Alexander Gessler 1207f84f7b Merge pull request #298 from Madrich/master
Collada fixes, adding XFile Exporter
2014-06-21 18:54:11 +02:00
Madrich 2c34f24497 Fix XFile define 2014-06-21 17:23:30 +02:00
Kim Kulling 9fbc9c4fb7 Merge pull request #301 from eyethereal/obj-exporter-no-name-no-group
OBJ Exporter: No "g" lines with empty names
2014-06-21 15:21:27 +02:00
Nathan Morse 77faf04aa3 OBJ Exporter: No "g" lines with empty names
In the OBJ spec ( http://www.martinreddy.net/gfx/3d/OBJ.spec ), in the section labeled "Grouping" -> "Syntax", the structure of the "g" group statement is defined. Though this statement allows multiple names on a single line, it is unclear whether there must be at least one name on the line. However, the examples don't show any "g" group statements with no names. So, let's be conservative and not write out a "g" group statement that doesn't have a name. These empty "g" statements were prompting an error message from the three.js OBJ loader code.
2014-06-20 16:06:04 -07:00
Nathan Morse d10d20f62f Update ObjExporter.cpp
In the OBJ spec ( http://www.martinreddy.net/gfx/3d/OBJ.spec ), in the section labeled "Referencing groups of vertices", there is no support for allowing a trailing slash with no valid vertex normal reference at the end. This commit modifies the vertex reference output code to prevent this behavior, as it has been causing compatibility issues with other software that parse OBJ files.
2014-06-20 15:08:29 -07:00
Madrich 1cb01c54a3 Fix IOSFixed
Fix Author/AuthoringTool in Collada by MetaData
2014-06-20 00:08:11 +02:00
Alexander Gessler be5fc42e16 Fix memory corruption in the aiGetExportFormatDescription() API. Clarify Exporter doc. 2014-06-17 16:10:55 +02:00
Alexander Gessler 75fd29ac19 SceneCombiner: implement proper copying of meta data. This entire module will need to be revamped in future as it is highly likely to cause further regressions as assimp data structures are modified. 2014-06-17 15:18:10 +02:00
Alexander Gessler d044ce7a62 FBXConverter: avoid creating an empty metadata slot (UDP3DSMAX was erased from list _after_ its size was taken)/ 2014-06-17 14:31:14 +02:00
Alexander Gessler 244f981f6a ObjExporter: cleanup code. Fix bug writing normal: normals would not be transformed by world transform. 2014-06-17 14:15:48 +02:00
Gregory Jaegy 5efc0207f3 Merge branch 'master' of https://github.com/assimp/assimp 2014-06-13 10:59:16 +02:00
Gregory Jaegy 16ae05eeeb obj loader: added multiline support
collada loaded: bug fixed when importing several files, whith one containing animation
2014-06-13 10:56:10 +02:00
Madrich edc7a950c4 ReFix the stuff before
Fix XFileExporter Normal
Fix Collada (Triangle->Poly)
2014-06-11 00:41:18 +02:00
EdgarsT 8549e4b1b1 fixed OgreImporter compilation error with boost scoped_ptr 2014-06-10 19:58:02 +03:00
Madrich 272a59cd36 Fix convertToLH for uv coordinates
Fix Collada export
Fix XFile export
2014-06-10 13:14:41 +02:00
Madrich c4021fbaaf Fix Collada export validated by Schema 2014-06-09 15:17:45 +02:00
Madrich 77cec96d74 Fix collada 2014-06-07 21:17:31 +02:00
Madrich ec2ce90654 Add Scene Author + AuthorTool
Add XFileExporter
Add Collada Triangle+Line export
Fix Obj Comment
2014-06-06 01:56:54 +02:00
Alexander Gessler 1403cabb71 FBXParser: fix compiler warning on double -> float. 2014-06-01 17:34:11 +02:00
Madrich 9ddd459fe8 Extend Collada Exporter using lines and triangles 2014-05-31 12:50:11 +02:00
Jonne Nauha fe87b09246 Move pstdint.h for <= VC9 under include. Apps that include the Assimp headers need to have this available, as its pulled in by metadata.h. Fixes #290. 2014-05-30 01:57:21 +03:00
arkeon b2ac7b878f Correction on FBX material texture UV index
(keep the previous method for "allMaterials" option, this should be change too since the materials indexes used are not the good ones, or just remove the object / material test
2014-05-27 09:11:27 +02:00
Alexander Gessler 62554a055d Merge pull request #285 from jdduke/blend_fix_mirror_winding
Properly orient mirrored blend mesh faces
2014-05-25 01:34:52 +02:00
Jared Duke d9b65f9bd8 Properly orient mirrored blend mesh faces
If the mirrored axis count is odd, the face orientation has logically
been inverted.  In such cases, the winding order should be inverted as
well, easing the burden on applications sensitive to index ordering
(e.g., one-sided renderers) to detect and fix such issues after import.
Add this functionality for .blend meshes.
2014-05-24 08:49:33 -07:00
Alexander Gessler 1b6b238f09 FBX: fix handling of string metadata. Before, we would accidentially confuse aiString and std::string and trigger a debug assertion. 2014-05-22 16:22:38 +02:00
Alexander Gessler becd298e77 FBX: use memcpy() instead of reinterpret_cast or union to populate a float from a blob, causing SIGBUS errors on Android due to memory alignment of the source blob not being a multiple of 4/8. This fixes #24. 2014-05-22 16:17:42 +02:00
Léo Terziman 274a6ce1ff Fixed space 2014-05-21 15:59:13 +02:00
Jonne Nauha 8a5041ea11 Merge remote-tracking branch 'upstream/master' into ogre-binary 2014-05-21 04:55:09 +03:00
Jonne Nauha 43e620e04a OgreImporter: Fix UV flip for binary meshes. Fix exception XML parsing when positions are declared in a previous vertex buffer than the currentl parsed one (that has eg. UVs). Remove debug prints from material parser. 2014-05-21 04:37:45 +03:00
Jonne Nauha f8e1dcb102 OgreImporter: Mirror bool return for XmlSerializer as it is in BinarySerializer. Document its meaning. 2014-05-21 04:06:22 +03:00
Jonne Nauha 1129ae5a6e OgreImporter: Implement binary skeleton serialization. Fix bone/animation matrix stuff to be simpler (aka read as Quats to internal structures). Cleanup code for pull request. 2014-05-21 04:00:11 +03:00
Jonne Nauha cf9b705829 OgreImporter: Move skeleton functions to the end of file (after mesh functions). Put all constant to same place in the file. Implement support for 'animationlinks' (skipped) and bone 'scale' (read to Bone but not utilized atm). 2014-05-21 00:09:30 +03:00
Jonne Nauha 0b937c5a4b OgreImporter: Proper rewrite of the XML parser to OgreXmlSerializer. Now more robust for XML sources, previously had hardcoded expectations on the child node ordering. Implement common Skeleton class for both binary and xml serialization. Implement shared IVertexData with proper bone assignment to Assimp bone weights functionality. 2014-05-20 04:52:53 +03:00
Léo Terziman 311f5b47ca Fixed bug during compilation with mingw & improved git revision support for automatic up to date revision number. 2014-05-19 14:36:24 +02:00
Jonne Nauha 75598f69b7 OgreImporter: Format code and move commented verbose debug logging behind internal OGRE_BINARY_SERIALIZER_DEBUG. Thow deadly importer error on clear invlid mesh file errors. 2014-05-18 12:30:16 +03:00
Jonne Nauha 4b16b182be OgreImporter: Implement Ogre binary mesh support (.mesh). All Ogre3D SDK media samples tested to work. Assimp repo does not yet have binary versions of Ogre meshes. 2014-05-18 11:57:44 +03:00
Alexander Gessler d531945888 Merge branch 'master' of github.com:assimp/assimp 2014-05-16 14:58:01 +02:00
Alexander Gessler 908b945f50 BoostWorkaround/shared_array and shared_ptr: fix checks for whether the boost originals are included already. Fixes #277 2014-05-16 14:57:33 +02:00
James Lupiani 427eaad642 Fixes #158 via anonymous user 2014-05-12 12:04:19 -05:00
Alexander Gessler 04f0075b63 Change default extension for binary STL exports from stlb to stl 2014-05-12 12:50:21 +02:00
Kim Kulling f6925db3d8 update: add cmake_mimimum_required statement to each cmake file
for consistency
2014-05-10 10:31:42 +02:00
Jonne Nauha eea8099b05 RemoveRedundantMaterials: Fix crash bug when unreferenced materials were destroyed. The logic only rebuilt the material list if there were redundant materials being removed. This is a clear bug as it left freed aiMaterial ptrs into the list and did not fix the scene->numMaterials to be correct, even when deleting materials. This crashed later on in the ComputeUVMappingsProcess that accessed the freed ptr. 2014-05-09 01:33:30 +03:00
Léo Terziman f8b79acb36 Fixed compilation errors on OgreImporter with Visual Studio 2012 2014-05-05 10:25:04 +02:00
Kim Kulling 1ec72cdddb Release candidate 2 : 3.1
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-05-04 19:17:51 +02:00
Kim Kulling 392730be07 bugfix: export processes for unittests.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-05-04 16:02:52 +02:00
Jonne Nauha 9ad74e461e OgreImporter: Added brackets for all conditional etc. statements, even when there is a single line as requested by @kimkulling. I'm still not sure about the coding convention but looked for guidance in the obj importer code. Now newline before { if only one line and no else/else if after it, othewise a newline before it. 2014-05-03 00:20:17 +03:00
Jonne Nauha 22a4215c06 OgreImporter: Remove unnecessary comments. 2014-05-02 01:54:42 +03:00
Jonne Nauha dcf6002bed Try fix travis ci produced build errors on gcc and clang. 2014-05-02 01:38:13 +03:00
Jonne Nauha 409c2cf332 OgreImporter: One more function cleanup. 2014-05-02 00:56:35 +03:00
Jonne Nauha 283394d695 OgreImporter: Cleanup skeleton related code and code that populates the assimp scene. Tested skeleton/animation imports and it seems to work correctly now. 2014-05-02 00:28:14 +03:00
Jonne Nauha f5c7b283bc OgreImporter: Cleanup and bugfixes to OgreSkeleton.cpp. This was actually so badly broken that it did nothing if the mesh referenced a binary skeleton. Now logs a warning for this case and tries to read from .skeleton.xml like the original author intended it to work. The assimp skeleton is still broken, I will fix that later on when I (eventually) get to that part of the code. 2014-05-02 00:28:13 +03:00
Jonne Nauha 45715df263 OgreImporter: Forgot to rebuild after filename changes so broke the build. Fix includes, add include guards and ASSIMP_BUILD_NO_OGRE_IMPORTER to missing places. 2014-05-02 00:28:12 +03:00
Jonne Nauha fcb97bb595 OgreImporter: Rename .hpp to .h. Shuffled parsing utils to a single file. 2014-05-02 00:28:12 +03:00
Jonne Nauha f98584cdea OgreImporter: Remove unnecessary m_currentX state. Improve and clean OgreMaterial: split tech/pass/texture_unit to their own functions. Document missing features and potential bugs. Improve the original authors 'detection from texture filename' logic (enabled with AI_CONFIG_IMPORT_OGRE_TEXTURETYPE_FROM_FILENAME). Add generic detection from texture unit name, which is commonly used in Ogre materials. 2014-05-02 00:28:10 +03:00
Jonne Nauha 6c51fa2072 OgreImporter: Continue cleanup. 2014-05-02 00:28:09 +03:00
Jonne Nauha 09517b342b OgreImporter: Started cleanup and refactoring. Aim is to get this into a shape that its easy to read and understand before I start making any new features. 2014-05-02 00:28:09 +03:00
Kim Kulling 825a61fbc0 update:
- update version info for 3.1
- aiGetVersionRevision will now return the git tag.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-05-01 11:32:15 +02:00
Kim Kulling d1886daf5a Merge branch 'master' of https://github.com/assimp/assimp 2014-04-29 00:06:14 +02:00
Kim Kulling fbaf89492d bugfix: Obj-importer is now able to deal with 3d-texture coordinates.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-04-29 00:04:54 +02:00
Léo Terziman 7c3a039349 Merge remote-tracking branch 'official/master' into contrib
Conflicts:
	include/assimp/matrix4x4.inl
	include/assimp/vector2.h
	include/assimp/vector3.h
2014-04-22 14:32:59 +02:00
Kim Kulling 129e4318e6 Merge pull request #255 from xantares/master
mingw|cmake fixes
2014-04-22 08:49:59 +02:00
tszirr 25c2dd58de fix: smoothed normal qnan handling & more stable smoothed normals for imprecise geometry w/ long thin faces 2014-04-21 23:12:51 +02:00
tszirr 0a01da7242 fix: optimize meshes when vertex & primitive format final 2014-04-21 22:52:50 +02:00
tszirr 8699021f17 fix: OptimizeMeshes w/o SplitLargeMeshes was disabled due to obscure max_verts = 0 assignment 2014-04-21 22:40:48 +02:00
xantares 0e62405406 use standard BUILD_SHARED_LIB option. Install dll to <prefix>/bin (mingw) 2014-04-21 21:36:33 +02:00
Kim Kulling aae01c47ad bugfix: fix compiler warnings for gcc-4.8.1. 2014-04-21 16:18:14 +02:00
Kim Kulling a6044e125e Merge pull request #249 from attila-barsi/master
Initial version for FBX layered textures.
2014-04-01 16:02:16 +02:00
attila-barsi 4f36e85bd8 Added required changes to doc and protection from nullptr. 2014-03-31 10:30:04 +02:00
Kim Kulling 38de6a658d bugfix:
- fix redundant checks against nullptr ( see https://github.com/assimp/assimp/issues/241 ).

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-03-27 20:33:08 +01:00
DoubleLee 2e3b602c0b Aspect Ratio fix, and comment about field of view. 2014-03-26 16:44:49 -05:00
attila-barsi ed9204ab1b Initial version for FBX layered textures.
Fixed assert during parsing UDP3DSMAX.
2014-03-24 11:46:36 +01:00
Léo Terziman 1f3be52079 Merge remote-tracking branch 'official/master' into contrib 2014-03-24 10:44:57 +01:00
Léo Terziman 2dd6726c02 Changed order of some post processing steps in order to switch coordinate system as early as possible because pretransform now accept external matrices for the root transformation & this matrice should imperatively be in the same system coordinates as the rest of assimp structures 2014-03-24 10:43:07 +01:00
Léo Terziman 358819c1a0 Fixed error in GetProperty when accessed from external libraries using a different language (using swig for example) 2014-03-20 15:32:12 +01:00
Alexander Gessler 331158e410 Merge pull request #237 from frederikaalund/master
Added support for heterogenous metadata on aiNode
2014-03-20 02:23:07 -04:00
Léo Terziman e9fa779a65 Fixed error when compiling with mingw 2014-03-19 15:45:12 +01:00
Léo Terziman 82cc038a83 Merge remote-tracking branch 'official/master' into contrib 2014-03-19 10:18:47 +01:00
Judith Hartmann 7d1a704ed7 saves value in the 'Ke'-Attribute in ObjMtl Files in COLOR_EMISSIVE 2014-03-16 21:30:10 +01:00
Frederik Aalund 595529ef8b Refactored the metadata for inner consistency. 2014-03-15 08:37:45 +01:00
Frederik Aalund a8401ba377 Added support for heterogenous metadata on the aiNodes. 2014-03-14 14:17:34 +01:00
Léo Terziman 8fad549649 Merge remote-tracking branch 'official/master' into contrib 2014-03-10 17:21:26 +01:00
Léo Terziman 77263c631f Fixed unzip support to use IOSystem/IOStream abstraction 2014-03-10 17:21:17 +01:00
Léo Terziman 29e3b82238 Fixed some header files in CMakeLists 2014-03-10 17:20:14 +01:00
Frederik Aalund f65e5d5487 Fixed a compile error due to a >> expression in a nested template statement. 2014-03-09 17:04:27 +01:00
Frederik Aalund 9eb8677aba Added unparsed FBX properties to the aiNode's metadata. This allows the
user to extract extra/custom/user attributes/properties from the scene
graph. E.g., extracting attributes set under "extra attributes" in Maya.
2014-03-09 16:18:05 +01:00
Kim Kulling 84b66092d7 Merge pull request #217 from lousyphreak/master
Fix 3DS instances loading, fixes #151
2014-03-06 00:07:33 +01:00
Kim Kulling 34882177a9 bugfix: install_name should be set to absolute path to installed library in macosx build #226
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-03-06 00:06:19 +01:00
Kim Kulling ec2b8dd3fa bugfix:
add handling for special cases for the uv-calculation:
- When 3 vector have same UV, using default UV direction:
- When 2 vector have same UV, recalculate tangent/bitangent according to normal and bitangent/tangent.

Thanks to Ya ping Jin.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-03-05 23:25:49 +01:00
Léo Terziman 172c917c37 Merge remote-tracking branch 'official/master' into contrib 2014-03-03 12:47:45 +01:00
Alexander Gessler 5c95848f51 Merge pull request #224 from VirusFree/master
[FBX] Do not rename null nodes. Preserve information in node metadata.
2014-03-02 10:41:28 -05:00
YoheiKakiuchi 08324b8095 fix miss commit at 8e35ea59d5 2014-03-01 20:34:57 +09:00
Léo Terziman f54c85d4e6 Added custom root transformation for pre-transform vertices post-process step 2014-02-28 15:32:43 +01:00
Léo Terziman 843e56c252 Added matrix properties 2014-02-28 15:21:10 +01:00
Léo Terziman b90718bd21 Merge remote-tracking branch 'official/master' into contrib
Conflicts:
	code/IFCLoader.cpp
2014-02-26 18:06:46 +01:00
Kim Kulling fd4cd67edb Merge pull request #218 from YoheiKakiuchi/fix-ply-parse
remove SkipSpaceAndLineEnd after parsing end_header in PlyParser.cpp
2014-02-26 16:42:18 +01:00
George Papadopoulos 2db48ef532 [FBX] Do not rename nodes if they are marked as null in fbx. Preserve this information in node metadata.
Use can use node.Metadata.Get("IsNull") to check. (returns "true" or "false")
2014-02-23 12:27:34 +02:00
George Papadopoulos 5ef8c09dbb Use AiNode's metadata to keep per-node(and per-instance) FBX (3dsmax) UserDefinedProperties
Also simplify metadata structure to avoid unnecessary allocations (and make it easier for wrappers like AssimpNET to read it)
2014-02-22 21:57:01 +02:00
YoheiKakiuchi 99e4176576 fix using flag 2014-02-18 16:37:23 +09:00
Léo Terziman b75f27492a Merge remote-tracking branch 'official/master' into contrib 2014-02-17 08:49:43 +01:00
George Papadopoulos 02c4344d1d detect FBX glossiness map (ShininessExponent) 2014-02-14 15:15:18 +02:00
Léo Terziman 9b25749536 Fixed bug in merging of materials 2014-02-10 15:11:13 +01:00
YoheiKakiuchi 8e35ea59d5 check binary or not in ParseHeader in PlyParser 2014-02-07 10:38:49 +09:00
YoheiKakiuchi 52916b094c remove SkipSpaceAndLineEnd after parsing end_header in PlyParser.cpp 2014-02-06 12:55:52 +09:00
Léo Terziman 586f1646c5 In Assimp: fixed a bug in Pretransform Vertices post process step where newly created meshes of different instances of the same original meshes where not referenced appropriately by their parent node 2014-01-31 11:12:18 +01:00
Martin Büchler 9f10553601 Fix 3DS instances loading, fixes #151 2014-01-30 02:39:04 +01:00
Léo Terziman 53eb9dca32 In Assimp: fixed memory leak in RemoveRedundantMaterial post process step 2014-01-17 12:03:39 +01:00
Léo Terziman 34c3449cdd Always activate thread safety if possible 2014-01-17 12:03:18 +01:00
guillaume 8267d93537 Modif dans le parsing IFC suppressions des espaces avant traitement de la chaine 2014-01-17 12:02:58 +01:00
Léo Terziman e6c5095e5b In Assimp: fixed use of macro ASSIMP_BUILD_NO_VALIDATEDS_PROCESS 2014-01-17 12:00:54 +01:00
Léo Terziman 7372bf2467 Merge commit 'c0871b35c0ab7091f68c794eb954493722522d4c' into contrib 2014-01-17 11:59:31 +01:00
Léo Terziman 1002f154ac In Assimp: fixed typo in comments 2014-01-17 11:58:20 +01:00
Léo Terziman 41175dacca Merge commit '6d630bec50fe7767296b0e5184a9c6c7b915df24' into contrib 2014-01-17 11:57:45 +01:00
Léo Terziman ec3ef0c9d6 Assimp: fixed 3 memory leaks 2014-01-17 11:55:59 +01:00
Léo Terziman 419beca470 In Collada: improved embeded textures naming scheme in exporter 2014-01-17 11:54:20 +01:00
Léo Terziman 94f156f809 In Collada: added support for exporting uncompressed embeded textures as bitmap 2014-01-17 11:53:41 +01:00
Léo Terziman 3dc62f22fb In Collada: exporter path parsing improved 2014-01-17 11:53:03 +01:00
Léo Terziman 54e4c6b20b In Collada: first preliminary support for export of embeded textures 2014-01-17 11:52:56 +01:00
Léo Terziman 8bbe14c052 Merge commit '44773b8f9e47d9fe7e80946a1a9eb3d764fc8af2' into contrib 2014-01-17 11:52:08 +01:00
Léo Terziman 7bc074857e Missing material functions for aiUVTransform added 2014-01-17 11:51:43 +01:00
Léo Terziman d080eb493e Merge commit 'acca16c82fb9fa37c40475a423e979e9c7aa0d5a' into contrib 2014-01-17 11:49:30 +01:00
Léo Terziman bac6b34504 Removing null characters from xml parser input to avoid parsing failures 2014-01-17 11:48:42 +01:00
Léo Terziman e2676ec176 Implementing UTF8 to ISO-8859-1 conversion to improve chances of finding files in zip archives 2014-01-17 11:48:27 +01:00
Léo Terziman 0bf4aea9d5 Improved fast_atof (bis) 2014-01-17 11:47:37 +01:00
Léo Terziman 3e55dca943 Improved fast_atof 2014-01-17 11:46:44 +01:00
Léo Terziman d28fc25c5c Merge commit 'cc3f8b82f9f6fb4b295a39a3f7ac55154145cc04' into contrib
Conflicts:
	CMakeLists.txt
2014-01-17 11:45:57 +01:00
Léo Terziman 4e7b59be55 Improving homogeneity of DEBUG macro for improved portability with compilers other than Visual Studio 2014-01-17 11:43:48 +01:00
Léo Terziman 29c125e51d Minor improvement of ParsingUtils 2014-01-17 11:42:51 +01:00
Léo Terziman 44f1a1fb5d Huge optimization of Q3BSPZipArchive to reduce 3DXML importing time by a factor of 15~20. (However, the zip archive is now entirely decompressed in memory, so it takes twice as much memory) 2014-01-17 11:41:46 +01:00
Léo Terziman cf817270fc Reformating Q3BSPZipArchive 2014-01-17 11:39:51 +01:00
Léo Terziman bb9288fa26 Improved Q3BSPZipArchive + added material merging 2014-01-17 11:38:01 +01:00
Léo Terziman 51bf836db4 Fixed bugs in Q3BSPZipArchive & DefaultLogger 2014-01-17 11:36:47 +01:00
Léo Terziman 053df6907a Removed precompiled header because of a bug when switching configuration in visual studio 2014-01-17 11:35:30 +01:00
Léo Terziman 2cca861526 Merge commit '1f012384265e0dcc777e23369470391324d840e5' into contrib 2014-01-17 11:25:01 +01:00
Léo Terziman bfd3a206ea Improved CMakeLists.txt source groups 2014-01-17 11:24:16 +01:00
Léo Terziman 8ba5fa33af Improving ColladaExporter to support scenes with only one node 2014-01-17 11:21:32 +01:00
Léo Terziman 365b3aa412 Improved math operation with epsilon support 2014-01-17 11:21:15 +01:00
Léo Terziman 6c0ebb679a Merge commit '87a0e7703258576f1a7e4ba763b961da70c1cd91' into contrib
Conflicts:
	code/ColladaExporter.cpp
2014-01-17 11:19:29 +01:00
Léo Terziman a940102d70 Debugging ColladaExporter function for writing header information 2014-01-17 10:38:59 +01:00
Léo Terziman 3317f667e5 Improving ColladaExporter to add shading model, bump mapping, transparent & refraction properties 2014-01-17 10:38:42 +01:00
Léo Terziman 78389e2e86 Improved collada exporter 2014-01-17 10:38:17 +01:00
Léo Terziman 9120689f0d Improving ColladaExporter to play nice with models imported from any format. 2014-01-17 10:36:18 +01:00
Léo Terziman b4b39e026d Improving ColladaExporter to allow non-destructive cycles of import/export 2014-01-17 10:36:01 +01:00
Léo Terziman 30c6a74e1d Improving constructors of aiNode & aiScene 2014-01-17 10:31:27 +01:00
Léo Terziman 5e603d9ed8 Correcting a bug where the constructor & destructor of aiScene were not exported correctly in the assim library 2014-01-17 10:26:48 +01:00
Léo Terziman df700b998f Another small bug correction in Q3BSPZipArchive 2014-01-17 10:24:14 +01:00
Léo Terziman 2ef0f0f0e1 Correcting some bugs in Q3BSPZipArchive 2014-01-17 10:23:49 +01:00
George Papadopoulos 2d709dd638 Fix for FBX pivot transformation.
Parse and use the GeometricScaling,GeometricRotation and GeometricTranslation model properties in node transformation
2013-12-29 21:02:16 +02:00
George Papadopoulos 284abbe9e1 fix for collada parser when importing empty arrays.
Exiting function so early break the parsing procedure, misses node closing and causes improper initialization of element (cannot be referenced later on)
2013-12-20 11:36:35 +02:00
Nick Overdijk f433746bfa Add support for emissive and gloss-maps
Conflicts:
	code/ObjFileMtlImporter.cpp
	Someone added support for loading more bump maps, I added support for emmissive-maps. Easy merge.
2013-12-14 01:40:37 +01:00
Alexander Gessler 9186911da0 Fix build exclude define in BlenderScene.cpp, fixes #205 2013-12-11 17:44:46 +01:00
gongwei 0b88f72be2 refactor the code, also parse texture option explictly 2013-12-02 22:58:15 +08:00
gongwei 0860254a2b Fix Obj texture parsing error: where obj texture map statement contains texture option, it will fail to parse the correct image url, as a result, the texture won't be shown. Besides, we also add clamp texture mode for obj 2013-12-02 22:55:51 +08:00
Kim Kulling ccd5b30a56 Merge pull request #199 from jdduke/obj_mg_parse
Properly parse 'mg' keyword in .obj files
2013-11-28 06:49:00 -08:00
Alexander Gessler e27d452770 Merge pull request #200 from jdduke/stl_gray_diffuse
Default to light gray diffuse for STL
2013-11-27 15:16:37 -08:00
Jared Duke 931f0489bd Properly parse 'mg' keyword in .obj files
The 'mg' keyword is currently being interpreted as a material library keyword,
when it really refers to the merging group.  Handle this case, in effect ignoring
the keyword as merging groups are currently unsupported.
2013-11-26 14:24:15 -08:00
Jared Duke 00717b6474 Default to light gray diffuse for STL
For consistency, use a light gray default diffuse color for STL files.
This provides consistency with other geometric types, like PLY, that use a
light-gray default material.
2013-11-26 14:11:24 -08:00
Alexander Gessler acca16c82f Merge pull request #196 from AIM360/UpdatedCodeComments
Updated some code comments in DefaultIOStream.cpp
2013-11-26 06:04:54 -08:00
henrikbuchholz 5983300422 Updated some code comments in DefaultIOStream.cpp
There was a misleading TODO comment that encouraged to use fseek/ftell instead of fstat. However, fstat has been used intionally because fseek/ftell is potentially unsafe.
So I replaced the TODO and added some explanation why fstat is being used instead.
2013-11-26 14:52:53 +01:00
Alexander Gessler d6a3df0acf Merge pull request #192 from AIM360/FaultToleranceFor3DSLoader
3DSLoader: Skipped chunks of size 0
2013-11-25 09:46:00 -08:00
henrikbuchholz 35fa7cb441 3DSLoader: Skipped chunks of size 0 2013-11-25 11:53:15 +01:00
henrikbuchholz d7dbdd6c3b SortByPType Posprocessing crashed for crappy models with degenerated geometry
Which models crashed before the fix?:
The crash was observed for files with the following properties:
1. They contain >=1 meshes
2. They were loaded with SortByPType option
3. They only contained degenerated meshes, so that these were skipped SortByPType

What is improved by the fix?:
Obviously, the affected models were crappy anyway and will still produce empty output after the fix. However, the fix avoids the heap-corruption, which couldn't be solved by try/catch from outside and had the annoying effect that a whole scene with hundreds of individual models could crash due to a single crappy one.

Why did it crash before?
The SortByPType deleted some exluded meshes, but didn't reset the pointers in pScene. After throwing the DeadlyImportException (no remaining meshes), remaining meshes were deleted => Excluded meshes were deleted twice.
2013-11-25 10:50:15 +01:00
acgessler d080f92241 BlenderTesselator: Fix OffsetOf() macro 2013-11-22 19:54:47 +01:00
acgessler 857e50ba40 BlenderTesselator: disable GLU tesselation code by default. 2013-11-22 13:58:40 +01:00
acgessler fbb1a79248 Update CMakeLists 2013-11-22 13:57:50 +01:00
Alice 01a6ec9059 Adding tessellation support for new Blender 2.6 polygons
- Added BlenderBMesh.cpp/h which contains a class to convert a BMesh to an old style tri/quad mesh
- Added BlenderTessellator.cpp/h which contains a class to tessellate the poly loops contained within a BMesh
2013-11-22 13:17:21 +01:00
Eric Haines f2997a562b typo fix: loose -> lose 2013-11-14 10:09:10 -08:00
Hiroyuki Inoue 3a3ac4fea2 Fix to support FBX 2011 (7100) 2013-11-12 23:25:40 +09:00
Kim Kulling 685612b9f4 - refactoring : remove not used mesh index from private method in obj-importer.
- refactoring : remove commented code.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2013-10-11 15:29:17 +02:00
Calvin Hsu a9a881cde6 Blender: map texture influence to aiTextureType
Previously assimp mapped all blender image textures as
aiTextureType_DIFFUSE.  This change interprets the "mapto" property
which corresponds to the Blender "Influence" in the properties editor.

* Blender's Normal influence with "Normal Map" unchecked maps to
  aiTextureType_HEIGHT.
* Blender's Normal influence with "Normal Map" checked maps to
  aiTextureType_NORMAL.
* Influence scale is placed into AI_MATKEY_BUMPSCALING.
2013-10-08 19:01:02 -07:00
Kim Kulling e3a5480811 bugfix: fix typo's in obj-doxygen documentation.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2013-10-08 16:51:59 +02:00
Kim Kulling e4fca83237 refactoring : remove dead code.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2013-10-08 16:30:17 +02:00
Kim Kulling a889c1575f Merge branch 'master' of https://github.com/assimp/assimp 2013-10-08 16:24:43 +02:00
Kim Kulling 9e78823efb refactoring : remove dead code.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2013-10-08 16:21:47 +02:00
Sherief Farouk 5334020d17 Irrlicht shared code is now excluded only if both the Irrlicht and Irrlicht Mesh importers are excluded from the build. 2013-10-07 19:40:21 -04:00
Sherief Farouk cb65a97347 Irrlicht mesh loader is now predicated on the proper preprocessor define (ASSIMP_BUILD_NO_IRRMESH_IMPORTER) as opposed to a similarly named but wrong define (ASSIMP_BUILD_NO_IRR_IMPORTER). 2013-10-07 19:32:46 -04:00
acgessler ad0b214656 Exporter: do not make any assumptions on previously run PP steps if the scene is a copy. 2013-10-05 16:26:52 +02:00
acgessler 9d4f7c32e4 Scene: keep an internal flag whether the scene was copied using aiCopyScene() (and potentially modified by the user afterwards) 2013-10-05 16:26:16 +02:00
acgessler 3bee2818e4 Exporter: stop non intuitive automatic applying of "reverse" pp steps if user specifies no postprocessing steps. 2013-10-05 16:19:03 +02:00
acgessler 7aa966e204 Obj: fix texture coordinate indexing bug, fixes #41 2013-10-04 13:07:59 +02:00
Calvin Hsu 2fb07823f1 Add basic light and camera support
* Convert point and directional light
* Convert perspective camera

Not suppoted:
* Spotlight, area lights
* Perspective camera fov angle / focal length
* Orthogonal camera
2013-10-02 16:41:49 -07:00
acgessler c4ead93c34 Merge branch 'master' of github.com:assimp/assimp into blender-stackoverflow 2013-10-02 17:09:35 +02:00
acgessler fcedc7e8a6 FBX: make clear that we do not support 6.n file format, closes #93. 2013-10-02 17:09:10 +02:00
acgessler 7e16767229 Merge branch 'master' of github.com:assimp/assimp 2013-10-02 16:46:46 +02:00
acgessler c95697dd0e Exporter: if AI_SCENE_FLAGS_NON_VERBOSE_FORMAT is not set in input scenes, still check if the data is really in verbose format. This is a pure question of API usability and user surprise. 2013-10-02 16:46:31 +02:00
acgessler 586753bc19 Merge branch 'master' of github.com:assimp/assimp into blender-stackoverflow 2013-10-02 14:16:51 +02:00
acgessler b70650e9a4 Blender: new DNA loading code generated by genblenddna.py script, now machine-generates the previously hand-written fix. 2013-10-02 14:16:09 +02:00
acgessler 20204b49c5 Merge branch 'master' of github.com:assimp/assimp 2013-10-02 14:08:10 +02:00
acgessler cf639edb44 ObjExporter: request smooth normals. 2013-10-02 14:07:02 +02:00
acgessler 3408a0a838 Blender: iterative loading code for the linked list of scene objects, fixes #28 but is preliminary as it touches code that is normally machine-generated. 2013-10-02 01:39:59 +02:00
acgessler fdbfa572ab Merge branch 'master' of github.com:assimp/assimp 2013-10-01 17:56:12 +02:00
acgessler 325ef632cf PlyExporter: fix export format for compatibility with Blender and MeshLab (and the PLY spec). Fixes #122 2013-10-01 17:56:00 +02:00
Alexander Gessler 2abdf05a62 Merge pull request #136 from marshallExocortex/obj_exporter__unique_vector_export
remove duplicate vertices, normals and uvs when exporting obj format
2013-10-01 08:48:14 -07:00
Marshall Hahn c592154006 using a custom compare function instead of a global aiVector3t less than operator 2013-10-01 11:21:36 -04:00
Calvin Hsu 32a10ec0a0 obj: Add support for relative vertex indexing
obj files allow faces to specify indices relatively by using negative
integers. See vertex refering in http://www.martinreddy.net/gfx/3d/OBJ.spec
2013-09-30 15:26:40 -07:00
Calvin Hsu c29109d1a4 obj: Fix tabs causing vertices to be skipped
If an obj vertex definition 'v' is followed by a tab instead of a space,
the vertex definition is skipped.
2013-09-30 15:16:26 -07:00
Marshall Hahn b72b16c90b whitespace fix 2013-09-30 14:12:38 -04:00
Marshall Hahn 66fd9bb8a2 fixed bad merge 2013-09-30 14:11:37 -04:00
Marshall Hahn 8f34c24ae0 remove duplicate vectors when export obj format 2013-09-30 14:07:53 -04:00
acgessler e8a23ccec9 Merge branch 'master' of github.com:assimp/assimp 2013-09-29 21:56:52 +02:00
acgessler 5a0b40db92 ColladaExporter: fix assertion in ::isalnum() when a special character > 0x7f is present in material names. 2013-09-29 21:56:32 +02:00
Jared Duke 6f4632e4d9 Allow spaces before the ascii STL header keyword
The text "solid" is the general STL header indicator that the file is in fact
an ascii STL archive.  Allows spaces to precede the "solid" keyword, providing
compatibility with exporters that insert such (non-compliant )spaces.
2013-09-25 13:25:02 -07:00
Alexander Gessler e80886f12c Obj: support line continuations with \ (fixes #91) 2013-09-18 19:34:03 +02:00
Alexander Gessler 0f5272cb50 Obj: set aiMesh::mPrimitiveTypes 2013-09-18 18:35:41 +02:00
Alexander Gessler ab2e81d004 LWO: take last CLIP with the requested index (CLIPs ordered by ordinal string) 2013-09-18 14:27:56 +02:00
Alexander Gessler e9ffabbfee LWO: ignore chunks of length zero. 2013-09-18 14:27:24 +02:00
Alexander Gessler 45572e8079 Merge branch 'master' of github.com:assimp/assimp 2013-09-04 21:52:17 +02:00
Alexander Gessler 0edb78d940 Add aiFreeScene() API for symmetry with aiCopyScene. 2013-09-02 21:32:20 +02:00
Alexander C. Gessler 27727f692b add missing <sstream> header to lexical_cast replacement 2013-08-27 20:17:30 +00:00
Jared Duke 7db5dcb357 Improve STL representation detection
Previously, the STL loader relied on a string check at the start of the
buffer to determine if the STL file was of ASCII representation.  This led to
certain false-positives for binary STL files with the magic string present in
their header.  This patch addresses the issue by adding a proper binary check
to the representation detection.
2013-08-16 18:10:19 -07:00
Kim Kulling 6eaff77a7c bugfix : fix pedantic vs2012 warnings.
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2013-08-15 20:57:54 +02:00
Sherief Farouk c59a67ba28 Merge branch 'master' of https://github.com/assimp/assimp 2013-08-15 00:21:44 -04:00
Sherief Farouk d23430c4bd Collada mesh name is copied from id only if there was no name attribute in the <geometry> node. 2013-08-15 00:21:00 -04:00
Sherief Farouk 57e34cc90a Added loading of mesh name from Collada mesh to aiMesh struct. 2013-08-15 00:14:19 -04:00
Sherief Farouk a540c6255c Added parsing of Collada mesh names. 2013-08-15 00:12:58 -04:00
Sherief Farouk a6ddce7758 Added name member to Collada::Mesh. 2013-08-15 00:11:23 -04:00
Alexander Gessler 36a899abcf Merge pull request #70 from YoheiKakiuchi/master
Add binary exporter to STLExporter
2013-08-12 16:40:27 -07:00
Alexander Gessler 48b47464fd Merge branch 'master' of github.com:assimp/assimp 2013-08-12 23:43:01 +02:00
Alexander Gessler a2fb2dfb28 Exporter: if the scene data was converted to verbose format to meet the requirements of a preprocessing step, we should un-verbosify it again before the actual exporter is run. 2013-08-12 23:42:30 +02:00
Sherief Farouk 9b591fadb8 Fixes for uninitialized variable warnings. 2013-08-09 19:52:15 -04:00
Sherief Farouk a90e208e6d Fixed parameter type mismatch in StreamReader. 2013-08-09 19:10:56 -04:00
YoheiKakiuchi 60a65aaaeb add AI_SWAP4 for big endian architecture 2013-08-09 17:54:28 +09:00
Sherief Farouk c8428fa67a Added value range assertions to prevent static analysis false-positives on Clang. 2013-08-07 18:43:29 -04:00
Pavel Rojtberg 8d80f56396 fix include/ define in PostStepRegistry
allow to build without any post processing steps:
* typo in ASSIMP_BUILD_DEBONE_PROCESS -> ASSIMP_BUILD_NO_DEBONE_PROCESS
* needs to include ProcessHelper.h itself
2013-08-07 14:59:16 +02:00
Pavel Rojtberg 6920c433fd add missing include to fast_atof.h 2013-08-07 14:29:17 +02:00
Sherief Farouk 04b0ea3f9a Initialized stride variable to prevent compiler warnings about potential use of unassigned variable. 2013-08-05 00:02:27 -04:00
Sherief Farouk ace5b763c3 Added AI_WONT_RETURN and AI_WONT_RETURN_SUFFIX to DOMError. 2013-08-04 10:11:02 -04:00
Sherief Farouk 32b694d4f6 Added AI_WONT_RETURN_SUFFIX to ReportError(). 2013-08-04 10:10:41 -04:00
YoheiKakiuchi 4ccb16fe01 add binary exporter to STLExporter 2013-07-31 20:15:59 +09:00
YoheiKakiuchi 5470f5fb28 add AI_CONFIG_IMPORT_COLLADA_IGNORE_UP_DIRECTION for not transforming position of vertices 2013-07-27 10:34:48 +09:00
Alexander Gessler 07c1b2a68f Merge branch 'master' of github.com:assimp/assimp 2013-06-25 16:40:18 +02:00
Alexander Gessler b597ebbe43 Change spec of obj exporter. 2013-06-25 16:39:40 +02:00
Alexander Gessler 34d2bdd178 Exporters: raise errors if output files cannot be opened. 2013-06-25 14:09:28 +02:00
Alexander Gessler b5e916a646 Merge branch 'master' of github.com:assimp/assimp into fixes 2013-06-25 00:22:59 +02:00
Alexander Gessler 31311bdb3b IFC: support reading from IFCZip archives that don't use the same name for the embedded IFC file as the ZIP itself. 2013-06-25 00:22:47 +02:00
Alexander Gessler fd2f1ca3a8 Merge pull request #56 from asmaloney/init_stuff
Make sure members are initialized properly
2013-06-21 09:53:41 -07:00
Andy Maloney 1da281c1f8 Make sure members are initialized properly
Prefer initialization lists
Assignment operator should not return a const ref
2013-06-21 10:56:11 -04:00
Andy Maloney d7c6cd9ece {OBJ} Allow spaces in group names 2013-06-20 08:40:08 -04:00
Andy Maloney a03cb84d0c {COLLADA} Add detail to some errors/warnings & prefer '<>' for elements for readability 2013-06-15 18:00:40 -04:00
Alexander Gessler 88da17a246 Drop M3 Importer. 2013-06-13 11:22:23 +02:00
Andy Maloney c6d1a73854 Fix a logging message and a comment 2013-06-12 09:01:05 -04:00
Matt Lilley d411cbfbf4 Make use of unit tag in asset info to scale the whole model 2013-05-23 12:15:14 +12:00
acgessler b8ed6fbcef Fix Heap corruption in BlenderImporter::ConvertMesh function. closes #36 2013-05-03 23:16:56 +02:00
Alexander Gessler 7efb94580f - LWO: fix crash when computing normals for meshes that contain line or point faces. Thanks to Thomas Sevaldrud for the patch. 2013-04-26 16:49:24 +02:00
Alexander Gessler 4b748c2442 - CMake: use precompiled headers when compiling for msvc. This makes compilation about 40% faster. 2013-04-20 23:15:59 +02:00
Alexander Gessler 17e2588588 - workaround for older gcc versions (<4.6) sometimes copying temporaries even though they shouldn't. 2013-04-13 16:08:13 +02:00
Alexander Gessler afe1dd8c02 Merge branch 'master' of github.com:assimp/assimp into gcc-fixes 2013-04-08 23:21:33 +02:00
Alexander Gessler a288a631e2 - FBX: avoid more gcc warnings. 2013-04-08 20:21:28 +02:00
Kim bd05acf872 bugfix : fix unresolved symbols if 3DS-import is configured not to be oart of the lib.
Signed-off-by: Kim <Kulling>
2013-04-08 20:16:56 +02:00
Alexander Gessler 232e69dc2a - Ifc: code cleanup, remove various non-needed variables as pointed out by gcc. 2013-04-08 20:10:25 +02:00
Alexander Gessler 052a8634d2 OgreMaterial: remove unneeded variable. 2013-04-08 20:05:56 +02:00
Alexander Gessler f6cb467275 - FBX::ImportSettings: fix initialization list order. 2013-04-08 20:05:19 +02:00
Alexander Gessler 5fe03f692e - FBX: silence some warnings produced by clang about missing switch cases. Add TokenType_BINARY_DATA to TokenTypeString() function. 2013-04-08 19:45:09 +02:00
Alexander Gessler 47b2832dd8 - XGL: fix non isocpp-compliant definition of LogFunctions::log_prefix outside the namespace where the class resides. 2013-04-08 19:41:18 +02:00
Alexander Gessler d25715ad2c - Ifc: fix issue pointed out by clang that caused an epsilon check to go totally wrong. A pair of extra parentheses invoked C++ expression evaluation instead of argument passing. 2013-04-08 19:39:15 +02:00
Alexander Gessler 67472f3feb - remove self-assignment in MD5Loader.cpp 2013-04-08 19:37:08 +02:00
Alexander Gessler 8f2e816042 - LWS: fix bugs pointed out by clang leading to path strings being incorrectly build. 2013-04-08 19:36:24 +02:00
Willy Blandin 27767031e6 make all targets build under OSX 10.8.2 and add iOS target 2013-03-31 21:48:38 +09:00
Alexander Gessler eaee34b028 Merge pull request #21 from assimp/assimp-metadata
Assimp metadata implementation. This adds aiNode::mMetaData, the <assimp/metadata.h> header containing the aiMetaData structure. Also adds support for Ifc reading metadata to test out the new feature.
2013-03-29 12:08:29 -07:00
Alexander Gessler afc07503d6 - Ifc: limit nesting of IfcComplexProperty's. 2013-03-29 14:21:06 +01:00
Alexander Gessler 2ad24f7940 - Ifc: support reading IfcComplexProperty 2013-03-29 14:07:28 +01:00
Alexander Gessler 94a012ae7a - add metadata.h to cmake. 2013-03-29 13:37:55 +01:00
Alexander Gessler 10f8eda497 - Ifc: prevent infinite recursion due to cyclic back references which the new STEP backref tracker might produce. 2013-03-29 13:33:18 +01:00
Alexander Gessler 03b8431d54 - IFC: add support for reading IfcProperties as node metadata. 2013-03-28 23:28:49 +01:00
Alexander Gessler cded602950 - STEP: fix bug that caused back references contained in nested aggregates to be not tracked. 2013-03-28 23:28:20 +01:00
Kim 3ad7aea123 Merge branch 'master' of https://github.com/assimp/assimp 2013-03-28 18:56:19 +01:00
Alexander Gessler cca53d6a04 - fix [3595689] by requiring gcc 4.6 for the full magic in LogAux.h 2013-03-28 14:30:45 +01:00
Alexander Gessler 5a0903668d - NDOLoader: fix ASSIMP_BUILD_NO_NDO_IMPORTER guard. 2013-03-28 13:41:58 +01:00
Alexander Gessler bdfcb4b0cb - add ASSIMP_BUILD_NO_COMPRESSED_IFC option. Properly integrate Q3BSP's unzip dependency into the build configuration. 2013-03-28 13:38:42 +01:00
Alexander Gessler 9379e63636 Merge branch 'master' of github.com:assimp/assimp 2013-03-27 13:53:22 +01:00
ulf 368092174b Merge branch 'master' of https://github.com/assimp/assimp 2013-03-27 12:52:28 +01:00
ulf 1cfd3b93fe - Bugfix: Collada URL parser now does read 2 digits of a %xy char only, as the spec says. 2013-03-27 12:52:22 +01:00
Kester Maddock 3713383b0f Added uv and colour support 2013-03-26 21:28:15 +01:00
Kester Maddock eaf9cbc120 Added (basic) Blender 2.63 support. No uvs or colours supported yet. 2013-03-26 21:28:15 +01:00
Alexander Gessler b4f666083a - collada: avoid unsafe float comparison against a magic number. 2013-03-21 20:00:33 +01:00
Alexander Gessler 0b9d6bec0d - drop a few swear words from documentation. Some of these are years old and I think the authors (me included) don't want them associated with their commits. 2013-03-21 19:54:55 +01:00
Jonathan Klein fe19ba9da6 Ogre: Material nullptr-fix, Loader is hopefully no longer confused by 'submeshnames' tag 2013-03-17 17:07:30 +01:00
Kim 8213805dc6 bugfix : fix for Build problem on Mac OS 10.8.2.
Signed-off-by: Kim <Kulling>
2013-03-17 14:44:24 +01:00
Kim 3587eef6eb bugfix : fix a w4 compiler warning.
Signed-off-by: Kim <Kulling>
2013-03-11 22:44:53 +01:00
rdiankov 16744d78d7 fixed the broken cmake config files (assimp-cmake), adding version suffix libraries 2013-02-26 14:02:35 +09:00
Alexander Gessler de7b1aaa50 - IFCBoolean.cpp: fix capitalization error in filename 2013-02-18 16:10:47 +01:00
Alexander Gessler c4a8193e4b - fix a typo. 2013-02-17 20:25:30 +01:00
acgessler d893b95be6 - Ifc: further improvements on the IfcPolygonalBoundedHalfSpace code. Still causes artifacts sometimes. 2013-02-15 01:01:08 +01:00
ulf 196d1b54cb Merge branch 'master' of https://github.com/assimp/assimp 2013-02-12 13:22:17 +01:00
ulf 18f01268e6 - rewrote the XFileLoader material management to handle meshes with dummy material names correctly. 2013-02-12 13:13:12 +01:00
Nicholas Bishop c2db6a0abd Fix array access when loading colored binary STLs
Loading binary STLs with colors caused a crash due to writing after the end of the colors array.
2013-02-09 17:35:59 -05:00
Alexander Gessler 078150da57 - better way to construct NULL-shared_ptr 2013-02-09 17:43:29 +01:00
Alexander Gessler 667a51e0ab - fix various vc compile errors when building with boost. 2013-02-09 17:36:36 +01:00
Alexander Gessler 6ac80ea901 - Ifc: further work on IfcPolygonalBoundedHalfSpace - always pick closest intersection points. 2013-02-09 17:22:26 +01:00
Alexander Gessler e5ea457ade - Ifc: re-enable previously disabled code to determine more intersection points for polygonally bounded half splits. 2013-02-09 17:06:55 +01:00
Alexander Gessler 5a24a91ea1 - Ifc: code cleanup. 2013-02-09 16:59:03 +01:00
Alexander Gessler 7e78e141b2 - Ifc: implementation of IfcPolygonalBoundedHalfSpace now supports most of the possible geometric cases. 2013-02-07 22:42:13 +01:00
Alexander Gessler 50861aa861 - Ifc: more work on polygonally bounded plane cuts. 2013-02-07 21:02:39 +01:00
Alexander Gessler 16a635a961 - Ifc: support IfcPolygonalBoundedHalfSpace entities (WIP). 2013-02-07 16:31:43 +01:00
Alexander Gessler f7680f7f28 - Ifc: refactor code, move opening generation and boolean clipping code to separate units. 2013-02-07 09:51:33 +01:00
Alexander Gessler 2359a83132 - Ifc: get rid of erroneous error messages. 2013-01-30 13:01:16 +01:00
Alexander Gessler 250ca6837f - Ifc: rework geometry generation for openings to use 2D profiles for approximate boolean differentiation whenever possible. Also fix issues in 2D projection, which caused very spurious triangle artifacts. 2013-01-27 21:21:30 +01:00
Alexander Gessler 2e6ad884bb - Ifc: append GUID to node names to preserve them. 2013-01-27 15:44:57 +01:00
Alexander Gessler 6260221f0f Merge branch 'master' of github.com:assimp/assimp 2013-01-27 03:25:04 +01:00
Alexander Gessler 9bb9868a93 - STEP: fix possible compilation error due to unwanted line continuation in a comment line. 2013-01-27 03:23:41 +01:00
Kim fbe408dd2e update : implement obj-support for normal maps.
refactoring : some improvements for more readable code.

Signed-off-by: Kim <Kulling>
2013-01-26 14:11:57 +01:00
ulf 0f781516bf Merge branch 'master' of https://github.com/albert-wang/assimp
Conflicts:
	code/ColladaParser.cpp
2013-01-25 19:08:10 +01:00
Alexander Gessler e375a1c944 Merge branch 'master' of github.com:assimp/assimp 2013-01-25 08:09:57 +01:00
Alexander Gessler b90882a4cb - Ifc: more opening tweaks, half a step back again. 2013-01-25 08:09:32 +01:00
Alexander Gessler d4bcd3ab69 - Ifc: [openings] more fine-tuning and some debugging aid. 2013-01-25 07:42:51 +01:00
Alexander Gessler 1a60697282 - Ifc: more opening tweaks. 2013-01-25 05:55:32 +01:00
Alexander Gessler 302fad13b0 - Ifc: [openings] don't accidentally mirror stuff when projecting onto 2D planes. 2013-01-25 05:16:02 +01:00
Jared Duke 528c7c7737 Update code/STEPFileEncoding.cpp
Fixing Boost 1.48 build.
2013-01-24 19:45:42 -08:00
Jared Duke 20506ead3c Update code/FBXConverter.cpp
Fixing VC10 build.
2013-01-24 19:44:08 -08:00
Alexander Gessler af0d4ef3da - Ifc: clean up temporary wall points when switching from horizontal to vertical openings. 2013-01-25 04:35:30 +01:00
Alexander Gessler 9647c87c7c - Ifc: no need to generate contour skiplist twice. 2013-01-25 04:19:12 +01:00
Alexander Gessler bbd10cd748 - Ifc: fix normalization of base mesh normal for opening generation. 2013-01-25 03:48:06 +01:00
Alexander Gessler bbe8763d9e - FBX: workaround to handle files using the 'b' typecode. 2013-01-24 22:25:44 +01:00
Alexander Gessler 03c01685d3 - STEP: support UTF16, UTF32 and Mac/Roman escape sequences. 2013-01-24 19:51:46 +01:00
Alexander Gessler da88ab4408 - STEP: support \S\ escaping for cp1252 characters. 2013-01-24 16:18:12 +01:00
Alexander Gessler 5ac2354da0 - Ifc: implement IfcIShapeProfileDef entity. 2013-01-24 15:16:03 +01:00
Alexander Gessler 3b30a39fe1 - Ifc: add debug code for checking correctness of coordinate transforms. 2013-01-24 12:44:53 +01:00
Alexander Gessler b42f279110 - Ifc: improve intersection check for openings. 2013-01-24 01:09:48 +01:00
Alexander Gessler 650e515dd6 - Ifc: bix bug that caused some openings to be generated twice. This stops lots of the z noise. 2013-01-22 16:50:18 +01:00
Alexander Gessler 2d01b9bdc9 - Ifc: pick average of all coordinates as projection plane. 2013-01-22 16:39:43 +01:00
Alexander Gessler c2bd22507c - Ifc: check for self-intersecting contour lines to avoid duplicates. 2013-01-22 16:31:31 +01:00
Alexander Gessler 8b823bd631 - Ifc: improve heuristic to detect unwanted crossing lines by not running it when the window is not the result of arbitrary boolean ops on rectangles. 2013-01-22 16:08:44 +01:00
Alexander Gessler e9bbe64115 - Ifc: fine-tune epsilons. Correct epsilon approximation for a squared value is max(e^2 +- 2e). 2013-01-21 22:46:11 +01:00
Alexander Gessler 6905229603 - Ifc: refactor border detection code. 2013-01-21 22:37:53 +01:00
Alexander Gessler fcf86f1e0a - Ifc: add heuristic to detect remaining, unwanted "crossing caps" and to drop them silently. Testing this on some larger files, it typically reduces artifacts due to z-fighting on lower window caps. 2013-01-21 22:27:48 +01:00
Alexander Gessler d20126f7a1 - Ifc: fine-tune some epsilons. 2013-01-21 21:56:55 +01:00
Alexander Gessler 58f087e04d - Ifc: fix boolean differentiation for 3D openings to avoid having duplicate contour lines or inner points in the contour data that gets used as input for window cap generation. This solves various instances of 'crossing' caps in windows. 2013-01-21 21:11:16 +01:00
acgessler 470f4f3757 - Ifc: fix another indexing error. 2013-01-20 17:40:09 +01:00
acgessler 0e5db8a369 - Ifc: fix loop indexing error in detection of overlapping window contours. Improve numerical robustness of intersection tests by explicitly catching a/b=inf. 2013-01-20 15:40:36 +01:00
acgessler 23a2ff629c - Ifc: drop flawed assertion. 2013-01-20 15:16:20 +01:00
acgessler f7106887cc - some fixes for vc12 2013-01-19 17:00:14 +01:00
acgessler 7fd44f4ab7 Merge branch 'master' of git://github.com/assimp/assimp 2013-01-19 16:35:28 +01:00
Alexander Gessler ab9587dd1e Merge pull request #12 from ccxvii/master
Precision fix and Collada robustness fix.
2013-01-15 12:04:48 -08:00
kimmi cc88a3a0de update : add displacement map support to obj-material importer. this feature is supported by some special exporters.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1347 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2013-01-07 21:05:53 +00:00
Alexander Gessler bae9db2f03 Merge branch 'master' of git://github.com/assimp/assimp 2012-12-21 16:24:05 +01:00
ulfjorensen 84939d5aec - fixed preprocessor checks for some importers
- fixed warning about shadowing variables in quaternion.h


git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1346 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-12-20 11:43:09 +00:00
aramis_acg f507994299 - Ifc: vastly improved algorithm for fixing up window caps.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1345 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-12-19 02:24:06 +00:00
kimmi 01972bbbcf bugfix : Fix a memory leak in the obj-loader.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1344 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-12-08 12:28:06 +00:00
ulfjorensen ac7d7d20c9 - fixed compilation error on GCC in IFC loader. Thanks to larsp for the report!
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1343 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-12-04 07:42:15 +00:00
aramis_acg ddea19ead1 - triangulation: re-introduce special handling for quads, now with proper support for concave quads. This should *really* fix [3429812], but it leaves me to suspect bugs in the general-purpose triangulation code for ngons.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1341 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-29 15:25:09 +00:00
Tor Andersson 771d804c46 ColladaParser: Tolerate empty data arrays and controller weights. 2012-11-28 13:02:51 +01:00
aramis_acg 477995f860 - Ifc: fix lost line that causes compile errors in debug build, WIP work on removing overlapping window caps.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1340 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-27 19:59:09 +00:00
ulfjorensen c338b665ed - applied patch to fix compilation errors with CLang following issue #3590305
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1339 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-27 18:40:38 +00:00
aramis_acg d395e88670 - Ifc: more refactoring in the window generation code.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1338 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-18 19:41:26 +00:00
aramis_acg b7ee62080a - Ifc: refactor opening/window generation code.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1337 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-18 16:36:38 +00:00
kimmi 30ce13a617 Github merge: Adjusting the Collada Color Parser from albert-wang.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1336 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-17 12:47:15 +00:00
aramis_acg e3e8c92546 - Ifc: since overlapping opening bounding boxes cause lots of trouble, we now try to avoid them in a subset of all cases. This is possible whenever two openings overlap in a way that their bounding boxes can easily be made disjunct by differentiating the polygons.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1335 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-17 02:04:53 +00:00
Albert Wang 0ea6ec4e84 Fixing some whitespace issues in ColladaParser 2012-11-12 12:39:11 -06:00
Albert Wang 7d4ee98350 Adjusting the Collada Color Parser
The collada parser parses the RGB descriptor out of the
xml file, but does not use this information when constructing
the actual mColors array.

If you export a collada file with RGB colors, and then import it,
it used to create color values in the form RGBR, taking the
R component from the next color tuple instead of filling in
sensible defaults for the alpha channel.

This patch uses the information to fill each color.
2012-11-12 12:33:51 -06:00
ulfjorensen 81aef90f4a - manually pulled the three smaller change requests from Github.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1331 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-05 09:13:09 +00:00
aramis_acg 3f38d91e88 - Ifc: further improvements to opening caps algorithm.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1329 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-03 00:43:28 +00:00
aramis_acg 1553bd91f6 - Ifc: work on generating proper closing caps for openings generated by doing a boolean difference.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1328 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-02 23:56:38 +00:00
aramis_acg 7484dd379c - Ifc: revamped Quadrify() version now correctly clips overlapping non-rectangular windows.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1327 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-02 04:46:46 +00:00
aramis_acg ccf629bd19 - Ifc: allow arbitrary IfcSolidModel entities as difference operands for openings (rather than just IfcExtrudedAreaSolid et al).
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1326 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-02 03:29:04 +00:00
aramis_acg 612f67da0a - Ifc: avoid duplicate points in opening contour lines, this sometimes screws up the clipping algorithm.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1325 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-01 21:36:39 +00:00
aramis_acg 11b2219b1a - Ifc: fix regressions caused by previous commit. This also fixes a bug which caused openings to appear at the wrong place.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1324 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-11-01 20:40:45 +00:00
kimmi 39ae26bfd8 bugfix : fix level 4 compiler warnings for Visual studio 2012.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1323 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-27 19:41:56 +00:00
ulfjorensen 2a580c5518 - fixed/changed/worked on issue 3580054 - XFile materials don't have ambient colours, but emissive
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1322 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-25 10:28:40 +00:00
aramis_acg d128e3d531 - Ifc: fix projection artifacts during opening generation.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1321 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-21 21:50:30 +00:00
aramis_acg c3adc004bf - Ifc: always remove degenerate geometry from geometric entities after finishing processing.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1320 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-21 19:12:18 +00:00
aramis_acg a598ac53b4 - Ifc: improve robustness towards degenerate geometry.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1319 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-21 18:52:48 +00:00
aramis_acg 33a50f515a - Ifc: move some utility functions to TempMesh. Add TempMesh::RemoveDegenerates() method.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1318 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-21 18:32:25 +00:00
aramis_acg 7ed1400c68 - Ifc: better handling of degenerate primitives occuring in clipping operations.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1317 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-21 18:10:56 +00:00
aramis_acg f6f2c087db - Ifc: skip lines during boolean differentiation between two solids.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1316 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-21 17:08:12 +00:00
aramis_acg d660ec35ad - Ifc: first attempt at also supporting extruded area solids for boolean differentiation.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1315 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-21 16:58:22 +00:00
aramis_acg 71fb04849c - Ifc: experimental code to connect window holes, commented by default.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1314 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-21 01:05:48 +00:00
aramis_acg 2f5475d50a - Ifc: [Quadrulation] use generalized matrix multiplication for projections. Add table to map from contours to the openings they originated from and from openings to the points that were generated from it.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1313 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-20 23:18:48 +00:00
aramis_acg a3d5b2e0d7 - Ifc: replace old algorithm to merge nested polygons with a version that reduces the problem to an instance of the quadrulate algorithm. This great reduces artifacts in walls.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1312 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-20 21:26:49 +00:00
aramis_acg 8a77193a33 - Ifc: more sanity clamping, improve error messages for degenerate windows.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1310 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-17 00:37:52 +00:00
aramis_acg f8974b7209 - Ifc: explicitly clamp some computations to [0,1] even if this is already their (arithmetically) defined range to improve numerical robustness.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1309 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-17 00:32:59 +00:00
aramis_acg 745a7383f6 Ifc: fix artifacts from window boundaries.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1308 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-17 00:04:24 +00:00
aramis_acg f329e1af6f - IFC: fix possible infinite recursion in QuadrifyPart()
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1307 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-16 21:27:01 +00:00
aramis_acg 39d13faf9a - Ifc: minor code cleanup.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1306 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-16 20:55:19 +00:00