Joe Schutte
640698ba57
Fix compile error that clang caught.
2018-09-03 13:22:46 -07:00
Joe Schutte
78fe5e7f04
Fix expensive memory allocation and memory copying occurring in obj files with a large number of meshes.
2018-09-03 11:33:56 -07:00
Jeka Vlasov
102486005d
Fix memory leak on throw
2018-08-15 03:40:39 +03:00
Jeka Vlasov
2b15586e6b
Replace memcpy_s with memcpy to fix build with gcc 4.8
2018-08-15 01:22:28 +03:00
Jeka Vlasov
d25083dba9
Add point cloud support for OBJ importer
2018-08-13 00:18:12 +03:00
Max Vollmer
52c017b595
Added check to BaseImporter::SearchFileHeaderForToken making sure that a detected token is not in fact just a fraction of a longer token. Microsoft exported binary gltf files were detected as OBJ, because the "gltf " in the string "Microsoft GLTF Exporter 2.4.1.7" was detected as the token "f ". I added a new bool parameter to the method enabling this check. It's default false, and only ObjFileImporter sets it to true, so no other code should be affected.
2018-06-25 12:05:37 +02:00
Kim Kulling
ce11aa51f5
add win32-based make script.
2018-05-07 00:07:41 +02:00
kimkulling
30c20eb5fc
INtroduce new log macros.
2018-04-26 14:10:18 +02:00
Kim Kulling
af3bba1572
fix review findings.
2018-03-20 23:38:08 +01:00
Kim Kulling
b049933d2f
update license dates.
2018-01-28 19:42:05 +01:00
BuildTools
66171de915
Successful lib build, unit testing still WIP
2018-01-05 16:18:33 -08:00
Alexandre Avenel
20ef807982
Remove assertion in ObjFileImporter
...
This assertion is already handled by an exception, and could lead to a
crash when parsing an ill-formed OBJ file.
2017-12-29 17:56:30 +01:00
Faule Socke
4a65e76ca7
Fix buffer overflow in obj loader
...
The overflow-checking code in ObjFileImporter::createVertexArray is at
the wrong position, allowing buffer overflows in preceding code.
This fix moves the code to the right spot.
An actual overflow can be caused by usign some more bugs and weird
behaviours and injecting a malformed line statement into the object
file, containing only one index. Such a malformed file could for
example look like:
o 1
v 0 0 0
v 1 1 1
v 2 2 2
l 1
f 1 2 3
Because the code in ObjFileImporter::createTopology incorrectly handles
line-type faces containing only one index (in line 364), it
underestimates the number of required indices and therefore causes the
buffer allocated in line 421 to be too small.
I believe, the correct fix for this would be in the parser and
rejecting such faces early. However the overflow check was misplaced
anyway.
If you can't reproduce a crash, just insert some more "l 1" lines
before the "f 1 2 3" line until it crashes. The behaviour of heap buffer
overflows strongly depends on memory layout and allocation history.
2017-12-23 17:57:48 +01:00
Turo Lamminen
c44522d4db
ObjImporter: Fix possible memory leak
2017-12-19 19:38:38 +02:00
Turo Lamminen
65ffeaa81e
ObjImporter: Use unique_ptr
2017-12-19 18:24:03 +02:00
Kim Kulling
a2b8d66a86
Update license info.
2017-05-09 19:57:36 +02:00
Tyson Grant Nottingham
8445db2cd9
Set UVW index material properties for OBJ files.
2017-04-21 01:09:26 -07:00
Kim Kulling
bb7f387bcf
Merge branch 'master' of https://github.com/assimp/assimp
2017-03-11 22:13:48 +01:00
Antoine Bolvy
5dd1bb9d6c
Export DefaultIOSystem and move it with DefaultIOStream to include/ instead of code/
2017-02-28 11:44:04 +09:00
Kim Kulling
ef540f46a3
Remove unused headers.
2017-02-22 17:20:26 +01:00
Henryk Blasinski
17cae8ac5a
Added support for parameters Ni and Tf in OBJ/MTL file format.
2017-01-12 17:11:17 -08:00
Giuseppe Barbieri
b1d5390413
Update ObjFileImporter.cpp
2016-12-09 19:31:07 +01:00
Jared Mulconry
98e7eb476d
Merge branch 'master' of https://github.com/assimp/assimp into implementation_warning_fix
...
# Conflicts:
# code/ObjFileImporter.cpp
2016-11-27 13:00:33 +11:00
John Senneker
1541db01cc
Remove scaling of specular exponent in OBJFileImporter.cpp
2016-11-25 10:56:11 -05:00
Albin Bernhardsson
3b49dfe93e
Comment out unused variables
2016-11-24 14:10:24 +01:00
Jared Mulconry
0c13322089
Fixed build warnings on MSVC14 x64 in the Obj format sources.
2016-11-20 12:29:26 +11:00
Kim Kulling
ae956044aa
ObjImporter: remove unnecessary allocations of std::vector in obj-specific
...
face.
2016-11-09 20:09:45 +01:00
Kim Kulling
33e370a8b7
Obj-Stream-Handling: fix readin of linewise import.
2016-10-21 21:14:35 +02:00
Kim Kulling
905e48a35c
Buffered stream API for big files: add next try of a prototype.^
2016-10-11 12:29:40 +02:00
Kim Kulling
ad4d1f717f
Obj-Import: finish first prototype of IOStreamBuffer.
2016-10-10 10:18:14 +02:00
Kim Kulling
0bae2bbfa7
Obj-Importer: start new streaming handling.
2016-10-07 09:19:10 +02:00
Kim Kulling
0f2cea7ba6
Blender: revert fix for suspicious crash in blender on windows.
2016-09-06 10:42:02 +02:00
Kim Kulling
243df452a4
GeometryBuilder: fix update of vertices.
2016-08-25 18:20:52 +02:00
Roy Shilkrot
7d98643bcf
adding support for per-vertex colors.
2016-06-27 20:08:22 -04:00
mensinda
5dacda0a08
replaced boost smart pointers with c++11 smart pointers
2016-04-05 23:23:53 +02:00
Robert Liebo
abb3e6b854
[VCS-1030] fallback for non-found .mtl file: try file name of original obj with just the file extension replaced by "mtl"
2016-03-22 18:38:28 +01:00
Thiago Goulart
3c9e57fd73
Fix memory leak in OBJ loader when a mesh has no faces.
2016-03-04 03:40:47 -08:00
Kim Kulling
1550191256
Closes https://github.com/assimp/assimp/issues/777 : fix invalid skipping
...
of line during face defintion parsing.
2016-02-08 18:07:00 +01:00
Kim Kulling
37a3976b30
Revert "Fix issue: OBJ import takes forever ( #759 ) (attempt 2)"
2016-02-07 20:03:24 +01:00
Andrew Parlane
109f6feb6e
ObjFileParser: Moved the parsing of line continuations (backslashes) to the parsing code.
...
Rather than removing all backslashes followed by newlines from the buffer,
and then parsing it. Handle removing the backslashes as we go. This means
we don't need to erase the backslashes from the buffer (which is O(n))
instead we just skip those characters as we parse the buffer line by line.
This time I've fixed the order of evaluation bug in the call to getFace().
2016-01-25 20:44:31 -04:00
Andrew Parlane
1632f1fbb9
ObjImporter: Added better progress reporting during file import.
...
There are two stages to this:
1) Processing '\'s - this accounts for 1/3rd of the file import progress.
2) Parsing the file data - this accounts for the other 2/3rds.
2016-01-11 12:21:24 -04:00
Kim Kulling
1191d03405
Update license info.
2016-01-01 21:07:24 +01:00
Łukasz Twarduś
3274bcf8d6
Properly build path to the mtl file when loading loading obj
2015-10-25 20:04:50 +01:00
Francesco Guastella
2750f8da24
Added support for reflection maps for OBJ files
2015-10-15 15:46:35 +02:00
Kim Kulling
e4510c26ba
Obj-Importer: fix https://github.com/assimp/assimp/issues/641
2015-08-30 15:21:53 +02:00
Turo Lamminen
0b0ba2ec4d
Refactor logic which checks for too large allocations
...
It's now easier to change the limit
2015-08-14 11:53:16 +03:00
Turo Lamminen
5575a54466
Add various checks to avoid either too large or zero-sized memory allocations
2015-08-14 11:53:16 +03:00
Kim Kulling
5a207dbb19
Merge branch 'master' of https://github.com/assimp/assimp
2015-07-10 01:21:57 +02:00
Kim Kulling
14a849b398
Obj-loader: change include brackets.
2015-07-10 01:21:10 +02:00
Kim Kulling
e138a02dd5
Obj: fix issue 121 - set group names as the mesh names.
2015-07-09 20:15:44 +02:00