Commit Graph

1397 Commits (b450ecbed209e14ec0f51b92f89368130ac8c348)

Author SHA1 Message Date
Jared Duke c7b6b5ea2f Support lowercase 'ns' and 'ni' obj material tokens
Previously, the obj material parser would interpret all key tokens
starting with 'n' as 'newmtl' tokens. However, there are other tokens
that can start with 'n', namely 'ns' and 'ni' for material properties.
Make the parser robust to such cases, despite their canonical forms
being uppercase.

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

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

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

Note that this fixes a number of .blend regression tests that are
currently baselined as failures.
2014-09-15 17:19:33 -07:00
Denis Biryukov ab6b5a7b21 Fix gcc warnings. (initialization order) 2014-09-15 23:35:03 +04:00
Jared Duke 35c9a33718 Fix crash for Blender poly to face conversion without UVs
BlenderBMeshConverter assumes that the BMesh has UVs, but that is not
always the case. Handle the non-UV case by only adding a T face when
UVs are present.
2014-09-13 09:43:00 -07:00
Jared Duke 485aa8b39d Fix null check in Q3BSPFileImporter
Reverse the null condition, preventing invalid texture stream
dereferencing. Fixes #380.
2014-09-12 19:37:10 -07:00
Kim Kulling 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
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
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
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
unknown 9d04a45088 Collada : Add missing parsing <image> into <effect><profile> markup 2014-08-27 10:15:13 +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