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
2019-03-25GPencil: Only brushes with pinned materials have materialsAntonioya
Using GP_BRUSH_MATERIAL_PINNED to switch between active material and brush material, instead of updating all brushes on active material changes. This will allow brushes to have no material and therefore to not inflate the user count. This fix T62465. Patch contributed by @matc Reviewers: @brecht @antoniov @billreynish @mendio
2019-02-18doxygen: add newline after \fileCampbell Barton
While \file doesn't need an argument, it can't have another doxy command after it.
2019-02-06Cleanup: remove redundant doxygen \file argumentCampbell Barton
Move \ingroup onto same line to be more compact and make it clear the file is in the group.
2019-02-01Cleanup: remove redundant, invalid info from headersCampbell Barton
BF-admins agree to remove header information that isn't useful, to reduce noise. - BEGIN/END license blocks Developers should add non license comments as separate comment blocks. No need for separator text. - Contributors This is often invalid, outdated or misleading especially when splitting files. It's more useful to git-blame to find out who has developed the code. See P901 for script to perform these edits.
2019-01-28Cleanup: sort forward declarations of enum & structCampbell Barton
Done using: source/tools/utils_maintenance/c_sort_blocks.py
2018-11-13Merge branch 'master' into blender2.8Campbell Barton
2018-11-13Cleanup: use lowercase 2d/3d in function namesCampbell Barton
2018-11-12Cleanup: minor gpencil changesCampbell Barton
- Replace BKE_brush_getactive_gpencil -> BKE_paint_brush (no need for per-paint-type brush access). - Rename TOT_GP_EDITBRUSH_TYPES -> GP_EDITBRUSH_TYPE_MAX (avoid sharing prefix w/ unrelated constants). - Rename instances of `GP_EditBrush_Data` to 'gp_brush' (`Brush` is typically called 'brush').
2018-11-07Cleanup: use BKE_brush_tool_get/set macrosCampbell Barton
Also add API call WM_toolsystem_ref_sync_from_context (was in rna_workspace_api.c)
2018-11-05Paint: add BKE_paint_ensure to initialize toolsettingsCampbell Barton
Each mode had its own logic for initializing paint structs, move to a single function. Also remove "BKE_brush_get_gpencil_paint", entering grease pencil mode is responsible for ensuring the data is created.
2018-08-25GP: Select color in Brush or in PropertiesAntonioya
After some artist feedback the material selection was not clear. Now, the material can be selected in the top bar or in the properties panel. 1) If the material is selected in properties panel, all Brushes except pinned will be assigned to this material. 2) If the material is selected in the brush, the properties panel is updated to set the active material. Added a new Pin icon to keep locked the material to one brush
2018-08-05GP: Add python api to create brush settings for grease pencilAntonioya
2018-07-31New Grease Pencil object for 2D animationAntonioya
This commit merge the full development done in greasepencil-object branch and include mainly the following features. - New grease pencil object. - New drawing engine. - New grease pencil modes Draw/Sculpt/Edit and Weight Paint. - New brushes for grease pencil. - New modifiers for grease pencil. - New shaders FX. - New material system (replace old palettes and colors). - Split of annotations (old grease pencil) and new grease pencil object. - UI adapted to blender 2.8. You can get more info here: https://code.blender.org/2017/12/drawing-2d-animation-in-blender-2-8/ https://code.blender.org/2018/07/grease-pencil-status-update/ This is the result of nearly two years of development and I want thanks firstly the other members of the grease pencil team: Daniel M. Lara, Matias Mendiola and Joshua Leung for their support, ideas and to keep working in the project all the time, without them this project had been impossible. Also, I want thanks other Blender developers for their help, advices and to be there always to help me, and specially to Clément Foucault, Dalai Felinto, Pablo Vázquez and Campbell Barton.
2018-06-29Cleanup: trailing newlinesCampbell Barton
2018-06-09Cleanup: unused functionsCampbell Barton
2018-02-06Use eObjectMode for function argumentsCampbell 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-05Fix sculpt secondary color missing some brushesCampbell Barton
D2841 by @uvwxyz w/ edits
2017-10-05Cleanup: use bool for brush checksCampbell Barton
2017-10-03Weight Paint: don't set weight w/ average brushCampbell Barton
Also use 'const' for brush.
2017-10-02Vertex Paint: projection optionsCampbell Barton
This makes vertex paint match image painting more closely. - Add falloff shape option sphere/circle where sphere uses a 3D radius around the cursor and circle uses a 2D radius (projected), like previous releases. - Add normal angle option so you can control the falloff. - Add Cull option, to paint onto faces pointing away. Disabling normals, culling and using circle falloff allows you to paint through the mesh.
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-07-21Refactor/deduplicate even more make_local code (and fix part of T48907).Bastien Montagne
Turns out most BKE_foo_make_local datablock-specific functions are actually doing exactly the same thing, only two currently need special additional operations (object and brush ones). So added a BKE_id_make_local_generic instead of copying same code over and over. Also, changed a bit how make_local works in case we are localizing a whole library. We need to do the 'remap' step (from old linked ID to new local one) in the second loop, otherwise we miss some dependencies. This fixes main part of T48907.
2016-07-14Add option to id_make_local to force localization of datablock, even if not ↵Bastien Montagne
used locally. Will be used by link/append code.
2016-07-10Refactor/enhance BKE_brush_make_local() and BKE_speaker_make_local().Bastien Montagne
Now using modern features from libquery/libremap areas. Provides same kind of fixes/improvements as for BKE_object_make_local() (see rBd1a4ae3f395a6).
2016-07-10Cleanup/Refactor: pass Main pointer to all ID copy functions.Bastien Montagne
Also allows us to get rid of a few _copy_ex() versions...
2016-02-18Cleanup: add missing struct qualifierCampbell Barton
2015-11-02Fix T46626: Crash generating previewsCampbell Barton
Brush.toggle_brush was allowed to be an invalid pointer, it worked for the one operator that used it - but in general bad practice, requiring a lookup on every access. Ensure the pointer is kept valid now.
2015-10-20First step to handle missing libs/datablocks when reading a file.Bastien Montagne
Idea is, instead of ignoring completely missing linked datablocks, to create void placeholders for them. That way, you can work on your file, save it, and find again your missing data once lib becomes available again. Or you can edit missing lib's path (in Outliner), save and reload the file, and you are done. Also, Outliner now shows broken libraries (and placeholders) with a 'broken lib' icon. Future plans are also to be able to relocate missing libs and reload them at runtime. Code notes: - Placeholder ID is just a regular datablock of same type as expected linked one, with 'default' data, and a LIB_MISSING bitflag set. - To allow creation of such datablocks, creation of datablocks in BKE was split in two step: + Allocation of memory itself. + Setting of all internal data to default values. See also the design task (T43351). Reviewed by @campbellbarton, thanks a bunch! Differential Revision: https://developer.blender.org/D1394
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-06-10Fix T45013 negative curve falloff not working.Antony Riakiotakis
Was doing clamping as fix for T42984. Seems we can ommit clamping for sculpting if we make sure overlap is not zero with negative values. Control for clamping is moved to the "Use Clipping" function of curves (which is on by default), so both bugs remain squashed and advanced users can now properly utilize curves in sculpting, though not all brushes work well with negative curves.
2015-04-16Cleanup: use const for sculpt codeCampbell Barton
2015-03-28Cleanup: redundant struct declarationsCampbell Barton
2015-01-04cleanup: use 'coords' abbreviation for functions.Campbell Barton
2014-12-31Fix T42984 detail flood fill not respecting mask values for smooth/sharpAntony Riakiotakis
curves. Issue here is that brush curve could return negative values. This would result in overflow of mask values. Those were not visible during real time preview because result would be clamped. We had two functions in the code, one of which allowed negatives but I don't think that we really want that, users have no control over the negative values at all anyway. Thanks to the reporter, Leon Cheung for figuring out the issue :)
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-03-29Code cleanup: correct arg sizeCampbell Barton
2013-09-16Undo the front-facing only commit for clay strips brushes, it adds anAntony Riakiotakis
attenuation that should really be optional. There's also a minor performance penalty and all this only for one problematic case. In case the tool flattens two surfaces, users can manually set the front face only option. A better non-attenuating way to cull such vertices can be added later. Also flatten brush should calculate the flatten plane from the original vertices or the flattening will not converge for planes offsets different than zero. Reported by Michalis Zissiou, thanks!
2013-09-14Sculpting:Antony Riakiotakis
* Cleanup for previous commit and reduce some local variable referencing * Add support for brushes that operate on frontfaces only and do not show the option for those brushes. Currently only clay strips is in the list but this may change according to artist feedback. This should take care of the "sticky" surface problem completely.
2013-09-05Ctr-Alt-F radial control operator for texture painting, controls theAntony Riakiotakis
rotation of the brush mask texture. Unfortunately secondary path does not work here because we do not have a permanent switch to choose between primary-secondary brush texture. Use operator property instead.
2013-07-02remove nan copyrights from code added since blender become opensource (copy ↵Campbell Barton
paste errors), also remove BKE_script.h
2013-05-12Image paint: 2D painting now supports texture masks and does masking moreBrecht Van Lommel
consistent with projection painting. Also did some refactoring of this code, moving the brush image creation code out of brush.c and making it consistent with image updating code.
2013-04-30More painting fixes:Brecht Van Lommel
* 2D image painting with textures that contained alpha did not work correctly, had been broken for a while. * 2D image panels texture (mask) panels showed wrong buttons for texture overlay. * Texture map mode 3D now also uses masking, like Tiled and Stencil the texture does not move along with the brush so it works fine. * 2D image paint View mapping did not work correct, especially noticeable with Rake rotation. * Masking is now disabled for the smear tool, this can't really work because the original image is constantly changing and gave artifacts.
2013-04-30Fix #35141: stencil and 3D texture mode did not work with 2D image paint.Brecht Van Lommel
2013-04-30More image painting fixes:Brecht Van Lommel
* 2D image painting support for masking to limit the max contribution of a stroke to a pixel, to get it working compatible with projection painting. Not strictly a bugfix, but the inconsistency here was annoying. * Fix python errors in Texture Mask panel in image editor, was missing overlay options. * Clamp paint mask to 0..1 in case some texture exceeds it, this could give black pixels due to integer overflow.
2013-04-22Support more mapping modes for alpha masks. Tiled, stencil and randomAntony Riakiotakis
2013-03-27Paint system:Antony Riakiotakis
Random texture mapping * Support for 2d painting. * Better random generation and useof the result.
2013-03-26style cleanup:Campbell Barton
also rename mesh_getVertexCos() --> BKE_mesh_vertexCos_get() to match curve function.
2013-03-25code cleanup:Campbell Barton
- remove unused defines. - quiet some shadow warnings. - bevel, ifdef out some asserts that are too common. - style