Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/extern
AgeCommit message (Collapse)Author
2013-02-25code cleanup: remove unused and unsupported functions from libmv-capiSergey Sharybin
--- svn merge -r52855:52856 ^/branches/soc-2011-tomato
2013-02-25Camera tracking: libmv distortion API now also uses camera intrinsicsSergey Sharybin
structure instead of passing all the parameters to every function. Makes it much easier to tweak distortion model. --- svn merge -r52854:52855 ^/branches/soc-2011-tomato
2013-02-25Synchronize libmv with own branchSergey Sharybin
Should be no functional changes, just would help a lot checking on which stuff was/shall be merged from tomato and which is not.
2013-02-25code cleanup: camera trackingSergey Sharybin
- Moved keyframes and refirement flags into reconstruction options structure - Moved distortion coefficients and other camera intrinsics into own structure - Cleaned up reconstruction functions in libmv c-api --- svn merge -r52853:52854 ^/branches/soc-2011-tomato
2013-02-25Upgrade Ceres library to current master which is current 1.5RCSergey Sharybin
This is helpful because it brings CHOLMOB-free ITERATIVE_SCHUR and SCHUR_JACOBI which is really nice for new upcoming bundle adjustment. If also includes all the local fixes we made locally. There're lots of other improvements/fixed which are not currently would be so much visible in Blender, but which opens doors for some great improvements in future.
2013-02-25Update bundled version of minilzoSergey Sharybin
This updates minilzo from version 2.03 to version 2.06 which is like 3 years newer. The main reason of this update is that older minilzo had some strange valgrind warnings. Likely they're harmless, but it was still annoying to troubleshot bakes with valgrind.
2013-02-22Remove extern_ssba workaroundSergey Sharybin
SSBA seemed to be working OK last time i've checked it with MSVC and optimization enabled. Also, we'll likely replace it with own BA soon, which works fine with MSVC anyway.
2013-02-20Made ldl code a part of extern_ssba library, otherwise gcc fails toSergey Sharybin
find ldl symbols because order of libraries seems to be critical for gcc linker. A bit stupid, but that's how linker works.. Both CMake and SCons shall work fine on linux now.
2013-02-20Correction to previous release -- scons on linux was brokenSergey Sharybin
2013-02-20Fix #34299: Motion Tracking 20x slower under WindowsSergey Sharybin
Root of the issue goes to SSBA library which didn't work properly when using optimization in MSVC. It was worked around by disabling optimization for libmv, which is in fact shame and shouldn't have been done. It seems after some changes optimization does not affect on SSBA code, but enabling optimization could be risky so close to release. For now solved by splitting SSBA to separate CMake/SCons library, disabling optimization only for this particular library and enabling optimization for rest of libmv. Tested on all files which used to fail with optimization enabled in SSBA and all of them works the same as before. Tracking speed is significantly higher now. After release we'll enable optimization for SSBA as well, so there'll be no crappy build setup. Later we'll replace old SSBA library with new BA code based on Ceres. Bundle script would be broken for until then, so better not to use it.
2013-02-18Correction to previous commit, needed to tweak some includeSergey Sharybin
directories after shuffling order of subdirectories and compiler flags tweaks.
2013-02-18Correction to cmake rules for libmv/ceresSergey Sharybin
libmv still requires optimization switched off because of some incompatibility of SSBA and MSVC optimizer which makes bundle adjustment work just wrong. This shall not be an issue for Ceres and no need to disable optimization for extern_ceres
2013-02-06add missing bullet header to cmake, quiet reports from 'make test_cmake'Campbell Barton
2013-02-05Workaround for deadlock in face/hole merge function in carveSergey Sharybin
which could happen in cases of degenerated faces.
2013-01-03add option WITH_SYSTEM_BULLET to link against the bullet installation found ↵Campbell Barton
on the system. Note: this doesn't work yet for everything with latest stable bullet (2.81), need to look into why and likely apply some patches upstream. However I managed to link blender by disabling some features, likely it can be made to work without too much trouble.
2012-12-30Import the RangeTree library into externNicholas Bishop
RangeTree is a simple C++ tree set for storing non-overlapping scalar ranges. Original source from: https://github.com/nicholasbishop/RangeTree Also update the build systems to include RangeTree.
2012-12-20Camera tracking: synchronize changes with own branchSergey Sharybin
Should be no functional changes.
2012-12-15Hi there, it has been a while, just curious if my SVN account still works :)Erwin Coumans
This commit is an attempt to improve collisions between moving Bullet rigid bodies using (concave) triangle mesh bounds. Instead of using Gimpact, this we create a btCompoundShape with child shape tetrahedra derived from the surface triangles. For each triangle, we add a fourth vertex using the centroid, shifting inwards using the triangle normal. If the centroid hits an internal triangle, we stop. The default depth could be exposed as 'advanced' setting in the user interface. This solution will be a slower than the original/gimpact solution, but a bit more reliable. In the future, it is better to add HACD, convex decomposition to Blender, for moving concave meshes. See http://kmamou.blogspot.com and the Bullet SDK's Demos/ConvexDecompositionDemo.
2012-12-10code cleanup: remove unused and unsupported functions from libmv-capiSergey Sharybin
2012-12-10Camera tracking: libmv distortion API now also uses camera intrinsics structureSergey Sharybin
instead of passing all the parameters to every function. Makes it much easier to tweak distortion model.
2012-12-10code cleanup: camera trackingSergey Sharybin
- Moved keyframes and refirement flags into reconstruction options structure - Moved distortion coefficients and other camera intrinsics into own structure - Cleaned up reconstruction functions in libmv c-api
2012-12-10Merging r51923 through r52851 from trunk into soc-2011-tomatoSergey Sharybin
2012-12-09Fix for camera solver not working properly when built with sconsSergey Sharybin
2012-12-07Camera tracking: fixed type in camera intrinsics update functionSergey Sharybin
Seems to be from the very beginning here, not sure why nobody noticed this is wrong.
2012-12-04cmake was missing some header files.Campbell Barton
2012-11-27remove unmaintained eltopo, keeping scons/cmake entries, but commenting out ↵Campbell Barton
user visible config to make branch merging less of a hassle.
2012-11-20Motion tracking: dump mask image when dump images is enabledSergey Sharybin
This is pure development option which is enabled by defining DUMP_FAILURE or DUMP_ALWAYS libmv-capi.
2012-11-16Fix #33192: Opening Blender breaks drag-and-drop support on the KDE desktopSergey Sharybin
Do not set root window as DND aware.
2012-11-06OSX: substitute all MAC_OS_X_VERSION defines with ↵Jens Verwiebe
MAC_OS_X_VERSION_MIN_REQUIRED macros, to get more reliable version (api) covering
2012-11-05Merging r51897 through r51922 from trunk into soc-2011-tomatoSergey Sharybin
2012-11-05Merging r50625 through r51896 from trunk into soc-2011-tomatoSergey Sharybin
Merging just in case we'll want to develop some experimental stuff
2012-11-05Fix/workaround for carve aborts on windowsSergey Sharybin
The issue was caused by passing start iterator larger than end iterator to std::copy in triangulation module. It'll do nothing on linux but will throw an exception on windows. Now behavior will be identical on both platforms. Proper solution would be to figure out why exactly this happened, but it's easier to be forwarded to Tobias and we'll need to get rid of triangulation anyway. This should solve issues: #30100: boolean intersect crashes blender #33001: Crash on applying Boolean difference modifier #33045: Boolean modifier crash with mirrored objects
2012-11-05Camera Tracking: allow fallback to reprojection resection by user demandSergey Sharybin
This fixes some "regressions" introduced in rev50781 which lead to much worse solution in some cases. Now it's possible to bring old behavior back. Perhaps it's more like temporal solution for time being smarter solution is found. But finding such a solution isn't so fast, so let's bring manual control over reprojection usage. But anyway, imo it's now nice to have a structure which could be used to pass different settings to the solver.
2012-10-24Patch Bullet to make it's convex hull implementation usable in BMeshNicholas Bishop
* Add access to the original indices for vertices * Add a very simple C API for convex hull * Add this patch to the patches folder and update readme.txt
2012-10-20style cleanupCampbell Barton
2012-10-17code cleanup:Campbell Barton
- move object_iterators.c --> view3d_iterators. (ED_object.h had to include ED_view3d.h which isn't so nice) - move projection functions from view3d_view.c --> view3d_project.c (view3d_view was becoming a mishmash of utility functions and operators). - some some cmake includes as system-includes.
2012-10-15Update to stable Eigen 3.1.1Daniel Genrich
- Fixes several bugs within the Eigen library: http://eigen.tuxfamily.org/index.php?title=ChangeLog#Eigen_3.1.1
2012-10-14code cleanup: remove redundant castsCampbell Barton
2012-10-02correct some include dirs not being included as SYSTEM paths in cmake.Campbell Barton
2012-09-20Make Euclidean resection "always" succeed.Keir Mierle
The Euclidean resection code had a magical constant, 1e-3, used to compare the results of solving an equation. This failure detection was well-intended, trying to prevent poor solutions from getting made without notifying the caller. Unfortunately in practice, this threshold is too conservative. Furthermore, it is not clear the threshold should exist at all; the purpose of the Euclidean resection is to come up with the best solution it can; other methods (e.g. reprojection error) should be used to compare whether the method succeeded. This commit changes the Euclidean EPnP code to always succeed, causing the previous fallback to projective resection to never run. In most cases, this will result in better reconstructions. This should, in most cases, fix the dreaded "flipping" problem.
2012-09-20Fix variable naming in the planar tracker.Keir Mierle
2012-09-20Add smarter tolerance checking in the planar tracker.Keir Mierle
The planar tracker uses Ceres for the refinement stage. During refinement, Ceres iteratively updates the parameters with the latest best guess. If the change in the parameters falls below a threshold, Ceres will abort successfully ("converged"). For the case of pure translation tracking, the parameters are exactly the two pixel shifts (dx, dy), and measuring the change in these parameters gives a meaningful termination criterion. However, for all the other parameterizations like affine, where the parameterization involves affine parameters that have no physical interpretation, Ceres is left with no way to terminate the solver early. With the existing code, often many iterations are run long after Ceres has found a solution sufficiently accurate for all tracking needs. No one needs tracking with a quadrillionth of a pixel accuracy; that time is wasted. This patch extends the existing iteration callback that is passed in to Ceres to check if the pattern has fallen out of the search window, to also check if the optimizer has made a tiny step. In particular, if the maximum shift of any patch corner between two successful optimizer steps is less than a threshold (currently 0.005 pixels), the track is declared successful and tracking is terminated. This leads to dramatic speed increases in some cases, with little to no loss in track quality. This is especially apparent when tracking patches with affine or perspective motion models. For example, on some tracking cases I tried, the iterations Ceres took went from 50 to 3.
2012-09-20Detect too-small planar tracking patches.Keir Mierle
The planar tracker did not detect very skinny patches which have effectively zero area and are untrackable. This adds detection and rejection of patterns with zero area. This fixes a crash found by during Mango production.
2012-09-20Cleanup for when trackers fall out of the search window.Keir Mierle
Sergey originally left a TODO() here, but his fix is the correct one. I removed the TODO and fixed some comment issues.
2012-09-19Fix crash when tracking in planar motion model (and maybe some other)Sergey Sharybin
It was an Abort() caused by check for solver result not equal to USER_ABORT. In some cases solver returns USER_ABORT due to BoundaryCheckingCallback detects coordinates does not belong to image. Somehow this callback wasn't called in previous version of Ceres and in the same case marker was jumping. Now when the callback is called it seems we could simply return failure of tracking without aborting Blender. Probably this is in fact some issue somewhere else, would double check with Keir about this.
2012-09-18Ceres: resolve no previous declarations warningsSergey Sharybin
Currently done as patch applied on bundling, would forward it to Ceres developers.
2012-09-18Libmv: resolved some compilation warnings (missed prototypes)Sergey Sharybin
In some cases it was missed include of header file, in some other cases symbol could be static.
2012-09-18Libmv: fixed wrong function prototypesSergey Sharybin
Also mark non-public functions as static.
2012-09-17code cleanup: correct include paths and commentCampbell Barton
2012-09-16Real fix for OSX CMake -- was a typo in build file generation fileSergey Sharybin
Now Ceres re-bundling should go smooth :)