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
2018-04-30Cleanup: de-duplicate paint access from objectCampbell Barton
2018-04-03Cleanup: rename list count_ex -> count_at_mostCampbell Barton
2018-03-23Cleanup: stray tabsCampbell Barton
Tabs in middle of code (mostly for no reason / by accident).
2018-02-06Use eObjectMode for function argumentsCampbell Barton
2018-01-30Fix T53943: Weight paint crash in new sceneCampbell Barton
2018-01-15Sculpting: Sdd an option to hide mask in viewportSergey Sharybin
Brushes themselves are still affected by the mask, but the viewport is not showing the mask. This way it's easier to see details while sculpting. Studio request by Julien Kaspar
2018-01-10Alternate fix for brush user countCampbell Barton
This reverts change to BKE_brush_add, callers now remove the extra user. Note this isn't very convenient for callers but is consistent with other ID types. In the future we will probably remove this and have new ID's created with zero users.
2017-12-18Fix T53577: Rake sculpt/paint wrong on first stepCampbell Barton
2017-10-17Cleanup: use 'e' prefix for enum typedefsCampbell Barton
Convention was only followed loosely, apply to DNA where changes aren't likely to conflict. (Skipped ModifierType for eg).
2017-10-03Vertex Paint: remove accumulate (soc-2017-vertex_paint)Campbell Barton
This secondary accumulation option accumulated brush falloff. The same option in image painting accumulates color as vertex paiht 'Spray' does. Giving this option different behavior for vertex paint seems strange. Also this is basically increasing falloff over time. Remove the new code, expose existing 'Spray' as 'Accumulate' to match other paint modes.
2017-10-01Weight Paint: restore non-spray functionalityCampbell Barton
When painting with spray disabled - we need to re-apply on top of the original each time. Applying the soc-2016-pbvh-painting branch removed this. While I'd added back a simple previous weight array, this won't work when multiple groups are painted at once.
2017-09-29Weight Paint: accumulate supportCampbell Barton
- Clamp accumulate so it doesn't exceed brush strength. - Was multiplying by brush strength twice.
2017-09-29Vertex Paint: Alpha SupportCampbell Barton
GSOC 2017 by Darshan Kadu, see: D2859. This is a partial merge of some of the features from the soc-2017-vertex_paint branch. - Alpha painting & drawing. - 10 new color blending modes. - Support for vertex select in vertex paint mode.
2017-09-27Vertex/Weight Paint: Use PBVH for paintingCampbell Barton
2016 GSOC project by @nathanvollmer, see D2150 - Mirrored painting and radial symmetry, like in sculpt mode. - Volume based splash prevention, which avoids painting vertices far away from the 3D brush location. - Normal based splash prevention, which avoids painting vertices with normals opposite the normal at the 3D brush location. - Blur mode now uses a nearest neighbor average. - Average mode, which averages the color/weight of the vertices within the brush - Smudge mode, which pulls the colors/weights along the direction of the brush - RGB^2 color blending, which gives a more accurate blend between two colors - multithreading support. (PBVH leaves are painted in parallel.) - Foreground/background color picker in vertex paint
2017-08-07Refactor ID copying (and to some extent, ID freeing).Bastien Montagne
This will allow much finer controll over how we copy data-blocks, from full copy in Main database, to "lighter" ones (out of Main, inside an already allocated datablock, etc.). This commit also transfers a llot of what was previously handled by per-ID-type custom code to generic ID handling code in BKE_library. Hopefully will avoid in future inconsistencies and missing bits we had all over the codebase in the past. It also adds missing copying handling for a few types, most notably Scene (which where using a fully customized handling previously). Note that the type of allocation used during copying (regular in Main, allocated but outside of Main, or not allocated by ID handling code at all) is stored in ID's, which allows to handle them correctly when freeing. This needs to be taken care of with caution when doing 'weird' unusual things with ID copying and/or allocation! As a final note, while rather noisy, this commit will hopefully not break too much existing branches, old 'API' has been kept for the main part, as a wrapper around new code. Cleaning it up will happen later. Design task : T51804 Phab Diff: D2714
2017-06-14Make whole ID copying code use const source pointer.Bastien Montagne
Noisy change, but safe, and better do it sooner than later if we are to rework copying code. Also, previous commit shows this *is* useful to catch some mistakes.
2016-10-18[msvc] Minor cleanup in blenkernel.lazydodo
this patch resolves the following warnings; ``` Warning C4028 formal parameter 1 different from declaration blenkernel\intern\ocean.c 764 Warning C4098 'attach_stabilization_baseline_data': 'void' function returning a value blenkernel\intern\tracking_stabilize.c 139 Warning C4028 formal parameter 3 different from declaration blenkernel\intern\cachefile.c 148 Warning C4028 formal parameter 3 different from declaration blenkernel\intern\paint.c 413 Warning C4028 formal parameter 1 different from declaration blenkernel\intern\editderivedmesh.c 591 Warning C4028 formal parameter 3 different from declaration blenkernel\intern\library_remap.c 709 Warning C4028 formal parameter 1 different from declaration blenkernel\intern\ocean.c 754 Warning C4028 formal parameter 1 different from declaration blenkernel\intern\ocean.c 758 Warning C4028 formal parameter 1 different from declaration blenkernel\intern\ocean.c 759 Warning C4028 formal parameter 1 different from declaration blenkernel\intern\ocean.c 763 Warning C4028 formal parameter 1 different from declaration blenkernel\intern\ocean.c 764 Warning C4028 formal parameter 1 different from declaration blenkernel\intern\ocean.c 765 Warning C4028 formal parameter 1 different from declaration blenkernel\intern\ocean.c 769 Warning C4028 formal parameter 1 different from declaration blenkernel\intern\ocean.c 770 Warning C4028 formal parameter 1 different from declaration blenkernel\intern\DerivedMesh.c 3458 ``` It's mostly things where the signature in the .h and the actual implementation in the .c do not match. And a bunch functions who do not match the TaskRunFunction declaration cause they leave out the __restrict keyword. Reviewers: brecht, juicyfruit, sergey Reviewed By: sergey Subscribers: Blendify Differential Revision: https://developer.blender.org/D2268
2016-07-28Fix T48965: Cannot Append Palette As Local Datablock.Bastien Montagne
Palette and PaintCurve were totally missing from id_copy/id_make_local switch... :/
2016-06-22ID-Remap - Step one: core work (cleanup and rework of generic ID datablock ↵Bastien Montagne
handling). This commit changes a lot of how IDs are handled internally, especially the unlinking/freeing processes. So far, this was very fuzy, to summarize cleanly deleting or replacing a datablock was pretty much impossible, except for a few special cases. Also, unlinking was handled by each datatype, in a rather messy and prone-to-errors way (quite a few ID usages were missed or wrongly handled that way). One of the main goal of id-remap branch was to cleanup this, and fatorize ID links handling by using library_query utils to allow generic handling of those, which is now the case (now, generic ID links handling is only "knwon" from readfile.c and library_query.c). This commit also adds backends to allow live replacement and deletion of datablocks in Blender (so-called 'remapping' process, where we replace all usages of a given ID pointer by a new one, or NULL one in case of unlinking). This will allow nice new features, like ability to easily reload or relocate libraries, real immediate deletion of datablocks in blender, replacement of one datablock by another, etc. Some of those are for next commits. A word of warning: this commit is highly risky, because it affects potentially a lot in Blender core. Though it was tested rather deeply, being totally impossible to check all possible ID usage cases, it's likely there are some remaining issues and bugs in new code... Please report them! ;) Review task: D2027 (https://developer.blender.org/D2027). Reviewed by campbellbarton, thanks a bunch.
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.
2015-11-09Fake user: add BKE_library helpers to set/clear that flag.Bastien Montagne
Since it also involves usercount manipulation, safer and cleaner to do it in BKE_library...
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-07-31Don't calculate tessface before sculptingCampbell Barton
2015-07-16Add tessellation data to DerivedMesh (LoopTri)Campbell Barton
This stores loop indices into the loop array giving easier acess to data such as vertex-colors and UV's, removing the need to store an MFace duplicate of custom-data. This doesn't yet move all internal code from MFace to LoopTri just yet. Only applies to: - opengl drawing - sculpting (pbvh) - vertex/weight paint Thanks to @psy-fi for review, fixes and improvements to drawing!
2015-05-07Fix T44604 bad quality of rake with bezier curves.Antony Riakiotakis
We can calculate tangents analytically for bezier curves, so just make them awesome. New code uses forward differencing calculation for efficiency just like curve calculation. Picture before/after: http://www.pasteall.org/pic/87843
2015-05-07Rake: store last position from mouse, don't store halfpoint between lastAntony Riakiotakis
and current position. patch by Bastien
2015-04-17Cleanup: remove unused face normalsCampbell Barton
also use const
2015-04-15dyntopo: don't allocate tessfaces while sculptingCampbell Barton
Tessellation data isn't used for drawing or sculpting. This frees up some memory ~approx 10% in own tests. Also slight spee-up since it avoids calculating it in the first place.
2015-04-13Fix adding to paint-curves from the first pointCampbell Barton
- add_index now works when selecting the first point. - sliding now selects the correct handle.
2015-04-04Cleanup: use BKE_sculptsession_* prefixCampbell Barton
2015-03-30Cleanup: use const for typeinfoCampbell Barton
2015-03-19Remove deleted list for palette colorsCampbell Barton
was used because of UI memory access only.
2015-03-18RNA: palette colors apiCampbell Barton
Methods so Python can manage colors. palette.colors.new()/remove()/clear()/active
2015-02-11Cavity masking - add curve control to cavity mask and move relevantAntony Riakiotakis
structs to paint struct (might be useful for vertex paint too in the future) Cavity masking now has a curve control. The control will set the amount of masking for positive cavity ("pointness") or negative cavity ("cavity") with x axis being the amount of cavity and 0.0 = full cavity, 1.0 = full pointness, 0.5 = no cavity and the y axis being the amount of alpha.
2015-01-02cleanup: styleCampbell Barton
2014-12-29Move average stroke from sculpt session to unified paint settings so itAntony Riakiotakis
can be reused by other paint systems too.
2014-12-27Brush Texture Angle Goodies:Antony Riakiotakis
This commit includes a few things: * It moves the Rake and Random flags from the brush to the MTex. * The first change allows mask textures to have independent rake support. * Random rotation now has an angle value that controls the width of the effect from the rake or default angle * Rake and Random are now supported together.
2014-12-01Cleanup: more int->bool.Bastien Montagne
2014-11-17Cleanup: rename `BKE_key_convert/update` to `BKE_keyblock_convert/update`.Bastien Montagne
We are handling a keyblock here, not a whole key(set). Names are alreay a bit confusing, let's be consistent at least.
2014-11-16Cleanup: use BLI_listbase_*** prefix for count,sort,sort_rCampbell Barton
2014-09-24Cleanup: use float versions of functions when in/output are floatsCampbell Barton
2014-09-18One last tweak to palette deletion code. It would correct active colorAntony Riakiotakis
only when deleting the last color.
2014-09-18PalettesAntony Riakiotakis
* Remove some duplication in deletion code * Fix crash when restoring file from last saved state.
2014-09-18Palettes:Antony Riakiotakis
Avoid having an invalid active index if user deletes a color. Also attempt to set active color on clicking (Not working yet but fix coming soon)
2014-07-21CleanupCampbell Barton
2014-07-21GSOC 2013 paintAntony Riakiotakis
Yep, at last it's here! There are a few minor issues remaining but development can go on in master after discussion at blender institute. For full list of features see: http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.72/Painting Thanks to Sergey and Campbell for the extensive review and to the countless artists that have given their input and reported issues during development.
2014-06-13BLI_bitmap: rename macrosCampbell Barton
- BLI_BITMAP_SET -> BLI_BITMAP_ENABLE - BLI_BITMAP_CLEAR -> BLI_BITMAP_DISABLE - BLI_BITMAP_GET -> BLI_BITMAP_TEST - BLI_BITMAP_MODIFY -> BLI_BITMAP_SET
2014-05-15Fix T39978: Sculpting shapekeys - Using Smooth tool, turns shapekey into Basis.Sergey Sharybin
Smooth brush requires deformed coordinates array to present.
2014-05-09Code cleanup: styleCampbell Barton
2014-05-08Fix regression from 2.70:Antony Riakiotakis
Multires did not support hiding in zero level. It's a case of PBVH not being used in drawing due to code reporting active modifiers being used. However multires level zero can be treated as effectively no modifier and we can use mesh PBVH.