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-10-23Fix bad origindex layers for editmode modifiersCampbell Barton
Reverts workaround from last commit.
2018-10-10Modifier: use simplified bmesh -> mesh conversionCampbell Barton
2018-10-09Cleanup: namingCampbell Barton
Use BKE_mesh_* prefix for mesh module.
2018-06-22Cleanup: useless BKE_cdderivedmesh includes...Bastien Montagne
2018-06-13Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/blenloader/intern/readfile.c source/blender/editors/mesh/editmesh_utils.c source/blenderplayer/bad_level_call_stubs/stubs.c
2018-05-12Merge branch 'master' into blender2.8Campbell Barton
2018-05-12Cleanup: modifier arg wrappingCampbell Barton
2018-05-08Merge branch 'master' into blender2.8Bastien Montagne
2018-05-08Cleanup: Nuke empty dummy wrappers around modifier_copyData_generic().Bastien Montagne
This also changes signature of modifier copy callback, first (source) parameter is now a const, which is saner anyway!
2018-05-07Modifier stack: move Edge Split to new Mesh-based system.Bastien Montagne
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
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-08-01Merge branch 'master' into blender2.8Campbell Barton
2017-08-01Cleanup: use static vars where appropriateCampbell Barton
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-01-24Depsgraph: Remove legacy updateDepgraph callbacks from modifiersSergey Sharybin
2015-05-12Depsgraph: New dependency graph integration commitSergey Sharybin
This commit integrates the work done so far on the new dependency graph system, where goal was to replace legacy depsgraph with the new one, supporting loads of neat features like: - More granular dependency relation nature, which solves issues with fake cycles in the dependencies. - Move towards all-animatable, by better integration of drivers into the system. - Lay down some basis for upcoming copy-on-write, overrides and so on. The new system is living side-by-side with the previous one and disabled by default, so nothing will become suddenly broken. The way to enable new depsgraph is to pass `--new-depsgraph` command line argument. It's a bit early to consider the system production-ready, there are some TODOs and issues were discovered during the merge period, they'll be addressed ASAP. But it's important to merge, because it's the only way to attract artists to really start testing this system. There are number of assorted documents related on the design of the new system: * http://wiki.blender.org/index.php/User:Aligorith/GSoC2013_Depsgraph#Design_Documents * http://wiki.blender.org/index.php/User:Nazg-gul/DependencyGraph There are also some user-related information online: * http://code.blender.org/2015/02/blender-dependency-graph-branch-for-users/ * http://code.blender.org/2015/03/more-dependency-graph-tricks/ Kudos to everyone who was involved into the project: - Joshua "Aligorith" Leung -- design specification, initial code - Lukas "lukas_t" Toenne -- integrating code into blender, with further fixes - Sergey "Sergey" "Sharybin" -- some mocking around, trying to wrap up the project and so - Bassam "slikdigit" Kurdali -- stressing the new system, reporting all the issues and recording/writing documentation. - Everyone else who i forgot to mention here :)
2015-05-02BMesh: BM_mesh_edgesplitCampbell Barton
Did quite a few checks not to tag bad splits (which wasn't working perfectly) Instead rely on BM_vert_separate not to create invalid geometry.
2015-04-30Fix T44484: Edge-split corrupts meshCampbell Barton
Splitting non-manifold edges could produce duplicate edges.
2014-01-23Cleanup: int/short to bool in BKE_cdderivedmesh.h functions (and TRUE/FALSE ↵Bastien Montagne
to true/false in code using them).
2013-12-21Mesh Modifiers: refactor copying using a generic functionCampbell Barton
2013-12-03Cleanup: Internal degrees removal.Bastien Montagne
This patch changes most of the reamining degrees usage in internal code into radians. I let a few which I know off asside, for reasons explained below - and I'm not sure to have found out all of them. WARNING: this introduces forward incompatibility, which means files saved from this version won't open 100% correctly in previous versions (a few angle properties would use radians values as degrees...). Details: - Data: -- Lamp.spotsize: Game engine exposed this setting in degrees, to not break the API here I kept it as such (using getter/setter functions), still using radians internally. -- Mesh.smoothresh: Didn't touch to this one, as we will hopefully replace it completely by loop normals currently in dev. - Modifiers: -- EdgeSplitModifierData.split_angle, BevelModifierData.bevel_angle: Done. - Postprocessing: -- WipeVars.angle (sequencer's effect), NodeBokehImage.angle, NodeBoxMask.rotation, NodeEllipseMask.rotation: Done. - BGE: -- bConstraintActuator: Orientation type done (the minloc[0] & maxloc[0] cases). Did not touch to 'limit location' type, it can also limit rotation, but it exposes through RNA the same limit_min/limit_max, which hence can be either distance or angle values, depending on the mode. Will leave this to BGE team. -- bSoundActuator.cone_outer_angle_3d, bSoundActuator.cone_inner_angle_3d: Done (note I kept degrees in BGE itself, as it seems this is the expected value here...). -- bRadarSensor.angle: Done. Reviewers: brecht, campbellbarton, sergey, gaiaclary, dfelinto, moguri, jbakker, lukastoenne, howardt Reviewed By: brecht, campbellbarton, sergey, gaiaclary, moguri, jbakker, lukastoenne, howardt Thanks to all! Differential Revision: http://developer.blender.org/D59
2013-08-23move bmesh tools into their own include,Campbell Barton
changes to tool args would rebuild far too many files and these are mainly by modifiers outside of bmesh.
2013-08-13fix for bug in rip tool, isolated verts would remain selected after ripping.Campbell Barton
2013-08-13fix own regression, rip tool wasn't handling selection.Campbell Barton
2013-06-19fix [#35795] Edge split modifier do not show result in viewport with curves.Campbell Barton
caused by recent changes in normal calculation, however curves were not being very smart about calculating modifiers (calling unneeded re-tessellation for every modifier)
2013-06-03fix [#35555] Collada: export destroys mesh in some casesCampbell Barton
add arguments to calculate normals when converting to bmesh: BM_mesh_bm_from_me, DM_to_bmesh This gives some speedup to undo (which didnt need to re-calculate vertex normals), and array modifier which doesnt need to calculate face normals at all
2013-05-30modifier stack: lazy initialize normalsCampbell Barton
many modifiers were calculating normals, when those normals were ignored by the next modifier. now flag normals as dirty and recalculate for modifiers that set use `dependsOnNormals()` callback. Quick test on mesh with 12 modifiers (mostly build type), calculated normals 6 times, now it only runs once - so this will give some speedup too.
2013-05-02Fix #35174: dynamic paint displacement missing in render.Brecht Van Lommel
A previous bugfix disabled the dynamic paint modifier for orco texture coordinate evaluation of the modifier stack. However the MOD_APPLY_USECACHE flag is not a good way to check if the modifier is evaluated for orcos. Instead I've added a MOD_APPLY_ORCO flag. Also removed a bunch of applyModifierEM callbacks, none of them served a purpose except for the subsurf modifier.
2013-01-04code cleanup: warningsCampbell Barton
2012-12-12move edge split into its own function which can be called by the modifier ↵Campbell Barton
without having to call a bmesh operator (gives some speedup).
2012-11-18bmesh: lazy initialize bmesh tool flag pool, has the advantage that ↵Campbell Barton
modifiers that dont use bmesh operators can skip allocating it.
2012-10-24no need to update normals when running edge-split modifier since the normals ↵Campbell Barton
are now set on conversion. don't show 'Auto-Key' message when in editmode.
2012-10-24add CDDM_from_bmesh(), avoids using BMEditMesh in modifiers.Campbell Barton
2012-07-21add option so operators can be called with a flag, currently the only flag ↵Campbell Barton
is to respect hidden geometry. this is useful for bmesh tools that operate in object mode or for modifiers which would previously use hidden faces in some cases.
2012-07-17Fix [#32133] Numpad Enter key doesnt work with Loopcut (worked in 2.49b)Bastien Montagne
Adding PADENTER to the "OK" keys...
2012-06-30rename bmesh ops since they are exposed in an api now.Campbell Barton
2012-06-05edge split modifier now works more like pre-bmesh --- 3+ faces using an edge ↵Campbell Barton
always split.
2012-05-09Refactor of modifiers' apply function: now use a single bit-flag parameter ↵Bastien Montagne
to pass options, instead of having one parameter per boolean flag (i.e. replaces current useRenderParams and isFinalCalc by a single ModifierApplyFlag flag. ModifierApplyFlag is an enum defined in BKE_modifier.h). This way we won't anymore have to edit all modifier files when e.g. adding a new control flag! Should have no effect over modifier behavior.
2012-05-06style cleanup: modifiersCampbell Barton
2012-05-04code cleanup: double promotion & some style cleanupCampbell Barton
2012-04-19remove BM_ITER, BM_ITER_INDEX macros, use ELEM or MESH variants only (the ↵Campbell Barton
maceros had unused args in both cases).
2012-04-19style cleanup: BM_ITER / BM_ITER_INDEX / BMO_ITERCampbell Barton
2012-03-24style cleanup: follow style guide for formatting of if/for/while loops, and ↵Campbell Barton
else if's
2012-03-22bmesh: debugging function to help resolve issues with corrupt mesh data - ↵Campbell Barton
BM_mesh_validate()
2012-03-11remove Object member from BMesh struct - was only used for undo and ↵Campbell Barton
BMEditMesh already stores an object pointer. also fix for own mistake with mesh conversion refactor, shape key index was off by 1 when switching editmode.
2012-03-09style cleanup: comment blocksCampbell Barton
2012-03-06fix [#30459] BMesh Edge Split Hangs.Campbell Barton
edge split result is still not correct in this case but at least avoid eternal loop. also - dont tag sharp edges with <2 faces for splitting.