8000 Possibility to choose Graphics backend at runtime · Issue #1397 · urho3d/urho3d · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
This repository was archived by the owner on Jan 25, 2023. It is now read-only.

Possibility to choose Graphics backend at runtime #1397

Closed
amerkoleci opened this issue May 29, 2016 · 102 comments
Closed

Possibility to choose Graphics backend at runtime #1397

amerkoleci opened this issue May 29, 2016 · 102 comments
Labels
запрос функционала улучшение Улучшение существующих вещей
Milestone

Comments

@amerkoleci
Copy link

Would be nice to separate graphics backend and allow the possibility to choose on Windows platform DirectX, OpenGL or even Vulkan in the future, now we can compile only one backend per library.

@damu
Copy link
Contributor
damu commented May 30, 2016

Could possible be done by linking dynamically against Urho+Backend and dynamically loading the corresponding DLL (like UrhoDirectX11.dll or UrhoOpenGL.dll) depending on the settings on application startup before loading Urho.
Would that work currently somehow? Could be easier as changing Urho to include multiple backends.

@cadaver
Copy link
Contributor
cadaver commented May 30, 2016

Currently the graphics class headers (e.g. Texture) are subtly different in their memory layout so this would cause trouble in practice. To work properly (and be certain that things continue to work) it'd need refactoring to a base class which the API-specific implementations inherit.

There would be a runtime-penalty to pay, since it would practically force all implementation functions to be virtual.

@iSLC
Copy link
Contributor
iSLC commented Jun 4, 2016

I would prefer if it stays as it is. This actually one of the things I like about Urho. It doesn't bother with fancy stuff but rather stick to being a fast and functional. There are plenty of engines out there bloated with this kind of "fancy" features and all of them suck. @damu offered a perfectly viable solution to this.

It's not as if you're going to stop in the middle of the game and be like "oh snap. gotta switch to dx9. oh wait, I liked opengl better. or do I? let me try one more time." and so on...

You only chose the render device at startup which is perfectly fine to do with a custom launcher.

@PlasmaDev5
Copy link
Contributor

@iSLC I don't the use for such a feature is on the game side but more the developer side. For example I work on the graphics side alot so when I make a change I have to compile the engine 3 times and maintain duplicates of the engine. Just a pain when trying to be productive.

@cadaver
Copy link
Contributor
cadaver commented Jun 6, 2016

If I'm developing / testing shaders, I typically just make copies of the Urho3DPlayer.exe (eg. UrhoD3D9, UrhoGL). Doesn't help if you actually need to make engine changes though.

@PlasmaDev5
Copy link
Contributor

@cadaver thats part of the reason i feel compiling into DLL files that can be swapped either in the application start up code or as cmd options would be extremely useful

@cadaver
Copy link
Contributor
cadaver commented Jun 6, 2016

Yes, but it's a bit dubious to make a change that has negative performance impact (granted, not necessarily large) only for the sake of engine developers. Typically a project using Urho would stick to one renderer API per platform they're developing on.

@PlasmaDev5
Copy link
Contributor

i understand your point but i personally feel performance vs productivity is always a hard choice but in this case the performance inpact is so mall and the productivity games for not only engine developers but people that want to develop across platforms will be able to benefit. it also mean that if we have a renderer template then adding new backends such as DX12 and Vulkan becomes alot easier

@1vanK
Copy link
Contributor
1vanK commented Jun 6, 2016

Personally, I absolutely do not need the support of both the APIs at the same time, for the reason that I think counterproductive rewriting shaders for them when OpenGL is the most universal. But if I would be need both of API, I will build two versions and make simple launcher (like Unity) for choice therebetween.

@cadaver
Copy link
Contributor
cadaver commented Jun 6, 2016

It's also a potential architectural and maintenance cost, since on some platforms (eg. iOS) you likely don't want to use a renderer plugin, so there would be both static & dynamic renderer linking codepaths.

However @dragonCASTjosh if you want to work on this I wouldn't say "no" outright, but if you'd make a PR it would be evaluated for fitness to include in Urho. Probably the performance concern would be the least; the architectural changes would be more strictly evaluated.

@PlasmaDev5
Copy link
Contributor

i may look into it once i have finished with my current PBR improvements

@damu
Copy link
Contributor
damu commented Jun 8, 2016

Hmm should have reacted to cadavers response sooner and/or watched my mails... :-/
Typical endless loop of "ah, I'll look at that later".

I just looked at Texture.h in all three implementations. They don't look that time critical so that some indirect function calls would have a significant impact. Are there other places where it would be relevant?
There are already many virtual functions like with all those Drawables. (BTW those virtual calls could be (theoretically) completely avoided by being a bit "data oriented" and using a list for every implementations like StaticModel with all instances so that the function calls are less virtual or not virtual at all.)

Also maybe some (more) functions could be in the common base to have less virtual functions.
Also the identical data in the Texture (and others) could be reordered or moved to the base so that at least the "common part" has the same memory layout.

It's also a potential architectural and maintenance cost, since on some platforms (eg. iOS) you likely don't want to use a renderer plugin, so there would be both static & dynamic renderer linking codepaths.

Can't Urho already be build to be linked dynamically or statically?
Or do you mean only separating the renderer into a dynamic library? I meant having one library with Urho combined with a renderer in it as that should require less work. Only the users code would have to work with Urho+different renderers without having to be rebuild. Sure that would mean having the Urho code in binary form multiple times in different library files but who cares about that bit of disk space when normally >95% are assets anyway.

@cadaver
Copy link
Contributor
cadaver commented Jun 9, 2016

For a renderer plugin to be properly implemented in the traditional way also all of Graphics (SetVertexBuffer, Draw...) would need to be virtual, and these are called thousands of times per frame. Just for the Texture class the impact is minimal.

To rather make the Urho library interchangeable no matter what the graphics API could in fact be very desirable, as it could also lead to less code duplication inside the Urho codebase. In this case we'd just need to make sure the Graphics folder headers are all completely graphics API agnostic. Where necessary there could be a private implementation that changes depending on the API. Not 100% sure if this can be pulled off without trouble, but I would say this is the way to go, instead of trying to get a runtime switchable plugin and virtuals everywhere.

@damu
Copy link
Contributor
damu commented Jun 9, 2016

Yes. The headers "normally" used by applications would have to be graphics API agnostic. There may be cases though where an application wants to directly do very special DirectX9/DirectX11/OpenGL stuff and use "private" API specific headers. These headers should of course have to be used in a way so that the user is aware that he leaves "API-independent-land" (like subfolders with the API names or class-names or namespaces).
So it's "just" about (better) separating shared code and API specific code. This should theoretically also ease adding APIs like Vulcan, Mantle or DX12 as dragonCASTjosh already mentioned.

To avoid virtual functions, function pointers, or ifdef's there could also be templates be used to have a compile-time polymorphism. Practically like ifdef's but with type safety and slightly better errors. Compile time costs should not (really) be different.

There's a BGFX library which is an graphics API agnostic abstraction for many different graphics APIs: https://github.com/bkaradzic/bgfx
I don't know how they do it but they may have a good solution. Theoretically Urho could also use BGFX (or parts of it) to outsource graphics API handling, if BGFX is usable / good enough. I've not yet used BGFX.
Does someone know BGFX? Could that be a possible better approach as doing own API abstraction?
I have the feeling that Urho and BGFX are partly quite overlapping as Urho already has some kind of API abstraction.

@PlasmaDev5
Copy link
Contributor

BGFX would be nice to have although not sure what @cadaver will think as it would require rewiring the entire renderer as BGFX handles things differently to Urho3D. I was looking into it for the Atomic guys and found it would be alot of work although after talking a little with the developer of bgfx we found it would be easiest to start from the OpenGL renderer.

BGFX is an amazing systems and i can help with building the renderer (maybe add PBR as standard, and other eyecandy) kinda treat it as a Urho3D renderer 2.0.

@damu
Copy link
Contributor
damu commented Jun 9, 2016

kinda treat it as a Urho3D renderer 2.0.

Sounds a bit like the overhaul the Ogre guys are doing.
Cavader mentioned elsewhere that Urho currently does the classical game engine way of doing things, in contrast to some other engines that go a more "modern" data oriented approach which gives more performance but makes usage harder.
The Ogre guys are working on their overhaul for many years. Is there something else that potentially would improve Urho as well? When changing the renderer this may be an opportunity to do there other changes as well.

Is there a piece in Urho where data oriented could be kinda easily be tested out and give a significant performance impact? I kinda think there is a way to have simple usage like currently (maybe no change on the user side at all) and still be data oriented (enough) to get a speed boost.

@cadaver
Copy link
Contributor
cadaver commented Jun 9, 2016

I have been away for some years from most "cutting-edge" graphics programming developments but I understand Ogre V2.x is based on the AZDO principles. In their implementation textures are put into arrays automatically by the material system, and large vertex buffers are managed by the engine to concatenate multiple meshes into. This certainly sacrifices usability for the cases where you would just want a straightforwardly functioning material/texture/vertex buffer setup, but I can't speak knowledgeably of the performance benefits.

A real world renderer has to access things like lights, occlusion, zones etc. which causes the CPU-side memory bandwidth access to grow and an "ideal" data oriented system isn't suddenly that easy to design. My gut feeling is that you would need to have many systems (physics, AI, animation, rendering) designed to work together in a data-oriented manner to start seeing noticeable gains, so e.g. experimenting with just rendering may not tell you a lot.

And finally, I think realistically for a large scale rework of Urho someone else has to take over as the project lead, because I don't think I'm going to spend anymore the (large) amount of time that would be needed for that. Consider this as an opportunity.

@PlasmaDev5
Copy link
Contributor
PlasmaDev5 commented Jun 9, 2016

im happy to step in and take point on a rendering rewrite, i dont feel i know Urho enough to touch other areas

maybe set up a group of lead developers one for each area of the engine.

@cadaver
Copy link
Contributor
cadaver commented Jun 9, 2016

In essence we already have multiple core / lead devs with their specialties, ie. me rendering & overall, @weitjong the build system, and @hdunderscore input & web.

A rendering rewrite would not necessarily be that big if the API facing the rest of the engine is kept mostly same, but what I mean with a real rework is when the whole engine would be changed to a data-oriented / multithreaded design, at which point the things you'd have been used to, like doing a single-threaded FixedUpdate script callback from the physics simulation, would cease to exist and be transformed into something else. Note that I'm not even sure if that's desirable, because certainly there are game ideas which don't need maximum power, but instead just simplicity & usability of the API, to which the current Urho is very suitable.

@PlasmaDev5
Copy link
Contributor

How is Urho at the moment at least 7 years i think its due a modern overhall. Multi-treadding has become a core part of modern engines and modern hardware. Alot of the current urho frontend is great for users and wouldnt need much in a overhall but the backend is old, and we have a chance to bring it to modern ideals. I like the idea of a overhall

@cadaver
Copy link
Contributor
cadaver commented Jun 9, 2016

The devil of "overhauling" is in the details, though. For example, when you want to separate rendering and logic threads, you will likely end up writing proxy classes for the render thread side of drawable objects (or vice-versa), which easily increases the total amount & complexity of the code, and when you want to separate game logic and physics to run parallel, you no longer have convenient access to fixed-step callbacks. See for example Unreal4 code for reference.

@PlasmaDev5
Copy link
Contributor

i feel that complexity will likely go up i dont think it will be anywhere near as complex as UE4, it there problem was they was focusing more on the end result then letting people use the backed. With Urho one of the core selling point is easy to access and use Source and any overall made would have to keep the source usable.

I think Naughty dogs system of vibers may be a good way to go for the treadding. it will lower complexity compared to engines like Unreal

@damu
Copy link
Contributor
damu commented Jun 9, 2016

Whoa that took an unexpected turn...

Ah now I get the Data Oriented Engine stuff a bit better. That's sounds like more work as I thought. I thought about using less virtual function calls (in time critical parts) by having lists of specific implementations (like StaticMesh) and saving some time with that. I guess that would not save that much when it's more about doing everything multithreaded an giant data blobs instead of small blobs per object.

I also value usability quite high. How is this instancing and StaticMeshGroup compared to Data Oriented? Could something like such optional grouping be used to have texture arrays and mesh concatenation? Would that give some AZDO / Data Oriented benefits while preserving alternatively the "easy approach"?
Do all parts have to work with this concatenation at once or would it be possible to for example let some systems like the physics one still see parts of the arrays as individual vertex buffers to safe work and upgrade part by part while "keeping usable"?

About the developer and lead developer thing: The really hard thing is to keep active. Most developer drop projects after a while or when the projects reach a certain state ("good enough for what I need").
Sure with more manpower there would be much more possible. But maybe there is a way to take small steps instead of doing a year long freeze like Ogre did. (which BTW originally moved me from Ogre to Urho).
With steps it could be like:

  • introduce a more data oriented "mesh group type". (all systems still use each object in there individually like now)
  • let the renderer handle the group as one big mesh to safe time and work. Possible sub-steps: Combine textures. Combine vertex buffers. ...
  • more steps for physics, animation and possible other parts

@cadaver
Copy link
Contributor
cadaver commented Jun 9, 2016

I believe that you'd need a real-world complex application that stresses the engine and brings out the slow spots, to see what actually needs to be improved, or can be improved. For the Ogre 2.x specific things, I actually recommend you to experiment with it (or for starters, just read the developer forum); I don't think I'm qualified to comment much deeper. In favor of keeping things simple I would think that any texture array / mesh combining should be done as a preprocess by the developer (possibly using a custom tool) and not automatically by the engine at runtime. By testing with and without this processing you could see the performance difference, if any.

A year or so ago I replicated the HugeObjectCount test in Ogre 2.x and it was somewhat slower than Urho. In both engines, this stresses the culling and renderqueue by having a large number of similar objects, which the renderqueue then notices: hey same mesh and material, these can be instanced. This is arguably far from a sensible real-world application, but it reveals the upper bound of renderer internals' performance (ie. when you have different meshes and materials, it's necessarily going to be slower)

@PlasmaDev5
Copy link
Contributor

I may take up to work of overhauling Urho, ill likely start the end of next week but everyone is free to contribute. Also Cadaver you input as progress happens is largely welcome as it is your engine :) if things are to different to your requirements i will host it as a different "flavor" of Urho

@cadaver
Copy link
Contributor
cadaver commented Jun 10, 2016

Sure, you're welcome to do that. For actually merging large changes into mainstream Urho I'd say there needs to be quite widespread argument from both users and developers that it's wanted (since it's likely that e.g. scripting is out in a completely task-based system) but you're always free to host your own fork.

@PlasmaDev5
Copy link
Contributor

i was going to post on the forums to see what people want but i seams to be down for me

@cadaver
Copy link
Contributor
cadaver commented Jun 10, 2016

I suggest to be quite specific and have a plan of what exactly are you going to change, because if you post a vague plan then I guess most users would respond with a vague "yes" without understanding what is exactly going to change. Compare to when Dark Sylinc started the Ogre2.0 work, he had prepared a pdf of about 100 pages - no need to go to those lengths, but to have some idea of the scope.

Alternatively you can just start working and let the code speak for itself, if the changes are good, I'd suspect you would get users behind it even if it's not in the mainstream Urho repo for some time being.

@PlasmaDev5
Copy link
Contributor

i way write up a small document on my plans and maybe have an area for suggestions and things we haven't considered

@cadaver cadaver added the улучшение Улучшение существующих вещей label Jun 10, 2016
@OldSnake22
Copy link
OldSnake22 commented Nov 28, 2017

@boberfly and @rokups I see that you are working actively on BGFX implementation and this is great ! Can you provide me some information about when do you think it will be ready ? What is still left to do ? Thank and keep up your good work.

@rokups
Copy link
Contributor
rokups commented Nov 28, 2017

Hey @OldSnake22. Just today @boberfly managed to get some visible result - a red screen, so it is quite a while away. All i know is that @boberfly seems to be about finishing shader stuff at the moment. He can comment more in depth when he wakes up.

@boberfly
Copy link
boberfly commented Nov 28, 2017

Hey, yea just smashing at the debugger, pretty much everything is implemented in some wip form, including shaders but just trying to get the hello world to render right now. Maybe some time this week we'll get something resembling an alpha? Then once I progress to the more complicated examples I can stress-test the more complex render paths/framebuffer stuff and fix up any shader errors.

I'm getting GL3/DX11 to work first, then I'll need to bring over the checks for mobile/GLES2/GL2 so they work as intended and then polish++

@OldSnake22
Copy link

Perfect ! Thank you both for your answers. This will be a nice christmas present ;)

@boberfly
Copy link

urho_bgfx

@OldSnake22
Copy link
OldSnake22 commented Nov 28, 2017

@boberfly Nice im sure that you will have a hello world working example very soon ;) Can you keep us informed about the progress on this thread as you make some progress ? Thank you.

Beside this BGFX base implementation are you planning to add some features like geometry / compute shaders for example ?

@boberfly
Copy link
boberfly commented Dec 1, 2017

Still plugging away btw with small fixes here and there. The red is gone (.Uint() on a colour is a different order so alpha became red). I am stuck right now with a few things and renderdoc doesn't give me enough info.

@boberfly
Copy link
boberfly commented Dec 1, 2017

urho_bgfx4

Yay screenshot...
https://github.com/boberfly/Urho3D/releases/tag/0.0

If you want to make renderDoc log dumps, make a temp dir in Debug and hit F11...

@OldSnake22
Copy link

Really hope you can sort it out :) Good luck !

@boberfly
Copy link
boberfly commented Dec 1, 2017

urho_bgfx5

@boberfly
Copy link
boberfly commented Dec 7, 2017

urho_bgfx6
bgfx dx11 vs urho dx11

@eugeneko
Copy link
Contributor
eugeneko commented Dec 7, 2017

@boberfly Great! I must test it. But... where is FPS?!

@OldSnake22
Copy link

Congrats ! +1 for the FPS comparison please :)

@bkaradzic
Copy link

@eugeneko FPS is on screenshot on the left (actually a lot of info there, for example red text means it's debug build)

@aurodev
Copy link
aurodev commented Dec 7, 2017

2320.13 FPS for a single instanced cube 🥇 Lol!

Just getting this into/underneath Urho is awesome! Good work!
Hopefully the actual changes to the API, xplat etc., when this is integrated, will be minimal.

@boberfly @bkaradzic Thanks!

#urhorocks

@bkaradzic
Copy link

@aurodev Yeah this scene is not really good perf test, + he has 1080 which is quite high end.

@boberfly
Copy link
boberfly commented Dec 7, 2017

Yep no benchmarks yet, instancing is not in yet plus I need to fix things first like the projection matrix (the moment you move the camera it all breaks)... :)

@1vanK
Copy link
Contributor
1vanK commented Dec 8, 2017

Is it works as additional layer?

Standart: Engine > Graphics API > OpengGL, DirectX
With Bgfx: Engine > Graphics API > Bgfx > OpengGL, DirectX, Vulkan

@bkaradzic
Copy link

Nope, what's there "Graphics API" becomes bgfx, and what's scene becomes simplified because switch from imperative to declarative API, and functionality that's moved inside bgfx (sorting, state tracking, etc).

@1vanK
Copy link
Contributor
1vanK commented Dec 8, 2017

I'm not sure I completely understand. Will scene node system be changed?

@bkaradzic
Copy link

Not user facing / high level, but internals / guts, since it does redundant stuff. Output result should not change.

@1vanK
Copy link
Contributor
1vanK commented Dec 8, 2017

since it does redundant stuff

for example?

@bkaradzic
Copy link

See above:

and functionality that's moved inside bgfx (sorting, state tracking, etc).

@1vanK
Copy link
Contributor
1vanK commented Dec 8, 2017

Sorting of batches is done in several lines. Why use for this additional library?

p.s. I somehow thought that bgfx have Vulkan, but now I looked into the repositories and did not find it

@bkaradzic
Copy link

You get all Urho rendering features already supports + D3D12, Metal, (and Vulkan after it's done: https://github.com/bkaradzic/bgfx/blob/master/src/renderer_vk.cpp)

Then you get ability to switch rendering backend, choose GPU (for multi-GPU machines) in runtime (see issue title above).

You get unified shader language, so authoring shaders is done once, not once per rendering backend.

You get ability to submit rendering draw calls from multiple threads.

Switch from imperative to declarative API allows you to simplify scene graph, so you don't need to iterate multiple times over the same objects, and can submit all passes at once during single pass.

You actually get someone to maintain renderers, since project lost someone who was doing that.

@1vanK
Copy link
Contributor
1vanK commented Dec 8, 2017

Thanks for clarifying

@boberfly
Copy link

Currently it is GraphicsAPI > BGFX > DX/GL/etc. so not much changes at all to keep the other ones working side by side, however there are parts which are bypassed like the sorting found in Batch.cpp is now delegated to BGFX, and any GL/DX-specific parts are now checked using caps.

@PlasmaDev5
Copy link
Contributor

imagine it is set up this way as an initial pass so its easier to get things up and running. In the long run do you plan to remove Urhos abstraction layer in favor of direct BGFX access?

weitjong added a commit that referenced this issue Mar 12, 2018
77ade9603d Modify Assimp's build script to integrate with ours.
cb31a7cf82 Remove unused files/directories.
80799bdbf9 Merge pull request #1631 from assimp/kimkulling-410_prep
e8139ef515 Update utVersion.cpp
65d29c5420 Update CMakeLists.txt
406a06705e Update Doxyfile.in
28b01cbdd1 Update to 4.1.0
899748c651 Merge pull request #1627 from assimp/kimkulling-patch-2
0c2f4abe78 Update CREDITS
bd8d3025bd Merge pull request #1622 from assimp/fix_model_xml_3mf
972d8517b5 fix the model xml
3d4256a7a7 Merge pull request #1620 from assimp/issue_1619
0588d6cccf FBX: closes assimp/assimp#1619: return correct index for embedded textures.
26cdec5633 Merge pull request #1618 from assimp/3mf_export_fixes
c23c63e821 fix correct folder naming scheme.
95e9cd75fa 3MF: fix working test for 3MF-export.
d3833fe804 Merge pull request #1611 from assimp/kimkulling-patch-2
36cddcc8b7 Update miniz.h
fe6608175b Update miniz.h
a59f0b29d5 Merge pull request #1604 from assimp/kimkulling-miniz-memoryaccessfix
98cb898463 Merge branch 'master' into kimkulling-miniz-memoryaccessfix
b92c3ca161 fix invalid op
75b31377fc Merge pull request #1606 from elect86/patch-16
b8ab90ae4b Merge branch 'master' into patch-16
ed361f0b53 Merge pull request #1608 from turol/analyze
45f2f31011 miniz: Remove some dead assignments
26f749fcd2 Re-enable Clang static analysis
5702b907d4 Merge pull request #1607 from turol/unique_ptr
2c3558fdd0 Remove ScopeGuard
b60d84a8a2 C4D: Replace ScopeGuard with std::unique_ptr
bd4f024562 XGLLoader: Replace ScopeGuard with std::unique_ptr
e8eccfa27d FBX: Replace ScopeGuard with std::unique_ptr
6f50be82aa 3MF: Replace ScopeGuard with std::unique_ptr
f35d5952dc BlenderLoader: Replace ScopeGuard with std::unique_ptr
af8e297e0f BaseImporter: Replace ScopeGuard with std::unique_ptr
42c1c733b9 Update MD3Loader.cpp
77b0aa4f4b Merge pull request #1602 from Matter-and-Form/fix/multibody-binary-stls
2897433358 Update miniz.h
4811c0bdd1 Merge branch 'master' into fix/multibody-binary-stls
4fe91f7a5b Merge pull request #1598 from assimp/export_3mf
5822d1920e Update STLLoader.cpp
915ee95ad3 Fx nullptr dereference.
5aa84a2610 Merge branch 'export_3mf' of https://github.com/assimp/assimp into export_3mf
ac23034816 fix the exporter unittest when the export is disabled.
c27fda62e5 Merge branch 'master' into export_3mf
9be69a90b1 Merge branch 'master' into fix/multibody-binary-stls
9d224f6ac5 Merge pull request #1603 from Matter-and-Form/fix/gltf-node-name-conflict
46caecdf35 enable compiler switch test for no exporter requested.
98e98dc40c Fix node names sharing same name
5c9ed540b2 Add test for GLB import
67c236647d Restore import of multi mesh binary STLs
59dcfefeb2 fix unaligned memory access.
fd2da59427 fix unaligned memory access.
b5e79c3cb6 fix invalid include
ddd23fad3f Merge branch 'export_3mf' of https://github.com/assimp/assimp into export_3mf
e442f5838f Merge branch 'master' into export_3mf
e17f7010d1 Merge pull request #1599 from assimp/kimkulling-verbose-analyze
ef4842e128 Update .travis.sh
6a2cd1c91d Update D3MFExporter.cpp
9bd9b3d99c Merge branch 'master' into export_3mf
e6381b7616 Merge pull request #1594 from Matter-and-Form/fix/gltf2-transforms
4b6e49ca7b Update D3MFExporter.h
4f972661e8 Update D3MFExporter.cpp
7a395e274f Merge branch 'master' into fix/gltf2-transforms
3e9bb23688 Merge pull request #1595 from Matter-and-Form/fix/gltf2-preserve-node-names
8ce5985aa0 Merge branch 'master' into fix/gltf2-preserve-node-names
890920110c Merge pull request #1596 from Matter-and-Form/feature/gltf2-tangents
09f7769820 remove unused attribute.
8e413ac1e3 Merge branch 'master' into export_3mf
7280dec838 fix unittest.
3dfca3bc84 3MF: add export to a given archive.
0031165789 Add support for tangents in glTF2.0 import
0b04ae1d91 Preserve node names when importing glTF2.0
e53d4735b0 Fix transform matrices multiplication order per glTF2.0 spec
0ce3641deb Merge pull request #1589 from aavenel/fix-typo-gltf
623b5a515a Merge branch 'master' into fix-typo-gltf
44b38263a5 Merge pull request #1590 from aavenel/fix-cmake-unit-win
b9845285ca Merge branch 'master' into fix-cmake-unit-win
a41bef0d54 Merge pull request #1591 from aavenel/fix-warnings-win
eb452b28a2 Fix warning on MSVC14
d529dd17f9 Fix warning cast double to float
273f6b0267 Fix MSVC14 warning cast double to real
f80e8b39a1 Fix warning C4138: '*/' found outside of comment on MSVC14
c63263b025 Fix typo on gltf2 camera parameters
d8d5cf1a2d Copy assimp dll to unit folder on windows
6c59c83e0f add missing include
0bdb375804 Add missing file export into archive.
09a5946dbd Prepare archive structure.
35819340aa Merge pull request #1588 from elect86/patch-15
ad2223f1c5 Merge branch 'master' into patch-15
a1c1ad74bd Merge pull request #1582 from mrautio/master
fdb52723c4 Update Readme.md
d180cfcba5 Merge branch 'master' into master
ed4e6b0db0 Merge pull request #1580 from assimp/scene_combiner_crash
e35f789ace Merge branch 'master' into scene_combiner_crash
ac37977230 Merge pull request #1575 from elect86/patch-12
454b8919b0 use one header for all xml-tags.
6da4258206 Merge branch 'master' into patch-12
a2ba3d630d Merge pull request #1586 from turol/validate
b474e75e29 3Mf-Export: add prototypes for relations and rest of 3MF-document.
127705d347 Unit tests: Enable data structure validation in cases where it doesn't cause failures
a7be5b527f add missing return statement.
9ca7b00280 Merge branch 'master' into export_3mf
c22b4acd47 3MF: Export initial commit.
70d9df868d Merge branch 'master' into patch-12
4cf8e10235 Merge pull request #1585 from pdaehne/master
ba3acd7459 Merge branch 'master' into patch-12
a05d74a281 [glTF2] Moved byteStride from accessor to bufferView
beff88228d Merge branch 'master' into master
4502d72ee6 Merge pull request #1584 from pdaehne/master
6cbfd5b977 [glTF2] Implemented reading binary glTF2 (glb) files
9f1dce8e57 Merge branch 'master' into master
4fb5038fb1 Add support for building Mac OS X Framework bundles
2a9f79f958 check for 0 properties before copy them
55c9761228 Merge branch 'master' into patch-12
9707fde709 check for nullptr dereferencing before copying scene data
e1837b6cc8 Merge pull request #1576 from elect86/patch-13
65d6daa414 Merge branch 'master' into patch-13
b408e25a1d Merge pull request #1579 from assimp/fix_android
1a1d96d3e2 Merge branch 'master' into fix_android
a8e65a1e8a Fix android build.
864a080b45 Merge pull request #1578 from turol/warnings
8ae7231654 Blender: Silence warning about uninitialized member
2c8cc1f732 BlenderDNA: Silence warning about uninitialized member
bcffa28a33 MDLImporter: Don't take address of packed struct member
10f4b6f95c assimp_cmd: Fix strict-aliasing warnings
53119e74f8 Open3DGC: Fix strict-aliasing warnings
1067ae4bfa FIReader: Fix strict-aliasing warnings
c1515db56f Blender: Fix strict-aliasing warnings
40bb3f3d0f Unit test: Fix signed/unsigned comparison warnings
3e78bd51d4 Merge pull request #1577 from elect86/patch-14
703d046fd9 Update ValidateDataStructure.cpp
fc360b9cc8 Update ValidateDataStructure.h
b428c66f39 Update ValidateDataStructure.h
fb9a5950fd Merge pull request #1569 from assimp/issue_1513
07a99e0843 Merge branch 'master' into issue_1513
fae198ebfe Merge pull request #1572 from elect86/patch-11
d9965f6220 Update Importer.cpp
98da53e66a Merge pull request #1498 from turol/analyze
7db10022e9 closes assimp/assimp#1513: fix assimp for cross compile for android
983e52e308 unzip: Remove dead assignment
76de3e0828 clipper: Add assertion to silence a static analyzer warning
c248ae3797 unzip: Remove dead assignments
9b88715361 unzip: Bail on bad compression method
0bc259fd95 unzip: Fix possibly uninitialized variables
11fdaa31bc clipper: Add assertion to silence a static analyzer warning
fc59f190ae OpenDDLExport: Reduce scope of a variable
ef91211231 OpenDDLExport: Remove dead variable
be1d346c28 Open3DGC: Add assertions to silence static analyzer warnings
58d5d04e82 OpenDDLParser: Remove dead assignment
635a515e69 OpenDDLParser: Fix another potential memory leak
eb5f47f5c5 OpenDDLParser: Fix potential memory leak
9dadec7736 assimp_cmd: Add assertion to silence a static analyzer warning
f475803f93 X3DImporter: Add assertions to silence static analyzer warnings
66c18cc406 TerragenLoader: Remove unused variable
e47bf932e8 SIBImporter: Add assertions to silence static analyzer warnings
583d3f88b8 FBX: Remove dead assignment
ef0af40f90 IFC: Remove dead code
b49a4e1338 PLY: Remove dead assignment and reduce scope of a variable
97843f19d2 OpenGEX: Add assertion to silence a static analyzer warning
f470b8466f GLTF2: Fix signed/unsigned warning
f90019bc1e NFF: Add assertions to silence static analyzer warnings
3f299b2a2b NFF: Split up some complicated assignments
d24e0d44b2 Raw: Fix misleading indentation warning
2b93a210c9 NFF: Reduce scope of a variable
940449d837 LWO: Reduce scope of a variable
a276a02726 IRRLoader: Fix confusing boolean casting
437816fc33 AssbinExporter: Add assertion to silence a static analyzer warning
4c9f169109 ASE: Add assertion to silence a static analyzer warning
856d402b59 AMFImporter: Add assertion to silence a static analyzer warning
2c7770eed5 AMFImporter: Add a block
bd0d47c5fc Whitespace
a7fccf8f33 OptimizeGraph: Fix possible null pointer deref
10000
erence
c51b92cfa3 RemoveRedundantMaterials: Add assertion to silence a static analyzer warning
95f2319b41 ImproveCacheLocality: Add assertion to silence a static analyzer warning
c774e864a0 Remove some dead assignments
266e3b29a8 RemoveRedundantMaterials: Set pointer to nullptr after deleting it
35907e3446 Travis: Disable unit tests in scan-build config
59d1a1d819 Travis: Move slower builds earlier to improve parallelization
76919e87ea fast_atof: Silence some uninitialized variable warnings
a15bfceb7e Travis: Add static analysis to build
80ba6d10f7 Merge pull request #1567 from assimp/fix_android_build
c15c96ac76 CMake: use define for D_FILE_OFFSET_BITS only for not-android systems.
98a1b7671d Merge pull request #1558 from assimp/issue_216
24b728b3ea FindDegeneratives: adapt unittests and add configs
9206d1b62b Merge branch 'master' into issue_216
b2b671d8ad Merge pull request #1563 from assimp/fix_buggy_excape_sequence
d0ac06cbfd fix buggy escape sequence.
9756b48bca Merge pull request #1560 from assimp/source_groups_for_ut
005b537324 unittests: add VS-based source groups for the unittests.
248e26ca03 Merge pull request #1557 from Matter-and-Form/gltf2-mesh-export-fix
de1ec4ee5d Merge branch 'master' into gltf2-mesh-export-fix
f0bed87e07 Merge pull request #1559 from luzpaz/misc-typos
12dbbd4ce9 Misc. typos
ad2ff9fd71 check for area test if the face is a triangle.
30e06f7437 closes assimp/assimp#216: check the area of a triangle to check if its degenerated or not.
9ec117d0bc Fix export of deleted meshes; Add LazyDict::Remove method
9a13bf236f Merge pull request #1556 from assimp/issue_1292
5bc4e73727 Merge branch 'master' into issue_1292
bd104bda3b Merge pull request #1555 from assimp/issue_1315
ab639a71ae Merge branch 'master' into issue_1315
36475bf868 closes assimp/assimp#1292: export class subdivision
cdfd4b9702 closes assimp/assimp#1315: check in exporting against out-of-bounds-access .
191454671d Merge pull request #1511 from eevictor/master
6954c7d75b Merge branch 'master' into master
fe55bc9996 Update ColladaExporter.cpp
c11a93e73c Merge pull request #1552 from assimp/issue_1251
6b826fecfd Merge branch 'master' into issue_1251
f41ed2f41f closes assimp/assimp#1251: use correct lookup for utf32.
792523ce90 Merge pull request #1551 from larsjsol/md2_fix
29cf414468 Merge branch 'master' into md2_fix
a88a23ac7c Merge pull request #1549 from assimp/issue_104
75fdd25b6b Merge branch 'master' into issue_104
da7ce89ff2 Update STLLoader.cpp
b87e7643d2 Update STLLoader.cpp
4ff2592747 Update STLLoader.h
26171a7949 SLD: add test model and a unit test.
9a9f18bbed closes assimp/assimp#104: deal with more solids in one STL file.
10a6524300 Merge pull request #1545 from assimp/issue_213
a77d9d7b21 Merge branch 'master' into issue_213
e09349c734 Merge pull request #1544 from assimp/issue_1526
4a4f3fddc7 closes assimp/assimp#213: log an error instead of letting the fbx-importer crash.
6b04b20869 closes assimp/assimp#1526: use correct include folder for assimp.
b0e86d281b Merge pull request #1543 from assimp/issue_1533
5922200ec3 Merge branch 'master' into issue_1533
9835d28f72 Merge pull request #1542 from assimp/UnitTest_X3D
f43586305c closes assimp/assimp#1533: put irrXML onto exclucde list for doxygen run.
ab3cf3687c Merge branch 'master' into UnitTest_X3D
770f531cc6 X3D-Importer: add missing file.
2929a27edc add unittest for x3d-importer.
1e9919ce81 Merge pull request #1541 from assimp/issue_1351
02b042d78e closes assimp/assimp#1351: use correct name for obj-meshname export for groups.
abca0a79f3 Merge pull request #1538 from assimp/aavenel-unittest_obj_importer
a33e115fd1 fix mem-lead: face will be not released in case of an error.
c9ada44ab5 Fix memory leak in case of an error.
4879fe13ca Merge branch 'unittest_obj_importer' of https://github.com/aavenel/assimp
c700c08fa5 Merge branch 'master' into master
d5692ccf30 Merge pull request #1537 from assimp/Anatoscope-ObjExporter_nomtl
b7bd006304 Merge branch 'master' into ObjExporter_nomtl
eeee744e21 Merge pull request #1536 from assimp/Anatoscope-fix_trivial_warnings
4dab6f9be3 Merge branch 'master' into Anatoscope-fix_trivial_warnings
4910af3814 Merge pull request #1535 from assimp/kimkulling-patch-1
9a721d0ef4 Update .travis.yml
4587e63e2f Merge branch 'master' into fix_trivial_warnings
56674de1d8 Merge pull request #1534 from Matter-and-Form/texturefile-int-name-fix
2922753589 Return early when element is TextureFile
c86c7b4518 Update .travis.sh
d279a3cc02 Merge branch 'master' into fix_trivial_warnings
5b76a31485 fix trivial warnings
931542bf3c Merge branch 'master' into ObjExporter_nomtl
c666a05e16 Merge pull request #1524 from Matter-and-Form/invalid-texture-coordinates-cleaning-fix
ce7f379aa3 Merge branch 'master' into invalid-texture-coordinates-cleaning-fix
62e3ac9b4d Merge pull request #1525 from daeyun/daeyun-lib-dirs
bf9d319489 Update helper.py
e52e44ea07 Formatting
cc4531459f Set mNumUVComponents to 0 when deleting texture coordinate sets
938c02a358 Merge pull request #1523 from assimp/issue_1490
8be196f77d closes assimp/assimp#1490 : fix invalid access to mesh array when the array is empty.
a502560da1 Merge pull request #1520 from assimp/issue_1514
af4556d569 only scale the root node because this will rescale all children nodes as well.
64ee21024b Add missing file.
ae020281e2 Add unittest
711050de8a fix frame pointer arithmetic
4d09e61b13 Merge branch 'master' into master
99b9ba4c11 Merge branch 'master' into master
aca8f068d0 Update ColladaExporter.cpp
bbeb9dd640 Use correct lookup if scaling is enabled.
d6f5ad66b2 closes assimp/assimp#1514: add misisng flag to enable global scaling.
f49de6ecfe closes assimp/assimp#1514: add postprocess step for scaling
c1c4a5ed2a Add two unit tests for OBJ importer
89d198399c Merge pull request #1516 from Matter-and-Form/gltf2-export-roughness-from-shininess-fix
a6688243a7 [ObjExporter] add a test for the "no mtl" version of the obj exporter
18cef9b391 [ObjExporter] add a "no mtl" version of the obj exporter
8b73ec7541 Fix shininess to roughness conversion; Add comments
92046319be Merge pull request #1503 from Matter-and-Form/gltf2-materials
bfa33b50ad Merge branch 'master' into gltf2-materials
6d98f82440 Merge pull request #1512 from aavenel/safe_atoi_OBJ
cc8374dd80 Return exception when obj file contains invalid face indice
aa733d6f77 Merge pull request #1486 from autodesk-forks/adsk-contrib-fix-std-stream-overflow
90ba199ad4 Update ColladaExporter.cpp
cd4ef0a2e9 Update ColladaExporter.h
8cf61c3c89 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
6e88838602 powf -> pow
40147d253d Prefer “BLEND” over “MASK” as an alphaMode default
89358458f0 Approximate specularity / glossiness in metallicRoughness materials
a898c1f2d1 SpecularFactor import and export improvements
c71790c78d Diffuse color and diffuse texture import and export improvements
dbae8e497d Merge pull request #1502 from Matter-and-Form/bugfix/gltf1-version
5eaf083fbd Fix output of glTF 1 version string
130c25eadb Merge pull request #1501 from assimp/kimkulling-traviscleanup
832c1fcc7f Update .travis.sh
299c34f063 Update .travis.sh
4d30ae5436 Merge pull request #1500 from assimp/kimkulling-doc_path
c49d12cabb Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
4354cce313 Update Readme.md
2f56560e3f Merge pull request #1497 from ihmcrobotics/feature/jassimp-classloader-license
00e13ccd77 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
b0c435a66e Merge branch 'master' into feature/jassimp-classloader-license
0b2d5de94f Merge pull request #1496 from aavenel/unitTestObj
85b1181486 Merge branch 'master' into unitTestObj
d997ea961a Merge pull request #1499 from ihmcrobotics/feature/collada-up_axis-api-improvements
42e2c30b4b Added helper getters for casting metadata payloads
1aa15c8069 Fix header and remove old debug code
100fa76a90 Merge remote-tracking branch 'upstream/master' into feature/collada-up_axis-api-improvements
ff758e4c15 OBJ : add unit test to validate relative indices
9d2bcb56c7 Merge remote-tracking branch 'upstream/master' into feature/jassimp-classloader-license
82debbf54a Fixed copyright notice for IHMC jassimp improvements to BSD. Updated README
b2eb599176 Update ColladaExporter.cpp
44ad80201c Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
82b269c424 Merge pull request #1480 from turol/ubsan
f8c4002294 Fixed a divide by zero error in IFCBoolean that was latent, but nevertheless a bug
9a6b141568 FBX: Replace bad pointer casting with memcpy
7cbb5f4d3b B3DImporter: Replace bad pointer casting with memcpy
7b73fe8b02 Travis: Add Clang UBSan build configuration
6efe4e2841 CMake: Add support for Undefined Behavior sanitizer
8e7f476490 Merge pull request #1494 from assimp/invalid_normals_in_unittest
1767663071 Merge branch 'master' into invalid_normals_in_unittest
5a15226a95 Merge pull request #1489 from ihmcrobotics/feature/jassimp-classloader
f56e28ea3c UnitTest: use correct initialized normals in unittest.
5e739acfa1 Merge branch 'master' into feature/jassimp-classloader
01510dfe1b Merge pull request #1491 from assimp/fix_blender_overflow
e662f2dc6f Blender: fix short overflow.
5e00d4d5cb Populate metadata on Java objects.
a7c1dde56e Added return statement to Write
0229a3acf3 Added supported for custom IO Systems in Java. Implemented ClassLoader IO System
33a54f021e Fix small bug in getStaticField
00eb2e401a Added field and getter for metadata entries to AiNode.java.
3ef1f37a80 Create AiMetadataEntry.java for jassimp port.
e79848ff79 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
114c48bbcf Merge pull request #1479 from jaredmulconry/appveyor
3e7dbb5dfb Merge branch 'master' of github.com:assimp/assimp into appveyor
c3074a81ca Merge pull request #1464 from assimp/issue_1453
a1b79e23e6 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
8f141c1966 Update utObjImportExport.cpp
c128e7e56c Merge branch 'master' into issue_1453
fa91a0f64c Another minor source change, this time even more minor than the last. Let's see what the cache can do with this.
1497cc27b2 Cleaned up the whitespace again. Let's see how the cache does.
dce2be9e09 I think I've worked out where the obj's are located. We shall see if the cache picks them up.
94e3f903e2 Merge branch 'master' into appveyor
bb173749c1 Attempting to fix the directories being cached.
eb46a40849 Merge branch 'master' into appveyor
b8ad03baa1 Because I have to change a file somewhere to properly test the cache on AppVeyor, I've made some whitespace a bit better.
63338c0605 Merge branch 'master' of github.com:assimp/assimp into appveyor
ffaa42af79 Merge pull request #1482 from TransformAndLighting/master
7c8e8e04fa Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
7353d25c13 Prevent failing stringstream to crash the export process
469c1a068f Merge branch 'master' of github.com:jaredmulconry/assimp into appveyor
d60fe38253 Merge branch 'master' into master
21add21ab1 Merge pull request #1484 from jaredmulconry/msvc2013_tempfile_fix
b2716a9c3f Merge branch 'master' into msvc2013_tempfile_fix
55cfe298b0 Merge pull request #1483 from turol/warnings
4a915653f5 Fixed IOStream reporting a file size of 0 for files that have been written, but not yet been flushed to disk.
f90d874978 Open3DGC: Remove redundant const qualifiers from return types
cd64eae590 GenericProperty: Remove useless const qualifier from return value
7e033c6cef FBX: Remove useless const qualifier from return value
3b4ffbc1b6 Test failures are now getting properly reported. Turning off 'fast finish' to allow all tests to execute.
d8e3952b64 Merging the test_script with test reporting was a terrible idea in retrospect. on_finish should serve the purpose.
e60e396721 Attempting to address failures with chained batch and powershell commands.
61836080c5 Quote escaping across nested batch and powershell hurts my brain.
27b6cc22db No fun/multiline allowed.
022a34e54c Fixing multiline batch command weirdness.
54d2f25aa5 Attempting to get test results reporting even if an error occurrs.
5e5b7f4f75 Refined the appveyor config so that test output is reported even if tests fail.
5149149b07 The environment section doesn't do what I thought it would. Duplication is bad, but seems neccessary.
58ac747634 Fixed some bad usage of environment variables.
90c9884c5e The environment section uses different syntax for a list of vars.
81d3010f73 Added the mtime_cache script to hopefully improve use of incremental building with appveyor. Reduced the verbosity of the appveyor config. Added use of mtime_cache. Fixed the output of an xml version of the test output for hooking into appveyor.
52da099738 Updated test output to log to xml and to upload those results appropriately, so they show up in AppVeyor correctly as tests at the end.
6a2dfb1efc Fixed up the path to the build artifacts to be cached.
3e80aabde5 Attempting to get tests to run.
26851880e4 Attempting to address issues with cloning the repo. shallow_copy seems to fail at times. I'll let it continue to clone the whole history.
b57011552b Merge branch 'master' into issue_1453
f925e2cf4e Reproduce issue and remove assertion when a nullptr makes more sence
fe79322959 Attempting to get the tests detected and run.
d3de8dbf5f Paths aren't what I expected for the test directory. Trying something else, with a testing call to dir to help track it down.
ba43e3a152 x86 isn't a valid VS platform. Win32 it is, then.
4c06abf281 Replaced the worker image name, which doesn't work as generator name, with a manually created generator name.
75eb2ad071 Merge branch 'master' into appveyor
63764ae42a Apparently @ escaping batch commands doesn't work in this context.
8f54892439 Cleaned up appveyor setup, added VS 2017 to the build matrix and attempted to add running of tests.
8e8ed97750 Merge pull request #1478 from turol/travis
10b49dfd25 Travis: Remove old attempt at disabling default configurations
684cb88e83 Travis: Remove redundant config
bd65811329 Travis: Rename TRAVIS_NO_EXPORT to DISABLE_EXPORTERS so its meaning is more obvious
69b8c1f60d Travis: TRAVIS_NO_EXPORT is now implicitly off, disable explicit off
f2cf8bf075 Travis: Disable GCC AddressSanitizer build, Clang AddressSanitizer is strictly better
ea58801a2d Travis: ENABLE_COVERALLS is now implicitly off, disable explicit off
7037fdfe2c Travis: ASAN is now implicitly off, disable explicit off
42142105fa CMake: Be more verbose about enabled options
54d14e6e3b Travis: Refactor how we build CMake options
5301768256 Travis: Remove unused LINUX env variable
9a79d243f9 added additional displacement texture token.
cc562b2b1c Merge pull request #1477 from turol/clang
326158633b Fixed warnings on MSVC caused by implicit conversions from double to float.
50b43f76e1 OpenGEXImporter: Copy materials to scene
b841ed194b OpenGEXImporter: Store RefInfo in unique_ptr so they get automatically cleaned up
775f984d99 OpenGEXImporter: Fix IOStream leak
22b55d01a2 OpenGEXImporter: Store ChildInfo in unique_ptr so they get automatically cleaned up
61278aa408 AMFImporter: Fix memory leak
1f16ed9fd0 UnrealLoader: Fix IOStream leak
1bee5b0025 utRemoveVCProcess: Fix memory leak
9eef4c16a8 utMetadata: Fix memory leak
9f5b58e706 Upgrade RapidJSON to get rid of a clang warning
ae8a4c0c62 Fix warning about non-constant array size
d28e88feb7 CMake: Remove OpenMP stuff, it's unused and breaks Travis clang build
5cc316b874 Travis: Treat warnings as errors, without typos this time
a3053eb358 Travis: Build with clang too
8ef219b985 Merge pull request #1476 from assimp/revert-1471-clang
c1f93a69ae Revert "WIP: Enable Travis clang build"
4a9ab98240 Merge pull request #1474 from jaredmulconry/issue_1470
c9b9dab1ff Merge pull request #1475 from jaredmulconry/master
b360838ef6 Merge pull request #1471 from turol/clang
3803a5181c Fixed warnings on MSVC caused by implicit conversions from double to float.
341222697a Address warnings on Clang 3.9 caused by having a static data member in a class template.
3f0bb9c634 OpenGEXImporter: Copy materials to scene
568003a0d3 OpenGEXImporter: Store RefInfo in unique_ptr so they get automatically cleaned up
e7ff7b167f OpenGEXImporter: Fix IOStream leak
b6d2b91799 OpenGEXImporter: Store ChildInfo in unique_ptr so they get automatically cleaned up
316046f748 AMFImporter: Fix memory leak
34acf47acd UnrealLoader: Fix IOStream leak
674fb5a46c utRemoveVCProcess: Fix memory leak
9bcfce63dc utMetadata: Fix memory leak
65547d5760 Upgrade RapidJSON to get rid of a clang warning
afce984228 FBXImporter: Add explicit instantiation of log_prefix so other FBX source files can see it
bf1aaf98f9 IFCImporter: Add explicit instantiation of log_prefix so IFCMaterial.cpp can see it
e7c112916b Removed unnecessary files from zlib contribution
a824b79508 Merge branch 'master' of github.com:assimp/assimp into issue_1470
1ef3b0f3f3 Fix warning about non-constant array size
452885672e CMake: Remove OpenMP stuff, it's unused and breaks Travis clang build
9eeece1b35 Travis: Treat warnings as errors, without typos this time
f6706f3532 Travis: Build with clang too
cbca8f574e Merge pull request #1432 from turol/asan
2a7f975613 Merge pull request #1469 from turol/warnings
bab6ca2085 Upgraded zlib to 1.2.11.1 from the develop branch.
3964f5cf43 Update .gitignore
c3e9d6132c Merge pull request #1468 from assimp/issue_1467
b5db7d3649 Disable warning 4351 on MSVC 2013
003c728daf appveyor: Treat warnings as errors
799f0a3ac8 Fix warnings-as-errors flag on MSVC
5804667dbb Addressed some mismatched news/deletes caused by the new glTF2 sources.
1eb7eceddf Addressed a number of memory leaks identified in unit tests by asan
29e46e4bb8 Addressed asan failures caused by misuse of APIs within unit tests.
1095ec454b Fix delete / delete[] mismatches in glTF2 importer
efd861253d Fix delete / delete[] mismatches in MakeVerboseFormat
da96b32fb9 Fix out-of-bounds read in MaterialSystem unit test
5ecab20bd0 Fix delete / delete[] mismatch in glTFAsset
fff800f9ab Enable AddressSanitizer for Linux clang build
4652b66bb5 Add AddressSanitizer option to CMake
6ec25be0a6 OpenGEX: improve logging to be able to detect error-prone situations.
3f4663e369 closes assimp/assimp#1467.
c202d43d8f Merge pull request #1466 from jaredmulconry/issue_1330
94860ff66e Merge pull request #1465 from turol/warnings
f7b2380f86 travis: Treat warnings as errors
77ce6e562d Fix CMAKE option name
45d93701f8 Open3DGC: Fix some uninitialized variable warnings
9088deeb1d Eliminated all warnings under clang with default settings. One remains in the included zlib contrib project.
a9e8836271 Added -fPIC flag to C compilers for GCC and clang. Removed -pedantic flag from some compilers.
c4e91eb33f add some asserts.
2056e56bdb Obj: prepare test to reproduce crash on linux.
1c76962c98 closes assimp/assimp#1450: use correct name of exporter to gltf2
9033071237 Obj: rename attribute from exporter.
5adc029225 Merge branch 'master' of https://github.com/assimp/assimp
c42589460d closes assimp/assimp#1459: fix out-of-boundary access error
6ae35fb4d1 Merge pull request #1462 from jaredmulconry/issue_1330
d28f45bfa8 Merge branch 'master' of github.com:assimp/assimp into issue_1330
87546ec54c Merge pull request #1461 from jfaust/master
4feac1b1f9 Changed a couple more function interfaces to correct the input type.
12b6895f7b Replaced unsigned long for the crc table to z_crc_t, to match what is returned by get-crc_table
febd611d48 Fix glTF2::Asset::FindUniqueID() when the input string is >= 256 chars
e77e89c8b7 Improved the naming of temporary file generator function. Replaced use of tmpnam in utIOStreamBuffer with this facility to addresssafety warning.
980d2b0eee Added a header to hold the file generation code for unit testing purposes.
d0ca143a3b Merge branch 'master' of github.com:assimp/assimp into issue_1330
e2ab3e0d29 Changed the method by which temporary files are created for unit the FileSizeTest. Will apply to other tests next.
b1410f8455 Merge pull request #1457 from jaredmulconry/issue_1330
4360267cb2 Replaced flakey macros with specific functions to serve the purpose
f6fc5a7a11 Changed the FileSizeTest to not rely on tmpnam to eliminate warning on gcc.
7e91ac3443 Suppressed warning on gcc caused by the 'visibility' attribute being ignored on types.
79a5165106 Fixed unused variable warning by replacing them with descriptive comments
8dabd76e03 Fixed a warning caused by aiVector3D appearing in a packed struct, causing it to fail to pack as requested.
539410d033 Fixed an error when compiling samples under MSVC that was caused by assuming including windows.h would pull in shellapi.h
059a32654e Addressed warnings generated on MSVC across x86 and x64.
b5ac248703 Merge pull request #1444 from turol/warnings
81b94a1dca Merge pull request #1445 from Matter-and-Form/gltf2-alphaMode-fix
5c44776532 Merge pull request #1447 from Matter-and-Form/gltf1-color-import-fix
adec1b2175 Merge pull request #1446 from Matter-and-Form/feature/gltf2-primitives
d27e667f1e Merge branch 'master' of https://github.com/assimp/assimp
af9596674d FBX: add missing inversion of postrotation matrix for fbx.
3e8955faf5 Don’t ignore rgba(1,1,1,1) color properties
798542d7bd Formatting
de0bf2ea96 Fix alphaMode storage and reading
8743d28ec5 SImplify mesh merging code
2efd2cdef8 tweaks to primitive merging logic; comments + formatting
814e8b3f8e Formatting
28523232cf Merge multiple meshes in a node into one mesh with many primtives; write out only one mesh per node
5147acfe65 Revert "store node mesh vs. meshes"
d473a49456 Merge pull request #1442 from jcowles/master
982430c3ce BlenderDNA: Silence warning about inline function which is declared but not defined
40c308af44 glTF: Silence uninitialized variable warning
b74fc9495a PlyLoader: Fix operator precedence issue in header check
4652be8f18 FIReader: Silence uninitialized variable warning
41724ace2d Collada: Silence uninitialized variable warning
c207e74534 Fix glTF 2.0 multi-primitive support
702bc6358e Merge pull request #1441 from turol/travis
69f8dc9b31 Travis: Disable OS X build since it doesn't do anything currently
62db02210a Merge pull request #1440 from turol/travis
d34895bf2c Merge pull request #1435 from jaredmulconry/issue_1065
484f73b179 Merge pull request #1437 from rmitton/sib-version
cf8453a21a travis: Enable ccache
798d2d063c travis: Only build with xcode 8.3
167fb7e250 travis: Correctly minimize build matrix
5478d4d4c7 travis: Move os declarations earlier
a77cbcf096 Merge pull request #1436 from turol/warnings
f602055da5 Added Silo 2.5 support
234ffc0ad6 Fixed truncated material names
2ab72816fb Merge pull request #1 from assimp/master
01c50394ce FBXParser: Silence uninitialized variable warnings
f1998d52dc Importer: Whitespace cleanup to fix GCC misleading indentation warning
046c229e48 AssbinExporter: Fix strict aliasing violation
f4a0ab81b1 AssbinExporter: Add Write specialization for aiColor3D
b9efc234d0 DefaultLogger: Whitespace cleanup to fix GCC misleading indentation warning
0b140db0a4 glTFExporter: Silence uninitialized variable warning
f2e2f74d73 Add CMake flag to treat warnings as errors
94a6fc78f4 Addressed last remaining warning under MSVC caused by use of 'deprecated' fopen.
dce39fdf43 Merge pull request #1433 from vkovalev123/patch-1
58213804ff Update 3DSLoader.cpp
b9cfff8fac Merge pull request #1431 from assimp/revert-1427-asan
afd6c4d57d Revert "Asan"
d139b4d180 Merge pull request #1423 from Matter-and-Form/feature/gltf2
d49f86f1e7 Merge pull request #1427 from turol/asan
2cc0a378ed Update glTF in list of importers and exporters
b6f122ff2c Fix delete / delete[] mismatch in glTFAsset
2938a259b8 Enable AddressSanitizer for Linux clang build
6a3b030094 MDP: fix encoding issues.
b5f770e456 Merge branch 'master' of https://github.com/assimp/assimp
e3163ec15e FBX: fix some minor findings.
cbedc448c6 closes assimp/assimp#1426: add Defines.h to include folder for install.
190f034e38 Add AddressSanitizer option to CMake
933bbb4f1c Manually read alphaMode material property
eca008d5ec Properly move string passed to JSON writer
b0da0796c8 Fix Segfault caused by losing pointer to std::string
023cb27784 Revert "Remove simple gltf2 export unit test"
4b01ecaf10 Remove simple gltf2 export unit test
86a8a58d12 Exclude glTF2 Exporter test when ASSIMP_BUILD_NO_EXPORT
cde29c937c Formatting
b1a5ca4516 Use `forceNumber` argument of `WriteAttrs` to write correct attribute names, instead
990fe143a1 Fix mesh primitive’s attributes’ names
816e6909ca Remove KHR_binary_glTF code
b4f5033d89 Remove compresssed file format flag
ed2b699c4b Add gltf2 basic unit test
d518289e72 more specific token search for Collada Loader
5cb13aa4b3 Load gltf .bin files from correct directory
a438ece655 Remove premultipliedAlpha from gltf2
140b903d7a Fix parsing of glTF version Handle version as int in gltf Fix format specifiers in glTF version parser
19876e9822 Add support for importing both glTF and glTF2 files
2ee7991558 Restrict search for OFF header to first 3 bytes
a5e8e0b2bd Remove commented out code
0a8183531e Set alphaMode, baseColorFactor opacity when model’s opacity isn’t 1
37582131f4 Set the metallicFactor to 0 if source file doesn’t have metallicFactor
da6a252efb Fix METALLIC_FACTOR typo
3ba00ca421 Define gltf material property names as constants
54dd4804cd Fix indentation
44757af34a Implement pbrSpecularGlossiness property as Nullable
03cfa04ee4 Define default material values as static constants
1a5823700f Remove need for Has by returning an empty Ref in Get
21259e0835 Use different form of index accessor
37527849b7 Export material names properly
a9c4fa84b5 Sampler improvements; Add new LazyDict method
7245cceead Set default values on Sampler
2abdbdb55e Fix unused CopyValue
63ef19d9ad Export extensions
d277995a97 Formatting
7f01e3f48f Only export byteStride if not 0
a0d97505e5 store node mesh vs. meshes
ab08a7c3cb reenable animation and skins exports
f09892ab63 Write specularGlossiness textures on the specularGlossiness object
feee7528d6 Make sure `on` flag for specularGlossiness is being persisted
8bef546b41 mention pbrSpecularGlossiness support
2d54019b8f Remove OPEN3DGC and compression references
562920fbb8 Changes to GLTF2 materials
7532d6aac1 Remove Light, Technique references
863458cd4a Start removing materials common, and adding pbrSpecularGlossiness
7615a97cd3 Remove redundant function
0cf69479c3 Use `!ObjectEmpty()` vs. `MemberCount() > 0`
11cb9ac139 Working read, import, export, and write of gltf2 (pbr) material
6b4286abf6 check in gltf2 models to test directory Remove un-needed test models
b42d785afe Start managing and importing gltf2 pbr materials
67eb3b0608 temporarily disable gltf exporting of animations and skins
39172feb3e Start reading pbr materials
4d59dee5ea Cache retrieved items via an original index map
47c7c3cf50 Disambiguate Get methods
f814acf33a Update glTF2 Asset to use indexes
63d3655f1b Duplicate gltfImporter as gltf2Importer; Include glTF2 importer in CMake List
f7d39cfa71 Merge pull request #1425 from jaredmulconry/issue_1065
3c1cda0b8c Merge branch 'master' of github.com:assimp/assimp into issue_1065
698cd5826d Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
dfd109e640 Merge pull request #1424 from samitc/feature/fix-mesh-name-lost-with-PreTransformVertices-flag
e40cd6c13c Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
1167edaeca Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
6db0a63d6e Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
6e02bcd8d6 Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
b7f1277175 Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
98532b45bf Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
97b67d5cb5 Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
39e5b919ca Merge pull request #1422 from elect86/patch-9
2ec46cc188 fix name lost in mesh and nodes when load with aiProcess_PreTransformVertices flag
c2baa0f59d Added a link to pure jvm assimp port
dbde54b4f7 Merge pull request #1421 from assimp/issue_1404
e4c1557561 Traivis: make build amtrix smaller.
c143d2e02c closes assimp/assimp#1404: set name with merged meshes for output mesh.
ee56ffa1f1 Merge pull request #1418 from umlaeute/debian-fixes-4.0.1
eb0ace4e18 exclude repository-settings from source-package generated via 'git archive'
042597552a split setup.py into multiple lines
3de9bbb73d fixed spelling error
f8146e4da2 fix the buil
2df704edef fix the buil
82f0dae835 FIx build
11f70e2140 Tests: add 3D-importer test.
b4da9c4f56 Fix review findings: remove unused includes
00e3b03c5b closes assimp/assimp#1406: fix merge issue + improve 3MF-tests
4f2fcf306e Merge pull request #1410 from THISISAGOODNAME/master
1e3a9ded11 Fix assimp_qt_viewer build failed on OSX
fd9da14db7 Merge pull request #1408 from assimp/acgessler-patch-4
f8ef94095a Update version check in FBX reader to check for version >= 7500 instead of exactly 7500.
43a51df7ec Merge pull request #1405 from assimp/rickomax-master
7151cf117b Merge branch 'master' of https://github.com/rickomax/assimp into rickomax-master
ce9c8a4efc Merge pull request #1403 from kebby/fbx_anim_fix
c6360ba1ab Merge pull request #1401 from melMass/python3
12a28d33ce FBX importer: try a constant again (ll suffix this time)
9a12b
10000
6ef0b FBX importer: Back to INT64_MIN but include <stdint.h> also.
cac93ad0a8 Merge pull request #1400 from kebby/master
80489963a1 FBX importer: don't rely ont INT64_MIN / ..MAX macros
e90c615c27 Update Readme.md
7182f89a51 FBX importer: Use actual min/max of animation keyframes when start/stop time is missing
3a89e36718 Merge pull request #1399 from m4c0/master
3fef573a45 Merge pull request #1398 from Eljay/fix-irrxml
37f5619149 created a python3 version of the 3dviewer and fixed the / = float in py3
92beee9924 Collada importer: Add support for line strip primitives
2e5e56c000 Re-enabling PACK_STRUCT for MDL files.
d0d45d1d22 Fix linking issue with irrXML
91f6a9a721 Readme: add TriLib to the official list of supported ports.
a71a61f260 Merge pull request #1397 from Arshia001/master
e0fc412e57 Fix OBJ discarding all material names if the material library is missing
6b4e3177e8 Merge pull request #1385 from gongminmin/FixForVS2017.3
b26fea4cf5 Fix compiling problems under VS2017.3. 1. WordIterator's operator== and operator!= must take const WordIterator& as parameter type. 2. OpenMP doesn't work with new two phase lookups. Need to disable twoPhase.
dab0985994 assert: remove assert with more than one statement and use only ai_assert.
974eb669c8 Merge pull request #1383 from jeremyabel/patch-1
7861c359ba Added wiki link to C4D file format
f78614d33e Merge pull request #1382 from jeremyabel/master
b1313b04b8 should be map, not set
847e0291a0 changed a few leftover asserts to ai_assert
0629faf9b1 Merge pull request #1378 from dhritzkiv/feature/gltf-version
5b3b80cbc2 Formatting
83bfa61f8d version in glb header is stored as uint32_t
7a4a32625c Ensure gltf asset version is printed as \d.0
7fd9c3dc98 §
1a2c69fda8 Merge branch 'master' of https://github.com/assimp/assimp
c3cd7349d0 unzip: latest greatest.
8091e46e81 Merge pull request #1370 from 0xcccc/master
267d3f41e8 ply-loader: add brackets.
ba658e7813 ply-importer: fix creation of vertex attributes.
8478df7dbd PlyLoader: fix vertex attribute lookup.
def42bf624 Fix android build issues
81fd027860 closes assimp/assimp#1270: use HasTexture for texture coordinates.
232954c15e cmake cleanup.
919f2a1ea9 Commandline tool: fix url to project space.
36425677c7 Merge pull request #1365 from ihmcrobotics/feature/custom-library-loader
3c56117e4f Merge branch 'master' of https://github.com/assimp/assimp
5fe45a1aa3 Readme: update list of supported file formats.
44e2ba541f Merge pull request #1363 from jamesgk/gltf2
efa0aaf729 Merge pull request #1364 from pdaehne/master
1e99228861 Merge pull request #1366 from titorgalaxy/master
7557fdbb72 Fix install for builds with MSVC compiler and NMake.
ab9dda594d Added return statement to Write
be787f5c6c Added supported for custom IO Systems in Java. Implemented ClassLoader IO System
5939d81138 glTF2: Use better mipmap filter defaults
21391b1f74 Added javadoc for the JassimpLibraryLoader
c91e9a94da glTF2: export materials' normal maps
c4d0567a8a Provided access to the library loading code to allow custom library loaders
b7b17b03ec glTF2: use opacity for diffuse alpha + alphaMode
acf8c54e55 glTF2: Fix animation export
8243b01c06 Added missing include to stdlib.h and remove load library call
16ed8861eb X3D importer: Workaround for buggy Android NDK (issue #1361)
bb55246c18 Export glTF 2
d7cbbaf23e Compile with glTF2 export option (currently same as glTF1 output)
38626d4260 glTF: start fork of files used in export, for glTF2
147541ab7f Complementing last fix
3d4b54f8fc Fixed FBX 7500 Binary reading
REVERT: 2531d2226c Update CMakeLists.txt and config.h for assimp 4.0.1.
REVERT: de5cf2635b For CI - suppress all the 3rd-party libraries' warnings. Somehow after bumping up the CMake minimum version, CMake configures Xcode to work "better" with xcpretty that now the warnings are piping through the xcpretty's filter. Unfortunately when performing CI build, this is undesirable because not only now the log size is swelling, the build is slower too.
REVERT: 4fd12ed012 Updated Assimp to v3.2
REVERT: 834b24a33a Remove unused files/directories.

git-subtree-dir: Source/ThirdParty/Assimp
git-subtree-split: 77ade9603da501a4e1a8df133c1416ebab9b25ee
weitjong added a commit that referenced this issue Mar 15, 2018
9e74b56823 Modify Assimp's build script to integrate with ours.
cb31a7cf82 Remove unused files/directories.
80799bdbf9 Merge pull request #1631 from assimp/kimkulling-410_prep
e8139ef515 Update utVersion.cpp
65d29c5420 Update CMakeLists.txt
406a06705e Update Doxyfile.in
28b01cbdd1 Update to 4.1.0
899748c651 Merge pull request #1627 from assimp/kimkulling-patch-2
0c2f4abe78 Update CREDITS
bd8d3025bd Merge pull request #1622 from assimp/fix_model_xml_3mf
972d8517b5 fix the model xml
3d4256a7a7 Merge pull request #1620 from assimp/issue_1619
0588d6cccf FBX: closes assimp/assimp#1619: return correct index for embedded textures.
26cdec5633 Merge pull request #1618 from assimp/3mf_export_fixes
c23c63e821 fix correct folder naming scheme.
95e9cd75fa 3MF: fix working test for 3MF-export.
d3833fe804 Merge pull request #1611 from assimp/kimkulling-patch-2
36cddcc8b7 Update miniz.h
fe6608175b Update miniz.h
a59f0b29d5 Merge pull request #1604 from assimp/kimkulling-miniz-memoryaccessfix
98cb898463 Merge branch 'master' into kimkulling-miniz-memoryaccessfix
b92c3ca161 fix invalid op
75b31377fc Merge pull request #1606 from elect86/patch-16
b8ab90ae4b Merge branch 'master' into patch-16
ed361f0b53 Merge pull request #1608 from turol/analyze
45f2f31011 miniz: Remove some dead assignments
26f749fcd2 Re-enable Clang static analysis
5702b907d4 Merge pull request #1607 from turol/unique_ptr
2c3558fdd0 Remove ScopeGuard
b60d84a8a2 C4D: Replace ScopeGuard with std::unique_ptr
bd4f024562 XGLLoader: Replace ScopeGuard with std::unique_ptr
e8eccfa27d FBX: Replace ScopeGuard with std::unique_ptr
6f50be82aa 3MF: Replace ScopeGuard with std::unique_ptr
f35d5952dc BlenderLoader: Replace ScopeGuard with std::unique_ptr
af8e297e0f BaseImporter: Replace ScopeGuard with std::unique_ptr
42c1c733b9 Update MD3Loader.cpp
77b0aa4f4b Merge pull request #1602 from Matter-and-Form/fix/multibody-binary-stls
2897433358 Update miniz.h
4811c0bdd1 Merge branch 'master' into fix/multibody-binary-stls
4fe91f7a5b Merge pull request #1598 from assimp/export_3mf
5822d1920e Update STLLoader.cpp
915ee95ad3 Fx nullptr dereference.
5aa84a2610 Merge branch 'export_3mf' of https://github.com/assimp/assimp into export_3mf
ac23034816 fix the exporter unittest when the export is disabled.
c27fda62e5 Merge branch 'master' into export_3mf
9be69a90b1 Merge branch 'master' into fix/multibody-binary-stls
9d224f6ac5 Merge pull request #1603 from Matter-and-Form/fix/gltf-node-name-conflict
46caecdf35 enable compiler switch test for no exporter requested.
98e98dc40c Fix node names sharing same name
5c9ed540b2 Add test for GLB import
67c236647d Restore import of multi mesh binary STLs
59dcfefeb2 fix unaligned memory access.
fd2da59427 fix unaligned memory access.
b5e79c3cb6 fix invalid include
ddd23fad3f Merge branch 'export_3mf' of https://github.com/assimp/assimp into export_3mf
e442f5838f Merge branch 'master' into export_3mf
e17f7010d1 Merge pull request #1599 from assimp/kimkulling-verbose-analyze
ef4842e128 Update .travis.sh
6a2cd1c91d Update D3MFExporter.cpp
9bd9b3d99c Merge branch 'master' into export_3mf
e6381b7616 Merge pull request #1594 from Matter-and-Form/fix/gltf2-transforms
4b6e49ca7b Update D3MFExporter.h
4f972661e8 Update D3MFExporter.cpp
7a395e274f Merge branch 'master' into fix/gltf2-transforms
3e9bb23688 Merge pull request #1595 from Matter-and-Form/fix/gltf2-preserve-node-names
8ce5985aa0 Merge branch 'master' into fix/gltf2-preserve-node-names
890920110c Merge pull request #1596 from Matter-and-Form/feature/gltf2-tangents
09f7769820 remove unused attribute.
8e413ac1e3 Merge branch 'master' into export_3mf
7280dec838 fix unittest.
3dfca3bc84 3MF: add export to a given archive.
0031165789 Add support for tangents in glTF2.0 import
0b04ae1d91 Preserve node names when importing glTF2.0
e53d4735b0 Fix transform matrices multiplication order per glTF2.0 spec
0ce3641deb Merge pull request #1589 from aavenel/fix-typo-gltf
623b5a515a Merge branch 'master' into fix-typo-gltf
44b38263a5 Merge pull request #1590 from aavenel/fix-cmake-unit-win
b9845285ca Merge branch 'master' into fix-cmake-unit-win
a41bef0d54 Merge pull request #1591 from aavenel/fix-warnings-win
eb452b28a2 Fix warning on MSVC14
d529dd17f9 Fix warning cast double to float
273f6b0267 Fix MSVC14 warning cast double to real
f80e8b39a1 Fix warning C4138: '*/' found outside of comment on MSVC14
c63263b025 Fix typo on gltf2 camera parameters
d8d5cf1a2d Copy assimp dll to unit folder on windows
6c59c83e0f add missing include
0bdb375804 Add missing file export into archive.
09a5946dbd Prepare archive structure.
35819340aa Merge pull request #1588 from elect86/patch-15
ad2223f1c5 Merge branch 'master' into patch-15
a1c1ad74bd Merge pull request #1582 from mrautio/master
fdb52723c4 Update Readme.md
d180cfcba5 Merge branch 'master' into master
ed4e6b0db0 Merge pull request #1580 from assimp/scene_combiner_crash
e35f789ace Merge branch 'master' into scene_combiner_crash
ac37977230 Merge pull request #1575 from elect86/patch-12
454b8919b0 use one header for all xml-tags.
6da4258206 Merge branch 'master' into patch-12
a2ba3d630d Merge pull request #1586 from turol/validate
b474e75e29 3Mf-Export: add prototypes for relations and rest of 3MF-document.
127705d347 Unit tests: Enable data structure validation in cases where it doesn't cause failures
a7be5b527f add missing return statement.
9ca7b00280 Merge branch 'master' into export_3mf
c22b4acd47 3MF: Export initial commit.
70d9df868d Merge branch 'master' into patch-12
4cf8e10235 Merge pull request #1585 from pdaehne/master
ba3acd7459 Merge branch 'master' into patch-12
a05d74a281 [glTF2] Moved byteStride from accessor to bufferView
beff88228d Merge branch 'master' into master
4502d72ee6 Merge pull request #1584 from pdaehne/master
6cbfd5b977 [glTF2] Implemented reading binary glTF2 (glb) files
9f1dce8e57 Merge branch 'master' into master
4fb5038fb1 Add support for building Mac OS X Framework bundles
2a9f79f958 check for 0 properties before copy them
55c9761228 Merge branch 'master' into patch-12
9707fde709 check for nullptr dereferencing before copying scene data
e1837b6cc8 Merge pull request #1576 from elect86/patch-13
65d6daa414 Merge branch 'master' into patch-13
b408e25a1d Merge pull request #1579 from assimp/fix_android
1a1d96d3e2 Merge branch 'master' into fix_android
a8e65a1e8a Fix android build.
864a080b45 Merge pull request #1578 from turol/warnings
8ae7231654 Blender: Silence warning about uninitialized member
2c8cc1f732 BlenderDNA: Silence warning about uninitialized member
bcffa28a33 MDLImporter: Don't take address of packed struct member
10f4b6f95c assimp_cmd: Fix strict-aliasing warnings
53119e74f8 Open3DGC: Fix strict-aliasing warnings
1067ae4bfa FIReader: Fix strict-aliasing warnings
c1515db56f Blender: Fix strict-aliasing warnings
40bb3f3d0f Unit test: Fix signed/unsigned comparison warnings
3e78bd51d4 Merge pull request #1577 from elect86/patch-14
703d046fd9 Update ValidateDataStructure.cpp
fc360b9cc8 Update ValidateDataStructure.h
b428c66f39 Update ValidateDataStructure.h
fb9a5950fd Merge pull request #1569 from assimp/issue_1513
07a99e0843 Merge branch 'master' into issue_1513
fae198ebfe Merge pull request #1572 from elect86/patch-11
d9965f6220 Update Importer.cpp
98da53e66a Merge pull request #1498 from turol/analyze
7db10022e9 closes assimp/assimp#1513: fix assimp for cross compile for android
983e52e308 unzip: Remove dead assignment
76de3e0828 clipper: Add assertion to silence a static analyzer warning
c248ae3797 unzip: Remove dead assignments
9b88715361 unzip: Bail on bad compression method
0bc259fd95 unzip: Fix possibly uninitialized variables
11fdaa31bc clipper: Add assertion to silence a static analyzer warning
fc59f190ae OpenDDLExport: Reduce scope of a variable
ef91211231 OpenDDLExport: Remove dead variable
be1d346c28 Open3DGC: Add assertions to silence static analyzer warnings
58d5d04e82 OpenDDLParser: Remove dead assignment
635a515e69 OpenDDLParser: Fix another potential memory leak
eb5f47f5c5 OpenDDLParser: Fix potential memory leak
9dadec7736 assimp_cmd: Add assertion to silence a static analyzer warning
f475803f93 X3DImporter: Add assertions to silence static analyzer warnings
66c18cc406 TerragenLoader: Remove unused variable
e47bf932e8 SIBImporter: Add assertions to silence static analyzer warnings
583d3f88b8 FBX: Remove dead assignment
ef0af40f90 IFC: Remove dead code
b49a4e1338 PLY: Remove dead assignment and reduce scope of a variable
97843f19d2 OpenGEX: Add assertion to silence a static analyzer warning
f470b8466f GLTF2: Fix signed/unsigned warning
f90019bc1e NFF: Add assertions to silence static analyzer warnings
3f299b2a2b NFF: Split up some complicated assignments
d24e0d44b2 Raw: Fix misleading indentation warning
2b93a210c9 NFF: Reduce scope of a variable
940449d837 LWO: Reduce scope of a variable
a276a02726 IRRLoader: Fix confusing boolean casting
437816fc33 AssbinExporter: Add assertion to silence a static analyzer warning
4c9f169109 ASE: Add assertion to silence a static analyzer warning
856d402b59 AMFImporter: Add assertion to silence a static analyzer warning
2c7770eed5 AMFImporter: Add a block
bd0d47c5fc Whitespace
a7fccf8f33 OptimizeGraph: Fix possible null pointer dereference
c51b92cfa3 RemoveRedundantMaterials: Add assertion to silence a static analyzer warning
95f2319b41 ImproveCacheLocality: Add assertion to silence a static analyzer warning
c774e864a0 Remove some dead assignments
266e3b29a8 RemoveRedundantMaterials: Set pointer to nullptr after deleting it
35907e3446 Travis: Disable unit tests in scan-build config
59d1a1d819 Travis: Move slower builds earlier to improve parallelization
76919e87ea fast_atof: Silence some uninitialized variable warnings
a15bfceb7e Travis: Add static analysis to build
80ba6d10f7 Merge pull request #1567 from assimp/fix_android_build
c15c96ac76 CMake: use define for D_FILE_OFFSET_BITS only for not-android systems.
98a1b7671d Merge pull request #1558 from assimp/issue_216
24b728b3ea FindDegeneratives: adapt unittests and add configs
9206d1b62b Merge branch 'master' into issue_216
b2b671d8ad Merge pull request #1563 from assimp/fix_buggy_excape_sequence
d0ac06cbfd fix buggy escape sequence.
9756b48bca Merge pull request #1560 from assimp/source_groups_for_ut
005b537324 unittests: add VS-based source groups for the unittests.
248e26ca03 Merge pull request #1557 from Matter-and-Form/gltf2-mesh-export-fix
de1ec4ee5d Merge branch 'master' into gltf2-mesh-export-fix
f0bed87e07 Merge pull request #1559 from luzpaz/misc-typos
12dbbd4ce9 Misc. typos
ad2ff9fd71 check for area test if the face is a triangle.
30e06f7437 closes assimp/assimp#216: check the area of a triangle to check if its degenerated or not.
9ec117d0bc Fix export of deleted meshes; Add LazyDict::Remove method
9a13bf236f Merge pull request #1556 from assimp/issue_1292
5bc4e73727 Merge branch 'master' into issue_1292
bd104bda3b Merge pull request #1555 from assimp/issue_1315
ab639a71ae Merge branch 'master' into issue_1315
36475bf868 closes assimp/assimp#1292: export class subdivision
cdfd4b9702 closes assimp/assimp#1315: check in exporting against out-of-bounds-access .
191454671d Merge pull request #1511 from eevictor/master
6954c7d75b Merge branch 'master' into master
fe55bc9996 Update ColladaExporter.cpp
c11a93e73c Merge pull request #1552 from assimp/issue_1251
6b826fecfd Merge branch 'master' into issue_1251
f41ed2f41f closes assimp/assimp#1251: use correct lookup for utf32.
792523ce90 Merge pull request #1551 from larsjsol/md2_fix
29cf414468 Merge branch 'master' into md2_fix
a88a23ac7c Merge pull request #1549 from assimp/issue_104
75fdd25b6b Merge branch 'master' into issue_104
da7ce89ff2 Update STLLoader.cpp
b87e7643d2 Update STLLoader.cpp
4ff2592747 Update STLLoader.h
26171a7949 SLD: add test model and a unit test.
9a9f18bbed closes assimp/assimp#104: deal with more solids in one STL file.
10a6524300 Merge pull request #1545 from assimp/issue_213
a77d9d7b21 Merge branch 'master' into issue_213
e09349c734 Merge pull request #1544 from assimp/issue_1526
4a4f3fddc7 closes assimp/assimp#213: log an error instead of letting the fbx-importer crash.
6b04b20869 closes assimp/assimp#1526: use correct include folder for assimp.
b0e86d281b Merge pull request #1543 from assimp/issue_1533
5922200ec3 Merge branch 'master' into issue_1533
9835d28f72 Merge pull request #1542 from assimp/UnitTest_X3D
f43586305c closes assimp/assimp#1533: put irrXML onto exclucde list for doxygen run.
ab3cf3687c Merge branch 'master' into UnitTest_X3D
770f531cc6 X3D-Importer: add missing file.
2929a27edc add unittest for x3d-importer.
1e9919ce81 Merge pull request #1541 from assimp/issue_1351
02b042d78e closes assimp/assimp#1351: use correct name for obj-meshname export for groups.
abca0a79f3 Merge pull request #1538 from assimp/aavenel-unittest_obj_importer
a33e115fd1 fix mem-lead: face will be not released in case of an error.
c9ada44ab5 Fix memory leak in case of an error.
4879fe13ca Merge branch 'unittest_obj_importer' of https://github.com/aavenel/assimp
c700c08fa5 Merge branch 'master' into master
d5692ccf30 Merge pull request #1537 from assimp/Anatoscope-ObjExporter_nomtl
b7bd006304 Merge branch 'master' into ObjExporter_nomtl
eeee744e21 Merge pull request #1536 from assimp/Anatoscope-fix_trivial_warnings
4dab6f9be3 Merge branch 'master' into Anatoscope-fix_trivial_warnings
4910af3814 Merge pull request #1535 from assimp/kimkulling-patch-1
9a721d0ef4 Update .travis.yml
4587e63e2f Merge branch 'master' into fix_trivial_warnings
56674de1d8 Merge pull request #1534 from Matter-and-Form/texturefile-int-name-fix
2922753589 Return early when element is TextureFile
c86c7b4518 Update .travis.sh
d279a3cc02 Merge branch 'master' into fix_trivial_warnings
5b76a31485 fix trivial warnings
931542bf3c Merge branch 'master' into ObjExporter_nomtl
c666a05e16 Merge pull request #1524 from Matter-and-Form/invalid-texture-coordinates-cleaning-fix
ce7f379aa3 Merge branch 'master' into invalid-texture-coordinates-cleaning-fix
62e3ac9b4d Merge pull request #1525 from daeyun/daeyun-lib-dirs
bf9d319489 Update helper.py
e52e44ea07 Formatting
cc4531459f Set mNumUVComponents to 0 when deleting texture coordinate sets
938c02a358 Merge pull request #1523 from assimp/issue_1490
8be196f77d closes assimp/assimp#1490 : fix invalid access to mesh array when the array is empty.
a502560da1 Merge pull request #1520 from assimp/issue_1514
af4556d569 only scale the root node because this will rescale all children nodes as well.
64ee21024b Add missing file.
ae020281e2 Add unittest
711050de8a fix frame pointer arithmetic
4d09e61b13 Merge branch 'master' into master
99b9ba4c11 Merge branch 'master' into master
aca8f068d0 Update ColladaExporter.cpp
bbeb9dd640 Use correct lookup if scaling is enabled.
d6f5ad66b2 closes assimp/assimp#1514: add misisng flag to enable global scaling.
f49de6ecfe closes assimp/assimp#1514: add postprocess step for scaling
c1c4a5ed2a Add two unit tests for OBJ importer
89d198399c Merge pull request #1516 from Matter-and-Form/gltf2-export-roughness-from-shininess-fix
a6688243a7 [ObjExporter] add a test for the "no mtl" version of the obj exporter
18cef9b391 [ObjExporter] add a "no mtl" version of the obj exporter
8b73ec7541 Fix shininess to roughness conversion; Add comments
92046319be Merge pull request #1503 from Matter-and-Form/gltf2-materials
bfa33b50ad Merge branch 'master' into gltf2-materials
6d98f82440 Merge pull request #1512 from aavenel/safe_atoi_OBJ
cc8374dd80 Return exception when obj file contains invalid face indice
aa733d6f77 Merge pull request #1486 from autodesk-forks/adsk-contrib-fix-std-stream-overflow
90ba199ad4 Update ColladaExporter.cpp
cd4ef0a2e9 Update ColladaExporter.h
8cf61c3c89 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
6e88838602 powf -> pow
40147d253d Prefer “BLEND” over “MASK” as an alphaMode default
89358458f0 Approximate specularity / glossiness in metallicRoughness materials
a898c1f2d1 SpecularFactor import and export improvements
c71790c78d Diffuse color and diffuse texture import and export improvements
dbae8e497d Merge pull request #1502 from Matter-and-Form/bugfix/gltf1-version
5eaf083fbd Fix output of glTF 1 version string
130c25eadb Merge pull request #1501 from assimp/kimkulling-traviscleanup
832c1fcc7f Update .travis.sh
299c34f063 Update .travis.sh
4d30ae5436 Merge pull request #1500 from assimp/kimkulling-doc_path
c49d12cabb Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
4354cce313 Update Readme.md
2f56560e3f Merge pull request #1497 from ihmcrobotics/feature/jassimp-classloader-license
00e13ccd77 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
b0c435a66e Merge branch 'master' into feature/jassimp-classloader-license
0b2d5de94f Merge pull request #1496 from aavenel/unitTestObj
85b1181486 Merge branch 'master' into unitTestObj
d997ea961a Merge pull request #1499 from ihmcrobotics/feature/collada-up_axis-api-improvements
42e2c30b4b Added helper getters for casting metadata payloads
1aa15c8069 Fix header and remove old debug code
100fa76a90 Merge remote-tracking branch 'upstream/master' into feature/collada-up_axis-api-improvements
ff758e4c15 OBJ : add unit test to validate relative indices
9d2bcb56c7 Merge remote-tracking branch 'upstream/master' into feature/jassimp-classloader-license
82debbf54a Fixed copyright notice for IHMC jassimp improvements to BSD. Updated README
b2eb599176 Update ColladaExporter.cpp
44ad80201c Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
82b269c424 Merge pull request #1480 from turol/ubsan
f8c4002294 Fixed a divide by zero error in IFCBoolean that was latent, but nevertheless a bug
9a6b141568 FBX: Replace bad pointer casting with memcpy
7cbb5f4d3b B3DImporter: Replace bad pointer casting with memcpy
7b73fe8b02 Travis: Add Clang UBSan build configuration
6efe4e2841 CMake: Add support for Undefined Behavior sanitizer
8e7f476490 Merge pull request #1494 from assimp/invalid_normals_in_unittest
1767663071 Merge branch 'master' into invalid_normals_in_unittest
5a15226a95 Merge pull request #1489 from ihmcrobotics/feature/jassimp-classloader
f56e28ea3c UnitTest: use correct initialized normals in unittest.
5e739acfa1 Merge branch 'master' into feature/jassimp-classloader
01510dfe1b Merge pull request #1491 from assimp/fix_blender_overflow
e662f2dc6f Blender: fix short overflow.
5e00d4d5cb Populate metadata on Java objects.
a7c1dde56e Added return statement to Write
0229a3acf3 Added supported for custom IO Systems in Java. Implemented ClassLoader IO System
33a54f021e Fix small bug in getStaticField
00eb2e401a Added field and getter for metadata entries to AiNode.java.
3ef1f37a80 Create AiMetadataEntry.java for jassimp port.
e79848ff79 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
114c48bbcf Merge pull request #1479 from jaredmulconry/appveyor
3e7dbb5dfb Merge branch 'master' of github.com:assimp/assimp into appveyor
c3074a81ca Merge pull request #1464 from assimp/issue_1453
a1b79e23e6 Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
8f141c1966 Update utObjImportExport.cpp
c128e7e56c Merge branch 'master' into issue_1453
fa91a0f64c Another minor source change, this time even more minor than the last. Let's see what the cache can do with this.
1497cc27b2 Cleaned up the whitespace again. Let's see how the cache does.
dce2be9e09 I think I've worked out where the obj's are located. We shall see if the cache picks them up.
94e3f903e2 Merge branch 'master' into appveyor
bb173749c1 Attempting to fix the directories being cached.
eb46a40849 Merge branch 'master' into appveyor
b8ad03baa1 Because I have to change a file somewhere to properly test the cache on AppVeyor, I've made some whitespace a bit better.
63338c0605 Merge branch 'master' of github.com:assimp/assimp into appveyor
ffaa42af79 Merge pull request #1482 from TransformAndLighting/master
7c8e8e04fa Merge branch 'master' into adsk-contrib-fix-std-stream-overflow
7353d25c13 Prevent failing stringstream to crash the export process
469c1a068f Merge branch 'master' of github.com:jaredmulconry/assimp into appveyor
d60fe38253 Merge branch 'master' into master
21add21ab1 Merge pull request #1484 from jaredmulconry/msvc2013_tempfile_fix
b2716a9c3f Merge branch 'master' into msvc2013_tempfile_fix
55cfe298b0 Merge pull request #1483 from turol/warnings
4a915653f5 Fixed IOStream reporting a file size of 0 for files that have been written, but not yet been flushed to disk.
f90d874978 Open3DGC: Remove redundant const qualifiers from return types
cd64eae590 GenericProperty: Remove useless const qualifier from return value
7e033c6cef FBX: Remove useless const qualifier from return value
3b4ffbc1b6 Test failures are now getting properly reported. Turning off 'fast finish' to allow all tests to execute.
d8e3952b64 Merging the test_script with test reporting was a terrible idea in retrospect. on_finish should serve the purpose.
e60e396721 Attempting to address failures with chained batch and powershell commands.
61836080c5 Quote escaping across nested batch and powershell hurts my brain.
27b6cc22db No fun/multiline allowed.
022a34e54c Fixing multiline batch command weirdness.
54d2f25aa5 Attempting to get test results reporting even if an error occurrs.
5e5b7f4f75 Refined the appveyor config so that test output is reported even if tests fail.
5149149b07 The environment section doesn't do what I thought it would. Duplication is bad, but seems neccessary.
58ac747634 Fixed some bad usage of environment variables.
90c9884c5e The environment section uses different syntax for a list of vars.
81d3010f73 Added the mtime_cache script to hopefully improve use of incremental building with appveyor. Reduced the verbosity of the appveyor config. Added use of mtime_cache. Fixed the output of an xml version of the test output for hooking into appveyor.
52da099738 Updated test output to log to xml and to upload those results appropriately, so they show up in AppVeyor correctly as tests at the end.
6a2dfb1efc Fixed up the path to the build artifacts to be cached.
3e80aabde5 Attempting to get tests to run.
26851880e4 Attempting to address issues with cloning the repo. shallow_copy seems to fail at times. I'll let it continue to clone the whole history.
b57011552b Merge branch 'master' into issue_1453
f925e2cf4e Reproduce issue and remove assertion when a nullptr makes more sence
fe79322959 Attempting to get the tests detected and run.
d3de8dbf5f Paths aren't what I expected for the test directory. Trying something else, with a testing call to dir to help track it down.
ba43e3a152 x86 isn't a valid VS platform. Win32 it is, then.
4c06abf281 Replaced the worker image name, which doesn't work as generator name, with a manually created generator name.
75eb2ad071 Merge branch 'master' into appveyor
63764ae42a Apparently @ escaping batch commands doesn't work in this context.
8f54892439 Cleaned up appveyor setup, added VS 2017 to the build matrix and attempted to add running of tests.
8e8ed97750 Merge pull request #1478 from turol/travis
10b49dfd25 Travis: Remove old attempt at disabling default configurations
684cb88e83 Travis: Remove redundant config
bd65811329 Travis: Rename TRAVIS_NO_EXPORT to DISABLE_EXPORTERS so its meaning is more obvious
69b8c1f60d Travis: TRAVIS_NO_EXPORT is now implicitly off, disable explicit off
f2cf8bf075 Travis: Disable GCC AddressSanitizer build, Clang AddressSanitizer is strictly better
ea58801a2d Travis: ENABLE_COVERALLS is now implicitly off, disable explicit off
7037fdfe2c Travis: ASAN is now implicitly off, disable explicit off
42142105fa CMake: Be more verbose about enabled options
54d14e6e3b Travis: Refactor how we build CMake options
5301768256 Travis: Remove unused LINUX env variable
9a79d243f9 added additional displacement texture token.
cc562b2b1c Merge pull request #1477 from turol/clang
326158633b Fixed warnings on MSVC caused by implicit conversions from double to float.
50b43f76e1 OpenGEXImporter: Copy materials to scene
b841ed194b OpenGEXImporter: Store RefInfo in unique_ptr so they get automatically cleaned up
775f984d99 OpenGEXImporter: Fix IOStream leak
22b55d01a2 OpenGEXImporter: Store ChildInfo in unique_ptr so they get automatically cleaned up
61278aa408 AMFImporter: Fix memory leak
1f16ed9fd0 UnrealLoader: Fix IOStream leak
1bee5b0025 utRemoveVCProcess: Fix memory leak
9eef4c16a8 utMetadata: Fix memory leak
9f5b58e706 Upgrade RapidJSON to get rid of a clang warning
ae8a4c0c62 Fix warning about non-constant array size
d28e88feb7 CMake: Remove OpenMP stuff, it's unused and breaks Travis clang build
5cc316b874 Travis: Treat warnings as errors, without typos this time
a3053eb358 Travis: Build with clang too
8ef219b985 Merge pull request #1476 from assimp/revert-1471-clang
c1f93a69ae Revert "WIP: Enable Travis clang build"
4a9ab98240 Merge pull request #1474 from jaredmulconry/issue_1470
c9b9dab1ff Merge pull request #1475 from jaredmulconry/master
b360838ef6 Merge pull request #1471 from turol/clang
3803a5181c Fixed warnings on MSVC caused by implicit conversions from double to float.
341222697a Address warnings on Clang 3.9 caused by having a static data member in a class template.
3f0bb9c634 OpenGEXImporter: Copy materials to scene
568003a0d3 OpenGEXImporter: Store RefInfo in unique_ptr so they get automatically cleaned up
e7ff7b167f OpenGEXImporter: Fix IOStream leak
b6d2b91799 OpenGEXImporter: Store ChildInfo in unique_ptr so they get automatically cleaned up
316046f748 AMFImporter: Fix memory leak
34acf47acd UnrealLoader: Fix IOStream leak
674fb5a46c utRemoveVCProcess: Fix memory leak
9bcfce63dc utMetadata: Fix memory leak
65547d5760 Upgrade RapidJSON to get rid of a clang warning
afce984228 FBXImporter: Add explicit instantiation of log_prefix so other FBX source files can see it
bf1aaf98f9 IFCImporter: Add explicit instantiation of log_prefix so IFCMaterial.cpp can see it
e7c112916b Removed unnecessary files from zlib contribution
a824b79508 Merge branch 'master' of github.com:assimp/assimp into issue_1470
1ef3b0f3f3 Fix warning about non-constant array size
452885672e CMake: Remove OpenMP stuff, it's unused and breaks Travis clang build
9eeece1b35 Travis: Treat warnings as errors, without typos this time
f6706f3532 Travis: Build with clang too
cbca8f574e Merge pull request #1432 from turol/asan
2a7f975613 Merge pull request #1469 from turol/warnings
bab6ca2085 Upgraded zlib to 1.2.11.1 from the develop branch.
3964f5cf43 Update .gitignore
c3e9d6132c Merge pull request #1468 from assimp/issue_1467
b5db7d3649 Disable warning 4351 on MSVC 2013
003c728daf appveyor: Treat warnings as errors
799f0a3ac8 Fix warnings-as-errors flag on MSVC
5804667dbb Addressed some mismatched news/deletes caused by the new glTF2 sources.
1eb7eceddf Addressed a number of memory leaks identified in unit tests by asan
29e46e4bb8 Addressed asan failures caused by misuse of APIs within unit tests.
1095ec454b Fix delete / delete[] mismatches in glTF2 importer
efd861253d Fix delete / delete[] mismatches in MakeVerboseFormat
da96b32fb9 Fix out-of-bounds read in MaterialSystem unit test
5ecab20bd0 Fix delete / delete[] mismatch in glTFAsset
fff800f9ab Enable AddressSanitizer for Linux clang build
4652b66bb5 Add AddressSanitizer option to CMake
6ec25be0a6 OpenGEX: improve logging to be able to detect error-prone situations.
3f4663e369 closes assimp/assimp#1467.
c202d43d8f Merge pull request #1466 from jaredmulconry/issue_1330
94860ff66e Merge pull request #1465 from turol/warnings
f7b2380f86 travis: Treat warnings as errors
77ce6e562d Fix CMAKE option name
45d93701f8 Open3DGC: Fix some uninitialized variable warnings
9088deeb1d Eliminated all warnings under clang with default settings. One remains in the included zlib contrib project.
a9e8836271 Added -fPIC flag to C compilers for GCC and clang. Removed -pedantic flag from some compilers.
c4e91eb33f add some asserts.
2056e56bdb Obj: prepare test to reproduce crash on linux.
1c76962c98 closes assimp/assimp#1450: use correct name of exporter to gltf2
9033071237 Obj: rename attribute from exporter.
5adc029225 Merge branch 'master' of https://github.com/assimp/assimp
c42589460d closes assimp/assimp#1459: fix out-of-boundary access error
6ae35fb4d1 Merge pull request #1462 from jaredmulconry/issue_1330
d28f45bfa8 Merge branch 'master' of github.com:assimp/assimp into issue_1330
87546ec54c Merge pull request #1461 from jfaust/master
4feac1b1f9 Changed a couple more function interfaces to correct the input type.
12b6895f7b Replaced unsigned long for the crc table to z_crc_t, to match what is returned by get-crc_table
febd611d48 Fix glTF2::Asset::FindUniqueID() when the input string is >= 256 chars
e77e89c8b7 Improved the naming of temporary file generator function. Replaced use of tmpnam in utIOStreamBuffer with this facility to addresssafety warning.
980d2b0eee Added a header to hold the file generation code for unit testing purposes.
d0ca143a3b Merge branch 'master' of github.com:assimp/assimp into issue_1330
e2ab3e0d29 Changed the method by which temporary files are created for unit the FileSizeTest. Will apply to other tests next.
b1410f8455 Merge pull request #1457 from jaredmulconry/issue_1330
4360267cb2 Replaced flakey macros with specific functions to serve the purpose
f6fc5a7a11 Changed the FileSizeTest to not rely on tmpnam to eliminate warning on gcc.
7e91ac3443 Suppressed warning on gcc caused by the 'visibility' attribute being ignored on types.
79a5165106 Fixed unused variable warning by replacing them with descriptive comments
8dabd76e03 Fixed a warning caused by aiVector3D appearing in a packed struct, causing it to fail to pack as requested.
539410d033 Fixed an error when compiling samples under MSVC that was caused by assuming including windows.h would pull in shellapi.h
059a32654e Addressed warnings generated on MSVC across x86 and x64.
b5ac248703 Merge pull request #1444 from turol/warnings
81b94a1dca Merge pull request #1445 from Matter-and-Form/gltf2-alphaMode-fix
5c44776532 Merge pull request #1447 from Matter-and-Form/gltf1-color-import-fix
adec1b2175 Merge pull request #1446 from Matter-and-Form/feature/gltf2-primitives
d27e667f1e Merge branch 'master' of https://github.com/assimp/assimp
af9596674d FBX: add missing inversion of postrotation matrix for fbx.
3e8955faf5 Don’t ignore rgba(1,1,1,1) color properties
798542d7bd Formatting
de0bf2ea96 Fix alphaMode storage and reading
8743d28ec5 SImplify mesh merging code
2efd2cdef8 tweaks to primitive merging logic; comments + formatting
814e8b3f8e Formatting
28523232cf Merge multiple meshes in a node into one mesh with many primtives; write out only one mesh per node
5147acfe65 Revert "store node mesh vs. meshes"
d473a49456 Merge pull request #1442 from jcowles/master
982430c3ce BlenderDNA: Silence warning about inline function which is declared but not defined
40c308af44 glTF: Silence uninitialized variable warning
b74fc9495a PlyLoader: Fix operator precedence issue in header check
4652be8f18 FIReader: Silence uninitialized variable warning
41724ace2d Collada: Silence uninitialized variable warning
c207e74534 Fix glTF 2.0 multi-primitive support
702bc6358e Merge pull request #1441 from turol/travis
69f8dc9b31 Travis: Disable OS X build since it doesn't do anything currently
62db02210a Merge pull request #1440 from turol/travis
d34895bf2c Merge pull request #1435 from jaredmulconry/issue_1065
484f73b179 Merge pull request #1437 from rmitton/sib-version
cf8453a21a travis: Enable ccache
798d2d063c travis: Only build with xcode 8.3
167fb7e250 travis: Correctly minimize build matrix
5478d4d4c7 travis: Move os declarations earlier
a77cbcf096 Merge pull request #1436 from turol/warnings
f602055da5 Added Silo 2.5 support
234ffc0ad6 Fixed truncated material names
2ab72816fb Merge pull request #1 from assimp/master
01c50394ce FBXParser: Silence uninitialized variable warnings
f1998d52dc Importer: Whitespace cleanup to fix GCC misleading indentation warning
046c229e48 AssbinExporter: Fix strict aliasing violation
f4a0ab81b1 AssbinExporter: Add Write specialization for aiColor3D
b9efc234d0 DefaultLogger: Whitespace cleanup to fix GCC misleading indentation warning
0b140db0a4 glTFExporter: Silence uninitialized variable warning
f2e2f74d73 Add CMake flag to treat warnings as errors
94a6fc78f4 Addressed last remaining warning under MSVC caused by use of 'deprecated' fopen.
dce39fdf43 Merge pull request #1433 from vkovalev123/patch-1
58213804ff Update 3DSLoader.cpp
b9cfff8fac Merge pull request #1431 from assimp/revert-1427-asan
afd6c4d57d Revert "Asan"
d139b4d180 Merge pull request #1423 from Matter-and-Form/feature/gltf2
d49f86f1e7 Merge pull request #1427 from turol/asan
2cc0a378ed Update glTF in list of importers and exporters
b6f122ff2c Fix delete / delete[] mismatch in glTFAsset
2938a259b8 Enable AddressSanitizer for Linux clang build
6a3b030094 MDP: fix encoding issues.
b5f770e456 Merge branch 'master' of https://github.com/assimp/assimp
e3163ec15e FBX: fix some minor findings.
cbedc448c6 closes assimp/assimp#1426: add Defines.h to include folder for install.
190f034e38 Add AddressSanitizer option to CMake
933bbb4f1c Manually read alphaMode material property
eca008d5ec Properly move string passed to JSON writer
b0da0796c8 Fix Segfault caused by losing pointer to std::string
023cb27784 Revert "Remove simple gltf2 export unit test"
4b01ecaf10 Remove simple gltf2 export unit test
86a8a58d12 Exclude glTF2 Exporter test when ASSIMP_BUILD_NO_EXPORT
cde29c937c Formatting
b1a5ca4516 Use `forceNumber` argument of `WriteAttrs` to write correct attribute names, instead
990fe143a1 Fix mesh primitive’s attributes’ names
816e6909ca Remove KHR_binary_glTF code
b4f5033d89 Remove compresssed file format flag
ed2b699c4b Add gltf2 basic unit test
d518289e72 more specific token search for Collada Loader
5cb13aa4b3 Load gltf .bin files from correct directory
a438ece655 Remove premultipliedAlpha from gltf2
140b903d7a Fix parsing of glTF version Handle version as int in gltf Fix format specifiers in glTF version parser
19876e9822 Add support for importing both glTF and glTF2 files
2ee7991558 Restrict search for OFF header to first 3 bytes
a5e8e0b2bd Remove commented out code
0a8183531e Set alphaMode, baseColorFactor opacity when model’s opacity isn’t 1
37582131f4 Set the metallicFactor to 0 if source file doesn’t have metallicFactor
da6a252efb Fix METALLIC_FACTOR typo
3ba00ca421 Define gltf material property names as constants
54dd4804cd Fix indentation
44757af34a Implement pbrSpecularGlossiness property as Nullable
03cfa04ee4 Define default material values as static constants
1a5823700f Remove need for Has by returning an empty Ref in Get
21259e0835 Use different form of index accessor
37527849b7 Export material names properly
a9c4fa84b5 Sampler improvements; Add new LazyDict method
7245cceead Set default values on Sampler
2abdbdb55e Fix unused CopyValue
63ef19d9ad Export extensions
d277995a97 Formatting
7f01e3f48f Only export byteStride if not 0
a0d97505e5 store node mesh vs. meshes
ab08a7c3cb reenable animation and skins exports
f09892ab63 Write specularGlossiness textures on the specularGlossiness object
feee7528d6 Make sure `on` flag for specularGlossiness is being persisted
8bef546b41 mention pbrSpecularGlossiness support
2d54019b8f Remove OPEN3DGC and compression references
562920fbb8 Changes to GLTF2 materials
7532d6aac1 Remove Light, Technique references
863458cd4a Start removing materials common, and adding pbrSpecularGlossiness
7615a97cd3 Remove redundant function
0cf69479c3 Use `!ObjectEmpty()` vs. `MemberCount() > 0`
11cb9ac139 Working read, import, export, and write of gltf2 (pbr) material
6b4286abf6 check in gltf2 models to test directory Remove un-needed test models
b42d785afe Start managing and importing gltf2 pbr materials
67eb3b0608 temporarily disable gltf exporting of animations and skins
39172feb3e Start reading pbr materials
4d59dee5ea Cache retrieved items via an original index map
47c7c3cf50 Disambiguate Get methods
f814acf33a Update glTF2 Asset to use indexes
63d3655f1b Duplicate gltfImporter as gltf2Importer; Include glTF2 importer in CMake List
f7d39cfa71 Merge pull request #1425 from jaredmulconry/issue_1065
3c1cda0b8c Merge branch 'master' of github.com:assimp/assimp into issue_1065
698cd5826d Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
dfd109e640 Merge pull request #1424 from samitc/feature/fix-mesh-name-lost-with-PreTransformVertices-flag
e40cd6c13c Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
1167edaeca Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
6db0a63d6e Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
6e02bcd8d6 Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
b7f1277175 Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
98532b45bf Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
97b67d5cb5 Fixed warnings when compiling for x64 on MSVC through VS 2017 v15.3.3.
39e5b919ca Merge pull request #1422 from elect86/patch-9
2ec46cc188 fix name lost in mesh and nodes when load with aiProcess_PreTransformVertices flag
c2baa0f59d Added a link to pure jvm assimp port
dbde54b4f7 Merge pull request #1421 from assimp/issue_1404
e4c1557561 Traivis: make build amtrix smaller.
c143d2e02c closes assimp/assimp#1404: set name with merged meshes for output mesh.
ee56ffa1f1 Merge pull request #1418 from umlaeute/debian-fixes-4.0.1
eb0ace4e18 exclude repository-settings from source-package generated via 'git archive'
042597552a split setup.py into multiple lines
3de9bbb73d fixed spelling error
f8146e4da2 fix the buil
2df704edef fix the buil
82f0dae835 FIx build
11f70e2140 Tests: add 3D-importer test.
b4da9c4f56 Fix review findings: remove unused includes
00e3b03c5b closes assimp/assimp#1406: fix merge issue + improve 3MF-tests
4f2fcf306e Merge pull request #1410 from THISISAGOODNAME/master
1e3a9ded11 Fix assimp_qt_viewer build failed on OSX
fd9da14db7 Merge pull request #1408 from assimp/acgessler-patch-4
f8ef94095a Update version check in FBX reader to check for version >= 7500 instead of exactly 7500.
43a51df7ec Merge pull request #1405 from assimp/rickomax-master
7151cf117b Merge branch 'master' of https://github.com/rickomax/assimp into rickomax-master
ce9c8a4efc Merge pull request #1403 from kebby/fbx_anim_fix
c6360ba1ab Merge pull request #1401 from melMass/python3
12a28d33ce FBX importer: try a constant again (ll suffix this time)
9a12b6ef0b FBX importer: Back to INT64_MIN but include <stdint.h> also.
cac93ad0a8 Merge pull request #1400 from kebby/master
80489963a1 FBX importer: don't rely ont INT64_MIN / ..MAX macros
e90c615c27 Update Readme.md
7182f89a51 FBX importer: Use actual min/max of animation keyframes when start/stop time is missing
3a89e36718 Merge pull request #1399 from m4c0/master
3fef573a45 Merge pull request #1398 from Eljay/fix-irrxml
37f5619149 created a python3 version of the 3dviewer and fixed the / = float in py3
92beee9924 Collada importer: Add support for line strip primitives
2e5e56c000 Re-enabling PACK_STRUCT for MDL files.
d0d45d1d22 Fix linking issue with irrXML
91f6a9a721 Readme: add TriLib to the official list of supported ports.
a71a61f260 Merge pull request #1397 from Arshia001/master
e0fc412e57 Fix OBJ discarding all material names if the material library is missing
6b4e3177e8 Merge pull request #1385 from gongminmin/FixForVS2017.3
b26fea4cf5 Fix compiling problems under VS2017.3. 1. WordIterator's operator== and operator!= must take const WordIterator& as parameter type. 2. OpenMP doesn't work with new two phase lookups. Need to disable twoPhase.
dab0985994 assert: remove assert with more than one statement and use only ai_assert.
974eb669c8 Merge pull request #1383 from jeremyabel/patch-1
7861c359ba Added wiki link to C4D file format
f78614d33e Merge pull request #1382 from jeremyabel/master
b1313b04b8 should be map, not set
847e0291a0 changed a few leftover asserts to ai_assert
0629faf9b1 Merge pull request #1378 from dhritzkiv/feature/gltf-version
5b3b80cbc2 Formatting
83bfa61f8d version in glb header is stored as uint32_t
7a4a32625c Ensure gltf asset version is printed as \d.0
7fd9c3dc98 §
1a2c69fda8 Merge branch 'master' of https://github.com/assimp/assimp
c3cd7349d0 unzip: latest greatest.
8091e46e81 Merge pull request #1370 from 0xcccc/master
267d3f41e8 ply-loader: add brackets.
ba658e7813 ply-importer: fix creation of vertex attributes.
8478df7dbd PlyLoader: fix vertex attribute lookup.
def42bf624 Fix android build issues
81fd027860 closes assimp/assimp#1270: use HasTexture for texture coordinates.
232954c15e cmake cleanup.
919f2a1ea9 Commandline tool: fix url to project space.
36425677c7 Merge pull request #1365 from ihmcrobotics/feature/custom-library-loader
3c56117e4f Merge branch 'master' of https://github.com/assimp/assimp
5fe45a1aa3 Readme: update list of supported file formats.
44e2ba541f Merge pull request #1363 from jamesgk/gltf2
efa0aaf729 Merge pull request #1364 from pdaehne/master
1e99228861 Merge pull request #1366 from titorgalaxy/master
7557fdbb72 Fix install for builds with MSVC compiler and NMake.
ab9dda594d Added return statement to Write
be787f5c6c Added supported for custom IO Systems in Java. Implemented ClassLoader IO System
5939d81138 glTF2: Use better mipmap filter defaults
21391b1f74 Added javadoc for the JassimpLibraryLoader
c91e9a94da glTF2: export materials' normal maps
c4d0567a8a Provided access to the library loading code to allow custom library loaders
b7b17b03ec glTF2: use opacity for diffuse alpha + alphaMode
acf8c54e55 glTF2: Fix animation export
8243b01c06 Added missing include to stdlib.h and remove load library call
16ed8861eb X3D importer: Workaround for buggy Android NDK (issue #1361)
bb55246c18 Export glTF 2
d7cbbaf23e Compile with glTF2 export option (currently same as glTF1 output)
38626d4260 glTF: start fork of files used in export, for glTF2
147541ab7f Complementing last fix
3d4b54f8fc Fixed FBX 7500 Binary reading
REVERT: 2531d2226c Update CMakeLists.txt and config.h for assimp 4.0.1.
REVERT: de5cf2635b For CI - suppress all the 3rd-party libraries' warnings. Somehow after bumping up the CMake minimum version, CMake configures Xcode to work "better" with xcpretty that now the warnings are piping through the xcpretty's filter. Unfortunately when performing CI build, this is undesirable because not only now the log size is swelling, the build is slower too.
REVERT: 4fd12ed012 Updated Assimp to v3.2
REVERT: 834b24a33a Remove unused files/directories.

git-subtree-dir: Source/ThirdParty/Assimp
git-subtree-split: 9e74b56823cc43a1a0c184aede703a6db2e7b90d
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
запрос функционала улучшение Улучшение существующих вещей
Projects
None yet
Development

No branches or pull requests

0