Joe Hermaszewski
e8d4479344
Squash incorrect abs usage
...
Replace calls to abs with a float to calls to std::abs. Before int abs(int)
was being called.
2015-01-22 20:03:13 +00:00
Tom Mettam
a09de30d83
Add support for component controlled matrix transforms, i.e transform(0)(0) etc.
2015-01-21 01:45:35 +00:00
abma
b1221ade64
fix some errors/warnings found by static code analyzer
2014-12-16 23:41:10 +01:00
Andreas Henne
ab7754ab2a
Code style changes.
2014-12-11 23:05:09 +01:00
Andreas Henne
33f9745b62
Formatting changes.
2014-12-05 19:40:09 +01:00
Andreas Henne
4550279629
Added binary ply exporter.
2014-12-05 17:25:18 +01:00
Kim Kulling
bc0fd00e96
Merge pull request #414 from l337r007/collada-tristrips
...
Collada: tristrip support: helps a lot :-). Thanks for that!
2014-12-01 20:48:10 +01:00
Kim Kulling
7a31a68cfc
adapt c-api to get ImporterDesc for a given loader ( see https://github.com/assimp/assimp/issues/412 ).
...
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-12-01 20:34:15 +01:00
Kim Kulling
1f13158b31
fix vs2013 compiler warnings and add missing doxygen tags.
...
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-11-29 12:12:32 +01:00
Kim Kulling
098ddd3a95
make copy constructor and a assignment operator private to avoid misuse of helper class scope guard
...
Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>
2014-11-29 11:56:39 +01:00
Wolfgang Herget
c08a5581dd
ColladaParser::CopyVertex: don't make a local copy of the vertex' indices.
...
Instead, we address the relevant indices in the main vector directly by
adding the input offsets to the per-vertex base offset.
2014-11-20 17:53:06 +01:00
Wolfgang Herget
8dead93504
ColladaParser: don't arbitrarily limit number of per-vertex attributes.
2014-11-20 16:42:41 +01:00
Wolfgang Herget
ca3ce4703d
Rename ColladaParser::CopyPrimitive to ::CopyVertex.
...
That's a bit closer to what the function actually does.
2014-11-20 13:12:09 +01:00
Wolfgang Herget
13a157ea66
For Polylists, manually compute the start offset outside CopyPrimitive.
2014-11-20 13:10:15 +01:00
Johannes Ebersold
e568c2df9d
ColladaParser::ReadIndexData: don't rely on the specified number of primitives.
...
Especially TriStrips don't specify triangle count upfront, so one needs to
sum up the count of triangles read from all <p> tags in a tristrip collection.
2014-11-19 14:40:43 +01:00
Johannes Ebersold
72f67ea0cd
Whitespace changes
2014-11-19 14:40:42 +01:00
Johannes Ebersold
593484829b
Add Function ColladaParser::ReadPrimTriStrips.
...
This does the index mangling for reading tristrips.
2014-11-19 14:40:42 +01:00
Johannes Ebersold
0f40dcca7e
Add calculation for nuber of Primitives for TriStrips
2014-11-19 14:40:42 +01:00
Johannes Ebersold
7c4bf383d7
Move vertex copy operation into switch statement.
...
We will be adding special handling for Tristrips in an upcoming commit,
which unfortunately doesn't map to a common copy loop as it is.
2014-11-19 14:40:42 +01:00
Johannes Ebersold
4ef244f672
Extract function ColladaParser::CopyPrimitive
2014-11-19 14:40:42 +01:00
Johannes Ebersold
70d2c8571b
ColladaParser::ReadPrimitives: get rid of "idx" iterator.
...
We will be adding non-sequential access to the indices vector in one of the upcoming commits.
2014-11-19 14:04:49 +01:00
Johannes Ebersold
543bd5c0d0
ColladaParser::ReadPrimitives: rename "a" to currentPrimitive
2014-11-19 13:51:22 +01:00
Jared Duke
c7b6b5ea2f
Support lowercase 'ns' and 'ni' obj material tokens
...
Previously, the obj material parser would interpret all key tokens
starting with 'n' as 'newmtl' tokens. However, there are other tokens
that can start with 'n', namely 'ns' and 'ni' for material properties.
Make the parser robust to such cases, despite their canonical forms
being uppercase.
Resolves #410 .
2014-11-18 16:56:46 -08:00
Kim Kulling
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
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