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
AgeCommit message (Collapse)Author
2012-02-23Code cleanup: remove unused 'skip' field from PBVH iterator.Nicholas Bishop
2012-02-23Code cleanup: move the PBVH iterator's initialization into a function.Nicholas Bishop
Should be no functional changes, just shortens the amount of code living in the macro.
2012-02-17unify include guard defines, __$FILENAME__Campbell Barton
without the underscores these clogged up the namespace for autocompleation which was annoying.
2011-11-11correct indentation and some whitespace edits (no functional changes)Campbell Barton
2011-10-23remove $Id: tags after discussion on the mailign list: ↵Campbell Barton
http://markmail.org/message/fp7ozcywxum3ar7n
2011-02-27pedantic warning cleanup, also remove texspace_edit() since its been added ↵Campbell Barton
using a different method.
2011-02-20Fix for crash when sculpting on multires object during playbackSergey Sharybin
- Restored BLI_pbvh_grids_update stuff; - Marc all nodes as changes in ED_sculpt_modifiers_changed, so draw_buffers would be keept correct.
2011-02-18doxygen: add blenlib under core as module.Nathan Letwory
2011-01-31Todo issue: sculpting on deformed meshSergey Sharybin
Used a crazyspace approach (like in edit mode), but only modifiers with deformMatricies are allowed atm (currently shapekeys and armature modifiers only). All the rest modifiers had an warning message that they aren't applied because of sculpt mode. Deformation of multires is also unsupported. With all this restictions users will always see the actual "layer" (or maybe mesh state would be more correct word) they are sculpting on. Internal changes: - All modifiers could have deformMatricies callback (the same as deformMatriciesEM but for non-edit mode usage) - Added function to build crazyspace for sculpting (sculpt_get_deform_matrices), but it could be generalized for usage in other painting modes (particle edit mode, i.e) Todo: - Implement crazyspace correction to support all kinds of deformation modifiers - Maybe deformation of multires isn't so difficult? - And maybe we could avoid extra bad-level-stub for ED_sculpt_modifiers_changed without code duplicating?
2010-07-14Merge GSOC Sculpt Branch: 28499-30319Jason Wilkins
https://svn.blender.org/svnroot/bf-blender/branches/soc-2010-jwilkins See log of that branch for details.
2010-06-22[#22262] Sculpting shape keys using the Smooth brush switches the shape to ↵Sergey Sharybin
the Basis PBVH used the same verts array as mesh data and shape key/reference key coords were applying on the mesh data, so on some refreshing undeformed mesh was displayed. Added utility functions to get vert coords from key block, apply new vert coords on keyblock and function to apply coords on bpvh, so now pbvh uses it's ovn vertex array and no changes are making to the mesh data. Additional change: Store key block name in SculptUndoNode, so now shape wouldn't be copied to wrong keyblock on undo
2010-06-02Sculpt & modifiers: patch by Sergey Sharybin, with modifications by me.Brecht Van Lommel
Fixes various crashes and redraw problems, most noticeable new feature is that you can now sculpt on a multires mesh with deforming modifiers preceding it. I've left out support for sculpting on multires with enabled modifiers following it, in this case only the base mesh can be sculpted now. The code changes needed to do this are just too ugly in my opinion, would need a more torough redesign which I don't think we should try now. In my opinion this is also not really an important case, since it's going to be incredibly slow anyway to run a modifier on a high res mesh while sculpting. So, to summarize current state: * Fastest sculpting: base mesh with no modifiers or multires with only modifiers preceding it. * Slower sculpting: base mesh with modifiers, depends on the speed of the modifiers. * Not supported: multires mesh with modifiers following it.
2010-03-22Fix #20548: flat shading not drawing right in sculpt mode.Brecht Van Lommel
2010-03-22spaces -> tabs, (4 spaces == 1 tab, only for white space preceding text)Campbell Barton
2010-02-12correct fsf addressCampbell Barton
2009-12-11Sculpt:Brecht Van Lommel
* Temporary workaround for sculpt not working well with small polygons, still seems to be some issues, but can at least paint now. * Small optimization avoiding local function variable aliasing.
2009-12-11Sculpt Branch:Brecht Van Lommel
* Added detection if VBO extension is supported. * Redraw other 3d views after sculpting. * Fix brush sometimes punching through mesh with very small polygons, added an extra epsilon to the ray-triangle intersection.
2009-12-09Sculpt Branch:Brecht Van Lommel
* Smooth brush works again for multires. * Optimal Display option for multires modifier, same as subsurf.
2009-11-25Sculpt: Grid based PBVHBrecht Van Lommel
* PBVH can now be created contain both from face grids or standard meshes. The former is much quicker to build for high res meshes. * Moved some drawing code into pbvh (mostly for the frustum test). * Moved ray intersection code into pbvh. * GPU buffers also can be built from either mesh or grids now. * Updated sculpt code to work with this. The ugly part is that there is now a macro for iterating over vertices, to handle both cases, and some duplicated code for e.g. undo. * Smooth brush does not work yet with grids.
2009-11-06Sculpt: WIP brush behavior changesBrecht Van Lommel
* Draw/Inflate/Layer now keep working on the original mesh coordinates and normals from when the stroke started. This helps avoid the mesh blowing up, but can still be better. The old behavior is still available as "Accumulate" in the UI. * This requires some more memory usage for the BVH, would like to find a way to avoid that. * Smooth falloff is now the default. * Spacing is now enabled by default, with a value of 7.5. * Anchored now stores normals per node to save some memory.
2009-11-04Sculpt: updating normals now no longer uses the vert-face map, to save memory.Brecht Van Lommel
The weak point now is the thread-safe atomic access to normals from multiple threads, did not seem to be a bottleneck in my tests but I don't really trust it to be fast.
2009-11-02Sculpt: Multithreading & PBVH ChangesBrecht Van Lommel
* Sculpting, normal update and bounding box code is now multithreaded using OpenMP. * Fix a number of update issues: normals on node boundaries, outdated bounding boxes, partial redraw, .. . There's probably still a few left, but should be better now. * Clicking once now does a single paint instead of two (was also painting on mouse up event). * Smooth shading now is enabled for the full mesh when the first face uses it (so it can be tested at least). Implementation Notes: * PBVH search can now be done either using a callback or bt gathering the nodes in an array. The latter makes multithreading with OpenMP easier. * Normals update code is now inside PBVH, was doing it per node before but should do all faces first and only then vertices. * Instead of using search modes + 1 modified flag, now nodes get 4 flags to indicate what needs to be updated for them, found that this makes it easier for me to understand the code and fix update bugs. * PBVHNode is now exposed as an abstract type, I think this makes it more clear what is happening than having it's data passed as part of callback functions. * Active_verts list was replaced by looping over nodes and the vertices inside them. However the grab brush still uses the active_verts system, will fix that later. * Some micro-optimizations, like avoiding a few multiplications/divisions, using local variables instead of pointers, or looping over fewer vertices to update the bounding boxes.
2009-10-27Commit of the sculpt patch (#19672). Further development will be in this ↵Nicholas Bishop
branch until we merge to trunk.