Revision: 5109
          http://sourceforge.net/p/smartbody/code/5109
Author:   fengww
Date:     2013-10-23 18:26:54 +0000 (Wed, 23 Oct 2013)
Log Message:
-----------
Add voxel rigging option in Retarget Viewer to voxelize the input mesh before 
auto-rigging. The original auto-rigging method in Pinocchio requires a 
watertight and single component mesh to work. The new option creates a 'voxel 
mesh' that is watertight and single component mesh from the input mesh ( which 
could contain holes and has multiple components ). The 'voxel mesh' is  used to 
generate the skeleton, and the subsequent skinning weights are transferred back 
to the original mesh. Thus the auto-rigging can now work on arbitrary character 
mesh.

Add PolyVox library (zlib license) for some voxel operations. Also modified 
some part of Pinocchio library to process voxelized mesh. 
Some minor changes in SrModel to allow correct normalization. 

Modified Paths:
--------------
    trunk/core/smartbody/SmartBody/src/sr/sr_model.cpp
    trunk/core/smartbody/sbgui/external/Pinocchio/attachment.cpp
    trunk/core/smartbody/sbgui/external/Pinocchio/attachment.h
    trunk/core/smartbody/sbgui/external/Pinocchio/lib/Pinocchio.dll
    trunk/core/smartbody/sbgui/external/Pinocchio/lib/Pinocchio.lib
    trunk/core/smartbody/sbgui/external/Pinocchio/lib/Pinocchio.pdb
    trunk/core/smartbody/sbgui/external/Pinocchio/pinocchioApi.cpp
    trunk/core/smartbody/sbgui/external/Pinocchio/pinocchioApi.h
    trunk/core/smartbody/sbgui/external/Pinocchio/pointprojector.h
    trunk/core/smartbody/sbgui/external/Pinocchio/skeleton.cpp
    trunk/core/smartbody/sbgui/src/autorig/SBAutoRigManager.cpp
    trunk/core/smartbody/sbgui/src/autorig/SBAutoRigManager.h
    trunk/core/smartbody/sbgui/src/jointmapviewer/RetargetStepWindow.cpp
    trunk/core/smartbody/sbgui/src/jointmapviewer/RetargetStepWindow.h
    trunk/core/smartbody/sbgui/visualc9/sbgui.vcxproj
    trunk/core/smartbody/sbgui/visualc9/sbgui.vcxproj.filters
    trunk/vs2010.sln

Added Paths:
-----------
    trunk/core/smartbody/sbgui/external/polyvox/
    trunk/core/smartbody/sbgui/external/polyvox/CHANGELOG.txt
    trunk/core/smartbody/sbgui/external/polyvox/CMakeLists.txt
    trunk/core/smartbody/sbgui/external/polyvox/CREDITS.txt
    trunk/core/smartbody/sbgui/external/polyvox/CTestConfig.cmake
    trunk/core/smartbody/sbgui/external/polyvox/INSTALL.txt
    trunk/core/smartbody/sbgui/external/polyvox/LICENSE.TXT
    trunk/core/smartbody/sbgui/external/polyvox/Packaging.cmake
    trunk/core/smartbody/sbgui/external/polyvox/README.rst
    trunk/core/smartbody/sbgui/external/polyvox/TODO.txt
    trunk/core/smartbody/sbgui/external/polyvox/build/
    trunk/core/smartbody/sbgui/external/polyvox/build/lib/
    trunk/core/smartbody/sbgui/external/polyvox/build/lib/PolyVoxCore.lib
    trunk/core/smartbody/sbgui/external/polyvox/build/lib/PolyVoxCore_d.lib
    trunk/core/smartbody/sbgui/external/polyvox/build/library/
    trunk/core/smartbody/sbgui/external/polyvox/build/library/CMakeFiles/
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/CMakeFiles/generate.stamp
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/CMakeFiles/generate.stamp.depend
    trunk/core/smartbody/sbgui/external/polyvox/build/library/INSTALL.vcxproj
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/INSTALL.vcxproj.filters
    trunk/core/smartbody/sbgui/external/polyvox/build/library/PACKAGE.vcxproj
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PACKAGE.vcxproj.filters
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxConfig.cmake
    trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/ALL_BUILD.vcxproj
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/ALL_BUILD.vcxproj.filters
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/CMakeFiles/
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/CMakeFiles/generate.stamp
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/CMakeFiles/generate.stamp.depend
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/INSTALL.vcxproj
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/INSTALL.vcxproj.filters
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/PACKAGE.vcxproj
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/PACKAGE.vcxproj.filters
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/PolyVoxCore.dir/
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/PolyVoxCore.sln
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/PolyVoxCore.vcxproj
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/PolyVoxCore.vcxproj.filters
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/PolyVoxCore.vcxproj.user
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/RUN_TESTS.vcxproj
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/RUN_TESTS.vcxproj.filters
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/PolyVoxCore/cmake_install.cmake
    trunk/core/smartbody/sbgui/external/polyvox/build/library/RUN_TESTS.vcxproj
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/RUN_TESTS.vcxproj.filters
    
trunk/core/smartbody/sbgui/external/polyvox/build/library/cmake_install.cmake
    trunk/core/smartbody/sbgui/external/polyvox/library/
    trunk/core/smartbody/sbgui/external/polyvox/library/CMakeLists.txt
    trunk/core/smartbody/sbgui/external/polyvox/library/Doxyfile.in
    trunk/core/smartbody/sbgui/external/polyvox/library/Mainpage.dox
    trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxConfig.cmake.in
    trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/CMakeLists.txt
    trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/AStarPathfinder.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/AStarPathfinder.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/AmbientOcclusionCalculator.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/AmbientOcclusionCalculator.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Array.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Array.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/ArraySizes.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/BaseVolume.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/BaseVolume.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/BaseVolumeSampler.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/ConstVolumeProxy.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/CubicSurfaceExtractor.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/CubicSurfaceExtractor.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/CubicSurfaceExtractorWithNormals.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/CubicSurfaceExtractorWithNormals.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/DefaultIsQuadNeeded.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/DefaultMarchingCubesController.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Density.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/GradientEstimators.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/GradientEstimators.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/AStarPathfinderImpl.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/ArraySizesImpl.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/ArraySizesImpl.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/Block.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/Block.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/MarchingCubesTables.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/RandomUnitVectors.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/RandomVectors.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/SubArray.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/SubArray.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/TypeDef.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Impl/Utility.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Interpolation.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/IteratorController.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/IteratorController.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/LargeVolume.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/LargeVolume.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/LargeVolumeSampler.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Log.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/LowPassFilter.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/LowPassFilter.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/MarchingCubesSurfaceExtractor.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/MarchingCubesSurfaceExtractor.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Material.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/MaterialDensityPair.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/MeshDecimator.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/MeshDecimator.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/PolyVoxForwardDeclarations.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/RawVolume.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/RawVolume.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/RawVolumeSampler.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Raycast.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Raycast.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Region.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/SimpleInterface.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/SimpleVolume.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/SimpleVolume.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/SimpleVolumeBlock.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/SimpleVolumeSampler.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/SurfaceMesh.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/SurfaceMesh.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Vector.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/Vector.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/VertexTypes.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/VolumeResampler.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/VolumeResampler.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/VoxelFilters.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/include/PolyVoxCore/VoxelFilters.inl
    trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/AStarPathfinder.cpp
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/ArraySizes.cpp
    trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/Impl/
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/Impl/MarchingCubesTables.cpp
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/Impl/RandomUnitVectors.cpp
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/Impl/RandomVectors.cpp
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/Impl/Utility.cpp
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/Log.cpp
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/MeshDecimator.cpp
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/Region.cpp
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/SimpleInterface.cpp
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxCore/source/VertexTypes.cpp
    trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxUtil/
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxUtil/CMakeLists.txt
    trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxUtil/include/
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxUtil/include/PolyVoxUtil/
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxUtil/include/PolyVoxUtil/Serialization.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxUtil/include/PolyVoxUtil/Serialization.inl
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxUtil/include/PolyVoxUtil/VolumeChangeTracker.h
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxUtil/include/PolyVoxUtil/VolumeChangeTracker.inl
    trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxUtil/source/
    
trunk/core/smartbody/sbgui/external/polyvox/library/PolyVoxUtil/source/Dummy.cpp
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/Array.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/CMakeLists.txt
    
trunk/core/smartbody/sbgui/external/polyvox/library/bindings/CleanCSharpBindings.bat
    
trunk/core/smartbody/sbgui/external/polyvox/library/bindings/CubicSurfaceExtractor.i
    
trunk/core/smartbody/sbgui/external/polyvox/library/bindings/CubicSurfaceExtractorWithNormals.i
    
trunk/core/smartbody/sbgui/external/polyvox/library/bindings/DefaultMarchingCubesController.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/Density.i
    
trunk/core/smartbody/sbgui/external/polyvox/library/bindings/MakeCSharpBindings.bat
    
trunk/core/smartbody/sbgui/external/polyvox/library/bindings/MarchingCubesSurfaceExtractor.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/Material.i
    
trunk/core/smartbody/sbgui/external/polyvox/library/bindings/MaterialDensityPair.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/MeshDecimator.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/PolyVoxCore.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/Region.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/SimpleVolume.i
    
trunk/core/smartbody/sbgui/external/polyvox/library/bindings/SimpleVolumeSampler.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/SubArray.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/SurfaceMesh.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/TypeDef.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/Vector.i
    trunk/core/smartbody/sbgui/external/polyvox/library/bindings/VertexTypes.i
    trunk/core/smartbody/sbgui/external/polyvox/library/polyvox.qhcp.in
    trunk/core/smartbody/sbgui/src/autorig/VoxelizerWindow.cpp
    trunk/core/smartbody/sbgui/src/autorig/VoxelizerWindow.h

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60135991&iu=/4140/ostg.clktrk
_______________________________________________
Smartbody-svn mailing list
Smartbody-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/smartbody-svn

Reply via email to