Commit Graph

2000 Commits (22dc22778d64e80f693c396fc310c58da48a62fc)

Author SHA1 Message Date
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
aramis_acg 11a22b671b - IFC: revamp binary subtraction and opening generation logic, which now supports 90deg rotated opening proxies. The new version adds extra cleanup steps to prepare the data for processing by clipper. It also has a slightly refactored code base.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1305 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-16 19:51:00 +00:00
aramis_acg fa1016ddc8 - Ifc/Step: support line continuations in parser.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1304 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-10-02 14:19:24 +00:00
ulfjorensen 54a5088e14 - added a workaround to load Collada files correctly in case the "texcoord" attribute was missing in a <texture> element
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1303 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-09-24 08:45:23 +00:00
ulfjorensen 2944e7b210 - Added a workaround for some XFileExporter omitting separator chars at the end of data vectors
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1302 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-09-21 18:53:36 +00:00
ulfjorensen 62b0284100 - applied patch by peteredc to make the Collada loader write mesh names
- applied patch by asmaloney for better error messages in the Collada parser

git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1301 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-09-21 08:44:37 +00:00
aramis_acg e22bb03f80 - IFC: fix face winding for IfcSweptDiskSolid geometry
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1300 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-09-10 01:28:19 +00:00
aramis_acg 15c0b8b955 - IFC: avoid artifacts in high-curvature regions (or the boundaries thereof) of IfcSweptDiskSolid elements.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1299 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-09-10 00:40:41 +00:00
Alexander Gessler c1cd88e9de - fbx: take shortest quaternion path when interpolating. 2012-08-26 20:10:01 +02:00
Alexander Gessler 310235dd5b - fbx: more warn policy tuning. 2012-08-26 18:58:08 +02:00
Alexander Gessler a1713052e5 - fbx: support reading LimbNode attachments, less Property70 warnings. 2012-08-26 18:53:15 +02:00
Alexander Gessler 5bc573edb8 - fbx: pre-filter animated property we don't support as early as possible. 2012-08-26 18:40:04 +02:00
Alexander Gessler 51d84dcfc0 - fbx: improve logging 2012-08-26 17:54:17 +02:00
Alexander Gessler 9ea7fc2856 - fbx: don't die if a file contains no GlobalSettings. 2012-08-26 17:45:09 +02:00
Alexander Gessler cdb7caffbd - fbx: add special output node name tag to mark fbx null nodes. 2012-08-25 22:24:08 +02:00
Alexander Gessler eed3cebc18 - fbx: add support for reading Null node attributes. 2012-08-25 20:12:53 +02:00
Alexander Gessler 4921114c7d - fbx: better error reporting reading property tables. 2012-08-25 19:53:46 +02:00
Alexander Gessler c9facf16fa - fbx: support reading of scenes containing no geometry. 2012-08-25 18:17:11 +02:00
Alexander Gessler 1dc2ea05fa - fbx: fix crashbug when animating the root node. 2012-08-25 17:57:07 +02:00
Alexander Gessler 375c4b4242 - fbx: read framerate and output it in aiAnimation::mTicksPerSecond. 2012-08-25 17:31:15 +02:00
Alexander Gessler d881bb9cdc - fbx: add support for reading GlobalSettings. 2012-08-25 16:23:37 +02:00
Alexander Gessler 5ea9de5d3e - fbx: return time in seconds. 2012-08-25 16:13:19 +02:00
Alexander Gessler 3f2a796b9d - fbx: fix time scaling in my previous patch. 2012-08-20 19:23:54 +02:00
Alexander Gessler 99aab0d9a7 - fbx: also handle cases where some of the SRT channels are empty/constant. 2012-08-20 19:15:59 +02:00
Alexander Gessler 6bbbbfde4c - fbx: collapse animation nodes whenever possible to avoid overly busted output scenes. 2012-08-20 18:33:54 +02:00
Alexander Gessler 8336aa423f - fbx: fix reading of short data tokens in binary files. 2012-08-20 17:39:44 +02:00
jonathanklein a038288af9 Ogre: Fixed memoryleak and missing \0 at end of cstring
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1298 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-08-12 17:00:53 +00:00
Alexander Gessler 3e86e1b857 - fbx: add import settings to public assimp config interface. 2012-08-11 16:41:44 +02:00
Alexander Gessler eb16c193ea - fbx: also support reading binary arrays of UNSIGNED data. 2012-08-11 04:48:08 +02:00
Alexander Gessler 96033e9fc0 - fbx: fix stupid typos killing the decompression logic. 2012-08-11 04:39:47 +02:00
Alexander Gessler 811e2492df - fbx: fix object names when reading binary files. 2012-08-11 04:29:21 +02:00
Alexander Gessler 29b11f1cde - fbx: FINALLY got reading binary data buffers (vertices, normals etc) working! Found out fbx uses deflate to compress them. 2012-08-11 04:16:46 +02:00
Alexander Gessler 1cd04a2671 - fbx: formatting. 2012-08-11 02:24:59 +02:00
Alexander Gessler 826b97a4fa - fbx: handle arbitrary rotation orders (all combinations of euler angles etc). 2012-08-11 02:17:22 +02:00
Alexander Gessler 1bdf39448a - fbx: extend list of supported property data types. 2012-08-11 01:59:10 +02:00
Alexander Gessler 391a69e68b - fbx: extend DOM to include the declarations for FBX' rotation order and inheritance enums. 2012-08-11 01:57:32 +02:00
Alexander Gessler 1a5bf26e91 - fbx: light & camera conversion was missing in assimp, somehow. 2012-08-11 01:51:04 +02:00
Alexander Gessler bc0e465f91 - fbx: declare more dynamic properties of Model. 2012-08-10 23:40:02 +02:00
Alexander Gessler 8d5b78c035 - fbx: 32 bit build fixes. 2012-08-10 23:26:49 +02:00
Alexander Gessler 315285faf0 - fbx: refactor parsing code, move all parsing stuff to FBXParser.cpp. Parsing errors now carry the prefix "FBX-Parser". 2012-08-10 23:24:58 +02:00
Alexander Gessler ef0dcaaea2 - fbx: refactor, move DOM utility functions to separate unit. 2012-08-10 23:02:38 +02:00
Alexander Gessler ffbac847ef - fbx: add DOM classes for light and camera node attachments. Devise a new macro-based system to easily define dynamic fbx properties. 2012-08-10 22:58:54 +02:00
Alexander Gessler c126cfa1ff - fbx: rework material reading to support negative indices (these will be assigned a default material).
- fbx: fix uninitialized variable.
2012-08-10 22:33:57 +02:00
Alexander Gessler 729e98fef0 + fbx: Parser::IsBinary(), Document::IsBinary() 2012-08-10 21:39:47 +02:00
Alexander Gessler 49cfcf4c07 - fbx: add binary support to the various ReadXXX parsing utilities. 2012-08-10 11:06:59 +02:00
Alexander Gessler 10fac9bcd8 - fbx: finished binary tokenizer. Now correctly skips over compressed data arrays. 2012-08-10 10:47:50 +02:00
Alexander Gessler 5250240ed6 - fbx: format fixes. 2012-08-09 02:10:13 +02:00
Alexander Gessler 24ce9495fd - fbx: add binary reading draft. Started from scratch after my first attempt had design flaws. The binary reader now sits on the lexer stage (really) and generates a (fake) token sequence similar to the text lexer's output - this means most parsing code can go unaffected. 2012-08-09 02:08:12 +02:00
Alexander Gessler 3899fc5257 - fbx: bone bind matrix now includes mesh world transformation. 2012-07-27 22:36:40 +02:00
Alexander Gessler d5d6df36e3 - fbx: fix rotation order and a whole bunch of related problems. 2012-07-27 21:09:45 +02:00
Alexander Gessler 4c58328c98 - fbx: switch to always generating a full transformation chain (temporary solution to get the transformation order right for now!). 2012-07-27 19:41:14 +02:00
Alexander Gessler 6efe9517f0 - fbx: forgot child links in transformation chains. 2012-07-27 19:29:57 +02:00
Alexander Gessler 4aac334358 - fbx: bugfix node chain generation, was omitting some nodes. 2012-07-27 19:20:05 +02:00
Alexander Gessler 54be52ea28 - fbx: add option to detect dummy animation tracks and to remove them. Actually, this is mostly a debugging aid (and it cuts down memory usage). 2012-07-27 18:45:02 +02:00
Alexander Gessler 0d2cb96092 - fbx: re-enable FixNodeName(), forgot that a commit ago. 2012-07-27 17:58:34 +02:00
Alexander Gessler bb8e8c6673 - fbx: ignore IKEffector nodes. 2012-07-27 17:57:30 +02:00
Alexander Gessler 44259f0c23 - fbx: fix small typo with big effect. 2012-07-27 17:57:19 +02:00
Alexander Gessler bead86a830 - fbx: take care not to drop transformation chain nodes that have node animations assigned, even if they specify identity transform in bind pose. 2012-07-27 16:18:47 +02:00
Alexander Gessler 80e7e18e28 - fbx: refactor animation code. 2012-07-27 15:53:17 +02:00
Alexander Gessler ffd084a7a7 - fbx: generate inverse nodeanim channels for pivots. 2012-07-27 15:42:06 +02:00
Alexander Gessler 3c37c8e7da - fbx: generate node anims for complex transformation chains with pivots and offsets. 2012-07-27 15:31:02 +02:00
Alexander Gessler 94e1e78c55 - fbx: work on converting animations for complex transformation chains (i.e. chains that contain pivots and offsets). (WIP) 2012-07-27 04:55:56 +02:00
Alexander Gessler 7f082e0aae - fbx: revamp transformation code to support rotation/scaling pivots and offsets. The information is encoded in additional nodes in the scene hierarchy, which are tagged with a special naming scheme to make them easy for users to identify and map to their systems. 2012-07-27 03:00:16 +02:00
Alexander Gessler 23c62f07f7 - fbx: fix memleak in exception cases. 2012-07-27 01:49:02 +02:00
Alexander Gessler 916947327f - fbx: fix weight conversion for multi-mesh geometry. 2012-07-27 00:50:58 +02:00
Alexander Gessler f230ac2f60 - fbx: further work and bugfixes on deformer conversion. 2012-07-26 23:45:07 +02:00
Alexander Gessler d194c83ed8 - fbx: bugfix Model -> Cluster connections. 2012-07-26 22:58:48 +02:00
Alexander Gessler 3e3eb6fb7c - fbx: permit empty deformers. 2012-07-26 22:57:52 +02:00
Alexander Gessler 666f2776d7 - fbx: convert fbx deformers to assimp bones. 2012-07-26 22:53:31 +02:00
Alexander Gessler 05ec3c2e90 - fbx: read Geometry -> Skin and Model -> Cluster connections. Improve logging, some refactoring. 2012-07-26 19:13:19 +02:00
Alexander Gessler 06acead438 - fbx: read deformers (Skin and Cluster). 2012-07-26 18:05:24 +02:00
Alexander Gessler 8d1db6229c - fbx: drop empty animation stacks to pass assimp validation. 2012-07-26 04:13:16 +02:00
Alexander Gessler 6ea67963ba - fbx: fix parsing of CameraSwitcher.CameraIndexName. 2012-07-26 04:07:29 +02:00
Alexander Gessler 44606a1e53 - fbx: fix 64 bit compile warning. 2012-07-26 04:04:29 +02:00
Alexander Gessler c882ef841f - fbx: fix boost compile error. 2012-07-26 04:03:55 +02:00
Alexander Gessler d5c05c7d84 - fbx: NodeAttribute can now be target for AnimCurveNode.
- fbx: rename Camera -> CameraSwitcher.
2012-07-26 03:58:42 +02:00
Alexander Gessler cab713b4c5 - fbx: attach node attachments to their nodes. 2012-07-26 03:45:37 +02:00
Alexander Gessler b66dfc85e1 - fbx: read NodeAttribute and Camera. 2012-07-26 03:42:02 +02:00
Alexander Gessler 38be981151 - set aiNodeAnim.mNodeName 2012-07-26 03:11:14 +02:00
Alexander Gessler 776d8e339b Merge branch 'master' of https://github.com/assimp/assimp 2012-07-24 03:30:47 +02:00
Alexander Gessler 8747614e89 - fbx: ensure node names are converted consistently and with no ambiguity. 2012-07-22 02:12:38 +02:00
Alexander Gessler 29057096fd - add extra check whether the keyframes are well-ordered. 2012-07-22 01:23:23 +02:00
Alexander Gessler 5ff8c90a35 - fbx: set animation duration. 2012-07-21 23:48:52 +02:00
Alexander Gessler f617e766b1 - fbx: add "strict" import mode (only accept 2012,2013 files). 2012-07-21 23:08:48 +02:00
Alexander Gessler b7456307dd - fbx: fix "could not read property name" warn message. 2012-07-21 22:45:23 +02:00
Alexander Gessler fd828a1b44 - fbx: always set all tracks in aiNodeAnim to pass validation. 2012-07-21 22:29:42 +02:00
Alexander Gessler e4305149be - fbx: bugfix animation interpolation code, fix various quirks. 2012-07-21 21:28:02 +02:00
Alexander Gessler 09aaaba7b8 - fbx: improved DOM object construction and dependency resolution. 2012-07-21 20:02:00 +02:00
Alexander Gessler 5db5634494 - fbx: add utility functions to filter connections to other objects by their type. 2012-07-21 18:02:10 +02:00
Alexander Gessler 4f6dbac919 - fbx: prevent infinite recursion when resolving objects with cyclic references. 2012-07-21 17:13:03 +02:00
Alexander Gessler 378bc93593 - fbx: resolve target node for node animations. 2012-07-21 17:12:04 +02:00
Alexander Gessler ae3007b42b - fbx: better size estimate for keyframe buffer. 2012-07-21 16:19:46 +02:00
Alexander Gessler 382f4619ad - fbx: animation conversion from fbx's representation to assimp's. This involves evaluating animation layers etc. 2012-07-21 04:15:10 +02:00
Alexander Gessler 711878567a - more fine-grained import settings. 2012-07-21 01:00:26 +02:00
Alexander Gessler 67c55990cd - fbx: initial code to read animations plus the accompanying DOM classes. 2012-07-21 00:45:37 +02:00
aramis_acg aaf0be0bbf - CMake overhaul. Add proper FindXXX scripts for PkgMacros, ZLIB, DirectX. Isolate MSVC-specific defines. Add newer boost versions to boost whitelist. Many thanks to Mr. S. for the patch! (see http://zfx.info/viewtopic.php?f=9&t=334&p=32190#p32190)
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1293 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-07-17 22:56:15 +00:00
aramis_acg d8c2295962 - blend: compute parent inverses on your own instead of trusting the blend input. Thanks to Kalmár Dániel for the patch.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1291 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-07-17 22:18:10 +00:00
kimmi 3f47ac3fe2 Bugfix : Fix an invalid getName function. Thanks to cyrilchampier.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1290 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-07-17 21:48:03 +00:00
aramis_acg 56bf755c4b - Ifc: fix handling of curves with RADIAN parameters.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1289 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-07-12 00:20:28 +00:00
aramis_acg d7fe61c255 - Ifc: improved subsampling of curves for IfcSweptDiskSolid entities.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1288 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-07-11 23:08:44 +00:00
aramis_acg d7410e6f08 - Ifc: implement basic support for IfcSweptDiskSolid elements.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1287 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-07-11 22:11:16 +00:00
aramis_acg c70646912c - add IFCZIP support to IFC loader.
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1286 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-07-11 19:18:51 +00:00
Alexander Gessler ab93c6f38e Merge branch 'master' of github.com:acgessler/assimp-gsoc2012-fbx 2012-07-08 01:29:49 +02:00
acgessler 879f2ed177 - fix some -Wall warnings 2012-07-08 03:28:14 +02:00
acgessler 8ec96d88c5 update CMake build 2012-07-07 21:11:09 +02:00
Alexander Gessler 30422fa683 - fix confusion between ASSIMP_BUILD_NO_COLLADA_IMPORTER and ASSIMP_BUILD_NO_DAE_IMPORTER (in favour of the first). 2012-07-07 20:53:24 +02:00
acgessler e56b39ecaf fbx: gcc 4.6 compile fixes 2012-07-07 20:46:29 +02:00
Alexander Gessler 1a9790ae9a - fbx: read first set of header properties (format version, timestamp etc). 2012-07-06 22:46:19 +02:00
Alexander Gessler e4aee83c5b - fbx: set mesh names, drop prefix from root node, simplify mesh splitting logic. 2012-07-06 19:32:41 +02:00
Alexander Gessler 6441f9d984 - fbx: strip prefixes from Material and Mesh names. Don't set empty material names. 2012-07-06 17:08:02 +02:00
Alexander Gessler 72f1734f82 - fbx: fix another stupid bug in the multi-mesh splitting code. 2012-07-06 17:00:59 +02:00
Alexander Gessler 2d2a87b70c - fbx: fix stupid bug that kills the node hierarchy. 2012-07-06 16:55:25 +02:00
Alexander Gessler 4bfd5c11d7 - fbx: bugfix multi-material splitting. 2012-07-06 16:48:09 +02:00
Alexander Gessler d6e929b670 - fbx: accidentially passed a wrong predicate for sorting Connections to std::sort. 2012-07-05 17:18:54 +02:00
Alexander Gessler 4db113395c - fbx: read local transforms (different modes of rotation not yet implemented, though). 2012-07-05 17:06:15 +02:00
Alexander Gessler 3179e949bb - fbx: set default material when no material layer is assigned to a mesh. 2012-07-05 16:37:13 +02:00
Alexander Gessler 61c6c37e30 - fbx: implement mesh splitting for meshes with multiple materials. 2012-07-05 16:35:08 +02:00
Alexander Gessler cfb05376d2 - fbx: fix diffuse material color. 2012-07-05 14:26:26 +02:00
Alexander Gessler 04c77029e8 - fbx: fix boost build errors (was building with BOOST_WORKAROUND for a while). 2012-07-04 17:06:55 +02:00
Alexander Gessler 6e6dbe97de - fbx: fix bug that caused normals to be wrong. 2012-07-04 16:47:10 +02:00
Alexander Gessler 0d2f04d50a - fbx: fix recursive node construction. 2012-07-04 16:38:12 +02:00
Alexander Gessler 89d5380c81 - fbx: argh. forgot to add FBXModel.cpp 2012-07-04 16:33:46 +02:00
Alexander Gessler bf79c83bf2 - fbx: read node hierarchy and assign model material indices. Cache already converted materials and meshes to make FBX instancing work as intended. 2012-07-04 16:33:21 +02:00
Alexander Gessler 17629f1ff1 - fbx: work on resolving material links. 2012-07-04 15:07:57 +02:00
Alexander Gessler 2f5ec6f136 - fbx: fix bug that caused textures to be ignored in some cases. 2012-07-04 01:45:15 +02:00
Alexander Gessler c7ee6fd70f - fbx: texture conversion & UV channel mapping. 2012-07-03 20:41:21 +02:00
Alexander Gessler a0c45f9190 - fbx: read texture -> material connections. 2012-07-03 19:42:14 +02:00
Alexander Gessler effcaf066a - fbx: Objects now carry their ID. 2012-07-03 19:36:38 +02:00
Alexander Gessler 8a12b179a6 - fbx: add utility functions to get object connections in sequential (i.e. insertion) order. 2012-07-03 17:57:21 +02:00
Alexander Gessler fd451f7ba6 - fbx: read object-object and object-property connections. 2012-07-03 16:50:58 +02:00
Alexander Gessler 23914685f9 - fbx: read textures. 2012-07-03 14:59:40 +02:00
Alexander Gessler 97b69364ad - fbx: refactor code for fetching property templates. 2012-07-03 14:40:45 +02:00
Alexander Gessler ec50632f2e - fbx: fix bug that caused vertex colors to be not loaded correctly. 2012-07-03 00:26:40 +02:00
Alexander Gessler 990e6bdf3f - fbx: better conversion of material colors. 2012-07-02 23:31:48 +02:00
acgessler 3f811f4a62 - fbx: DOM Material -> aiMaterial converter (WIP!). 2012-07-02 19:59:31 +02:00
acgessler 131008cea1 - fbx: read materials. 2012-07-02 17:37:00 +02:00
acgessler b49cf16bc2 - fbx: change const semantics for PropertyTable's. Lazy parsing of properties no longer affects logical constness. 2012-07-02 17:09:32 +02:00
acgessler 97e1761ecd - fbx: support more property data types (there are way more, though - don't know yet how to handle them, fbx files don't seem to have overly strong semantics for properties). 2012-07-02 17:00:56 +02:00
acgessler 21713841d3 - fbx: read property templates. Fix some memory leaks. 2012-07-02 16:51:19 +02:00
acgessler 00f249b8dd - fbx: add property system 2012-07-02 15:57:51 +02:00
acgessler 6ddb1c9aa7 - fbx: refactor code 2012-07-01 14:38:14 +02:00
Alexander Gessler 7a3e3b1353 - fbx: create dummy root node and assign converted meshes. This is a temporary solution to be able to test mesh reading. 2012-06-28 23:44:23 +02:00
Alexander Gessler 524285c90d - fbx: converter now handles FBX mesh to aiMesh conversion. 2012-06-28 23:24:46 +02:00
Alexander Gessler 0c0c9bce66 - update CMakeLists 2012-06-28 20:03:29 +02:00
Alexander Gessler d7270aa278 - fbx: skeleton for DOM -> aiScene converter. 2012-06-28 20:02:09 +02:00
Alexander Gessler e945998fc8 - fbx: warn about empty meshes and ignore them. 2012-06-28 19:23:08 +02:00
Alexander Gessler d61c86081c - fbx: depending on settings.readAllLayers, the loader now scans through all geometry layers and pulls in all vertex data channels that fit into the output data structure. 2012-06-28 19:20:44 +02:00
Alexander Gessler 05bc8ab684 - fbx: add ImportSettings to keep track of fbx-specific import settings. The settings are generated by the importer instance and injected into parser and DOM. 2012-06-28 19:16:14 +02:00
Alexander Gessler 3f10314656 - fbx: support ByPolygon mapping for materials, refactor code to read material indices. 2012-06-28 17:13:13 +02:00
Alexander Gessler e821988c64 - fbx: also read vertex colors, tangents and binormals. 2012-06-28 16:51:55 +02:00
Alexander Gessler ffe0ed7926 - fbx: refactor code to handle FBX vertex data access. Support the same access & indexing types for UVs and normals. 2012-06-28 02:06:24 +02:00
Alexander Gessler 026cec7d7b - fbx: UVs, normals and materials arw now read properly. Fix bug related to reading vertices. 2012-06-28 01:49:52 +02:00
Alexander Gessler fcdb2fc6b8 - fbx: work on reading normals, UVs and material channels. 2012-06-28 00:35:40 +02:00
Alexander Gessler f9e310edfb - fbx: work on reading vertex data. 2012-06-27 23:02:00 +02:00
Alexander Gessler f354d8d7c7 - fbx: add some utility functions to parse tokens to values and to handle errors automatically. 2012-06-27 21:55:28 +02:00
jonathanklein e658a7f98f Added Animationoverview diagram to documentation
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1270 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-06-26 19:46:18 +00:00
Alexander Gessler 7108713238 - fbx: work on reading the first layer of geometry data channels. 2012-06-26 21:35:16 +02:00
aramis_acg 79711b018a - blend: patch for material importer, read emissive color. Thanks to Laurent Belcour for the patch!
git-svn-id: https://assimp.svn.sourceforge.net/svnroot/assimp/trunk@1269 67173fc5-114c-0410-ac8e-9d2fd5bffc1f
2012-06-26 19:16:09 +00:00
Alexander Gessler a996ecba75 - fbx: add helper functions to read FBX data arrays. 2012-06-26 20:05:24 +02:00
Alexander Gessler c0af603f0c - fbx: further work on DOM, start work on geometry extraction. 2012-06-26 19:19:13 +02:00
Alexander Gessler 25dfbdf58d - fbx: add DOM layer to represent the parsed FBX file in-memory, capturing the essential semantics we need for importing. 2012-06-26 18:31:19 +02:00
Alexander Gessler 05b98c279b - fbx: fix tab width when logging columns. 2012-06-26 15:43:31 +02:00
Alexander Gessler 4c30c00585 # fbx: forgot a <Windows.h> in my code. 2012-06-26 15:40:16 +02:00
Alexander Gessler ecd79b3cc3 - fbx: fix infinite recursion when parsing nested Scope's. 2012-06-26 03:31:34 +02:00