Blender Git Commit Log

Git Commits -> Revision d2c3bc5

Revision d2c3bc5 by Sergey Sharybin (opensubdiv-modifier)
April 25, 2014, 11:37 (GMT)
Initial integration of OpenSubdiv into Subsurf modifier

Summary:
This commit is an initial implementation of subsurf
modifier using OpenSubdiv instead of our older CC.

This doesn't change data layout and only uses OpsnSubdiv
evaluation API to get coordinates and values for grid
elements.

Main changes:

- Tweaked build systems to add flag to build with OSD.
- Added C-API for opensubdiv, so it might be used from
blender kernel.
- Subsurf evaluation is hacked in into CCGSubSurf.

TODO:
- Clean up all the WIP code, make it more clear
separation between legacy CCGSubSurf code and new
one based on OSD evaluation.
- Edges are not evaluating currently at all.
- UVs subdivision currently would lead to incorrect
memory usage.
- Subdivision happens in a single thread.
- Loose edges are not supported.
- Only quads does work now, need to support
triangles and N-gons.

Only committing this to share via developer.b.o with
other developers who are interested.

Reviewers: brecht

Differential Revision: https://developer.blender.org/D56

Commit Details:

Full Hash: d2c3bc58a1cf5a4800bd2fcfe75263b4b5fb90e9
Parent Commit: fe52e64
Lines Changed: +1038, -6

5 Added Paths:

/build_files/cmake/Modules/FindOpenSubdiv.cmake (+71, -0) (View)
/intern/opensubdiv/CMakeLists.txt (+40, -0) (View)
/intern/opensubdiv/opensubdiv_capi.cc (+392, -0) (View)
/intern/opensubdiv/opensubdiv_capi.h (+71, -0) (View)
/intern/opensubdiv/SConscript (+37, -0) (View)

18 Modified Paths:

/build_files/cmake/macros.cmake (+3, -0) (Diff)
/build_files/scons/config/darwin-config.py (+6, -0) (Diff)
/build_files/scons/config/linux-config.py (+8, -0) (Diff)
/build_files/scons/config/win32-mingw-config.py (+6, -0) (Diff)
/build_files/scons/config/win32-vc-config.py (+6, -0) (Diff)
/build_files/scons/config/win64-mingw-config.py (+6, -0) (Diff)
/build_files/scons/config/win64-vc-config.py (+6, -0) (Diff)
/build_files/scons/tools/Blender.py (+16, -0) (Diff)
/build_files/scons/tools/btools.py (+11, -2) (Diff)
/CMakeLists.txt (+14, -0) (Diff)
/intern/CMakeLists.txt (+3, -0) (Diff)
/intern/SConscript (+2, -0) (Diff)
/source/blender/blenkernel/CMakeLists.txt (+7, -0) (Diff)
/source/blender/blenkernel/intern/CCGSubSurf.c (+209, -3) (Diff)
/source/blender/blenkernel/SConscript (+4, -0) (Diff)
/source/blender/modifiers/intern/MOD_subsurf.c (+112, -1) (Diff)
/source/blenderplayer/CMakeLists.txt (+4, -0) (Diff)
/source/creator/CMakeLists.txt (+4, -0) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021