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-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-19Cleanup: comment blocksCampbell Barton
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-18doxygen: add newline after \fileCampbell Barton
While \file doesn't need an argument, it can't have another doxy command after it.
2019-02-17Cleanup: rename Mesh.edit_btmesh -> edit_meshCampbell Barton
When bmesh was in a branch we had both edit_mesh and edit_btmesh, now there is no reason to use this odd name.
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-26Cleanup: remove redundant BKE/BLI/BIF headersCampbell Barton
2019-01-22Fix T60575: Multiresolution Crashes when appliing more subdivisionsSergey Sharybin
The issue was caused by intermediate DerivedMesh being created with scene's Simplify settings taken into account. This is what happens when one area makes implicit decisions based on whether passed Scene pointer is not NULL. Made it so ignoring simplification serttings is an explicit flag, which makes it easier to follow what's going on.
2019-01-06Cleanup: add trailing commas to structsCampbell Barton
Needed for clang formatting to workaround bug/limit, see: T53211
2018-12-19BLI_bitmap: add functions operating on the whole bitmask.Alexander Gavrilov
There is no point having operations that iterate over the whole bit array as macros, so convert BLI_BITMAP_SET_ALL to a function. Also, add more utilities for copying and manipulating masks. Reviewers: brecht, campbellbarton Differential Revision: https://developer.blender.org/D4101
2018-11-20Multires: Cleanup, remove unused functionSergey Sharybin
2018-11-02Multires: Apply uniform scale on displacement when applying scale on objectSergey Sharybin
This is sued by both object joinig and object apply scale operations. Currently only uniform scale is working correct. Non-uniform gets averaged and will produce slightly distorted results. This is something we should fix, but priority of this particular case is not so high.
2018-11-02Multires: Cleanup, namingSergey Sharybin
First of all, follow our naming convention to use module prefix. Second of all, mesh is being created and is to be freed, we also have convention for such function names.
2018-11-02Multires: Prevent crash when joining two multires objectsSergey Sharybin
This only works thing around, just so we can unlock production here. Joining objects of a different scale will not yet work correctly. Proper fix is coming later (the code needs to be ported to new Subdiv API).
2018-10-19Partial revert '#if 0' cleanupCampbell Barton
Partially revert 41216d5ad4c722e2ad9f15c968af454fc7566d5e Some of this code had comments to be left as is for readability, or comment the code should be kept. Other functions were only for debugging.
2018-10-18Cleanup: Remove more #if 0 blocksJacques Lucke
Continuation of https://developer.blender.org/D3802 Reviewers: brecht Differential Revision: https://developer.blender.org/D3808
2018-09-25Cleanup: Variable name in mesh runtimeSergey Sharybin
Matches type better, avoiding possible confusion.
2018-09-25Multires: Pass total level instead of modifier dataSergey Sharybin
This is the only thing which needs to be done to perform propoer reshape. Makes it easier to re-use code from other places.
2018-09-25Multires: Pass mesh instead of objectSergey Sharybin
There is nothing we need from object in this case.
2018-09-21Cleanup: convert smoke modifier from DerivedMesh to Mesh.Brecht Van Lommel
2018-09-21Multires: Support sculpting on a lover levelsSergey Sharybin
Added propagation of displacement to a higher levels. Has the same limitation as reshape from object, which makes grids somewhat choppy due to linear interpolation nature. This is to be addressed next.
2018-09-20Cleanup: move DerivedMesh wrappers for modifiers further down the hierarchyJacques Lucke
The main goal of this patch is to cleanup the interface of every modifier. More specifically the interface of modifiers should be DerivedMesh-free. Internally some modifiers still use DerivedMesh. However I think it is better when the wrappers are in the modifiers so that higher level functions can use the simplified interface. This patch removes the applyModifier_DM and applyModifierEM_DM functions. In a previous patch (rB3614d9d) the other functions that used DerivedMesh have been removed. Reviewers: brecht
2018-09-19Subdiv: CCG, remove redundant callSergey Sharybin
2018-09-18Subdiv: CCG, implement stitching of given facesSergey Sharybin
Will speed up (or rather bring speed back to what it is supposed to be) for brushes like smooth.
2018-09-18Subdiv: CCG, initial grids stitching implementationSergey Sharybin
Currently is only working on an "inner" grid boundaries. Need to implement averaging across face edges.
2018-09-14Multires: Initial work to get sculpting to work with OpenSubdivSergey Sharybin
Allows to go to sculpt mode, do brush strokes, get out of sculpt mode and have deformation preserved. The issues currently is that the current implementation of CCG storage is created from the limit surface, without displacement taken into account. It is trivial to get displaced coordinates, but it is more tricky to get displaced normals. This is something to be solved next. Another limitation is that this only works for sculpting at a maximal multires level. There is code to be done to support propagation of displacement onto a higher levels.
2018-09-05Merge branch 'master' into blender2.8Sergey Sharybin
2018-09-05CCG: Remove number of layers from keySergey Sharybin
The issue there was that number of layers did not include normals, while element size counts bytes used by normals. This sounds very fragile and dangerous to work further. Also, one value can easily be delivered from another, so it is redundancy going on here. Possible difference now is that multires subdivision will copy normals to a higher levels. Shouldn't be big of a problem, since leaving old normals and updating coordinates is not correct either.
2018-08-22Multires: implement reshape operationSergey Sharybin
The one which is used by applying deformation modifiers on the multires.
2018-08-17Multires: Fix wrong creation of multires meshSergey Sharybin
Should use evaluated object to query deformed mesh from.
2018-08-16Cleanup: Use dedicated function to copy mesh during evaluation processSergey Sharybin
It is rather fully annoying to have same sets of obscure flags all over.
2018-08-16Multires: Implement function to get mesh at multires position of stackSergey Sharybin
2018-08-16Multires: Cleanup, naming and bool typeSergey Sharybin
2018-08-14Multires: Begin hooking it up to the new subdiv codeSergey Sharybin
Currently behaves same as subsurf, support of displacement is the next task in the line to tackle!
2018-08-14Multires: Synchronize settings with Subsurf modifierSergey Sharybin
Currently no functional changes, just exposes all settings which we need for OpenSubdiv, similar to what Subsurf modifier is doing already. Reviewers: brecht Reviewed By: brecht Differential Revision: https://developer.blender.org/D3602
2018-08-13Subsurf: Introduce quality optionSergey Sharybin
For users it defines how accurate vertex positions are in terms of limit surface (as in, how close the vertices locations to the condition when they are calculated for an infinitely subdivided mesh). This affects things like: - Irregular vertices (joint of 3 or more edges) - Crease Keep quality value low for performance. NOTE: Going higher does not necessarily mean real improvement in quality, ideal case might be reached well before maximum quality of 10. Quality of 3 is a good starting point. Internally quality is translated directly to adaptive subdivision level. Reviewers: brecht Reviewed By: brecht Differential Revision: https://developer.blender.org/D3599
2018-08-13Subsurf: Make uv boundaries easily extendibleSergey Sharybin
This replaces old single toggle option to subdivide UVs with an enum which can have more options. The usecase for this is to be compatible with other software. But we also might choose different subdivision type as default in the future. DNA and underlying code supports all possible options, but only the ones which are compatible with old subdivision code are currently exposes. Reviewers: brecht Reviewed By: brecht Differential Revision: https://developer.blender.org/D3575
2018-06-27Cleanup: styleCampbell Barton
2018-06-27Fix T55644: Multires ignores render subdivision when simplifiedSergey Sharybin
We did not tell proper render/viewport context to subsurf derived mesh created for multires.
2018-06-22Subsurf: Move away from using scene from modifier dataSergey Sharybin
2018-06-22Multires: Move away from using scene from modifier dataSergey Sharybin
2018-06-18Multires: Remove unused functionSergey Sharybin
It uses derived mesh, and relies on scene stored in modifier data. So port is needed anyway.
2018-06-17Merge branch 'master' into blender2.8Campbell Barton
2018-06-17Cleanup: trailing space for blenkernelCampbell Barton
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-05-01Extract common modifier parameters into ModifierEvalContext structSybren A. Stüvel
The contents of the ModifierEvalContext struct are constant while iterating over the modifier stack. The struct thus should be only created once, outside any loop over the modifiers.
2018-05-01Modifiers: Add wrapper functions with Mesh / DerivedMesh conversionMai Lavelle
Makes the follow changes: - Add new `deform*` and `apply*` function pointers to `ModifierTypeInfo` that take `Mesh`, and rename the old functions to indicate that they take `DerivedMesh`. These new functions are currently set to `NULL` for all modifiers. - Add wrapper `modifier_deform*` and `modifier_apply*` functions in two variants: one that works with `Mesh` and the other which works with `DerivedMesh` that is named with `*_DM_depercated`. These functions check which type of data the modifier supports and converts if necessary - Update the rest of Blender to be aware and make use of these new functions The goal of these changes is to make it possible to port to using `Mesh` incrementally without ever needing to enter into a state where modifiers don't work. After everything has been ported over the old functions and wrappers could be removed. Reviewers: campbellbarton, sergey, mont29 Subscribers: sybren Tags: #bf_blender_2.8 Differential Revision: https://developer.blender.org/D3155
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-05Remove workspace object mode, reverts changes w/ 2.8Campbell Barton
This caused too many problems syncing object modes with multiple objects/windows/workspaces, see: D3130 for details.