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
2020-09-09Cleanup: reduce variable scopesJacques Lucke
2020-08-11Merge branch 'blender-v2.90-release' into masterCampbell Barton
2020-08-11Fix mesh data-transfer tracking if a change was madeCampbell Barton
2020-08-07Cleanup: Blenkernel, Clang-Tidy else-after-return fixesSybren A. Stüvel
This addresses warnings from Clang-Tidy's `readability-else-after-return` rule in the `source/blender/blenkernel` module. No functional changes.
2020-08-05Fix T79520: Data Transfer modifier: crash/assert going into editmode on a ↵Bastien Montagne
source object.
2020-07-13Clang Tidy: enable readability-non-const-parameter warningJacques Lucke
Clang Tidy reported a couple of false positives. I disabled those `NOLINTNEXTLINE`. Differential Revision: https://developer.blender.org/D8199
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2020-03-06Cleanup: use 'BKE_' prefix for BKE_deform API callsCampbell Barton
- Use 'BKE_object_defgroup' prefix for object functions. - Rename 'defvert_verify_index' to 'defvert_ensure_index' since this adds the group if it isn't found.
2019-07-19Fix assert in some cases when using DataTransfer modifier for custom normals.Bastien Montagne
Reported by @sybren on IRC, thanks. Should be safe for 2.80.
2019-07-02Cleanup: move comments onto own lines to avoid breaking linesCampbell Barton
2019-06-12Cleanup: spelling in commentsCampbell Barton
2019-05-03Cleanup: warningsCampbell Barton
Quiet extra-semi-stmt & missing-variable-declarations
2019-04-27Cleanup: comments (long lines) in blenkernelCampbell Barton
2019-04-26Minor cleanup in data transfer code.Bastien Montagne
2019-04-22Cleanup: style, use braces for blenkernelCampbell Barton
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2019-03-11Cleanup: fix warning about unused parameter.Brecht Van Lommel
2019-03-08Fix (unreported) datatransfer code could still modify source mesh in some cases.Bastien Montagne
Source (i.e. other) mesh should not be modified in any case in modifier evaluation case (this is forbidden by design and can lead to all kind of threaded locks and crashes), and doing so even in operator case was never a good idea either. Now that we can specifically request needed data (poly and/or loop normals) from evaluation code, we can finally get rid of those computations inside data transfer/mesh remapping area. This is hopefully the last remaining bit of this 'bad crashing code' in datatransfer area.
2019-03-07Refactor CDData masks, to have one mask per mesh elem type.Bastien Montagne
We already have different storages for cddata of verts, edges etc., 'simply' do the same for the mask flags we use all around Blender code to request some data, or limit some operation to some layers, etc. Reason we need this is that some cddata types (like Normals) are actually shared between verts/polys/loops, and we don’t want to generate clnors everytime we request vnors! As a side note, this also does final fix to T59338, which was the trigger for this patch (need to request computed loop normals for another mesh than evaluated one). Reviewers: brecht, campbellbarton, sergey Differential Revision: https://developer.blender.org/D4407
2019-02-21Fix (unreported) Broken DataTransfer modifier when source object is in Edit ↵Bastien Montagne
mode. Just use common API func to get evaluated mesh of other object in modifiers, instead of doing our own cooking. ;)
2019-02-21Fix T59338: Blender crashes immediately after loading attached file in ~80% ↵Bastien Montagne
of my attempts. Issue was a concurrent modification of an evaluated mesh by two other meshes using it as source for custom normals data transfer. Note that this fixes the crash (modifiers are strictly forbidden to modify any data besides their own!), but now will have to add a new CD type to be able to specifically request 'computed' clnors data layer, and not only 'encoded' one, for source mesh...
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-08Fix T61255: Mesh Data Transfer: Do not abort when destination has not all ↵Bastien Montagne
source data layers. Originally, when transferring all source data layers to destination meshes, code would abort in case destination did not have all needed layers, and creating them was not allowed. Now, it will instead transfer data to layers that exists, merely skipping source ones for which it cannot find a matching destination.
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-02-01Logging: Use CLOG for blenkernelCampbell Barton
Part of D4277 by @sobakasu
2019-01-26Cleanup: remove redundant BKE/BLI/BIF headersCampbell Barton
2018-12-03Depsgraph: completely move customdata_mask to the ID node.Alexander Gavrilov
Move all mask-related fields from Object and OperationDepsNode to Object_Runtime and IDDepsNode. Auto-apply DEG_TAG_GEOMETRY if the mask changes after DEG rebuild. Update DEG API and all code that uses it. This fixes "source mesh data is not ready" errors from Data Transfer modifier when parameters are changed in the UI after the recent mesh_get_eval_final fix. Reviewers: sergey Differential Revision: https://developer.blender.org/D4025
2018-12-03Data Transfer Modifier: fix mesh_get_eval_final usage.Alexander Gavrilov
It can't be used during modifier evaluation, and rna enum code should access the evaluated objects.
2018-09-24Merge branch 'master' into blender2.8Brecht Van Lommel
2018-09-24Spelling fixes in comments and descriptions, patch by luzpaz.Brecht Van Lommel
Differential Revision: https://developer.blender.org/D3719
2018-06-21Cleanup: names: data transfer/mesh remap: dm -> me/mesh.Bastien Montagne
That area is now officially purged from the Devil.. errr... DerivedMesh!
2018-06-21Cleanup: data transfer: get rid of dual destination mesh.Bastien Montagne
Not needed anymore, we only actually need to know wether it's orig mesh or eval one in a few places...
2018-06-21Cleanup: some potentially critical changes in data transfer.Bastien Montagne
Removing that stuff should be valid with new depsgraph/modifiers stack evaluation system... BUT it might not be, so rather have those in separate own well-isolated commit.
2018-06-21Cleanup: nuke DM out of data transfer code.Bastien Montagne
This was actually rather hairy, this code is huge and complicated, easy to make mistakes... Good thing is, it will allow for significant simplification and more (name) cleanup in following commits ;)
2018-06-05Moved function declarations from BKE_DerivedMesh.h to BKE_mesh_runtime.hSybren A. Stüvel
The function definitions still reside in DerivedMesh.c. Once we're done porting all the DerivedMesh use to Mesh, we'll move the still-relevant functions to mesh_runtime.c. This move is now cumbersome due to shared statically-declared utility functions in DerivedMesh.c
2018-04-16Depsgraph: remove EvaluationContext, pass Depsgraph instead.Brecht Van Lommel
The depsgraph was always created within a fixed evaluation context. Passing both risks the depsgraph and evaluation context not matching, and it complicates the Python API where we'd have to expose both which is not so easy to understand. This also removes the global evaluation context in main, which assumed there to be a single active scene and view layer. Differential Revision: https://developer.blender.org/D3152
2018-04-16Merge branch 'master' into blender2.8Campbell Barton
2018-04-16Cleanup: indentationCampbell Barton
2017-08-16Pass EvaluationContext instead of bContextCampbell Barton
2.8x branch added bContext arg in many places, pass eval-context instead since its not simple to reason about what what nested functions do when they can access and change almost anything. Also use const to prevent unexpected modifications. This fixes crash loading files with shadows, since off-screen buffers use a NULL context for rendering.
2017-07-21Pass EvaluationContext argument everywhereLuca Rood
Note that some little parts of code have been dissabled because eval_ctx was not available there. This should be resolved once DerivedMesh is replaced.
2017-05-25TexFace removal part 3Campbell Barton
- MTexPoly structure & layer type. - The 'Mesh.uv_textures' layers. - DerivedMesh TexFace drawing. - Scripts & UI.
2016-12-17Fix T50216: Missing checks caused data transfer segfaultLuca Rood
Data transfer was not checking if the required geometry existed, thus causing a segfault when it didn't. This adds the required checks, and reports errors if geometry is missing. This also replaces instances of the words "polygon" and "loop" in error messages with "face" and "corner" respectively, to be consistent with the rest of the existing UI. Reviewed By: mont29 Differential Revision: http://developer.blender.org/D2410
2016-07-21Add BKE_mesh_calc_islands_loop_poly_uvmap and use it in new OSD UV subdiv.Bastien Montagne
Also renamed BKE_mesh_calc_islands_loop_poly_uv to BKE_mesh_calc_islands_loop_poly_edgeseam, to avoid confusion...
2016-05-01Fix T48325: Data transfer modifier vertex group selector doesn't work with ↵Bastien Montagne
freestyle data. Freestyle edge/face marks are (afaik) our only actual customdata bitflags... Original work kinda assumed we had no such things. :P
2015-11-19Cleanup: redundant 'break', minor editsCampbell Barton
2015-11-03Fix T46672: Concurrent access to source DM in datatransfer modifier.Bastien Montagne
There is no real elegant solution here, ideally a modifier shall never *modify* a source DM, but that would imply much better ways to ensure required data is available in that source DM, which we do not have currently. So instead, let's use brute force solution for now and always create a local copy of our source DM, that we can modify to our heart content!
2015-10-16Fix T46508: data_transfer of normals fails in case objects are transformed.Bastien Montagne
The final stage of the process (copying/interpolating new dst cddata from src cddata) was simply broken in normal case, where we need to convert from source to destination object space. This patch is a bit verbose, but I cannot see how to avoid it really. To think this code is in master since over 6 months and it only gets reported now... :/
2015-10-12Add functions to compute normals (verts, polys and loops ones) for a given ↵Bastien Montagne
shapekey. Title says pretty much everything, we now have BKE and RNA funcs to get vertex, poly and loop normals of a given shapekey. This will be used e.g. in FBX exporter (shapekeys need normal data too). Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D1510
2015-07-13Data Transfer: Add an option to 'auto-transform' destination mesh so that it ↵Bastien Montagne
matches best the source one. This allows to match and transfer data between two meshes with similar shape but complete arbitrary different transform. Note that the result will be best if the meshes (more precisely, their vertices) are exact copies of each other. Otherwise, method used can only perform an approximated best match, which means you'll likely get better results if you 'visually' make them match in 3D space (and use 'Object Transform') instead.