12.05.2015: Version 0.7.1 is released

Regard3D 0.7.1 has been released! Please find it under the links provided in the Download page.

Changelog:

  • Fixed bug when using CMVS: When creating a dense pointcloud and selecting CMVS/PMVS and using visibility information, there was an error because of a wrong path.
  • Improved speed of Windows version, especially in file handling (workaround of a MinGW-w64/win32-api problem, see description here)
  • Added multithreading in computing matches on Mac OS X, see below
  • Surfaces with textures (OBJ file format) are now loaded with AssImp, see below
  • "Export to CMPMVS" renamed to "Export to external MVS", MeshRecon format added (see here)

 

Multithreading on Mac OS X

Most of the multithreading in OpenMVG is done with OpenMP. Unfortunately, the Apple Clang compiler (which is part of Xcode) does not support OpenMP. There is a fork of Clang which supports OpenMP (see this page), but it is labeled "prelimiary version". Regard3D compiles and runs using this compiler, but some of the third-party programs do not. The same goes for GCC from MacPorts. This compiler also works, but not on some of the third-party programs.

This is why I worked around the problem by using the Threading Building Blocks library by Intel. It is not too difficult to replace OpenMP calls with calls to TBB. I did this now for the compute matches stage, maybe I will add more in future versions.

 

Surfaces with textures

Surfaces with textures (OBJ file format) are now loaded with AssImp. This is mainly since loading OBJ files with AssImp is faster. The importer from OpenSceneGraph, which was previously used, also had a bug which rotates the model incorrectly. This is now fixed. There is a drawback however: If you created a surface model with textures with Regard3D 0.7.0 and you are trying to open it  with Regard3D 0.7.1, it might be invisible. In such a case, simply click on the button "Reset orientation", and you should see your model again.