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
2017-01-12Fix T50056: Dyntopo brush size shortcut broken using constant detail setting.Julian Eisel
2016-12-08Fix T49872: 3D cursor places with camera shift in ortographic modeJulian Eisel
2016-11-25Math Lib: rotate matrix cleanupCampbell Barton
- Remove 'rotate_m2', unlike 'rotate_m4' it created a new matrix duplicating 'angle_to_mat2' - now used instead. (better avoid matching functions having different behavior). - Add 'axis_angle_to_mat4_single', convenience wrapper for 'axis_angle_to_mat3_single'. - Replace 'unit_m4(), rotate_m4()' with a single call to 'axis_angle_to_mat4_single'.
2016-11-12Sculpt UI: Make DynTopo constant detail a resolution valueJulian Eisel
This should make it easier to sculpt in high resolutions, downside is that the new way to calculate maximum edge length is a bit less intuitive. Maximum edge length used to be calculated as blender_unit * percentage_value, now it's blender_unit / value. Reused old DNA struct member, but had to bump subversion to ensure correct compatibility conversion. Also changed default value slightly (would have had to set to 3.333... otherwise). Was Requested by @monio (see https://rightclickselect.com/p/sculpting/zpbbbc/dyntopo-better-scale-input-in-constant-detail-mode) and I think it's worth testing.
2016-07-28Fix T48838: Tiling sculpt problem with custom brushSergey Sharybin
2016-07-14Cleanup: styleCampbell Barton
2016-07-07Fix memory leak switching sculpt mode + dyntopoCampbell Barton
Auto-enabling dyntopo w/ mode switching leaked memory when undo was used.
2016-07-02BMesh: utility function to resize bmesh elementsCampbell Barton
This can be used to re-allocate bmesh data with/without tool flags. Needed for Symmetrize since it uses bmesh operators from dyntopo.
2016-07-01Add wait cursor toggling dyntopoCampbell Barton
2016-07-01Sculpt: skip normal calculation entering dyntopoCampbell Barton
When no triangulation runs we can skip re-calculating normals.
2016-07-01Enable dyntopo re-entering sculpt modeCampbell Barton
2016-07-01BMesh: make toolflags optionalCampbell Barton
Saves 8 bytes per vert/edge/face. Gives overall ~20-25% memory saving for dyntopo sculpting and modifiers that use BMesh.
2016-05-08Cleanup: warningsCampbell Barton
2016-04-29Fix T48290: Hook fails after deleting geometryCampbell Barton
Now CD_SHAPEKEY_INDEX customdata is stored in edit-mode when hooks and vertex parents are used. This also fixes a bug where undo would loose key-index data. Move to structs for BM_mesh_bm_to/from_me to avoid passing many argument, which mostly aren't used.
2016-02-22Sculpt: use Ctrl to set grab/sculpt normal-weightCampbell Barton
Having to change this with the slider each time isn't so convenient and invert in this case does nothing.
2016-02-22Sculpt: apply grab normal-weight to snake-hookCampbell Barton
2016-02-22Sculpt brush can now grab inwards w/ normal weightCampbell Barton
Previously the grab brush could only move ourwards when normal aligned.
2016-02-02Fix T46583: Sculpt symmetry don't work in clipping border view modeSergey Sharybin
This is an attempt to solve the issue by doing clip test on the original side of the stroke. Some extra testing is required.
2016-01-28Cleanup: warnings & styleCampbell Barton
2016-01-25Fix T46456: Crash when aborting stroke while using dyntopo.Bastien Montagne
Basically, the 'fake undo' restoring orig coordinates in this case cannot work with dyntopo, since it assumes nothing was added/removed. For now, just prevent this 'restoration' when dyntopo is used, this is no ideal solution from user PoV - but it's better than plain ugly crash! Complete solution seems much more involved and outside of scope of bug handling, added a TODO note: http://wiki.blender.org/index.php/Dev:Source/Development/Todo/Tools#Sculpting
2016-01-21Sculpt: pinch/inflate support for snake-hookCampbell Barton
Snake-hook tended to loose volume along the stroke, now with pinch > 0.5 its possible to sculpt shapes without loosing volume.
2016-01-21Sculpt: Add rake option to snake-hookCampbell Barton
This allows for dragging out shapes that rotate to follow the cursor motion. Values over 1 can be set for 'interesting' artistic effects.
2016-01-21Cleanup: line length, indentationCampbell Barton
2016-01-20Cleanup: remove remainings of OMP in sculptpaint area.Bastien Montagne
2016-01-17Fix incorrect function for sculpt multithreading task after recent refactor.Brecht Van Lommel
2016-01-16Cleanup: BLI_task - API changes.Bastien Montagne
Based on usages so far: - Split callback worker func in two, 'basic' and 'extended' versions. The former goes back to the simplest verion, while the later keeps the 'userdata_chunk', and gets the thread_id too. - Add use_threading to simple BLI_task_parallel_range(), turns out we need this pretty much systematically, and allows to get rid of most usages of BLI_task_parallel_range_ex(). - Now BLI_task_parallel_range() expects 'basic' version of callback, while BLI_task_parallel_range_ex() expectes 'extended' version of the callback. All in all, this should make common usage of BLI_task_parallel_range simpler (less verbose), and add access to advanced callback to thread id, which is mandatory in some (future) cases.
2016-01-14Cleanup: warning, whitespaceCampbell Barton
2016-01-04Sculpt: OMP -> BLI_task, step III.Bastien Montagne
The remaining bits in editors' sculpt.c, which is now free from OMP. All in all, changes in this file allow from below 2% to above %20 speedup per stroke, depending on brush complexity, size, and definition of the mesh below it... Note that this commit also unifies all 'threaded data' into a single struct, a few more floats/pointers do not hurt here, and it makes code a bit simpler.
2016-01-04CleanupCampbell Barton
2016-01-04Sculpt: OMP -> BLI_task, step II.Bastien Montagne
This time, all tools' code itself. Not much to say, except that we can also get rid of that OMP caching pre-process ugly stuff for multires smoothing. Together with previous commit, we have about 5% average speedup on stroke execution (though this vary a lot, up to 30% speedup in rare cases, and in even rarer cases some odd massive slowdowns...). Tech note: we may want to add 'guided'-similar feature to our BLI_task threaded loop, I suspect this could explain random massive slowdowns of new code (very rare, but annoying...).
2016-01-01Sculpt: OMP -> BLI_task, step I.Bastien Montagne
This gives usual nice boost in parallelized sections themselves, on global sculpting stroke it's a bit hard to say, seems like we have an average 5% speedup, but it varies a lot... Note that this area is only parallelized when you have a big brush over dense geometry, otherwise there's no change at all. As a side note, this commit also factorizes code here, three times nearly the same code, tst...
2015-11-13Fix T46726 shading issues in sculpt mode.Antony Riakiotakis
This fixes two issues: * Normals were not being recalculated correctly when not using optimized drawing for CDDerivedMesh (Multires actually handles that correctly). * Loop normals (autosmooth option) were also not being calculated. Doing this calculation is not desirable, since it can't be done correctly without a severe performance hit. This is easy to test by doing a dependency flush on the mesh after each scuplt stroke step. Instead they are now disabled during sculpting.
2015-11-05Use 'beauty' for sculpt triangulationCampbell Barton
Causes fewer degenerate quads.
2015-11-05Fix T46692: Triangulate creates duplicate facesCampbell Barton
Caused a crash in dyntopo.
2015-10-28Fix T46471: Sculpt strokes doesn't mark file as modifiedSergey Sharybin
2015-09-18Fix T46148: Sculpt view-clip fails in ortho modeCampbell Barton
2015-08-31Fix T45258, impossible to select brush when removing it from 2dAntony Riakiotakis
painting. Also system added a brush every time it found no paint brush in the system which is not what we would want. Solution: * Brush panel stays visible always, regardless of whether there is a brush or not. * We search for first available brush when we find no brush in paint struct instead of always generating a new one. * Generating and searching for a brush take a mode argument now. Needed some refactoring to users of BKE_paint_init as well. * Did some style cleanups for paint mode enums. Patch is big but it's mostly argument refactoring.
2015-08-18Refactor translation code out of blenfontCampbell Barton
- Add blentranslation `BLT_*` module. - moved & split `BLF_translation.h` into (`BLT_translation.h`, `BLT_lang.h`). - moved `BLF_*_unifont` functions from `blf_translation.c` to new source file `blf_font_i18n.c`.
2015-08-14Fix dyntopo not warning anymore when vertex colors or uvs are present.Antony Riakiotakis
We check against loop data now, not tessface data
2015-08-03Sculpt: Fix tiling with brushes that use a locked planeAntony Riakiotakis
Patch by Tilman Blumhagen, thanks!
2015-07-30Fix T45577 tiled sculpting not working with brushes requiring a sculptAntony Riakiotakis
plane. Make sure sculpt plane is recalculated for every tiled dab. Note this is not the optimum thing to do, we could cache the original sculpt plane and reuse that, but this would require us to rearrange the logic of tiled sculpting somewhat. This can be a TODO, but for now this will fix the issue.
2015-07-25Style cleanup + fix sign on previous commit.Antony Riakiotakis
2015-07-25Fix tile feature not working outside mesh boundaries.Antony Riakiotakis
We need to generate strokes up to a brush radius around the bounding box.
2015-07-23Sculpt Tiling FeatureAntony Riakiotakis
Adds 3D-Tiling options to the sculpt tool. This is very similar to the symmetry options in the sense that it replicates the strokes. For tiling this replication happens with a linear offset to fill the whole object along one or more axis. This allows to create geometry that can be tiled seamless. One use case is the creation of tileable textures by sculpting high resolution geometry and then rendering it with an orthographic camera to create maps for diffuse, normal, etc Notes: Patch by Tilman Blumhagen with minor changes (move tile flags to paint symmetry flags). After some feedback from artists, leaving tiling value to constant offset, though I suspect that some method that uses the object bounding box dynamically might be good to have too. It can be added later though :) Thanks a lot for the patch! Patch: D1426
2015-07-20Dyntopo should be supported on systems without VBOs now.Antony Riakiotakis
2015-07-16Split ray_face_intersection into quad/tri versionsCampbell Barton
Since many callers only need a single triangle
2015-07-10Cleanup: use const for mesh functionsCampbell Barton
2015-06-04Cleanup: clarify order of precedence: &/?Campbell Barton
2015-05-27Fix T44745 non manifold edges of mesh do not work when smoothing inAntony Riakiotakis
multires. Code had special guards for such edges to stop this from happening. I don't see why this is needed though since code above assigns smoothed positions for all vertices in the grid. After removing the guards I saw that this in fact was the only place where grd adjacency was used, so I completely removed it.
2015-05-20doxygen: corrections/updatesCampbell Barton
Also add depsgraph & physics