Commit Graph

1141 Commits (de914d375f3e73379869f7bb21b0252e14f7f0be)

Author SHA1 Message Date
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
George Papadopoulos 02c4344d1d detect FBX glossiness map (ShininessExponent) 2014-02-14 15:15:18 +02: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